Λογισµικά Πακέτα Βελτιστοποίησης

mitemaskNetworking and Communications

Jul 13, 2012 (4 years and 9 months ago)

373 views

1
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
Λογισικά Πακέτα
Βελτιστοποίησης
Καθ.Παπαρρίζος Κων/νος
Καθηγητής στο Τ. Εφαροσένης Πληροφορικής,
του Πανεπιστηίου Μακεδονίας, Οικονοικών και Κοινωνικών Σπουδών
Η διάλεξη πραγατοποιείται στα πλαίσια υλοποίησης του έργου «ιεύρυνση της Τριτοβάθιας Εκπαίδευσης – Πανεπιστήιο Μακεδονίας (2004-2006)»- Υποέργο
«Τήα ιοίκησης Τεχνολογίας (2006-2008)»,Κατηγορία Πράξεων 2.2.2.β « ιεύρυνση της Τριτοβάθιας Εκπαίδευσης », Ενέργεια 2.2.2. «Ολοκλήρωση της διεύρυνσης και
αναόρφωση των προγραάτων της τριτοβάθιας εκπαίδευσης », Μέτρο 2.2. «Αναόρφωση Προγραάτων Σπουδών – ιεύρυνση Τριτοβάθιας Εκπαίδευσης», ε χρονική
διάρκεια από 1/9/2004 έχρι 31/8/2008 το οποίο εκτελείται στα πλαίσια του Επιχειρησιακού Προγράα τος Εκπαίδευσης και Αρχικής Επαγγελατικής Κατάρτισης II
(ΕΠΕΑΕΚ II) και συγχρηατοδοτείται από την Ευρωπαϊκή Ένωση [3
ο
Κοινοτικό Πλαίσιο Στήριξης κατά 75% Κοινοτική Συετοχή (ΕΚΤ) και 25% Εθνικοί Πόροι].
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
2
Στα Μαθηατικά ο όρος Βελτιστοποίηση αναφέρεται στη ελέτη
προβληάτων, όπου κάποιος προσπαθεί να ελαχιστοποιήσει ή να
εγιστοποιήσει ια συνάρτηση, κάνοντας συστηατική επιλογή των
τιών κάποιων εταβλητών, από ένα επιτρεπτό σύνολο.
Παράδειγα:
2
min 1
x
x
∈ℜ
+
Το ζητούενο είναι η ελάχιστη τιή της αντικειενικής
συνάρτησης όπου η εταβλητή x ανήκει στο σύνολο των
πραγατικών αριθών.
Η ελάχιστη τιή, σε αυτήν την περίπτωση είναι 1, η οποία
επιτυγχάνεται για x = 0
2
1
x
+
2
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3
Στην Πληροφορική προκύπτει ια πληθώρα εφαρογών
Βελτιστοποίησης. Ένα πρόγραα σε Η/Υ πορεί να
βελτιστοποιηθεί ώστε να:
i.Εκτελείται πιο γρήγορα,
ii.Να λειτουργεί χρησιοποιώντας λιγότερη αποθηκευτική νήη,
iii.Να έχει ικρότερη ενεργειακή κατανάλωση, π.χ. παταρίας σε
φορητούς υπολογιστές.
3
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
4
Βελτιστοποίηση, από την πλευρά του:
1.Προγραατιστή – Ερευνητή,
2.Απλού χρήστη (π.χ. ένας διευθύνων σύβουλος που λαβάνει
αποφάσεις για λογαριασό ιας εταιρίας)
4
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
5
Μπορεί να επιτευχθεί βελτιστοποίηση:
• Σε υψηλό επίπεδο, ε χρήση αποδοτικών αλγορίθων, (efficient
algorithms). Σύγκριση και επιλογή αλγορίθου σύφωνα ε τη
Θεωρία της Πολυπλοκότητας (Complexity Theory)
5
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
6
Μπορεί να επιτευχθεί βελτιστοποίηση:
• Σε υψηλό επίπεδο, ε χρήση βελτιστοποιηένων εταγλωττιστών,
(optimizing compilers)
IEEE Annals of the History of Computing
,
the compiler "produced code of such
efficiency that its output would startle
the programmers who studied it.”
6
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
7
Μπορεί να επιτευχθεί βελτιστοποίηση:
• Σε υψηλό επίπεδο, ε χρήση:
• Τεχνικών Βελτιστοποίησης στη συγγραφή κώδικα Η/Υ, π.χ.:
• Χρήση τεχνικών διανυσατοποίησης υπολογισών (vectorized
computation)
• Εξειδικευένου λογισικού, όπως:
i.Intel® VTune™Performance Analyzer,
ii.Mathworks Matlab profiler
7
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
8
1.LAPACK - Linear Algebra PACKage
http://www.netlib.org/lapack
2.Intel® Math Kernel Library (Intel® MKL)
http://www3.intel.com/cd/software/products/asmo-na/eng/307757.htm
3.AMD Core Math Library (ACML)
http://developer.amd.com/acml.jsp
4.Sun Performance Library
http://developers.sun.com/sunstudio/perflib_index.html
Μπορεί να επιτευχθεί βελτιστοποίηση:
• Σε υψηλό επίπεδο, ε χρήση βελτιστοποιηένων σε απόδοση
βιβλιοθηκών, (optimized performance libraries)
8
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
9
Μπορεί να επιτευχθεί βελτιστοποίηση:
• Σε χαηλό επίπεδο, ε συγγραφή κώδικα σε γλώσσα Assembly.
program main
print*, "hello World !"
end program main
title Hello World Program
; This program displays "Hello, World!"
dosseg
.model small
.stack 100h
.data
hello_message db 'Hello, World!',0dh,0ah,'$'
.code
main proc
mov ax,@data
mov ds,ax
mov ah,9
mov dx,offset hello_message
int 21h
mov ax,4C00h
int 21h
main endp
end main
Παράδειγα γραφής κώδικα σε:
Fortran 95/2003 Assembly Language for the IBM-PC
9
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
10
Υπο – περιοχές της Βελτιστοποίησης
10
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
11
Λογισικό που περιλαβάνει προγράατα – λύτες για πολλές και
διαφορετικές κατηγορίες προβληάτων, συνήθως ε κοινή γραφική
διεπιφάνεια χρήστη.
Εκπαιδευτικό λογισικό για
εκάθηση αλγορίθων
βελτιστοποίησης, (educational
optimization software)
Λογισικό – λύτες προβληάτων
βελτιστοποίησης εγάλης κλίακας,
(large scale optimization)
Λογισικά Πακέτα
Χρήστες: Καθηγητές - ΦοιτητέςΧρήστες: Ερευνητές - Managers
11
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
1212
Εκπαιδευτικά Λογισικά Πακέτα,
για εκάθηση Αλγορίθων Βελτιστοποίησης
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
19
Matlab Optimization Toolbox 3.1.1
http://www.mathworks.com/products/optimization
19
• Υλοποιηένοι αλγόριθοι που επιλύουν
προβλήατα:
i.Γραικής βελτιστοποίησης,
ii.Μη γραικής βελτιστοποίησης,
iii.Πολυκριτήριας βελτιστοποίησης,
iv.Ακεραίου προγραατισού,
v.κ.α.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
20
NETFLOW
ftp://dimacs.rutgers.edu/pub/netflow
20
Λογισικό πακέτο δικτυακής βελτιστοποίησης, το οποίο περιλαβάνει:
• Υλοποιηένο τον αλγόριθο, τύπου simplex,των Kennington και Helgason για προβλήατα
Ροής Ελαχίστου Κόστους (minimum cost network flow),υλοποιηένο τον αλγόριθο του
Goldberg για προβλήατα Μεγίστης Ροής (maximum flow),κ.α.
• Συλλογές στιγιοτύπων από διάφορες κατηγορίες προβληάτων, αρχεία πραγατικών
προβληάτων,
• Μετροπρογράατα (benchmarks),
• Γεννήτριες τυχαίων προβληάτων, (random problem generators).
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
21
ILOG CPLEX 10.0
http://www.ilog.com/products/cplex
• CPLEX Simplex Optimizers
Επίλυση προβληάτων ε τον πρωτεύοντα αλγόριθο Simplex, τον υϊκό αλγόριθο Simplex,
τον αλγόριθο Simplex για προβλήατα δικτύων,ε εκατούρια περιορισών και εταβλητών
• CPLEX Mixed Integer Optimizer
Επίλυση προβληάτων ε ικτές – ακέραιες εταβλητές (γενικές ή δυαδικές), ε χρήση
γραικής ή δευτεροβάθιας αντικειενικής συνάρτησης.
• CPLEX Barrier Optimizer
Επίλυση προβληάτων τόσο γραικού όσο και τετραγωνικού προγραατισού (linear &
quadratic programming problems), ή και προβλήατα (second order cone programming
problems)
21
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
22
LINGO 10.0
http://www.lindo.com
22
• Με τη γλώσσα οντελοποίησης του
LINGO, κατασκευάζονται και επιλύονται
διάφορα οντέλα από τον χρήστη.
•Αυτόατη επιλογή του πιο κατάλληλου
λύτη για την επίλυση προβληάτων
Γραικού και η – γραικού
προγραατισού, Ακεραίου
προγραατισού, κ.α.
• Άντληση δεδοένων από λογιστικά φύλλα
ή βάσεις δεδοένων.
• Ο λύτης είναι και σε ορφή DLL και
πορεί να κληθεί από ακροεντολή του
Excel, κώδικα προγράατος Η/Υή
εφαρογή βάσεων δεδοένων, κ.α.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
2323
KNITRO 5.1
http://www.ziena.com/knitro.htm
• Επίλυση προβληάτων γραικού, η γραικού,
τετραγωνικού προγραατισού, κ.α.
• Μπορεί να χρησιοποιηθεί ως λύτης στα προγραατιστικά
περιβάλλοντα AMPL, AIMMS, Mathematica, Microsoft Excel,
GAMS, LabVIEWκαι MATLAB.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
24
ILOG Transport PowerOps
http://www.ilog.com/products/transportpowerops
24
• Κατασκευάζει αναλυτικά πλάνα
εταφοράς για ελαχιστοποίηση κόστων
εταφοράς και άλλων υπηρεσιών σε
πολύπλοκα εταφορικά δίκτυα.
• Παράγει βέλτιστα, ηερήσια και
εβδοαδιαία, πλάνα εταφοράς για
διάφορα εταφορικά έσα, υπό διάφορους
επιχειρησιακούς περιορισούς.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
25
ILOG LogicTools
http://www.ilog.com/products/logictools
• Ανάλυση What-If σεναρίων:
Μελέτη πιθανών αποτελεσάτων από τη διανοή
και κατασκευή δικτύων ή προσθήκη/ κατάργηση
εγκαταστάσεων και αποθηκών.
• Ελαχιστοποίηση συνολικού κόστους
εφοδιαστικής αλυσίδας:
Αναγνώριση του πιο οικονοικού δικτύου
εφοδιαστικής αλυσίδας (help identify the most
cost-efficient supply chain network).
• ιαχείριση ανάπτυξης επιχείρησης:
Αξιολόγηση του δικτύου και εκτίηση πού και
πότε απαιτείται η κατασκευή νέων
εγκαταστάσεων.
25
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
2626
Best Routing and Scheduling
http://www.elogistics.gr/apProducts/index.asp?show=BRS
• Εύρεση του πιο αποτελεσατικού τρόπου για εξυπηρέτηση
ιας σειράς προορισών από διάφορες περιοχές
αποθήκευσης ή παραγωγής.
• Εύρεση πολλαπλών άλλων δικτύων όταν οι δυνατότητες για
φόρτωση των πόρων εταφοράς αποτελούν τροχοπέδη στην
χρησιοποίηση της ελάχιστης (χρόνο και χλ) διαδροής.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
27
RISKOptimizer
http://www.palisade-europe.com/riskoptimizer
27
• Εργαλείο λήψης αποφάσεων, (Decision making tool). Βελτιστοποίηση οντέλων που
περιλαβάνουν αβεβαιότητα, «στοχαστικούς» παράγοντες. Το RISKOptimizer εκτελεί
βελτιστοποίηση των προσοοιώσεων, υπολογίζοντας τον συνδυασό των εταβλητών οι οποίες
παράγουν τα καλύτερα αποτελέσατα της προσοοίωσης.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
2828
Search engine optimization software V 2.05
www.1stposition.net
Search Engine Optimization Pro 3.6
www.1-search-engine-optimization.net
Web Optimization Easy Pro 4.00
www.websitepromotionsoft.com/website-
optimization.html
• είχνουν ποιες λέξεις κλειδιά είναι πιθανότερο να χρησιοποιούν οι επισκέπτες ίας
ιστοσελίδας για να σας βρούν. Γεννήτριες λέξεων κλειδιών παράγουν τις πιο δηοφιλείς
λέξεις κλειδιά σχετικά ε τον τύπο της επιχείρησης.
• Βελτιστοποίηση κεντρικών σελίδων ε χρήση κατάλληλων λέξεων – κλειδιών οδηγεί σε
δραστική αύξηση της επισκεψιότητας σε ιστοσελίδες και βελτίωση στη σειρά εφάνισης
αποτελεσάτων των ηχανών αναζήτησης.
Εργαλεία βελτιστοποίησης ηχανών αναζήτησης
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
29
Leto 1.0
http://www.entelechon.com
• Ανάλυση και βελτιστοποίηση ακολουθιών DNA,για
την καλύτερη δυνατή παραγωγή πρωτεϊνών από
γονίδια.
• Βελτιστοποίηση γονιδίων (gene optimization),
σύφωνα ε περίπλοκες απαιτήσεις για ια πληθώρα
εφαρογών.
Λογισικά πακέτα βελτιστοποίησης για
εφαρογές Βιοπληροφορικής
29
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3030
ιαδικτυακό λογισικό,
(web based software)
Λογισικό που εγκαθίσταται
τοπικά σε έναν Η/Υ,
(stand alone applications)
Λογισικά Πακέτα
Άλλος διαχωρισός:
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3131
NEOS Solvers
http://neos.mcs.anl.gov/neos/solvers
Συλλογή λυτών διαδικτυακά προσβάσιοι, για την επίλυση
προβληάτων:
• Συνδυαστικής Βελτιστοποίησης,
• ικτυακής Βελτιστοποίησης,
• Γραικής Βελτιστοποίησης,
• Μικτού Ακεραίου Γραικού Προγραατισού,
• Μη γραικής βελτιστοποίησης, ε περιορισούς,
• κ.α….
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3232
Προσθήκη σχολίων
Επιλογή λοιπών παραέτρων,
αρχικοποίησης αλγορίθου
“Upload” αρχείου ε την περιγραφή,
του προβλήατος βελτιστοποίησης
Συπλήρωση email διεύθυνσης,
για αποστολή των αποτελεσάτων
Χειριστήρια ελέγχου,
για αποστολή στον Server
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3333
c
c This is a simple example file to demonstrate the
c DIMACS input file format for minimum-cost flow problems.
c
c problem line :
p min 4 5c
c node descriptor lines :
n 1 4
n 4 -4c
c arc descriptor lines :
a 1 2 0 4 2
a 1 3 0 2 2
a 2 3 0 2 1
a 2 4 0 3 3
a 3 4 0 5 1
Παράδειγα χρήσης του NEOS Server
i.Μοντελοποίηση φυσικού προβλήατος, ε τη βοήθεια
αθηατικών οντέλων,
ii.Αποθήκευση παραέτρων του προβλήατος, σε ειδικής
ορφής αρχείο
iii.Αποστολή αρχείου στον server.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3434
Λογισικό ανοιχτού κώδικά,
(Open source software)
Επορικό λογισικό,
(commercial, proprietary software)
Λογισικά Πακέτα
Άλλος διαχωρισός:
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3535
Open Source for the Operations
Research community
http://www.coin-or.org
GNU Octave
http://www.gnu.org/software/octave
• Γλώσσα υψηλού επιπέδου κυρίως για αριθητικούς υπολογισούς,
• Επίλυση, έσω γραής εντολών, προβληάτων γραικού και η – γραικού
προγραατισού, κ.α.
• Συβατή σε εγάλο βαθό ε το επορικό πακέτο Matlab
LEMON, (Library of Efficient Models and Optimization in Networks)
http://www.cs.elte.hu/opres/research.html
Συλλογή ρουτινών γραένες σε C++ που στοχεύει στην επίλυση συνδυαστικών προβληάτων
βελτιστοποίησης (combinatorial optimization tasks), κυρίως για προβλήατα ε γράφους και
δίκτυα.
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3636
Συγκριτικές Αξιολογήσεις για Λογισικά
Πακέτα Βελτιστοποίησης
Decision Analysis Software Survey, OR/MS Today, December 2006
http://lionhrtpub.com/orms/surveys/das/das.html
Vehicle Routing Software Survey, OR/MS Today, June 2006.
http://lionhrtpub.com/orms/surveys/Vehicle_Routing/vrss.html
Linear Programming Software Survey, OR/MS Today, June 2005.
http://lionhrtpub.com/orms/surveys/LP/LP-survey.html
Statistical Analysis Software Survey, OR/MS Today, February 2007.
http://lionhrtpub.com/orms/surveys/sa/sa-survey.html
Forecasting Software Survey, OR/MS Today, August 2006.
http://lionhrtpub.com/orms/surveys/FSS/FSS.html
Institute for Operations
Research and the
Management Sciences,
(INFORMS)
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3737
• Jorge J. More and Stephen J. Wright, Optimization Software Guide, SIAM
Publications, 1993.
• Stephen J. Wright, Optimization Software Packages, Technical Report, Mathematics and
Computers Science Division, Argonne National Laboratory,1999.
• NEOS Guide: Optimization Software
http://www-fp.mcs.anl.gov/otc/Guide/SoftwareGuide
Βιβλιογραφικές πηγές σχετικά
ε Λογισικά Πακέτα Βελτιστοποίησης
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3838
Optimization Methods and Software,
published by Taylor & Francis, (2005 Impact Factor: 0.477)
http://www.tandf.co.uk/journals/titles/10556788.asp
ιεθνή Περιοδικά που ασχολούνται ε Λογισικά
Πακέτα Βελτιστοποίησης
SIAM Journal on Optimization,
published by SIAM, (2005 Impact Factor: 1.238)
http://www.siam.org/journals/siopt.php
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
3939
2
nd
Conference on Optimization Methods & Software,
July 4-7, 2007, Prague, Czech Republic.
http://cio.umh.es/europt-oms
9
th
SIAM Conference on Optimization,
May 10-13, Boston, Massachusetts, 2008.
http://www.siam.org/meetings/calendar.php?id=191
ιεθνή Συνέδρια που ασχολούνται ε Λογισικά
Πακέτα Βελτιστοποίησης
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
4040
INFORMS Optimization Society
http://archimedes.scs.uiuc.edu/informs_os/os.html
SIAM Activity Group on Optimization - SIAG/OPT
http://www-unix.mcs.anl.gov/~leyffer/siagopt
ιεθνείς επιστηονικές κοινότητες, που ασχολούνται
ε Λογισικά Πακέτα Βελτιστοποίησης
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
4141
Ελληνική κοινότητα, επιστηονικά περιοδικά και
συνέδρια, που ασχολούνται ε Λογισικά Πακέτα
Βελτιστοποίησης
Ελληνική Εταιρία Επιχειρησιακών Ερευνών, (ΕΕΕΕ)
http://www.eeee.org.gr
19
ο
Εθνικό Συνέδριο, Ελληνικής Εταιρίας Επιχειρησιακών
Ερευνών (Ε.Ε.Ε.Ε.), 21 - 23 Ιουνίου 2007, Άρτα.
http://eeee2007.uoi.gr
OPERATIONAL RESEARCH, An International Journal
http://www.ergasya.tuc.gr/orij
Καθ. Παπαρρίζος Κων/νος, ιάλεξη στο Τήα
ιοίκησης Τεχνολογίας, Νάουσα
4242
Ευχαριστώ πολύ για την προσοχή σας!
Για οποιεσδήποτε απορίες, στέλνετε email στην διεύθυνση:
paparriz@uom.gr