ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ: ΤΕΧΝΙΚΕΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ ΜΕΘΟ ΟΙ ΕΠΙΛΥΣΗΣ ΚΑΙ ΕΦΑΡΜΟΓΕΣ. Αντώνης Οικονόµου ηµήτρης Καγιούλης Ιγνάτιος Χάρος ΕΠΙΣΚΟΠΗΣΗ

Σχετικά έγγραφα
max c 1 x 1 + c 2 x c n x n υπό a 11 x 1 + a 12 x a 1n x n b 1 a 21 x 1 + a 22 x a 2n x n b 2 a m1 x 1 + a m2 x a mn x n b m

ΚΕΦΑΛΑΙΟ 1 ΤΕΧΝΙΚΕΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ 1.1 ΒΑΣΙΚΕΣ ΤΕΧΝΙΚΕΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ

Βασική Εφικτή Λύση. Βασική Εφικτή Λύση

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1

ΘΕΑΝΩ ΕΡΙΦΥΛΗ ΜΟΣΧΟΝΑ ΣΥΜΠΛΗΡΩΜΑΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ

Γραµµικός Προγραµµατισµός - Μέθοδος Simplex

Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ

Ακέραιος Γραμμικός Προγραμματισμός

Επιχειρησιακή Έρευνα Θεωρητική Θεμελίωση της Μεθόδου Simplex

ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΤΗΣ ΜΕΘΟΔΟΥ SIMPLEX

Ακέραιος Γραµµικός Προγραµµατισµός

Ακέραιος Γραμμικός Προγραμματισμός

Ακέραιος Γραµµικός Προγραµµατισµός

για NP-Δύσκολα Προβλήματα

Γραμμικός Προγραμματισμός Μέθοδος Simplex

Εισαγωγή. Οπως είδαµε για την εκκίνηση της Simplex χρειαζόµαστε µια Αρχική Βασική Εφικτή Λύση. υϊσµός

Προσεγγιστικοί Αλγόριθμοι

Γραμμικός Προγραμματισμός

Κεφάλαιο 6. Μέθοδοι επίλυσης προβλημάτων ακέραιου προγραμματισμού

είναι πρόβλημα μεγιστοποίησης όλοι οι περιορισμοί είναι εξισώσεις με μη αρνητικούς του σταθερούς όρους όλες οι μεταβλητές είναι μη αρνητικές

ΚΕΦΑΛΑΙΟ 4. Ακέραια Πολύεδρα

Αλγόριθμοι Προσέγγισης για NP-Δύσκολα Προβλήματα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ - ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΕΙΣΑΓΩΓΙΚΕΣ ΜΕΤΑΠΤΥΧΙΑΚΕΣ ΕΞΕΤΑΣΕΙΣ 26 ΙΟΥΛΙΟΥ 2009 ΕΥΤΕΡΟ ΜΕΡΟΣ :

Ακέραιος Γραμμικός Προγραμματισμός

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Επιχειρησιακή Έρευνα I

Βασικές έννοιες και ορισµοί. Ευθεία

Πανεπιστήμιο Αιγαίου. Γραμμικός Προγραμματισμός

Simplex µε πίνακες Simplex µε πίνακες

Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» (ε) Κάθε συγκλίνουσα ακολουθία άρρητων αριθµών συγκλίνει σε άρρητο αριθµό.

ILP-Feasibility conp

Γραμμικός Προγραμματισμός

Προβλήµατα Μεταφορών (Transportation)

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Γραμμικός Προγραμματισμός

Γραφική Λύση & Πρότυπη Μορφή Μαθηματικού Μοντέλου

Κεφάλαιο 5ο: Ακέραιος προγραμματισμός

Γραμμικός Προγραμματισμός και θεωρία Παιγνίων

Προβλήματα Μεταφορών (Transportation)

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Προσεγγιστικοί Αλγόριθμοι

Βασικές έννοιες και ορισµοί. Ευθεία

Ζητούνται οι τιµές των µεταβλητών απόφασης που ελαχιστοποιούν τη γραµµική αντικειµενική συνάρτηση. n j = j = 1, 2,, n

11 Το ολοκλήρωµα Riemann

ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ Επιστήμη των Αποφάσεων, Διοικητική Επιστήμη

Μοντελοποίηση προβληµάτων

min f(x) x R n b j - g j (x) = s j - b j = 0 g j (x) + s j = 0 - b j ) min L(x, s, λ) x R n λ, s R m L x i = 1, 2,, n (1) m L(x, s, λ) = f(x) +

ΠΡΟΒΛΗΜΑΤΑ ΕΛΑΧΙΣΤΟΠΟΙΗΣΗΣ

ΑΚΕΡΑΙΟΣ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

Θεωρία Αποφάσεων και Βελτιστοποίηση

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΧΕΙΡΗΣΙΑΚΗ ΕΡΕΥΝΑ

Αλγόριθµοι και Πολυπλοκότητα

Κεφάλαιο 6. Εισαγωγή στη µέθοδο πεπερασµένων όγκων επίλυση ελλειπτικών και παραβολικών διαφορικών εξισώσεων

Κεφάλαιο 3ο: Γραμμικός Προγραμματισμός

ιοίκηση Παραγωγής και Υπηρεσιών

Δυναµικός Προγραµµατισµός (ΔΠ)

4.3. Γραµµικοί ταξινοµητές

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΠΕΡΙΤΤΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 4

Γραμμικός Προγραμματισμός

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι είναι οι γράφοι; Εφαρµογές των γράφων Γράφοι

Επιχειρησιακή Έρευνα I

5 Γενική µορφή εξίσωσης ευθείας

Αριθµητική Ανάλυση 1 εκεµβρίου / 43

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι

Θέµατα ( ικαιολογείστε πλήρως όλες τις απαντήσεις σας)

Θεωρία Αποφάσεων και Βελτιστοποίηση

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 4

Κεφάλαιο 7 Βάσεις και ιάσταση

Αριθµητική Γραµµική ΑλγεβραΚεφάλαιο 4. Αριθµητικός Υπολογισµός Ιδιοτιµών 2 Απριλίου και2015 Ιδιοδιανυσµάτων 1 / 50

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Αλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων

Branch and Bound. Branch and Bound

( ) = inf { (, Ρ) : Ρ διαµέριση του [, ]}

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι είναι οι γράφοι; Εφαρµογές των γράφων Γράφοι

Ακρότατα υπό συνθήκη και οι πολλαπλασιαστές του Lagrange

ΤΕΙ Χαλκίδας Σχολή Διοίκησης και Οικονομίας Τμήμα Διοίκησης Επιχειρήσεων

Συστήματα Ελέγχου με Μικροϋπολογιστές (h9p://courseware.mech.ntua.gr/ml23259/)

5.1 Ιδιοτιµές και Ιδιοδιανύσµατα

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα.

Επίλυση γεωµετρικών περιορισµών σε µικρά µόρια µε αλγεβρικές µεθόδους

3.3 ΑΛΓΕΒΡΙΚΗ ΕΠΙΛΥΣΗ ΓΡΑΜΜΙΚΟΥ

ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΑΚ. ΕΤΟΣ ΔΙΑΛΕΞΗ 6 η -Η ΔΥΙΚΗ ΜΕΘΟΔΟΣ SIMPLEX

Γραµµικός Προγραµµατισµός (ΓΠ)

Μάθηµα 1. Κεφάλαιο 1o: Συστήµατα. γ R παριστάνει ευθεία και καλείται γραµµική εξίσωση µε δύο αγνώστους.

Κεφάλαιο 3 ΠΑΡΑΓΩΓΟΣ. 3.1 Η έννοια της παραγώγου. y = f(x) f(x 0 ), = f(x 0 + x) f(x 0 )

3 Αναδροµή και Επαγωγή

ΚΕΦΑΛΑΙΟ 3 ΑΡΙΘΜΗΤΙΚΗ ΕΠΙΛΥΣΗ ΓΡΑΜΜΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. nn n n

ΑΛΓΕΒΡΙΚΕΣ ΟΜΕΣ Ι. Ασκησεις - Φυλλαδιο 2

Εφαρμοσμένη Βελτιστοποίηση

Αρµονική Ανάλυση. Ενότητα: L p Σύγκλιση. Απόστολος Γιαννόπουλος. Τµήµα Μαθηµατικών

Το θεώρηµα πεπλεγµένων συναρτήσεων

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

max 17x x 2 υπό 10x 1 + 7x 2 40 x 1 + x 2 5 x 1, x 2 0.

Αλγόριθµοι και Πολυπλοκότητα

Γενικευµένη Simplex Γενικευµένη Simplex

3 η δεκάδα θεµάτων επανάληψης

ΙΙ ιαφορικός Λογισµός πολλών µεταβλητών. ιαφόριση συναρτήσεων πολλών µεταβλητών

ιατύπωση τυπικής µορφής προβληµάτων Γραµµικού

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΜΑΘΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Transcript:

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ: ΤΕΧΝΙΚΕΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ ΜΕΘΟ ΟΙ ΕΠΙΛΥΣΗΣ ΚΑΙ ΕΦΑΡΜΟΓΕΣ Αντώνης Οικονόµου ηµήτρης Καγιούλης Ιγνάτιος Χάρος ΕΠΙΣΚΟΠΗΣΗ. Το πρόβληµα γραµµικού προγραµµατισµού - περίληψη 2. Το πρόβληµα ακέραιου προγραµµατισµού 3. Τεχνικές µοντελοποίησης 4. Κλασικά προβλήµατα 5. Σύγκριση εναλλακτικών µοντελοποιήσεων 6. η µέθοδος επίλυσης: Αποκοπτικών επιπέδων (Cutting plane) 7. 2 η µέθοδος επίλυσης: Κλάδος Φράγµα (Branch and bound) 8. 3 η µέθοδος επίλυσης: υναµικού προγραµµατισµού (Dynamic programming) 9. Προσεγγιστική µέθοδος επίλυσης: Προσοµοιωµένης βαφής (Simulated annealing)

2. Το πρόβληµα γραµµικού προγραµµατισµού περίληψη! Γενική µορφή Ελαχιστοποίηση ή µεγιστοποίηση µιας γραµµικής συνάρτησης υπό γραµµικούς περιορισµούς: min ή max( cx + cx 2 2+... + cx n n) a x + a x +... + a x b ή b... 2 2 n n a x + a x +... + a x b ή b 2 22 2 2n n 2 2 a x + a x +... + a x b ή b m m2 2 mn n m m xi 0 ή xi 0 ή xi R! Πινακική µορφή Κάθε γραµµικό πρόβληµα τίθεται στην τυπική πινακική µορφή min ( c'x) Ax = b x 0 όπου Α είναι ένας δοσµένος πίνακας και b, c δοσµένα διανύσµατα.! Βασικά στοιχεία που αφορούν τη λύση Η εφικτή περιοχή είναι πολύεδρο (στον R n ) H βέλτιστη λύση επιτυγχάνεται σε κορυφή της εφικτής περιοχής

3! Μέθοδοι λύσης Μέθοδος Simplex (Dantzig (947)) Αλγόριθµος εσωτερικού σηµείου (Karmarkar (984)) Μέθοδος του ελλειψοειδούς (πολυωνυµικής πολύπλοκότητας ως προς τα m,n) (Shor(970) Yudin and Nemirovskii(977))

4 Παράδειγµα υπό τους περιορισµούς Γεωµετρική Αναπαράσταση x 2 min( 2 2) x 4 6 2 9 x 0 x x + x x+ x2 4 x, x2 0 αντικειµενική συνάρτηση = c (0,4) αντικειµενική συνάρτηση = c 2 (min) Y-Axis 3 (0, ) 2 F x2 0 9 (,0) 4 + 4x 6x2 9 (4,0) x + x2 4 x (, 2) άξονας των συντελεστών της αντικειµενικής συνάρτησης

5 2. Το πρόβληµα ακέραιου προγραµµατισµού! Γενική Μορφή min c'x + d'y υπό τους περιορισµούς Ax + By = b xy, 0 x διάνυσµα ακεραίων όπου Α, Β δοσµένοι πίνακες b, c, d δοσµένα διανύσµατα (τα στοιχεία πινάκων και διανυσµάτων τυπικά υποτίθενται ακέραιοι) 3. Τεχνικές µοντελοποίησης! Τεχνική : Χρήση δυαδικών µεταβλητών για τη λήψη απόφασης µεταξύ δύο εναλλακτικών (δυαδική επιλογή).! Παράδειγµα : Η κατασκευαστική εταιρεία ΠΡΟΚΑΤ ΑΕ µελετά την επέκτασή της Κτίζοντας καινούργια εργοστάσια στην Θεσσαλονίκη ή / και στην Αθήνα. Κτίζοντας αποθήκες στην Θεσσαλονίκη ή / και στην Αθήνα εδοµένα που είναι γνωστά στην διεύθυνση:

6 Αριθµός απόφασης 2 3 4 Ερώτηση ναι ή όχι Μεταβλητή απόφασης Παρούσα καθαρή αξία Απαιτούµενο κεφάλαιο Κτίζω εργοστάσιο στην Αθήνα; x 9 εκατ. 6 εκατοµµύρια Κτίζω εργοστάσιο στην Θεσσαλονίκη; x 2 5 εκατ. 3 εκατοµµύρια Κτίζω αποθήκη στην Αθήνα; x 3 6 εκατ. 5 εκατοµµύρια Κτίζω αποθήκη στην Θεσσαλονίκη; x 4 4 εκατ. 2 εκατοµµύρια ιαθέσιµο κεφάλαιο 0 εκατ. Σκοπός: Μεγιστοποίηση της συνολικής καθαρής αξίας της επένδυσης. Το πρόβληµα αυτό είναι µικρό και µπορεί να λυθεί πολύ γρήγορα µε µια µατιά (χτίζω εργοστάσιο στη Θεσσαλονίκη και τις αποθήκες). Ωστόσο ας το µοντελοποιήσουµε προκειµένου να φανεί πως µπορεί να µοντελοποιηθεί ως πρόβληµα ακέραιου προγραµµατισµού. Έστω: x j, αν η απόφαση j είναι ναι = 0, αν η απόφαση j είναι όχι για ( j =,2,3,4)

7! Μοντέλο ακέραιου προγραµµατισµού µε τους περιορισµούς max z = 9x + 5x + 6x + 4x 2 3 4 6x+ 3x2+ 5x3+ 2x4 0 x j 0- ακέραιος ( j =,2,3,4).! Λύση Έχουµε x 2 = x 3 = x 4 = και x = 0 µε αντίστοιχη τιµή της αντικειµενικής συνάρτησης z = 5.

8! Τεχνική 2. Χρήση δυαδικών (0-) µεταβλητών για τη διατύπωση επιβαλλόµενων (αναγκαστικών) περιορισµών. Αυτή η τεχνική χρησιµοποιείται όταν θέλουµε να µοντελοποιήσουµε µία κατάσταση όπου οι αποφάσεις είναι αλληλοσχετιζόµενες. Για παράδειγµα ας υποθέσουµε ότι η απόφαση Α µπορεί να παρθεί µόνο αν η απόφαση Β έχει παρθεί. Εισάγουµε δυαδικές µεταβλητές xa, x B και θέτουµε τον περιορισµό xa xb. Τότε: Β όχι Α όχι ( xb = 0 xa= 0) (Η απόφαση Α δεν µπορεί να ληφθεί αν η Β είναι όχι).

9! Παράδειγµα 2: Στο παράδειγµα ας προσθέσουµε έναν ακόµη περιορισµό: Η επιλογή να κτιστεί µια αποθήκη επιτρέπεται µόνο στις περιοχές όπου ένα καινούργιο εργοστάσιο θα κτιστεί. Τότε οι αποφάσεις 3 και 4 είναι εξαρτώµενες από τις αποφάσεις και 2. Απαιτούµε x 3 = 0 αν x = 0. Οµοίως x 4 =0 αν x 2 = 0.! Μοντέλο ακέραιου προγραµµατισµού µε τους περιορισµούς max z = 9x + 5x + 6x + 4x 2 3 4 6x 3x2 5x3 2x4 0 + + + x x x 3 x 4 2 x j 0- ακέραιος ( j =,2,3,4).! Λύση x = x 2 =, x 3 = x 4 = 0, z = 4. Κατασκευή εργοστασίων σε Αθήνα και Θεσσαλονίκη αλλά όχι κατασκευή αποθηκών.

0! Τεχνική 3: Χρησιµοποίηση περιορισµών για την µοντελοποίηση σχέσεων µεταξύ αποφάσεων. Και αυτή η τεχνική χρησιµοποιείται όταν θέλουµε να µοντελοποιήσουµε αλληλοσχετιζόµενες αποφάσεις. Για παράδειγµα ας υποθέσουµε ότι µπορούµε να πάρουµε το πολύ µία από τις ναι/όχι αποφάσεις, 2,, n. Εισάγουµε δυαδικές µεταβλητές x, x 2,, x n και θέτουµε τον περιορισµό: n j= x j. Αυτός ο περιορισµός σηµαίνει ότι το πολύ µία από τις x,x 2,, x n, µπορεί να είναι (ναι). Παροµοίως αν ο περιορισµός είναι του τύπου: n xj =, j= τότε ακριβώς µία από τις αποφάσεις, 2,, n θα πρέπει να είναι ναι.

! Παράδειγµα 3 Στο προηγούµενο παράδειγµα προσθέτουµε τον περιορισµό: Το πολύ µία αποθήκη µπορεί να κτιστεί.! Μοντέλο ακέραιου προγραµµατισµού υπό τους περιορισµούς maxz = 9x + 5x + 6x + 4x 2 3 4 6x 3x2 5x3 2x4 0 + + + x x x 3 4 x 3 x 4 2 + x x j 0- ακέραιος (j =,2,3,4).! Λύση Η βέλτιστη λύση µε απόδοση z = 4 επιτυγχάνεται τώρα για x = x 2 = και x 3 = x 4 = 0 (κατασκευή µόνο εργοστασίων σε Αθήνα και Θεσσαλονίκη)

2! Τεχνική 4: Εισαγωγή διαζευκτικών περιορισµών µε χρήση δυαδικών µεταβλητών. Μέχρι τώρα είδαµε πώς µπορούν να χρησιµοποιηθούν οι δυαδικές µεταβλητές για την µοντελοποίηση αλληλοεξαρτώµενων αποφάσεων. Μια άλλη χρήση των δυαδικών µεταβλητών είναι η µοντελοποίηση ορισµένων λογικών εξαρτήσεων µεταξύ των περιορισµών ενός προβλήµατος βελτιστοποίησης Σε ένα τυπικό πρόβληµα γραµµικού ή ακόµα και µη γραµµικού προγραµµατισµού απαιτείται να ικανοποιείται η σύζευξη όλων των περιορισµών. Με την τεχνική που θα αναπτύξουµε παρακάτω µοντελοποιούνται περιστάσεις όπου απαιτείται να ισχύει τουλάχιστον ένας περιορισµός (διάζευξη των περιορισµών) ή γενικότερα τουλάχιστον ένας συγκεκριµένος αριθµός από αυτούς.

3! ΠΑΡΑ ΕΙΓΜΑ 4 x ένα µη αρνητικό διάνυσµα απόφασης x πρέπει να ικανοποιεί τουλάχιστον έναν από τους περιορισµούς ax ' b cx ' d όπου όλες οι συνιστώσες των a και c είναι µη αρνητικές.! Μοντέλο ακέραιου προγραµµατισµού Ορίζουµε µία δυαδική µεταβλητή y Επιβάλουµε τους περιορισµούς a x yb c x (-y)d y { 0,}.! Γενίκευση Έστω x µη αρνητικό διάνυσµα απόφασης Το x απαιτούµε να ικανοποιεί τουλάχιστον k από τους περιορισµούς a i x b i i=,2,,m όπου όλες οι συνιστώσες των a i είναι µη αρνητικές.

4! Μοντέλο ακέραιου προγραµµατισµού Ορίζουµε δυαδικές µεταβλητές y i Επιβάλουµε τους περιορισµούς και ai' x by i i ( i=,2,..., m) m i= yi k. Σηµείωση: Αν έχουµε στην άριστη λύση y i =, συµπεραίνουµε ότι ο αντίστοιχος περιορισµός a i x b i είναι ενεργός (ικανοποιείται).

5! Τεχνική 5: Χρήση δυαδικών µεταβλητών για την εισαγωγή µεταβλητών µε πεπερασµένο πεδίο τιµών. Ας υποθέσουµε ότι θέλουµε να περιορίσουµε µια µεταβλητή x να παίρνει τιµές σε ένα πεπερασµένο σύνολο {α, α 2,, α m }. Αυτό επιτυγχάνεται εισάγοντας m δυαδικές µεταβλητές.! Παράδειγµα 5. Η µεταβλητή x απαιτείται να παίρνει τιµές σε ένα πεπερασµένο σύνολο {α, α 2,, α m }! Μοντέλο ακέραιου προγραµµατισµού Εισάγουµε δυαδικές µεταβλητές y, y 2,, y m. Θέτουµε m x= ay j j. j= Εισάγουµε τους περιορισµούς m yj =. j=

6 4. Κλασικά προβλήµατα! Πρόβληµα : Το πρόβληµα του σακιδίου. ίδονται n αντικείµενα. Το j-οστό αντικείµενο έχει βάρος w j και αξία c j. Υπάρχει ένα σακίδιο µε µέγιστο επιτρεπόµενο συνολικό βάρος k Σκοπός: Να επιλέξουµε ποια αντικείµενα θα µπουν στο σακίδιο ώστε να µεγιστοποιήσουµε τη συνολική αξία του.! Μοντέλο ακέραιου προγραµµατισµού Εισάγουµε δυαδικές µεταβλητές x j, j =,2,, n: x j, αν το j-οστό αντικείµενο επιλεγεί = 0, διαφορετικά Πρόβληµα ακέραιου προγραµµατισµού max n j= υπό τους περιορισµούς: cx j j n j= wx j j k x j {0,}, (j =,, n).

7! Πρόβληµα 2: Tα προβλήµατα κάλυψης, οµαδοποίησης και διαµέρισης κάλυψ η διαµέριση οµαδοποίηση Μ={,, m} ένα σύνολο σηµείων Ν={,, n} ένα σύνολο δεικτών {Μ,Μ 2,, Μ n } είναι µία δοσµένη συλλογή υποσυνόλων του Μ c j ένα βάρος για κάθε σύνολο M j Ορίζουµε: F F F N είναι µια κάλυψη του Μ αν U Mj = M. j F N είναι µια οµαδοποίηση του Μ αν M j Mk = για όλα τα jk, F, j k. N είναι µια διαµέριση του Μ αν F είναι ταυτόχρονα κάλυψη και οµαδοποίηση του Μ.

8 Σκοποί: Πρόβληµα κάλυψης: Να βρεθεί κάλυψη µε το ελάχιστο συνολικό βάρος. Πρόβληµα διαµέρισης: Να βρεθεί διαµέριση µε το µέγιστο (ή ελάχιστο) συνολικό βάρος. Πρόβληµα οµαδοποίησης: Να βρεθεί οµαδοποίηση µε το µέγιστο συνολικό βάρος.! Μοντέλο ακέραιου προγραµµατισµού Εισάγουµε δυαδικές µεταβλητές x j, j=,2,, n: x j, αν το σύνολο Mj επιλεγεί για να µπεί στο F = 0, αν το σύνολο Mj δεν επιλεγεί για να µπεί στο F Κατασκευάζουµε τον m n πίνακα πρόσπτωσης Α της οικογένειας { M, M 2,..., M n},του οποίου τα στοιχεία α ij δίνονται από τη σχέση: a ij, αν i Mj, = 0, διαφορετικά. Τότε το F είναι κάλυψη, διαµέριση, οµαδοποίηση του Μ αν και µόνο αν Ax e, Ax = e, Ax e, αντιστοίχως, όπου x είναι ένα διάνυσµα που δείχνει πια σύνολα M j περιέχονται στο F και e = (,,, ) είναι ένα m-διάστατο διάνυσµα µε όλες τις συνιστώσες του ίσες µε.

9! Θέτουµε το πρόβληµα κάλυψης (αντιστοίχως διαµέρισης, οµαδοποίησης) min z n = (αντιστοίχως min ή max, max) j= cx j j υπό τους περιορισµούς Ax e (αντιστοίχως Ax = e, Ax e) x j 0- ακέραιος (j =, 2,, n).

20! Πρόβληµα 3: Το πρόβληµα του ελάχιστου επικαλυπτικού δένδρου. G=(Ν,Ε ) µη κατευθυνόµενο γράφηµα µε σύνολο κόµβων Ν ( Ν = n) και σύνολο ακµών Ε ( Ε = m). c e κόστος (ή βάρος) κάθε ακµής e, e Ε. Σκοπός: Να βρεθεί ένα (συνεκτικό) επικαλυπτικό δένδρο - υπογράφηµα του G, ώστε να συνδέονται όλες οι κορυφές του G µε το ελάχιστο κόστος.

2! Μοντέλο ακέραιου προγραµµατισµού εισάγουµε δυαδικές µεταβλητές x e, e Ε : x e, αν η ακµή e περιληφθεί στο επικαλυπτικό δένδρο = 0, διαφορετικά Καθόσον υπάρχουν n κορυφές ένα επικαλυπτικό δένδρο θα πρέπει να έχει συνολικά n- ακµές: E e x e = n Για κάθε µη κενό σύνολο S N, ορίζουµε το σύνολο { } } ES ( ) = ij, E ij, S που περιλαµβάνει τις ακµές του G που και τα δύο άκρα τους ανήκουν στο S. εν επιτρέπονται οι κύκλοι οπότε θα έχουµε: xe S, S N, S. e ES ( )! Ακέραιος προγραµµατισµός υπό τους περιορισµούς e ES ( ) min cx e e E e x e E e = n xe S, S N, S, N { } xe 0,, e Ε.

22 ΣΥΓΚΡΙΣΗ ΕΝΑΛΛΑΚΤΙΚΩΝ ΜΟΝΤΕΛΟΠΟΙΗΣΕΩΝ ΙΣΧΥΡΕΣ ΜΟΝΤΕΛΟΠΟΙΗΣΕΙΣ! Πολυπλοκότητα του Γραµµικού Προγραµµατισµού Υπάρχει πολυωνυµικός αλγόριθµος για το Γραµµικό Προγραµµατισµό. (Εσωτερικού Σηµείου Karmakar (984) & Ελλειψοειδούς - Shor (970), Yudin and Nemirovskii (977)) Η πολυπλοκότητα του προβλήµατος αυξάνεται πολυωνυµικά µε τον αριθµό των µεταβλητών n και τον αριθµό των περιορισµών m.! Πολυπλοκότητα του Ακέραιου Προγραµµατισµού εν υπάρχει πολυωνυµικός αλγόριθµος για τον Ακέραιο Προγραµµατισµό.! Βασική ιδέα για επίλυση προβληµάτων Ακέραιου Προγραµµατισµού Η αναγωγή ενός Προβλήµατος Ακέραιου Προγραµµατισµού σε ένα ή πολλά προβλήµατα Γραµµικού Προγραµµατισµού και η επίλυση αυτών αντί του αρχικού Ακέραιου Προβλήµατος.

23! Η σύνδεση µεταξύ Ακέραιου και Γραµµικού Προγραµµατισµού Έστω ένα πρόβληµα ακεραίου προγραµµατισµού : υπό τους περιορισµούς min c'x+ d'y Αx+ By= b xy, 0 x ακέραιος. Η χαλάρωση γραµµικού προγραµµατισµού ορίζεται ως το παραπάνω πρόβληµα χωρίς τον περιορισµό της ακεραιότητας : υπό τους περιορισµούς min cx ' + dy ' Αx+ By= b xy, 0.! Κεντρική Ιδέα Αν µια βέλτιστη λύση της χαλάρωσης γραµµικού προγραµµατισµού είναι εφικτή για το αρχικό ακέραιο πρόβληµα, είναι και βέλτιστη για αυτό.

24! Παράδειγµα: Το πρόβληµα επιλογής τοποθεσίας εγκαταστάσεων n πιθανές τοποθεσίες παροχής υπηρεσιών (πχ αποθήκες) m πελάτες οι οποίοι πρέπει να εξυπηρετηθούν από αυτές τις τοποθεσίες.(πχ µαγαζιά) c j ένα σταθερό κόστος για την εγκατάσταση µιας υπηρεσίας στην τοποθεσία j. d ij ένα κόστος για την εξυπηρέτηση του πελάτη i από την τοποθεσία j. Σκοπός: Να επιλέξουµε ένα σύνολο τοποθεσιών για την εγκατάσταση υπηρεσιών και να αναθέσουµε κάθε πελάτη σε µία υπηρεσία, ελαχιστοποιώντας το συνολικό κόστος.

25! Υλοποίηση µοντελοποίησης ακέραιου προγραµµατισµού Εισάγουµε δυαδικές µεταβλητές απόφασης yj, αν η j τοποθεσία επιλεγεί για την εγκατάσταση υπηρεσίας = 0, διαφορετικά (j =,2,,n), x ij, αν ο πελάτης i, ανατεθεί στην τοποθεσία = 0, διαφορετικά. j (j =,2,,n) (i =,2,,m). Κάθε πελάτης i µπορεί να εξυπηρετηθεί από µία µόνο υπηρεσία, έτσι, n j= x ij =, (i =,2,,m) Αν δεν υπάρχει υπηρεσία j τότε κανένας πελάτης i δεν µπορεί να εξυπηρετηθεί σε αυτήν, δηλαδή y j =0 σηµαίνει x ij = 0 για όλα τα i. Αυτό µοντελοποιείται ως ακολούθως: x ij yj, (i =,2,,m j =,2,,n)

26! Μοντελοποίηση του προβλήµατος επιλογής τοποθεσίας εγκαταστάσεων (FL) min( cy j j + dijxij) j= i= j= n j= n m n xij =, ( i =,2,..., m), xij yj, ( i =,2,..., m j =,2,..., n), { } xij, yj 0,, ( i =,2,..., m j =,2,..., n)! Εναλλακτικό µοντέλο ακέραιου προγραµµατισµού - (AFL) Στη θέση του περιορισµού xij yj,( i =,2,..., m) για κάθε υπηρεσία j µπορούµε να βάλουµε τον απλό περιορισµό m i= x ij my ο οποίος κάνει ακριβώς το ίδιο πράγµα (δηλαδή y j =0 σηµαίνει x ij = 0 για όλα τα i ενώ y j = επιτρέπει x ij = για όλα τα i ). j

27 min( cy j j + dijxij) j= i= j= n j= m i= n m n xij =, ( i =,2,..., m), xij myj,( i =,2,..., m j =,2,..., n), { } xij, yj 0,, ( i =,2,..., m j =,2,..., n)! Σύγκριση των δύο µοντέλων Μοντελοποίηση FL min n j= n m n cy j j+ j= i= j= xij = ( i=,2,..., m) ( =,2,...,, xij yj, i m { } d x ij ij j=,2,..., n) 0, ( =,2,...,, xij, yj i m j=,2,..., n). Μοντελοποίηση AFL min n j= m i= n m n cy + j j ij ij j= i= j= xij = ( i=,2,..., m) ( =,2,..., ) xij myj, j n { } d x 0, ( =,2,...,, xij, yj i m j =,2,..., n). m + m x n περιορισµοί m + n περιορισµοί

28 Χαλαρώσεις γραµµικού προγραµµατισµού: Μοντελοποίηση FL Μοντελοποίηση AFL min n j= n m n cy + j j ij ij j= i= j= d x xij = ( i=,2,..., m) ( =,2,...,, xij yj, i m = j =,2,..., n) 0 xij, yj ( i,2,..., m, j =,2,..., n). min n j= m n m n cy + j j ij ij j= i= j= d x xij = ( i=,2,..., m) ( =,2,..., ) xij myj, j n i= 0 xij, yj ( i=,2,..., m, j =,2,..., n). m + m x n περιορισµοί m + n περιορισµοί Από πλευράς µοντελοποίησης οι δύο µοντελοποιήσεις είναι απολύτως ισοδύναµες: Οι εφικτές περιοχές ( = τα σύνολα των εφικτών λύσεων) για τις δύο µοντελοποιήσεις συµπίπτουν. P AFL P FL C B A Σύγκριση λύσεων AFL και FL µοντέλου Τα δύο πολύεδρα P AFL και P FL περιέχουν ακριβώς το ίδιο σύνολο ακεραίων λύσεων

29 Έχουµε προφανώς ότι PFL PAFL δηλαδή η πρώτη µοντελοποίηση είναι καλύτερη από τη δεύτερη παρά το ότι η δεύτερη έχει λιγότερους περιορισµούς.! Η ιδανική µοντελοποίηση για ένα πρόβληµα Ακέραιου Προγραµµατισµού Έστω T { x, x2,..., xk} = το σύνολο των εφικτών ακεραίων λύσεων σε ένα συγκεκριµένο πρόβληµα Ακέραιου Προγραµµατισµού. H κυρτή θήκη ή κάλυµµα (Convex Hull CH(T)) του Τ θα δίνεται από τον τύπο: k k CH ( T ) = λixi λi =, λi 0, x i T i= i= Το CH(T) είναι ένα πολύεδρο µε ακέραιες κορυφές Αν µπορούµε να το αναπαραστήσουµε ως : CH ( T )={ x: Dx d } τότε το αρχικό ακέραιο πρόγραµµα γίνεται : min ( c'x) Dx d x ακέραιος µε χαλάρωση γραµµικού προγραµµατισµού : min ( c'x) Dx d

30 H βέλτιστη λύση της χαλάρωσης γραµµικού προγραµµατισµού είναι και βέλτιστη λύση για το αρχικό πρόβληµα γιατί το CH ( T )={ x: Dx d } είναι ένα πολύεδρο µε ακέραιες κορυφές. Η κεντρική ιδέα εδώ είναι ότι για ένα πρόβληµα ακέραιου προγραµµατισµού η ιδανική µοντελοποίηση είναι να κατασκευάσουµε το CH ( T )={ x: Dx d } και να επιλύσουµε την αντίστοιχη χαλάρωση γραµµικού προγραµµατισµού.! Είναι η ιδανική µοντελοποίηση πάντα εφικτή ; Το να κατασκευάσουµε το CH ( T )={ x: Dx d } είναι γενικά δύσκολο αν όχι αδύνατο. Καθόσον η ιδανική µοντελοποίηση δεν είναι γενικά εφικτή, ψάχνουµε για µια µοντελοποίηση µε χαλάρωση γραµµικού προγραµµατισµού όσο πιο κοντά µπορούµε στο CH(T).

3! Σύγκριση διαφορετικών µοντελοποιήσεων - - Συµπεράσµατα Η ποιότητα των µοντελοποιήσεων ενός ακέραιου προβλήµατος µε σύνολο εφικτών λύσεων Τ, εξαρτάται από το πόσο κοντά είναι το σύνολο εφικτών λύσεων της αντίστοιχης χαλάρωσης γραµµικού προγραµµατισµού µε το CH(T). Έστω Α και Β δύο µοντελοποιήσεις του ίδιου προβλήµατος ακέραιου προγραµµατισµού µε σύνολο εφικτών λύσεων Τ. Ορίζουµε ως P A και P B τα σύνολα εφικτών λύσεων των αντιστοίχων χαλαρώσεων γραµµικού προγραµµατισµού. Θα λέµε ότι η µοντελοποίηση Α είναι τουλάχιστο τόσο ισχυρή όσο η Β αν PA PB.. Η =. Α θα είναι η ιδανική µοντελοποίηση αν PA CH( T) P B P A CH(T)

32 ΜΕΘΟ ΟΙ ΕΠΙΛΥΣΗΣ ΜΕΣΩ ΑΝΑΓΩΓΗΣ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. ΟΙ ΑΛΓΟΡΙΘΜΟΙ : «ΑΠΟΚΟΠΤΙΚΩΝ ΕΠΙΠΕ ΩΝ» & «ΚΛΑ ΟΣ ΚΑΙ ΦΡΑΓΜΑ».. «ΑΠΟΚΟΠΤΙΚΩΝ ΕΠΙΠΕ ΩΝ»! Η αρχική ιδέα : Να µειώνουµε την εφικτή περιοχή σε κάθε βήµα, πηγαίνοντας προς µια ιδανική µοντελοποίηση του αρχικού προβλήµατος ακέραιου προγραµµατισµού.! Η γεωµετρική ιδέα : Χρησιµοποιούµε αποκοπτικά επίπεδα για να µειώσουµε την εφικτή περιοχή της χαλάρωσης γραµµικού προγραµµατισµού του προβλήµατος σε ένα πολύεδρο µε ακέραιες κορυφές.! Η αλγεβρική ιδέα :. Λύνουµε τη χαλάρωση γραµµικού προγραµµατισµού του αρχικού προβλήµατος. Έστω x* µια βέλτιστη λύση. 2. Αν η x* είναι ακέραια σταµατάµε. Η x* είναι η βέλτιστη λύση του αρχικού προβλήµατος ακέραιου προγραµµατισµού. 3. Αν όχι, προσθέτουµε έναν περιορισµό τύπου γραµµικής ανισότητας στη χαλάρωση γραµµικού προγραµµατισµού, τον οποίο όλες οι ακέραιες λύσεις του αρχικού τον ικανοποιούν, αλλά όχι η x*. Πηγαίνουµε στο βήµα.

33 Γεωµετρικά η διαδικασία παριστάνεται µε τα παρακάτω σχήµατα (στο προηγούµενο παράδειγµα) : x 2 3 x 2 / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Αποκοπτικό επίπεδο x2 2 Y-Axis Αρχική εφικτή περιοχή χαλάρωσης 2 3 4 x Y-Axis x 2 3 2 x 2 / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Αποκοπτικό επίπεδο 2 Νέα εφικτή περιοχή χαλάρωσης 2 3 4 x x 2 3 2 x 3 Y-Axis Νέα εφικτή περιοχή χαλάρωσης (τελική) 2 3 4 x

34 2. «ΚΛΑ ΟΣ ΚΑΙ ΦΡΑΓΜΑ»! Η αρχική ιδέα : ιαίρει και βασίλευε : Αντί να εξερευνούµε ολόκληρο το σύνολο εφικτών λύσεων, χρησιµοποιούµε φράγµατα στο βέλτιστο κόστος για να αποφύγουµε να εξερευνήσουµε συγκεκριµένα κοµµάτια του συνόλου των εφικτών ακεραίων λύσεων.! Η γεωµετρική ιδέα : Σπάµε την εφικτή περιοχή σε µικρότερες περιοχές και εξερευνούµε κάθε µια από αυτές ακολουθιακά.! Η αλγεβρική ιδέα : Αντί να λύσουµε το min( cx ' ) x F k σπάµε το F ως F = U i= Fi και λύνουµε τα : min( cx ' ) x Fi ( i=,2,..., k) Συγκρίνουµε τη βέλτιστη λύση και επιλέγουµε την καλύτερη. Αν η χαλάρωση γραµµικού προγραµµατισµού που αντιστοιχεί στο F i έχει βέλτιστη λύση χειρότερη από την ακέραια εφικτή λύση ενός άλλου F j, τότε το F j απορρίπτεται.

35 Παράδειγµα (το προηγούµενο) min x 2x 2 4 6 2 9 x + x x+ x2 4 x, x2 0 x, x2 ακέραιοι Γεωµετρικά η διαδικασία παριστάνεται µε τα παρακάτω σχήµατα :

36 x 2 bf ( ) = 3.5 3 x = 3 5 (, ) 2 2 κλάδος x2 3 F = 2 x2 2 ( ιάγραµµα 2) F 2 3 4 x ιάγραµµα x 2 bf ( 2) = 3.25 3 2 3 x2 = (,2) 4 F 2 2 3 4 x κλάδος x 0 x ιάγραµµα 2 ( ιάγραµµα 4) ( ιάγραµµα 3)

37 x 2 bf ( 3) = 3 3 2 x3 = (, 2) F 3 2 3 4 x ιάγραµµα 3 x 2 3 bf ( 4) 3 U 3 = = 2 3 x4 = (0, ) 2 F 4 2 3 4 x ιάγραµµα 4 Έτσι η βέλτιστη λύση είναι η x3 = (, 2)

38 Αλγεβρικά η διαδικασία παριστάνεται µε το παρακάτω διάγραµµα : F = F 0 3 5 x = (, ) 5 2 b(f)= 3.5 U 0=+ : Φράγµα για το τρέχον υποπρόβληµα : Καλύτερη έως τώρα τιµή της αντικειµενικής συνάρτησης x2 3 x2 2 F= F 0 { x2 3} = F = τερµατισµός διακλάδωσης F= F 0 { x2 2} 3 x2 = (,2) 4 bf = U ( 2) 3.25 2 =+ x x 0 F3= F2 { x } x3 bf = (, 2) = ( 3) 3 U 3 = 3 F4= F2 { x 0} 3 x4 = (0, ) 2 bf = ( 4) 3 U 4 = 3 ( 4) 3 τερµατισµός της διακλάδωσης bf U Βέλτιστη λύση : x 3 =(,2) µε z =-3

39 ΜΕΘΟ ΟΙ ΕΠΙΛΥΣΗΣ ΜΗ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. ΥΝΑΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ! Ο δυναµικός προγραµµατισµός είναι µια επαναληπτική τεχνική που επιλύει προβλήµατα ακέραιου προγραµµατισµού.! Βήµατα για την κατασκευή αλγορίθµων δυναµικού προγραµµατισµού : Βλέπουµε την επιλογή µιας εφικτής λύσης σαν µια ακολουθία αποφάσεων που συµβαίνουν σε στάδια έτσι ώστε το συνολικό κόστος να είναι το άθροισµα από τα επιµέρους κόστη. Καθορίζουµε την κατάσταση ως µια σύνοψη όλων των σχετικών παλαιότερων αποφάσεων καταστάσεων που έχουµε διέλθει. Είναι σηµαντικό ο χώρος καταστάσεων να είναι όσο το δυνατόν απλούστερος και γι αυτό κάθε κατάσταση πρέπει να περιέχει την ελάχιστη πληροφορία που είναι απαραίτητη για την ορθή περιγραφή της µελλοντικής δυναµικής του συστήµατος. Καθορίζουµε ποιες µεταβάσεις είναι εφικτές και προσδιορίζουµε το κόστος της αντίστοιχης απόφασης.

40 Γράφουµε µια αναδροµική σχέση του βέλτιστου κόστους από την παρούσα κατάσταση σε µια επόµενη κατάσταση προορισµού. Το πιο κρίσιµο βήµα είναι ο αποτελεσµατικός καθορισµός των καταστάσεων.! Έστω το πρόβληµα του σακιδίου : max n j= cx j j n j= wx j j k x j {0, } j =,,n Αντί να επιλέξουµε ένα διάνυσµα ( x,..., x n) µεµιάς, βλέπουµε το πρόβληµα ως οι αποφάσεις να λαµβάνονταν σειριακά, µία για κάθε αντικείµενο κάθε φορά. Μετά από i αποφάσεις, έχουµε αποφασίσει ποια από τα πρώτα i αντικείµενα θα συµπεριλάβουµε στο σακίδιο και έχουµε έτσι καθορίσει τις τιµές των µεταβλητών x,..., x i. Η συνολική αξία που αθροίζεται είναι : i j= cx j j

4 και το βάρος i j= wx j j.! Τότε έχουµε την αναδροµική σχέση : { } C ( w) = max C( w), C( w w ) + c i + i i i + i + από την οποία υπολογίζουµε όλα τα C i (w) αρχίζοντας από το τέλος (i=n)., i i+, u c i + i u c + 0 n, 0 w i + 0, 0 i, u 0 i+, u w i + + + max i, u c i + n, nc Σχήµα: Το διάγραµµα µεταβάσεων για την τεχνική του δυναµικού προγραµµατισµού στο πρόβληµα του σακιδίου.

42 2. «ΠΡΟΣΟΜΟΙΩΜΕΝΗΣ ΒΑΦΗΣ» (SIMULATED ANNEALING)! Η µέθοδος της προσοµοιωµένης βαφής είναι µια γενική µέθοδος που προσπαθεί να βελτιώσει τους αλγόριθµους τοπικής έρευνας µε το να επιτρέπει περιστασιακές µετακινήσεις προς εφικτές λύσεις µε υψηλότερα κόστη.! Τα βασικά στοιχεία : Το πρόβληµα γράφεται ως εξής: min c( x) x F ( F διακριτό σύνολο) Ορίζουµε µια δοµή γειτνίασης στο F : x F: N( x) να είναι το σύνολο των γειτονικών του x (Η γειτνίαση είναι µια συµµετρική σχέση : x N( y) y N( x )) Μια Μαρκοβιανή αλυσίδα στο F µε µεταβάσεις ενός βήµατος µόνο σε γειτονικές καταστάσεις. q xy : πιθανότητα µετάβασης στο y N( x ) ενώ είµαστε στο x.! Η ιδέα της προσοµοιωµένης βαφής : Να µετακινούµαστε τυχαία από κατάσταση σε κατάσταση στο F χρησιµοποιώντας τη Μαρκοβιανή αλυσίδα µε µια τάση να παραµένουµε τον περισσότερο χρόνο σε καταστάσεις x που βελτιστοποιούν το c(x).

43! Υλοποίηση της ιδέας Ορίζουµε µια νέα Μαρκοβιανή αλυσίδα x(t) στο F µε πιθανότητες µετάβασης : ( c( y) c( x) )/ T xy > ( y) ( x) q e, αν c c pxy = P( x( t+ ) = y x( t) = x) = qxy διαφορετικά όπου Τ είναι µια θετική σταθερά που ονοµάζεται Θερµοκρασία. Η Μαρκοβιανή αλυσίδα x(t) επιλέγει τις καταστάσεις της, σύµφωνα µε την q xy. Μόλις επιλεγεί η y υπολογίζουµε το c( ) c( ) o Αν c( y) c( ) y x. x, που σηµαίνει ότι η y είναι µια καλύτερη λύση για το πρόβληµα ελαχιστοποίησης, τότε η x(t) προχωράει στην y. o Αν c( ) > c( ) y x, τότε η x(t) προχωράει στην y µε πιθανότητα διαφορετικά. ( ) ( ) ( c c )/ T e y x ή παραµένει στη x o Η θερµοκρασία T ελέγχει την πιθανότητα αύξησης κόστους.

44 Βασικό Θεώρηµα: Έστω ότι Η x() t είναι αδιαχώριστη και ότι qxy = qyx για κάθε x και κάθε y N( x ) Έστω A= z F e ( ) cz/ T c ( x) / T π ( x) = e / A, x F, Τότε το διάνυσµα µε συντεταγµένες π ( x ), x F,είναι η µοναδική στάσιµη κατανοµή της Μαρκοβιανής αλυσίδας x () t! Ο αλγόριθµος : Αφήνουµε την αλυσίδα να τρέξει για αρκετό χρόνο. Τότε για µικρές θερµοκρασίες όλη στάσιµη πιθανότητα επικεντρώνεται σε καταστάσεις που ελαχιστοποιούν τη c(x). Σύµφωνα µε ένα πρόγραµµα θερµοκρασίας Tt: () C Tt () = 0, καθώς η t logt µπορεί να αποδειχθεί ότι : lim P( x ( t) βέλτιστη) = t δηλαδή ο αλγόριθµος συγκλίνει σε µια βέλτιστη λύση.