ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΑΠΟΙΚΙΑΣ ΜΥΡΜΗΓΚΙΩΝ ANT COLONY OPTIMIZATION METHODS Χρήστος Δ. Ταραντίλης Αν. Καθηγητής ΟΠΑ
ACO ΑΛΓΟΡΙΘΜΟΙ Η ΛΟΓΙΚΗ ΑΝΑΖΗΤΗΣΗΣ ΛΥΣΕΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΙΑΤΑΞΗΣ (1/3) Ε..Ε. ΙΙ Oι ACO αλγόριθµοι χρησιµοποιούνται πολύ συχνά για να επιλυούν προβλήµατα διάταξης σεβόµενοι τους περιορισµούς Ω του υπό εξέταση προβλήµατος. εδοµένου τους γεγονότος ότι µια σύνδεση ij ορίζεται ως το συνηθέστερο «στοιχείο λύσης» των προβληµάτων διάταξης, η πληροφορία σχετικά µε το ποιες συνδέσεις περιλαµβάνονταν στις καλύτερες λύσεις των προηγούµενων επαναλήψεων παρέχεται µέσω του ορισµού της τεχνητής φερεµόνης τ ij
ACO ΑΛΓΟΡΙΘΜΟΙ Η ΛΟΓΙΚΗ ΑΝΑΖΗΤΗΣΗΣ ΛΥΣΕΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΙΑΤΑΞΗΣ (2/3) Ε..Ε. ΙΙ Μιασυγκεκριµένητεχνητή φερεµόνη τ ij στην επανάληψη t κωδικοποιεί (αναπαριστάνει) µια µακροπρόθεσµη µνήµη µέσω της οποίας πληροφορούµαστε σχετικά µε τη συχνότητα εµφάνισης της συγκεκριµένης σύνδεσης ij στη δοµή των καλύτερων λύσεων των προηγούµενων επαναλήψεων. Η πιθανότητα επιλογής του στοιχείου της ηµιτελούς λύσης εξαρτάται και από την ευρετική πληροφορία η ij, ο ορισµός της οποίας γίνεται µε σκοπό να επηρεαστεί ακόµα περισσότερο (µαζί µε την τεχνητή φερεµόνη) η επιλογή των πιο υποσχόµενων υποψήφιων στοιχείων της λύσης (δηλαδή να αυξήσει την πιθανότητα επιλογής τους).
ACO ΑΛΓΟΡΙΘΜΟΙ Η ΛΟΓΙΚΗ ΑΝΑΖΗΤΗΣΗΣ ΛΥΣΕΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΙΑΤΑΞΗΣ (3/3) Ε..Ε. ΙΙ Η πιθανότητα p ij επιλογής του στοιχείου της ηµιτελούς λύσης είναι µια συνάρτηση (i) των τιµών της τεχνητής φερεµόνης (i) των ευρετικών τιµών (ii) των περιορισµών του προβλήµατος.
ACO ΑΛΓΟΡΙΘΜΟΙ ΙΑΦΟΡΟΠΟΙΗΣΗ & ΕΝΤΑΤΙΚΟΠΟΙΗΣΗ Ένας ACO αλγόριθµος µπορεί να περιλαµβάνει δύο ακόµη διαδικασίες: την εξάτµιση τηςτεχνητής φερεµόνης (pheromone trail evaporation) και τις συµπληρωµατικές δραστηριότητες (daemon actions).
ACO ΕΞΑΤΜΙΣΗ ΤΕΧΝΗΤΗΣ ΦΕΡΕΜΟΝΗΣ Η εξάτµιση του ίχνους φερεµόνης είναι µια διαδικασία µε την οποία η ένταση της τεχνητής φερεµόνης πάνω στα στοιχεία της λύσης (π.χ. συνδέσεις) µειώνεται µε την πάροδο του χρόνου. Η διαδικασία αποτελεί µια διαδικασία διαφοροποίησης και συµβάλει στον µη εγκλωβισµό του αλγόριθµου σε µια συγκεκριµένη περιοχή του χώρου λύσεων. Η εξάτµιση της τεχνητής φερεµόνης δίνει τη δυνατότητα στον αλγόριθµο, να «ξεχνά» την έµφαση που δίνεται στα στοιχεία των καλύτερων λύσεων των προηγούµενων επαναλήψεων και να εξερευνά νέες περιοχές του χώρου λύσεων (δηλαδή λύσεις µε νέες δοµές) ώστε να αποφεύγει πιθανό εγκλωβισµό σε τοπικά βέλτιστα.
ACO ΣΥΜΠΛΗΡΩΜΑΤΙΚΕΣ ΙΑΙΚΑΣΙΕΣ Οι συµπληρωµατικές διαδικασίες είναι κάποιες προαιρετικές προεκτάσεις του ACO αλγόριθµου µε σκοπό τη βελτίωση της ποιότητας της λύσεων που κατασκευάζονται. Οι συµπληρωµατικές διαδικασίες συνήθως αφορούν τη συλλογή πληροφοριών µε σκοπό την αύξηση ή την ελάττωση της τιµής της τεχνητής φερεµόνης κάποιων στοιχείων της λύσης µε σκοπό τον επηρεασµό της πορείας της έρευνας (πέρα από τη διαδικασία επικαιροποίησης). την εφαρµογή ενός αλγορίθµου τοπικής έρευνας στις λύσεις που κατασκευάζονται σε κάθε επανάληψη του ACO.
ΕΦΑΡΜΟΓΗΣΤΟΠΡΟΒΛΗΜΑ ΤΟΥΠΕΡΙΟΔΕΥΟΝΤΟΣΠΩΛΗΤΗ (Traveling Salesman Problem -TSP)
ACO ΑΛΓΟΡΙΘΜΟΣ για το TSP To TSP αποτέλεσε µια από τις πρώτες εφαρµογές του αλγορίθµου ACO. To TSP επιλέχθηκε για τους ακόλουθους λόγους: Είναι σχετικά εύκολο να υλοποιηθεί ένας αλγόριθµος ACO για το TSP. To TSP είναι ένα από τα δηµοφιλέστερα προβλήµατα συνδυαστικής βελτιστοποίησης που παρουσιάζει µεγάλη υπολογιστική πολυπλοκότητα.
ACO ΑΛΓΟΡΙΘΜΟΣ για το TSP To TSP µπορεί να ορισθεί ως εξής: Έστω C είναι ένα σύνολο πόλεων, L ένα σύνολο συνδέσεων των στοιχείων του C, και η απόσταση ανάµεσα στις πόλεις i και j. J ij To TSP είναι το πρόβληµα που επιζητά την εύρεση του ελαχίστου µήκους Hamiltonian κύκλου στο γράφηµα G = (C,L). Ένας Ηamiltonian κύκλος του γραφήµατος G είναι µια κλειστή διαδροµή ψ που επισκέπτεται µια και µόνο µια φορά όλους τους κόµβους (πόλεις) του G.
ACO ΑΛΓΟΡΙΘΜΟΣ για το TSP Το µήκος της διαδροµής δίνεται από άθροισµα των µηκών όλων των συνδέσεων από τις οποίες αποτελείται η διαδροµή. Στην συνέχεια θα περιγραφεί ένα Σύστηµα Μυρµηγκιού (Ant System - AS), µια µέθοδος που αποτελεί χαρακτηριστικό παράδειγµα του τρόπου εφαρµογής των αλγορίθµουν ACO για την επίλυση του TSP.
ΚΑΝΟΝΕΣ ΣΧΕΙΑΣΜΟΥ ΕΝΟΣ ACO ΑΛΓΟΡΙΘΜΟΥ Για να σχεδιάσουµε έναν ACO αλγόριθµο θα πρέπει να ορισθούν τα ακόλουθα: Κωδικοποίηση του Ίχνους Φερεµόνης Πιθανότητα Επιλογής του Στοιχείου της Ηµιτελούς Λύσης Συνάρτηση αξιολόγησης των λύσεων Επικαιροποίηση Φερεµόνης
ΠΙΘΑΝΟΤΗΤΑ ΕΠΙΛΟΓΗΣ ΣΤΟΙΧΕΙΟΥ ΤΗΣ ΗΜΙΤΕΛΟΥΣ ΛΥΣΗΣ Ο ορισµός της Πιθανότητας Επιλογής του Στοιχείου της λύσης προϋποθέτει για την περίπτωση του συγκεκριµένου προβλήµατος τον ορισµό του «Πίνακα ροµολόγησης Μυρµηγκιού» A i = [a ij (t )] του κόµβου i, όπου N i, το σύνολο όλων των υποψήφιων στοιχείων της λύσης που συνδέονται µε τον κόµβο i τ ij (t ), το ίχνος φερεµόνης του στοιχείου της λύσης ij, την επανάληψη t η ij, η ευρετική πληροφορία που συνδέεται µε τον στοιχείο ij α και β αποτελούν δύο παραµέτρους που ελέγχουν την σχετική σηµασία του ίχνους φερεµόνης και της ευρετικής τιµής (1)
ΠΙΘΑΝΟΤΗΤΑ ΕΠΙΛΟΓΗΣ ΣΤΟΙΧΕΙΟΥ ΤΗΣ ΗΜΙΤΕΛΟΥΣ ΛΥΣΗΣ Έτσι, η πιθανότητα επιλογής του στοιχείου ij, p k (t) ij, που συνδέεται µε τον κόµβο i για να προστεθεί στην ηµιτελή λύση, υπολογίζεται από τον ακόλουθο πιθανοκρατικό κανόνα απόφασης: (2) k N N όπου i i είναι το σύνολο όλων των εφικτών υποψήφιων στοιχείων της λύσης που συνδέονται µε τον κόµβο i.
ΕΥΡΕΤΙΚΕΣ ΤΙΜΕΣ Οι ευρετικές τιµές στον τύπο (1) ισούνται µε η ij =1/ µε άλλα λόγια, όσο συντοµότερη είναι η απόσταση ανάµεσα στις πόλεις i και j, τόσο υψηλότερη είναι η ευρετική τιµή η ij. Γενικά µιλώντας, οι ευρετικές πληροφορίες (τιµές) n ij ορίζονται βάσει των χαρακτηριστικών του προβλήµατος και χρησιµοποιούνται για να κατευθύνουν την πιθανότητα κατασκευής προς την επιλογή των «καλών στοιχείων» της λύσης του υπό εξέταση προβλήµατος. Οι ευρετικές πληροφορίες υπολογίζονται µια φορά στην αρχή του αλγόριθµου και παραµένουν σταθερές µέχρι τον τερµατισµό του. J ij
ΠΑΡΑΜΕΤΡΟΙ Οι παράµετροι α και β καθορίζουν την αλληλεπίδραση των δύο παραγόντων που διαµορφώνουν την πιθανότητα κατασκευής. Αν η παράµετρος α τεθεί ίση µε το 0, τότε ο αλγόριθµος θα µετατραπεί σε έναν αλγόριθµο πλεονεκτικής λογικής, δηλαδή τα ίχνη φερεµόνης δεν θα παίζουν κανένα ρόλο στην κατασκευή των λύσεων. Αντίθετα αν η παράµετρος β τεθεί ίσης µε το 0 τότε η κατασκευή των λύσεων καθοδηγείται µόνο από τα ίχνη φερεµόνης. Αυτό έχει ως αποτέλεσµα ο αλγόριθµος να συγκλίνει σε συγκεκριµένες περιοχές του χώρου λύσεων. Η κατάσταση αυτή ονοµάζεται κατάσταση στασιµότητας. Για την επίτευξη καλών αποτελεσµάτων απαιτείται καλός συντονισµός των δύο παραµέτρων από τον χρήστη
ΕΠΙΚΑΙΡΟΠΟΙΗΣΗ ΦΕΡΕΜΟΝΗΣ Για την επίλυση του TSP χρησιµοποιείται η ακόλουθη λογική επικαιροποίησης της φερεµόνης στο τέλος της κάθε επανάληψης του ACO: Αφού όλα τα µυρµήγκια κατασκευάσουν τη λύση τους, κάθε µυρµήγκι k προσθέτει µια ποσότητα φερεµόνης ίση µε πάνω σε κάθε σύνδεση l ij της λύσης που κατασκεύασε, όπου είναι το µήκος της διαδροµής ψ k (t), η οποία διανύθηκε από το µυρµήγκι k την επανάληψη t. Η επικαιροποίηση της φερεµόνης γίνεται µε τον ακόλουθο τρόπο: όπου m είναι ο αριθµός των µυρµηγκιών σε κάθε επανάληψη (παραµένει σταθερός)
ΕΠΙΚΑΙΡΟΠΟΙΗΣΗ ΦΕΡΕΜΟΝΗΣ Ο τρόπος υπολογισµού του όρου τον κάνει να αποτελεί συνάρτηση της επίδοσης του µυρµηγκιού: όσο συντοµότερη είναι µια διαδροµή που παράγεται τόσο µεγαλύτερη είναι η ποσότητα της φερεµόνης που εναποτίθεται.
ΕΠΙΚΑΙΡΟΠΟΙΗΣΗ ΦΕΡΕΜΟΝΗΣ Μετά την επικαιροποίηση της φερεµόνης από τα µυρµήγκια, ενδέχεται να λάβει χώρα η εξάτµιση της φερεµόνης: ο ακόλουθος κανόνας εφαρµόζεται σε όλες τις συνδέσεις l ij του γραφήµατος G όπου είναι ο συντελεστής εξάτµισης του ίχνους φερεµόνης (το αρχικό ποσό φερεµόνης τ ij (0) έχει τεθεί ίσο µε µια µικρή σταθερή τιµή τ 0 σε όλους τους συνδέσµους). Στον 1 ο αλγόριθµο AS που προτάθηκε, η εξάτµιση της φερεµόνης εκτελείται ΠΡΙΝ την επικαιροποίηση της φερεµόνης.
ΓΕΝΙΚΗ ΠΕΡΙΓΡΑΦΗ ΤΟΥ ACO ΑΛΓΟΡΙΘΜΟΥ 1 διαδικασία ACO_αλγόριθµος () 2 while (το_κριτήριο_τερµατισµού_δεν_ικανοποιείται) 3 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ_ ΡΑΣΤΗΡΙΟΤΗΤΩΝ ΡΑΣΤΗΡΙΟΤΗΤΩΝ_ΚΑΤΑΣΚΕΥΗ 4 ΚΑΘΟΡΙΣΜΟΣ ΑΡΙΘΜΟΥ ΜΕΡΜΗΓΚΙΩΝ & ΚΑΤΑΣΚΕΥΗ ΛΥΣΕΩΝ (); 5 ΕΠΙΚΑΙΡΟΠΟΙΗΣΗ ΜΝΗΜΗΣ ΜΕΡΜΗΓΚΙΟΥ(); 6 ΕΞΑΤΜΙΣΗ ΦΕΡΕΜΟΝΗΣ (); 7 ΣΥΜΠΛΗΡΩΜΑΤΙΚΕΣ ΕΝΕΡΓΙΕΣ (); 8 end ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ_ ΡΑΣΤΗΡΙΟΤΗΤΩΝ ΡΑΣΤΗΡΙΟΤΗΤΩΝ_ΚΑΤΑΣΚΕΥΗ 9 end while 10 end διαδικασία
ACO ΑΛΓΟΡΙΘΜΟΣ ΓΕΝΙΚΗ ΠΕΡΙΓΡΑΦΗ Ε..Ε. ΙΙ Η κύρια διαδικασία βελτιστοποίησης του αλγορίθµου ACO κατορθώνει, µέσω της διαδικασίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ_ ΡΑΣΤΗΡΙΟΤΗΤΩΝ_ΚΑΤΑΣΚΕΥΗ τον προγραµµατισµό των 4 ακολούθων συνιστωσών ενός αλγορίθµου ACO (i) ΚΑΘΟΡΙΣΜΟΣ ΑΡΙΘΜΟΥ ΜΕΡΜΗΓΚΙΩΝ & ΚΑΤΑΣΚΕΥΗ ΛΥΣΕΩΝ (ii) ΕΠΙΚΑΙΡΟΠΟΙΗΣΗ_ΜΝΗΜΗΣ_ΜΕΡΜΗΓΚΙΟΥ (iii) ΕΞΑΤΜΙΣΗ ΦΕΡΕΜΟΝΗΣ (pheromone trail evaporation) και (iv) ΣΥΜΠΛΗΡΩΜΑΤΙΚΕΣ ΕΝΕΡΓΙΕΣ (daemon actions). Η διαδικασία ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ_ ΡΑΣΤΗΡΙΟΤΗΤΩΝ_ΚΑΤΑΣΚΕΥΗ δεν καθορίζει τον τρόπο που οι 4 αυτές δραστηριότητες θα πρέπει να προγραµµατιστούν και να συγχρονιστούν (αν αυτές οι 4 δραστηριότητες εκτελεστούν τελείως παράλληλα και ανεξάρτητα ή να συγχρονιστούν µεταξύ τους). Ο σχεδιαστής του αλγορίθµου καθορίζει τον τρόπο αλληλεπίδρασης των 4 αυτών δραστηριοτήτων.
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Θεωρούµε τα παρακάτω 5 υποκαταστήµατα τριών διαφορετικών Τραπεζών: Υποκατάστηµα Τράπεζα 1 Α 2 Α 3 Β 4 Β 5 Γ Ένας εισπράκτορας πρόκειται να εκτελέσει µία διαδροµή, τέτοια ώστε να περάσει από ένα και µόνο (οποιοδήποτε) υποκατάστηµα κάθε Τράπεζας µία και µόνο µια φορά, χωρίς να χρειαστεί να γυρίσει σ αυτό το υποκατάστηµα από όπου αρχικώς ξεκίνησε.
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Αναζητούµε τη λύση του προβλήµατος ελαχιστοποίησης του κόστους διαδροµής του εισπράκτορα. Θεωρήστε ότι το κόστος διαδροµής αντιστοιχεί στις αποστάσεις µεταξύ των υποκαταστηµάτων, οι οποίες αναφέρονται στον πίνακα που παρουσιάζεται στις επόµενες διαφάνειες. Αναζητούµε τη λύση του προβλήµατος ελαχιστοποίησης του κόστους διαδροµής του εισπράκτορα. Θεωρήστε ότι το κόστος διαδροµής αντιστοιχεί στις αποστάσεις µεταξύ των υποκαταστηµάτων.
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Πίνακας κόστους διαδροµής που αντιστοιχεί στις αποστάσεις µεταξύ των υποκαταστηµάτων. 0 70.45 36.24 68.15 C = 0 18.87 72.37 12.04 70.45 18.87 0 19.31 36.24 72.37 0 80.22 68.15 12.04 19.31 80.22 0
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Θεωρούµε τυχαίους αριθµούς που παράγονται από γεννήτρια τυχαίων αριθµών και δίδονται στον παρακάτω πίνακα όπως παράγονται ανά κολώνα. 0. 708033 0.828021 0.471211 0.340574 0.727645 0. 587927 0. 00001 0.970188 0.987561 0.564767 0. 237666 0.494826 0.424719 0.334100 0.677152 0. 429074 0.902032 0.377621 0.806376 0.729323 0. 249773 0.063034 0.2082 31 0.626722 0.878788 0. 151743 0.272282 0.272019 0.371453 0.875466
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Να εφαρµοσθεί ένας αλγόριθµος Αποικίας Μυρµηγκιών για την επίλυση του συγκεκριµένου προβλήµατος λαµβάνοντας υπ όψη τα ακόλουθα δεδοµένα: Η αποικία αποτελείται από 2 µυρµήγκια. Η ευρετική πληροφορία δίνεται από τον τύπο n ij =100/d ij (1) Η επικαιροποίηση της φερεµόνης βασίζεται στον κανόνα της «απευθείας ανανέωσης φερεµόνης µε καθυστέρηση» και βασίζεται στο ακόλουθες φόρµουλες: τ ij = τ ij + 100/J k ψ (2) για την καλύτερη λύση που παράγει το µυρµήγκι k και τ ij = τ ij + 1/J k ψ (3) για την άλλη λύση που παράγει το άλλο µυρµήγκι k. όπου J k ψείναι το κόστος της λύσης που παράγει το µυρµήγκι k
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Όταν µια σύνδεση ij=ji ανήκει και στις 2 λύσεις που παράγουν τα 2 µυρµήγκια της αποικίας, τότε η τ ij είναι ίση µε το άθροισµα της ποσότητας της φερεµόνης της ij σε κάθε λύση: τ ij =τ k1 ij + τk2 k2 ij, όπου k1 είναι το µυρµήγκι που παράγει τη 1 η λύση και k2 είναι το µυρµήγκι που παράγει τη 2 η λύση αντίστοιχα
ΕΚΦΩΝΗΣΗ ΑΣΚΗΣΗΣ Η πιθανότητα µετάβασης είναι η ακόλουθη: { α β [ τ ij ] [ ηij ] όταν τ ij 0 α β [ τ p ij = il ] [ ηil ] (4) l N l i 0 όταν τ = 0 ij µε α=β=1. Όταν όλες οι πιθανότητες για την µετάβαση από ένα κόµβο i σε ένα κόµβο j, σύµφωνα µε την σχέση (4), είναι µηδέν τότε ο κόµβος j επιλέγεται στοχαστικά. Ο αλγόριθµος τερµατίζει µετά το πέρας της 2 ης επανάληψης.
ΛΥΣΗ ΑΣΚΗΣΗΣ Το συγκεκριµένο πρόβληµα είναι ένα πρόβληµα διάταξης. Ως στοιχείο της λύσης, θα ορίσουµε τον κόµβο (και όχι µια σύνδεση) που θα προστίθεται στην ηµιτελή λύση που κατασκευάζει το κάθε µυρµήγκι σε κάθε επανάληψη του ACO αλγορίθµου.
1 η ΕΠΑΝΑΛΗΨΗ ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΑΠΟ ΤΟ 1 ο ΜΥΡΜΗΓΚΙ ΛΥΣΗ ΑΣΚΗΣΗΣ Στην 1 η επανάληψη του αλγορίθµου, θα κατασκευαστούν 2 λύσεις, δηλαδή µία από το κάθε µυρµήγκι της αποικίας, µε στοχαστικό τρόπο (επειδή δεν υπάρχει τεχνητή φερεµόνη στις συνδέσεις του δικτύου πάνω στο οποίο αναπαριστάνεται τo υπό εξέταση πρόβληµα). Αρχικά θα επιλέξουµε το κόµβο από τον οποίο το 1 ο µυρµήγκι θα ξεκινήσει να κατασκευάζει τη λύση του: 1 2 3 4 5 0 0,2 0,4 0,6 0,8 1 Ο 1 ος αριθµός της γεννήτριας είναι ο 0,708033, άρα επιλέγεται ο κόµβος 4 για να ξεκινήσει το µερµήγκι.
ΛΥΣΗ ΑΣΚΗΣΗΣ Ε..Ε. ΙΙ 1 η ΕΠΑΝΑΛΗΨΗ Ο 2 ος αριθµός της γεννήτριας είναι ο 0,587927 άρα επιλέγεται ο κόµβος 2 ως 2 ος κόµβος της διαδροµής του µυρµηγκιού. 1 2 5 0 0,33 0,67 1 Άρα ο ο κόµβος 5 θα είναι ο 3 ος κόµβος της διαδροµής του µυρµηγκιού (καθώς είναι το µοναδικό υποκατάστηµα της τράπεζας Γ). S 1 = {4,2,5} ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΑΠΟ ΤΟ 2 ο ΜΥΡΜΗΓΚΙ Αρχικά θα επιλέξουµε τον κόµβο από τον οποίο το 2 ο µυρµήγκι θα ξεκινήσει να κατασκευάζει τη λύση του: 1 2 3 4 5 0 0,2 0,4 0,6 0,8 1
1 η ΕΠΑΝΑΛΗΨΗ Ο επόµενος αριθµός της γεννήτριας είναι ο 0,237666, άρα επιλέγεται ο κόµβος 2 για να ξεκινήσει το µυρµήγκι. 3 4 5 0 0,33 0,67 1 Ο επόµενος αριθµός της γεννήτριας είναι ο 0,429074, άρα επιλέγεται ο κόµβος 4 ως 2 ος κόµβος της διαδροµής του 2 ου µυρµηγκιού. Άρα ο ο κόµβος 5 θα είναι ο 3 ος κόµβος της διαδροµής του 2 ου µυρµηγκιού (καθώς είναι το µοναδικό υποκατάστηµα της τράπεζας Γ). Οι 2 λύσεις λοιπόν που κατασκευάσθηκαν στοχαστικά (γιατί η φερεµόνη ήταν ίση µε µηδέν σε όλες τις συνδέσεις του δικτύου) είναι οι S 1 = {4,2,5} µε κόστος 72,37 + 12,04 = 84,41 και S 2 = {2,4, 4,5} µε κόστος 72,37 + 80,22 = 152,59 ΛΥΣΗ ΑΣΚΗΣΗΣ
1 η ΕΠΑΝΑΛΗΨΗ Σύµφωνα µε την εκφώνηση του προβλήµατος στις συνδέσεις (4,2) και (2,5), της καλύτερης λύσης θα τοποθετηθεί ποσότητα φερεµόνης ίση µε τ ij = τ ij + 100/J k και συγκεκριµένα ίση τ 42 = τ 25 =1,1847, ενώ ψ (2) στις συνδέσεις της χειρότερης λύσης θα ανατεθεί ποσότητα φερεµόνης ίση µε τ ij = τ ij + 1/J k ψ (3) και συγκεκριµένα ίση µε τ 24 = τ 45 =0,0066. Προσοχή!!!! Επειδή ισχύει συµµετρικότητα και στην περίπτωση της φερεµόνης τ ij =τ ji (επειδή αυτό επιθυµεί ο σχεδιαστής του αλγορίθµου) και για να δοθεί έµφαση στο γεγονός ότι ο κλάδος ij=ji επιλέχθηκε και από τα δύο µυρµήγκια, η «συνολική» ποσότητα της φερεµόνης στον κλάδο ij=ji υπολογίζεται προσθετικά: Άρα τ 24 = τ 42 = 1,1847+0,0066 = 1,1913, τ 25 =1,1847, τ 45 =0,0066 ΛΥΣΗ ΑΣΚΗΣΗΣ
2 η ΕΠΑΝΑΛΗΨΗ ΛΥΣΗ ΑΣΚΗΣΗΣ Η ποσότητα της φερεµόνης σε κάθε κλάδο ij σε συνδυασµό µε την αντίστοιχη ευρετική πληροφορία (βλέπε σχέση (1)) θα καθορίσει στη 2 η επανάληψη και την πιθανότητα µετάβασης από τον τρέχων κόµβο i στον κόµβο j (βλέπε σχέση (4)). Ο πίνακας της ευρετικής πληροφορίας όπως αυτός διαµορφώνεται από την σχέση (1) παρουσιάζεται ως εξής: η ij 1 2 3 4 5 1 1,4194 2,7594 1,4674 2 5,2994 1,3818 8,3056 3 1,4194 5,2994 5,1787 4 2,7594 1,3818 1,2466 5 1,4674 8,3056 5,1787 1,2466
2 η ΕΠΑΝΑΛΗΨΗ ΛΥΣΗ ΑΣΚΗΣΗΣ ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΤΟΥ 1 ου ΜΥΡΜΗΓΚΙΟΥ Αρχικά θα επιλέξουµε στοχαστικά τον κόµβο από τον οποίο το 1 ο µυρµήγκι θα ξεκινήσει να κατασκευάζει τη λύση του: 1 2 3 4 5 0 0,2 0,4 0,8 0,6 1 Ο επόµενος αριθµός της γεννήτριας είναι ο 0,249773, άρα επιλέγεται ο κόµβος 2 ως 1 ος κόµβος της διαδροµής του 1 ου µυρµηγκιού. Σύµφωνα λοιπόν µε την θεωρία των ACO αλγορίθµων, υπολογίζονται οι πιθανότητες για να δούµε σε ποιον κόµβο θα µετακινηθεί το 1 ο µυρµήγκι. P 24 = (1,1913*1,3818)/ [(1,1913*1,3818) + (1,1847*8,3056)]=1,6461/(1,6461 + 9,8396)= 1,6461/11,4948 = 0,1432 P 25 = (1,1847*8,3056)/ 11,4948 = 0,8568
ΛΥΣΗ ΑΣΚΗΣΗΣ Ε..Ε. ΙΙ 2 η ΕΠΑΝΑΛΗΨΗ ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΤΟΥ 1 ου ΜΥΡΜΗΓΚΙΟΥ 0,1432 0,8568 0 1 Ο επόµενος αριθµός της γεννήτριας είναι ο 0,151743, άρα επιλέγεται ο κόµβος 5 ως 2ος κόµβος της διαδροµής του 1 ου µυρµηγκιού. Επειδή η µόνη πιθανότητα που υφίσταται είναι η πιθανότητα p 54, δεν χρειάζεται ούτε να υπολογίσουµε τις πιθανές πιθανότητες µετάβασης από τον κόµβο 5, ούτε να επιλέξουµε τον επόµενο κόµβο στοχαστικά. Έτσι ο 3ος κόµβος της διαδροµής θα είναι ο κόµβος 4. Άρα η λύση που κατασκεύασε το 1 ο µυρµήγκι της 2 ης επανάληψης είναι η S 1 = {2,5,4}= 12,04+80,22=92,26
2 η ΕΠΑΝΑΛΗΨΗ ΛΥΣΗ ΑΣΚΗΣΗΣ ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΤΟΥ 2 ου ΜΥΡΜΗΓΚΙΟΥ Αρχικά θα επιλέξουµε στοχαστικά τον κόµβο από τον οποίο το 2 ο µυρµήγκι της 2 ης επανάληψης θα ξεκινήσει να κατασκευάζει τη λύση του: 1 2 3 4 5 0 0,2 0,4 0,6 0,8 1 Ο επόµενος αριθµός της γεννήτριας είναι ο 0,828021, άρα επιλέγεται ο κόµβος 5 ως 1 ος κόµβος της διαδροµής του 1 ου µυρµηγκιού. Σύµφωνα λοιπόν µε την θεωρία των ACO αλγορίθµων, υπολογίζονται οι πιθανότητες για να δούµε σε ποιον κόµβο θα µετακινηθεί το 2 ο µυρµήγκι.
ΛΥΣΗ ΑΣΚΗΣΗΣ Ε..Ε. ΙΙ P 52 = (1,1847*8,3056)/ [(1,1847*8,3056)+ (0,0066*1,2466)]= 9,8396/(9,8396+ 0,0082)= 9,8396/9,8478=0,9992, P 54 = 0,0082/9,8478=0,0008. 0,0008 0 2 η ΕΠΑΝΑΛΗΨΗ ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΤΟΥ 2 ου ΜΥΡΜΗΓΚΙΟΥ 0,9992 Επειδή η µόνη πιθανότητα που υφίσταται είναι η πιθανότητα p 42, δεν χρειάζεται ούτε να υπολογίσουµε τις πιθανές πιθανότητες µετάβασης από τον κόµβο 4, ούτε να επιλέξουµε τον επόµενο κόµβο στοχαστικά. Έτσι ο 3 ος κόµβος της διαδροµής θα είναι ο κόµβος 2. Άρα η λύση που κατασκεύασε το 2 ο µυρµήγκι της 2 ης επανάληψης είναι η S 2 = {5,4,2}= 80,22 + 72,37=152,59 καιs 1 = {2,5,4}= 12,04 + 0,22=92,26 1 Ο επόµενος αριθµός της γεννήτριας είναι ο 0,0001, άρα επιλέγεται ο κόµβος 4 ως 2 ος κόµβος της διαδροµής του 2 ου µυρµηγκιού.
2 η ΕΠΑΝΑΛΗΨΗ ΛΥΣΗ ΑΣΚΗΣΗΣ ΙΑ ΙΚΑΣΙΑ ΚΑΤΑΣΚΕΥΗΣ ΛΥΣΗΣ ΤΟΥ 2 ου ΜΥΡΜΗΓΚΙΟΥ Σύµφωνα µε την εκφώνηση του προβλήµατος στις συνδέσεις (2,5) και (5,4), της καλύτερης λύσης της 2 ης επανάληψης, θα τοποθετηθεί ποσότητα φερεµόνης ίση µε τ ij = τ ij + 100/J k ψ (2) και συγκεκριµένα ίση µε τ 25 = 1,1847+1,0839=2,2686, τ 54 =0,0066+1,0839=1,0905, ενώ στις συνδέσεις της χειρότερης λύσης θα ανατεθεί ποσότητα φερεµόνης ίση µε τ ij = τ ij + 1/J k ψ (3) και συγκεκριµένα ίση µε τ 54 = 0,0066+0,0066=0,0132 και τ 42 =1,1913+0,0066=1,1979. Ωστόσο η συνολική φερεµόνη στην σύνδεση 45=54 είναι τ 54 = τ 45 = 0,0132+1,0905=1,1037 Άρα τ 54 = τ 45 = 1,1037, τ 42 = τ 24 = 1,1979, τ 25 = τ 52 = 2,2686 όλες οι άλλες τ ij =0 ΤΕΛΟΣ 2 ης ΕΠΑΝΑΛΗΨΗΣ
ΕΥΧΑΡΙΣΤΩ ΠΟΛΥ ΚΑΙ ΟΠΟΙΑ ΗΠΟΤΕ ΕΡΩΤΗΣΗ/ΣΕΙΣ ΕΧΕΤΕ ΠΑΡΑΚΑΛΩ ΕΙΤΕ ΝΑ ΙΑΤΥΠΩΘΟΥΝ ΜΕΣΑ ΣΤΗΝ ΑΙΘΟΥΣΑ Ι ΑΣΚΑΛΙΑΣ ΕΙΤΕ ΣΤΙΣ ΩΡΕΣ ΓΡΑΦΕΙΟΥ (ΠΑΡΑΣΚΕΥΗ 11.00 14.00) ΜΗ ΙΣΤΑΖΕΤΕ ΝΑ ΙΑΤΥΠΩΝΕΤΕ ΕΡΩΤΗΣΕΙΣ!!!!!!!!! Η ΙΑΤΥΠΩΣΗ ΜΙΑΣ ΕΡΩΤΗΣΗΣ ΕΙΝΑΙ ΤΟ ΠΙΟ ΣΗΜΑΝΤΙΚΟ ΣΤΟΙΧΕΙΟ ΤΗΣ ΙΑ ΙΚΑΣΙΑΣ ΑΠΟΚΤΗΣΗΣ ΓΝΩΣΗΣ!!!!