Η διάλεξη πραγµατοποιείται στα πλαίσια υλοποίησης του έργου «ιεύρυνση της Τριτοβάθµιας Εκπαίδευσης Πανεπιστήµιο Μακεδονίας (2004-2006)» - Υποέργο «Τµήµα ιοίκησης Τεχνολογίας (2006-2008)», Κατηγορία Πράξεων 2.2.2.β «ιεύρυνση της ΤριτοβάθµιαςΕκπαίδευσης», Ενέργεια 2.2.2. «Ολοκλήρωση τηςδιεύρυνσης και αναµόρφωση των προγραµµάτων της τριτοβάθµιαςεκπαίδευσης», Μέτρο 2.2. «Αναµόρφωση Προγραµµάτων Σπουδών ιεύρυνση Τριτοβάθµιας Εκπαίδευσης», µε χρονική διάρκεια από 1/9/2004 µέχρι 31/8/2008 το οποίο εκτελείται στα πλαίσια του Επιχειρησιακού Προγράµµατος Εκπαίδευσης και Αρχικής Επαγγελµατικής Κατάρτισης II (ΕΠΕΑΕΚ II) καισυγχρηµατοδοτείταιαπότηνευρωπαϊκήένωση [3 ο ΚοινοτικόΠλαίσιοΣτήριξηςκατά 75% ΚοινοτικήΣυµµετοχή (ΕΚΤ) και 25% ΕθνικοίΠόροι]. Βελτιστοποίησης Καθ. Παπαρρίζος Κων/νος Καθηγητής στο Τµ. Εφαρµοσµένης Πληροφορικής, του Πανεπιστηµίου Μακεδονίας, Οικονοµικών και Κοινωνικών Σπουδών Στα Μαθηµατικά ο όρος Βελτιστοποίηση αναφέρεται στη µελέτη προβληµάτων, όπου κάποιος προσπαθεί να ελαχιστοποιήσει ή να µεγιστοποιήσει µια συνάρτηση, κάνοντας συστηµατική επιλογή των τιµών κάποιων µεταβλητών, από ένα επιτρεπτό σύνολο. Παράδειγµα: 2 min x + 1 x R Το ζητούµενο είναι η ελάχιστη τιµή της αντικειµενικής 2 συνάρτησης x +1 όπου η µεταβλητή x ανήκει στο σύνολο των πραγµατικών αριθµών. Η ελάχιστη τιµή, σε αυτήν την περίπτωση είναι 1, η οποία επιτυγχάνεται για x = 0 1 2 Στην Πληροφορική προκύπτει µια πληθώρα εφαρµογών Βελτιστοποίησης. Ένα πρόγραµµα σε Η/Υ µπορεί να βελτιστοποιηθεί ώστε να: i. Εκτελείται πιο γρήγορα, ii. Να λειτουργεί χρησιµοποιώντας λιγότερη αποθηκευτική µνήµη, iii. Να έχει µικρότερη ενεργειακή κατανάλωση, π.χ. µπαταρίας σε φορητούς υπολογιστές. Βελτιστοποίηση, από την πλευρά του: 1. Προγραµµατιστή Ερευνητή, 2. Απλού χρήστη (π.χ. ένας διευθύνων σύµβουλος που λαµβάνει αποφάσεις για λογαριασµό µιας εταιρίας) 3 4 Σε υψηλό επίπεδο, µε χρήση αποδοτικών αλγορίθµων, (effiient algorithms). Σύγκριση και επιλογή αλγορίθµου σύµφωνα µε τη Θεωρία της Πολυπλοκότητας (Complexity Theory) Σε υψηλό επίπεδο, µε χρήση βελτιστοποιηµένων µεταγλωττιστών, (optimizing ompilers) IEEE Annals of the History of Computing, the ompiler "produed ode of suh effiieny that its output would startle the programmers who studied it. 5 6
Σε υψηλό επίπεδο, µε χρήση : Τεχνικών Βελτιστοποίησης στη συγγραφή κώδικα Η/Υ, π.χ.: Χρήση τεχνικών διανυσµατοποίησης υπολογισµών (vetorized omputation) Εξειδικευµένουλογισµικού, όπως: i. Intel VTune Performane Analyzer, ii. Mathworks Matlab profiler Σε υψηλό επίπεδο, µε χρήση βελτιστοποιηµένων σε απόδοση βιβλιοθηκών, (optimized performane libraries) 1. LAPACK - Linear Algebra PACKage http://www.netlib.org/lapak 2. Intel Math Kernel Library (Intel MKL) http://www3.intel.om/d/software/produts/asmo-na/eng/307757.htm 3. AMD Core Math Library (ACML) http://developer.amd.om/aml.jsp 4. Sun Performane Library http://developers.sun.om/sunstudio/perflib_index.html 7 8 Σε χαµηλό επίπεδο, µε συγγραφή κώδικα σε γλώσσα Assembly. Υπο περιοχές της Βελτιστοποίησης Fortran 95/2003 program main print*, "hello World!" end program main Παράδειγµα γραφής κώδικα σε: Assembly Language for the IBM-PC title Hello World Program ; This program displays "Hello, World!" dosseg.model small.stak 100h.data hello_message db 'Hello, World!',0dh,0ah,'$'.ode main pro 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 9 10 Λογισµικό που περιλαµβάνει προγράµµατα λύτες για πολλές και διαφορετικές κατηγορίες προβληµάτων, συνήθως µε κοινή γραφική διεπιφάνεια χρήστη. Λογισµικό λύτες προβληµάτων βελτιστοποίησης µεγάλης κλίµακας, (large sale optimization) Εκπαιδευτικό λογισµικό για εκµάθηση αλγορίθµων βελτιστοποίησης, (eduational optimization software) Εκπαιδευτικά, για εκµάθηση Αλγορίθµων Βελτιστοποίησης Χρήστες: Ερευνητές - Managers Χρήστες: Καθηγητές - Φοιτητές 11 12
Χαρακτηριστικά αναφέρονται τα εξής: 1. Γραµµικής Βελτιστοποίησης, (linear optimization) VisualLinProg http://eos.uom.gr/~sifalera/visuallinprog/english_version VisualLinProg Lazaridis V, Paparrizos K., Samaras N. and Sifaleras A., Visual LinProg: A Web-based Eduational Software for Linear Programming, To appear in Computer Appliations in Engineering Eduation, Wiley Publiations, Vol. 15, No. 1, 2007. 2. ικτυακής Βελτιστοποίησης, (network optimization) i. WebNetPro http://eos.uom.gr/~sifalera/webnetpro ii. Visualization Software for the assignment problem iii. Visualization Software for the network simplex algorithm http://eos.uom.gr/~thanasis/phd.html 13 14 WebNetPro Karagiannis P., Markelis I., Paparrizos K., Samaras N. and Sifaleras A., E learning tehnologies: employing matlab web server to failitate the eduation of mathematial programming, The International Journal of Mathematial Eduation in Siene and Tehnology, Taylor & Franis Publiations, Vol. 37, No. 7, pp. 765-782, 2006. Visualization Software for the assignment problem Andreou D., Paparrizos K., Samaras N. and Sifaleras A., Appliation of a New Network enabled Solver for the Assignment Problem in Computer aided Eduation, Journal of Computer Siene, Siene Publiations, Vol. 1, No. 1, pp. 19-23, 2005. 15 16 Visualization Software for the network simplex algorithm Baloukas Th., Paparrizos K. and Sifaleras A., Promoting Operations Researh eduation using a new web aessible didati tool, in Pro. of the 7 th Balkan Conferene on Operational Researh (BACOR 05), 25-28 May, Constanta, Romania, 2005. Λογισµικά πακέτα για προβληµάτα βελτιστοποίησης µεγάλης κλίµακας 17 18
Matlab Optimization Toolbox 3.1.1 http://www.mathworks.om/produts/optimization Υλοποιηµένοι αλγόριθµοι που επιλύουν προβλήµατα: i. Γραµµικής βελτιστοποίησης, ii. Μη γραµµικής βελτιστοποίησης, iii. Πολυκριτήριας βελτιστοποίησης, iv. Ακεραίου προγραµµατισµού, v. κ.α. NETFLOW ftp://dimas.rutgers.edu/pub/netflow Λογισµικό πακέτο δικτυακής βελτιστοποίησης, το οποίο περιλαµβάνει: Υλοποιηµένο τον αλγόριθµο, τύπου simplex, των Kennington και Helgason για προβλήµατα Ροής Ελαχίστου Κόστους (minimum ost network flow), υλοποιηµένο τον αλγόριθµο του Goldberg για προβλήµατα Μεγίστης Ροής (maximum flow), κ.α. Συλλογές στιγµιοτύπων από διάφορες κατηγορίες προβληµάτων, αρχεία πραγµατικών προβληµάτων, Μετροπρογράµµατα (benhmarks), Γεννήτριεςτυχαίωνπροβληµάτων, (random problem generators). 19 20 ILOG CPLEX 10.0 http://www.ilog.om/produts/plex CPLEX Simplex Optimizers Επίλυσηπροβληµάτωνµετονπρωτεύοντααλγόριθµο Simplex, τον υϊκόαλγόριθµο Simplex, τον αλγόριθµο Simplex για προβλήµατα δικτύων, µε εκατοµµύρια περιορισµών και µεταβλητών CPLEX Mixed Integer Optimizer Επίλυση προβληµάτων µε µικτές ακέραιες µεταβλητές (γενικές ή δυαδικές), µε χρήση γραµµικής ή δευτεροβάθµιας αντικειµενικής συνάρτησης. CPLEX Barrier Optimizer Επίλυση προβληµάτων τόσο γραµµικού όσο και τετραγωνικού προγραµµατισµού (linear & quadrati programming problems), ή και προβλήµατα (seond order one programming problems) 21 LINGO 10.0 http://www.lindo.om Με τη γλώσσα µοντελοποίησης του LINGO, κατασκευάζονται και επιλύονται διάφορα µοντέλα από τον χρήστη. Αυτόµατη επιλογή του πιο κατάλληλου λύτη για την επίλυση προβληµάτων Γραµµικού και µη γραµµικού προγραµµατισµού, Ακεραίου προγραµµατισµού, κ.α. Άντληση δεδοµένων από λογιστικά φύλλα ή βάσεις δεδοµένων. Ολύτηςείναικαισεµορφή DLL και µπορεί να κληθεί από µακροεντολή του Exel, κώδικα προγράµµατος Η/Υ ή εφαρµογή βάσεων δεδοµένων, κ.α. 22 KNITRO 5.1 http://www.ziena.om/knitro.htm Επίλυση προβληµάτων γραµµικού, τετραγωνικού προγραµµατισµού, κ.α. µη γραµµικού, Μπορεί να χρησιµοποιηθεί ως λύτης στα προγραµµατιστικά περιβάλλοντα AMPL, AIMMS, Mathematia, Mirosoft Exel, GAMS, LabVIEWκαι MATLAB. ILOG Transport PowerOps http://www.ilog.om/produts/transportpowerops Κατασκευάζει αναλυτικά πλάνα µεταφοράς για ελαχιστοποίηση κόστων µεταφοράς και άλλων υπηρεσιών σε πολύπλοκα µεταφορικά δίκτυα. Παράγει βέλτιστα, ηµερήσια και εβδοµαδιαία, πλάνα µεταφοράς για διάφορα µεταφορικά µέσα, υπό διάφορους επιχειρησιακούς περιορισµούς. 23 24
ILOG LogiTools http://www.ilog.om/produts/logitools Ανάλυση What-If σεναρίων: Μελέτη πιθανών αποτελεσµάτων από τη διανοµή και κατασκευή δικτύων ή προσθήκη / κατάργηση εγκαταστάσεων και αποθηκών. Ελαχιστοποίηση συνολικού κόστους εφοδιαστικής αλυσίδας: Αναγνώριση του πιο οικονοµικού δικτύου εφοδιαστικήςαλυσίδας (help identify the most ost-effiient supply hain network). Best Routing and Sheduling http://www.elogistis.gr/approduts/index.asp?show=brs Εύρεση του πιο αποτελεσµατικού τρόπου για εξυπηρέτηση µιας σειράς προορισµών από διάφορες περιοχές αποθήκευσης ή παραγωγής. Εύρεση πολλαπλών άλλων δικτύων όταν οι δυνατότητες για φόρτωση των πόρων µεταφοράς αποτελούν τροχοπέδη στην χρησιµοποίηση της ελάχιστης (χρόνο και χλµ) διαδροµής. ιαχείριση ανάπτυξης επιχείρησης: Αξιολόγηση του δικτύου και εκτίµηση πού και πότε απαιτείται η κατασκευή νέων εγκαταστάσεων. 25 26 RISKOptimizer http://www.palisade-europe.om/riskoptimizer Εργαλείο λήψης αποφάσεων, (Deision making tool). Βελτιστοποίηση µοντέλων που περιλαµβάνουν αβεβαιότητα, «στοχαστικούς» παράγοντες. Το RISKOptimizer εκτελεί βελτιστοποίηση των προσοµοιώσεων, υπολογίζοντας τον συνδυασµό των µεταβλητών οι οποίες παράγουν τα καλύτερα αποτελέσµατα της προσοµοίωσης. Εργαλεία βελτιστοποίησης µηχανών αναζήτησης είχνουν ποιες λέξεις κλειδιά είναι πιθανότερο να χρησιµοποιούν οι επισκέπτες µίας ιστοσελίδας για να σας βρούν. Γεννήτριες λέξεων κλειδιών παράγουν τις πιο δηµοφιλείς λέξεις κλειδιά σχετικά µε τον τύπο της επιχείρησης. Βελτιστοποίηση κεντρικών σελίδων µε χρήση κατάλληλων λέξεων κλειδιών οδηγεί σε δραστική αύξηση της επισκεψιµότητας σε ιστοσελίδες και βελτίωση στη σειρά εµφάνισης αποτελεσµάτων των µηχανών αναζήτησης. Searh engine optimization software V 2.05 www.1stposition.net Searh Engine Optimization Pro 3.6 www.1-searh-engine-optimization.net 27 Web Optimization Easy Pro 4.00 www.websitepromotionsoft.om/websiteoptimization.html 28 Λογισµικά πακέτα βελτιστοποίησης για εφαρµογές Βιοπληροφορικής Άλλος διαχωρισµός: Leto 1.0 http://www.entelehon.om Ανάλυση και βελτιστοποίηση ακολουθιών DNA, για την καλύτερη δυνατή παραγωγή πρωτεϊνών από γονίδια. Βελτιστοποίηση γονιδίων (gene optimization), σύµφωνα µε περίπλοκες απαιτήσεις για µια πληθώρα εφαρµογών. Λογισµικό που εγκαθίσταται τοπικά σε έναν Η/Υ, (stand alone appliations) ιαδικτυακό λογισµικό, (web based software) 29 30
NEOS Solvers http://neos.ms.anl.gov/neos/solvers Συλλογή λυτών διαδικτυακά προσβάσιµοι, για την επίλυση προβληµάτων: ΣυνδυαστικήςΒελτιστοποίησης, ικτυακήςβελτιστοποίησης, ΓραµµικήςΒελτιστοποίησης, Μικτού Ακεραίου Γραµµικού Προγραµµατισµού, Μη γραµµικής βελτιστοποίησης, µε περιορισµούς, κ.α. Upload αρχείου µε την περιγραφή, του προβλήµατος βελτιστοποίησης Επιλογή λοιπών παραµέτρων, αρχικοποίησης αλγορίθµου Προσθήκη σχολίων Συµπλήρωση email διεύθυνσης, για αποστολή των αποτελεσµάτων Χειριστήρια ελέγχου, για αποστολή στον Server 31 32 Παράδειγµα χρήσης του NEOS Server i. Μοντελοποίηση φυσικού προβλήµατος, µε τη βοήθεια µαθηµατικών µοντέλων, ii. Αποθήκευση παραµέτρων του προβλήµατος, σε ειδικής µορφής αρχείο iii. Αποστολή αρχείου στον server. Άλλος διαχωρισµός: This is a simple example file to demonstrate the DIMACS input file format for minimum-ost flow problems. problem line : p min 4 5 node desriptor lines : n 1 4 n 4-4 ar desriptor 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 Εµπορικόλογισµικό, (ommerial, proprietary software) Λογισµικό ανοιχτού κώδικά, (Open soure software) 33 34 Open Soure for the Operations Researh ommunity http://www.oin-or.org GNU Otave http://www.gnu.org/software/otave Γλώσσα υψηλού επιπέδου κυρίως για αριθµητικούς υπολογισµούς, Επίλυση, µέσω γραµµής εντολών, προβληµάτων γραµµικού και µη γραµµικού προγραµµατισµού, κ.α. Συµβατή σε µεγάλο βαθµό µε το εµπορικό πακέτο Matlab LEMON, (Library of Effiient Models and Optimization in Networks) http://www.s.elte.hu/opres/researh.html Συλλογή ρουτινών γραµµένες σε C++ που στοχεύει στην επίλυση συνδυαστικών προβληµάτων βελτιστοποίησης (ombinatorial optimization tasks), κυρίως για προβλήµατα µε γράφους και δίκτυα. 35 Συγκριτικές Αξιολογήσεις για Λογισµικά Πακέτα Βελτιστοποίησης Deision Analysis Software Survey, OR/MS Today, Deember 2006 http://lionhrtpub.om/orms/surveys/das/das.html Vehile Routing Software Survey, OR/MS Today, June 2006. http://lionhrtpub.om/orms/surveys/vehile_routing/vrss.html Linear Programming Software Survey, OR/MS Today, June 2005. http://lionhrtpub.om/orms/surveys/lp/lp-survey.html Statistial Analysis Software Survey, OR/MS Today, February 2007. http://lionhrtpub.om/orms/surveys/sa/sa-survey.html Foreasting Software Survey, OR/MS Today, August 2006. http://lionhrtpub.om/orms/surveys/fss/fss.html Institute for Operations Researh and the Management Sienes, (INFORMS) 36
Βιβλιογραφικές πηγές σχετικά µε Βελτιστοποίησης ιεθνή Περιοδικά που ασχολούνται µε Λογισµικά Πακέτα Βελτιστοποίησης Jorge J. More and Stephen J. Wright, Optimization Software Guide, SIAM Publiations, 1993. Optimization Methods and Software, published by Taylor & Franis, (2005 Impat Fator: 0.477) http://www.tandf.o.uk/journals/titles/10556788.asp Stephen J. Wright, Optimization Software Pakages, Tehnial Report, Mathematis and Computers Siene Division, Argonne National Laboratory,1999. NEOS Guide: Optimization Software http://www-fp.ms.anl.gov/ot/guide/softwareguide SIAM Journal on Optimization, published by SIAM, (2005 Impat Fator: 1.238) http://www.siam.org/journals/siopt.php 37 38 ιεθνή Συνέδρια που ασχολούνται µε Λογισµικά Πακέτα Βελτιστοποίησης ιεθνείς επιστηµονικές κοινότητες, που ασχολούνται µε Βελτιστοποίησης 2 nd Conferene on Optimization Methods & Software, July 4-7, 2007, Prague, Czeh Republi. http://io.umh.es/europt-oms 9 th SIAM Conferene on Optimization, May 10-13, Boston, Massahusetts, 2008. http://www.siam.org/meetings/alendar.php?id=191 INFORMS Optimization Soiety http://arhimedes.ss.uiu.edu/informs_os/os.html SIAM Ativity Group on Optimization - SIAG/OPT http://www-unix.ms.anl.gov/~leyffer/siagopt 39 40 Ελληνική κοινότητα, επιστηµονικά περιοδικά και συνέδρια, που ασχολούνται µε Βελτιστοποίησης Ευχαριστώπολύγιατηνπροσοχήσας! Ελληνική Εταιρία Επιχειρησιακών Ερευνών, (ΕΕΕΕ) http://www.eeee.org.gr 19 ο Εθνικό Συνέδριο, Ελληνικής Εταιρίας Επιχειρησιακών Ερευνών (Ε.Ε.Ε.Ε.), 21-23 Ιουνίου 2007, Άρτα. http://eeee2007.uoi.gr Για οποιεσδήποτε απορίες, στέλνετε email στην διεύθυνση: paparriz@uom.gr OPERATIONAL RESEARCH, An International Journal http://www.ergasya.tu.gr/orij 41 42