Νέες Ευρετικές Προσεγγίσεις για ροµολόγηση Στόλου Οχηµάτων

Σχετικά έγγραφα
On line αλγόριθμοι δρομολόγησης για στοχαστικά δίκτυα σε πραγματικό χρόνο

ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

ΕΦΑΡΜΟΓΕΣ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ

Το Πρόβλημα του Περιοδεύοντος Πωλητή - The Travelling Salesman Problem

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΑΠΟΙΚΙΑΣ ΜΥΡΜΗΓΚΙΩΝ ANT COLONY OPTIMIZATION METHODS

ιπλωµατική εργασία µε θέµα:

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

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

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

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

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού

Δομές Δεδομένων και Αλγόριθμοι

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 3: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΓΡΑΦΗΜΑΤΑ

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

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

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

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

4.4 Το πρόβλημα του ελάχιστου ζευγνύοντος δένδρου

Αναζήτηση Κατά Πλάτος

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

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

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

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

Κεφάλαιο 4ο: Δικτυωτή Ανάλυση

Παραλλαγές του Προβλήματος Μεταφοράς Το Πρόβλημα Μεταφόρτωσης και το Πρόβλημα Αναθέσεων Γεωργία Φουτσιτζή ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα

Αλγόριθµοι Γραφηµάτων

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

ΑΛΓΟΡΙΘΜΟΙ ΑΝΟΠΤΗΣΗΣ: Ο ΑΛΓΟΡΙΘΜΟΣ ΤΗΣ ΑΠΟ ΟΧΗΣ ΚΑΤΩΦΛΙΟΥ (THRESHOLD ACCEPTING)

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

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

Τεχνητή Νοημοσύνη. 5η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ20 Ε ρ γ α σ ί α 4η Θεωρία Γραφηµάτων

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

VRP Η VRP

Μεταπτυχιακή Εργασία. Παπαδόπουλος Αθανάσιος. «Το Πρόβλημα της Δρομολόγησης Στόλου Οχημάτων : Μελέτη Περίπτωσης»

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

m 1 min f = x ij 0 (8.4) b j (8.5) a i = 1

Ολοκληρωμένη Λύση Δρομολόγησης και Προγραμματισμού Στόλου Οχημάτων «Route Planner»

ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΑΡΑΓΩΓΗΣ & ΔΙΟΙΚΗΣΗΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Κεφάλαιο 5: Στρατηγική χωροταξικής διάταξης

Λογικός Προγραμματισμός Ασκήσεις

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

Υπολογιστικό Πρόβληµα

Το πρόβλημα μονοδρόμησης (The One-Way Street Problem)

ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ. Κεφάλαιο 3 Μορφοποίηση Προβλημάτων Ακέραιου Προγραμματισμού

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

Β Ομάδα Ασκήσεων "Λογικού Προγραμματισμού" Ακαδημαϊκού Έτους

ΔΙΑΧΕΙΡΙΣΗ ΕΦΟΔΙΑΣΤΙΚΗΣ ΑΛΥΣΙΔΑΣ

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

ιαµέριση - Partitioning

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

I student. Μεθοδολογική προσέγγιση και απαιτήσεις για την ανάπτυξη των αλγορίθμων δρομολόγησης Χρυσοχόου Ευαγγελία Επιστημονικός Συνεργάτης ΙΜΕΤ

Παναγιώτης Καρακώστας (mai1321) ΠΜΣ Εφαρμοσμένης Πληροφορικής Συστήματα Υπολογιστών Πανεπιστήμιο Μακεδονίας

Επίλυση Προβλημάτων 1

Δομές Δεδομένων & Αλγόριθμοι

Ε ανάληψη. Α ληροφόρητη αναζήτηση

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

Θεωρία Γραφημάτων 6η Διάλεξη

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης.

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

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

Τεχνητή Νοημοσύνη. 5η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

ΚΕΦΑΛΑΙΟ Μηχανική Μάθηση

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

MBR Ελάχιστο Περιβάλλον Ορθογώνιο (Minimum Bounding Rectangle) Το µικρότερο ορθογώνιο που περιβάλλει πλήρως το αντικείµενο 7 Παραδείγµατα MBR 8 6.

u v 4 w G 2 G 1 u v w x y z 4

ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

ΔΙΑΧΕΙΡΙΣΗ ΕΦΟΔΙΑΣΤΙΚΗΣ ΑΛΥΣΙΔΑΣ

Αναζήτηση Κατά Πλάτος

ΣΧΕΔΙΑΣΜΟΣ ΚΙΝΗΣΗΣ ΚΑΙ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΕΡΓΑΣΙΩΝ ΣΕ ΒΙΟΜΗΧΑΝΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ

Δυναμικές Δομές Δεδομένων Λίστες Δένδρα - Γράφοι

Κατανεμημένα Συστήματα Ι

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

Επίλυση προβληµάτων. Περιγραφή προβληµάτων Αλγόριθµοι αναζήτησης Αλγόριθµοι τυφλής αναζήτησης Αλγόριθµοι ευρετικής αναζήτησης

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΣΥΝΕΚΤΙΚΟΤΗΤΑ ΓΡΑΦΗΜΑΤΩΝ

Προβλήματα Ελάχιστου Κόστους Ροής σε Δίκτυο. Δίκτυα Ροής Ελάχιστου Κόστους (Minimum Cost Flow Networks)

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

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

Χρήστος Ι. Σχοινάς Αν. Καθηγητής ΔΠΘ. Συμπληρωματικές σημειώσεις για το μάθημα: «Επιχειρησιακή Έρευνα ΙΙ»

ΑΛΓΟΡΙΘΜΙΚΕΣ ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ

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

Αναζήτηση Κατά Πλάτος

ΑΛΓΟΡΙΘΜΙΚΕΣ ΜΕΘΟΔΟΙ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ

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

Οι δυναμικές δομές δεδομένων στην ΑΕΠΠ

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Παράδειγµα (4) Στοιχεία Θεωρίας Γραφηµάτων (2) Ορέστης Τελέλης. Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς. v 2. u 3.

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

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Θέματα Υπολογισμού στον Πολιτισμό - Δένδρα. Δένδρα

1

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

Κατανεμημένα Συστήματα Ι

ΕΡΩΤΗΜΑΤΑ σε ΓΕΝΕΤΙΚΟΥΣ

Transcript:

Νέες Ευρετικές Προσεγγίσεις για ροµολόγηση Στόλου Οχηµάτων Γκορτσίλας ηµήτριος Α.Μ. 729 Τριµελής Επιτροπή Ζαρολιάγκης Χρήστος, Καθηγητής Τµήµατος Μηχανικών Η/Υ & Πληροφορικής (επιβλέπων) Γαλλόπουλος Ευστράτιος, Καθηγητής Τµήµατος Μηχανικών Η/Υ & Πληροφορικής Κοντογιάννης Σπυρίδων, Επίκουρος Καθηγητής Τµήµατος Μηχανικών Η/Υ & Πληροφορικής Τµήµα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήµιο Πατρών Οκτώβριος 2014

Περίληψη Στην παρούσα µεταπτυχιακή διπλωµατική εργασία µελετήθηκε το πρόβληµα ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου (VRPTW) κάτω από ένα ϕιλικό προς το περιβάλλον πρίσµα που απαιτεί την δηµιουργία ισορροπηµένων και συµπαγών συστάδων. Παρουσιάζεται µια νέα ευρετική προσέγγιση που αποτελείται από τρεις ϕάσεις : (i) συσταδοποίηση των πελατών µε συµβατά παράθυρα χρόνου, (ii) συσταδοποίηση των πελατών που ϐρίσκονται γεωγραφικά κοντά χρησιµοποιώντας διάφορες µεθόδους (ϕυσικές αποκοπές, KaHIP, τετραδικά δένδρα), (iii) µια ϕάση εκλέπτυνσης που είτε χωρίζει µια συστάδα σε µικρότερες, είτε συγχωνεύει συστάδες δηµιουργώντας µια συµπαγή µεγαλύτερη συστάδα. Η νέα προσέγγιση αποδίδει πολύ καλά όταν χρησιµοποιείται σε δυναµικά σενάρια στα οποία Ϲητούνται αλλαγές στην αρχικά υπολογισµένη διαδροµή (προσθήκη µιας νέας παραγγελίας ή ακύρωση κάποιας παραγγελίας). Η νέα µέθοδος αποτελεί ένα πολύ καλό σηµείο εκκίνησης για επανεξέταση και περαιτέρω ϐελτιστοποίηση της λύσης του προβλήµατος ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου. Πειράµατα που έγιναν µε πραγµατικά σύνολα δεδοµένων δείχνουν ότι η νέα προσέγγιση υπερέχει σε σχέση µε τις συνήθεις προσεγγίσεις που ξεκινούν από µία ϐασική λύση. ii

Ευχαριστίες Η διπλωµατική εργασία αυτή σηµατοδοτεί το τέλος ενός κύκλου, αυτού του µεταπτυχιακού ϕοιτητή στο τµήµα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής στο πανεπιστήµιο της Πάτρας. Θα ήθελα να ευχαριστήσω τον επιβλέποντα της διπλωµατικής µου εργασίας καθηγητή κ. Χρήστο Ζαρολιάγκη για την καθοδήγησή του και την άρτια συνεργασία που είχαµε. Ευχαριστώ επίσης τα άλλα δύο µέλη της τριµελούς εξεταστικής επιτροπής τον καθηγητή Ευστράτιο Γαλλόπουλο και τον επίκουρο καθηγητή Σπυρίδων Κοντογιάννη για τις πολύτιµες παρατηρήσεις και συµβουλές που µου έδωσαν. Η παρούσα µεταπτυχιακή διπλωµατική εργασία εκπονήθηκε µε τη ϐοήθεια του ευρωπαϊκού προγράµµατος ecompass που στήριξε ηθικά,οικονοµικά και ερευνητικά αυτή την εργασία. Γκορτσίλας ηµήτριος, Πάτρα Οκτώβριος 2014 iii

Περιεχόµενα Περίληψη Ευχαριστίες Κατάλογος Πινάκων Κατάλογος Σχηµάτων ii iii vi vii 1 Εισαγωγή 1 1.1 Το πρόβληµα και η σηµασία του...................... 1 1.2 Στόχοι της διπλωµατικής εργασίας.................... 3 1.3 Συνεισφορά διπλωµατικής εργασίας................... 3 1.4 οµή της διπλωµατικής εργασίας..................... 4 2 Βασικές Εννοιες-Μέθοδοι, Μαθηµατικό υπόβαθρο 6 2.1 ροµολόγηση Στόλου Οχηµάτων...................... 6 2.1.1 Συνήθεις Παραλλαγές........................ 8 2.1.2 ροµολόγηση Στόλου Οχηµάτων µε Παράθυρα Χρόνου...... 11 2.2 Γραφήµατα - Βασικές Εννοιες....................... 13 3 Πολυπλοκότητα και Τεχνικές Επίλυσης του προβλήµατος ροµολόγησης Στόλου Οχηµάτων 19 3.1 Τεχνικές Επίλυσης του προβλήµατος ροµολόγησης Στόλου Οχηµάτων. 19 3.2 Πολυκριτηριακή Βελτιστοποίηση και ροµολόγηση Στόλου Οχηµάτων. 22 3.3 ροµολόγηση Στόλου Οχηµάτων και Βελτιστοποίηση µε Αποικία Μυρ- µηγκιών................................... 25 3.4 Μέθοδος Αποταµίευσης.......................... 27 3.5 Αλγόριθµος Σάρωσης............................ 28 3.6 Τοπικές Μέθοδοι Αναζήτησης....................... 29 3.6.1 Επιλογή Πελατών.......................... 29 3.6.2 Επανατοποθέτηση Πελατών..................... 30 iv

4 Νέα Ευρετική Προσέγγιση Τριών Φάσεων 32 4.1 Βασικό Μοντέλο.............................. 32 4.2 Φάση I: Συσταδοποίηση µε Παράθυρα Χρόνου.............. 33 4.3 Φάση II: Συσταδοποίηση µε Γεωγραφική Εγγύτητα............ 34 4.3.1 Τετραδικά ένδρα.......................... 34 4.3.2 KaHIP (Karlsruhe HIgh Quality Partitioning)........... 36 4.3.3 Φυσικές Αποκοπές......................... 37 4.4 Φάση III: ιαµέριση και Συγχώνευση Συστάδων.............. 39 5 Υλοποίηση - Πειραµατικά Αποτελέσµατα 42 5.1 Συνθετικά και Πραγµατικά εδοµένα................... 42 5.2 Προκλήσεις Πραγµατικών Προβληµάτων ροµολόγησης Στόλου Οχηµάτων 43 5.3 ροµολόγηση Στόλου Οχηµάτων σε Πραγµατικές Συνθήκες....... 43 5.4 Πειράµατα µε Πραγµατικά εδοµένα................... 44 5.4.1 Πειράµατα µε Μικρά Σύνολα εδοµένων............. 45 5.4.1.1 Παράδοση εµάτων.................... 45 5.4.1.2 Παράδοση Επίπλων.................... 45 5.4.2 Πειράµατα µε Μεγάλα Σύνολα εδοµένων............. 46 5.4.2.1 ιαφορετικοί Μέθοδοι ιαµέρισης............. 46 5.4.2.2 Παράθυρα Χρόνου και υναµικά Σενάρια........ 47 6 Συµπεράσµατα - Προοπτικές 50 6.1 Συµπεράσµατα............................... 50 6.2 Προοπτικές................................. 51 Α DIMACS 10 52 Β PTV Smartour 54 Β.1 Βασικά Στοιχεία.............................. 54 Β.2 Βασικά Χαρακτηριστικά.......................... 54 Βιβλιογραφία 58 v

Κατάλογος Πινάκων 5.1 Παράδοση εµάτων : Αποτελέσµατα.................... 45 5.2 Παράδοση Επίπλων : Αποτελέσµατα.................... 46 5.3 Τεχνικές ιαµέρισης : Αποτελέσµατα.................... 47 5.4 Παράθυρα Χρόνου : Αποτελέσµατα.................... 48 5.5 υναµικά Σενάρια : Αποτελέσµατα..................... 48 vi

Κατάλογος Σχηµάτων 2.1 ροµολόγηση Στόλου οχηµάτων....................... 9 2.2 Ενα γράφηµα G............................... 13 2.3 Ενα µη διευθυνόµενο γράφηµα και ένα διευθυνόµενο γράφηµα..... 14 2.4 Κύκλοι σε ένα διευθυνόµενο γράφηµα................... 15 2.5 Ενα ισχυρά συνεκτικό γράφηµα και ένα ασθενώς συνεκτικό γράφηµα.. 15 2.6 ΙΣΣ σε ένα γράφηµα G........................... 16 2.7 Ενα δένδρο T................................ 17 4.1 Συµβατά Παράθυρα Χρόνου......................... 34 4.2 Πρώτο επίπεδο της γεωγραφικής διαµέρισης µε τετραδικά δένδρα.... 35 4.3 εύτερο επίπεδο της γεωγραφικής διαµέρισης µε τετραδικά δένδρα.... 36 4.4 Παράδειγµα ιαµέρισης µε KaHIP..................... 37 4.5 Παράδειγµα ιαµέρισης µε ϕυσικές αποκοπές 1.............. 38 4.6 Παράδειγµα ιαµέρισης µε ϕυσικές αποκοπές 2.............. 39 4.7 Τρίτη Φάση : Συγχώνευση.......................... 40 4.8 Τρίτη Φάση : ιαµέριση........................... 41 Α.1 DIMACS10 Μορφή............................. 53 Β.1 PTV Smartour Βασικό Παράθυρο 1.................... 55 Β.2 PTV Smartour Βασικό Παράθυρο 2.................... 57 vii

Κεφάλαιο 1 Εισαγωγή 1.1 Το πρόβληµα και η σηµασία του Το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων (Vehicle Routing Problem - VRP) είναι ένα από τα πιο σηµαντικά προβλήµατα στο χώρο της επιστήµης της πληροφορικής και της επιχειρησιακής έρευνας. Παρουσιάστηκε για πρώτη ϕορά το 1959 στην εργασία [5]. Από τότε το πρόβληµα έχει µελετηθεί συστηµατικά και έχουν παρουσιαστεί αρκετοί αλγόριθµοι για την επίλυσή του. Οµως, καθώς παρουσιάζονται νέες παραλλαγές του προβλήµατος που έρχονται όλο και πιο κοντά στον πραγµατικό κόσµο, παρουσιάζεται και µία νέα πρόκληση να ϐρεθούν αλγόριθµοι ικανοί να αντεπεξέλθουν στα νέα αυτά µοντέλα. Στην ϐασική εκδοχή του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων µας δίνεται ένας στόλος οχηµάτων µε κοινά χαρακτηριστικά, µία αποθήκη και ένα σύνολο πελατών. Η λύση του προβλήµατος είναι να εξυπηρετήσουµε όλους τους πελάτες χρησιµοποιώντας όσο το δυνατόν λιγότερα οχήµατα, ελαχιστοποιώντας παράλληλα κάποιο κριτήριο που συνήθως είναι η συνολική απόσταση που διένυσαν τα οχήµατα ή ο συνολικός χρόνος οδήγησης των οχηµάτων. Τα οχήµατα ϑα πρέπει στο τέλος να επιστρέψουν στην αποθήκη. Μία παραλλαγή του προβλήµατος που έρχεται πιο κοντά σε πραγµατικές εφαρµογές είναι η ροµολόγηση Στόλου Οχηµάτων µε Παράθυρα Χρόνου (Vehicle Routing Problem with Time Windows - VRPTW). Στην παραλλαγή αυτή κάθε πελάτης πρέπει να εξυπηρετηθεί κατά τη διάρκεια ενός προκαθορισµένου χρονικού διαστήµατος. Οι εφαρµογές του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων είναι πολλές και καλύπτουν ένα µεγάλο ϕάσµα από εφαρµογές καθηµερινότητας έως πιο εξεζητηµένες. Για παράδειγµα µια εταιρεία αποστολής γραµµάτων και µικρών δεµάτων χρησιµοποιεί µικρά οχήµατα προκειµένου να εξυπηρετήσει τους πελάτες της που περιµένουν την αλληλογραφία τους. Ενα σχολείο χρησιµοποιεί ένα στόλο οχηµάτων για να µεταφέρει όλους τους µαθητές στο σχολείο για να παρακολουθήσουν το µάθηµά τους και µετά τους επιστρέφει στα σπίτια τους. Σε αυτή την περίπτωση ως αποθήκη λειτουργεί το σχολικό κτίριο και πελάτες είναι οι µαθητές. Ενας άλλος 1

τοµέας που ϐρίσκει εφαρµογή το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων είναι η συλλογή απορριµάτων. Σε αυτή την περίπτωση έχουµε ένα στόλο οχηµάτων µε απορριµµατοφόρα. Οι πελάτες είναι οι κάδοι που ϐρίσκονται σε κάθε γειτονιά και το ϱόλο της αποθήκης αναλαµβάνει ο χώρος ταφής απορριµάτων. Στις παραπάνω εφαρµογές χρησιµοποιήθηκε το οδικό δίκτυο για τη δροµολόγηση των οχηµάτων. Σε µερικές εφαρµογές αυτό δεν συµβαίνει. Για παράδειγµα µια πετρελαϊκή εταιρεία ϑέλει να µεταφέρει πετρέλαιο προκειµένου να ανεφοδιάσει τις κατά τόπους αποθήκες της. Χρησιµοποιεί ϕορτηγά πλοία ως οχήµατα και οι πελάτες της σε αυτή την περίπτωση είναι οι κατά τόπους αποθήκες της. Το δίκτυο σε αυτή την εφαρµογή είναι ϑαλάσσιο και όχι το παραδοσιακά οδικό δίκτυο. Η παρούσα µεταπτυχιακή διπλωµατική εργασία επικεντρώνεται στο πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου (VRPTW). Παρόλο που το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου έχει µελετηθεί αρκετά στο παρελθόν (ϐλέπε [3, 4, 7, 10, 27]), λίγη έρευνα έχει πραγµατοποιηθεί, εξ όσων γνωρίζουµε, που αφορά στον υπολογισµό οικολογικών διαδροµών ή στην εισαγωγή οικολογικών κριτηρίων. Για παράδειγµα, ένα όχηµα που εξυπηρετεί µια διαδροµή και είναι σχεδόν άδειο, σπαταλά καύσιµα και παραδίδει λιγότερα αγαθά από όσα ϑα µπορούσε αν ήταν κατάλληλα ϕορτωµένο. Επιπλέον, η ανάθεση σε ένα µεγάλο ϕορτηγό να εξυπηρετήσει πελάτες που ϐρίσκονται στο κέντρο µιας πόλης µπορεί να είναι µια κακή επιλογή, καθώς τα κέντρα των πόλεων έχουν συνήθως στενούς δρόµους και περιορισµένη πρόσβαση. Μια διαδροµή που χρησιµοποιεί τον αυτοκινητόδροµο µπορεί να είναι πιο οικολογική από µία διαδροµή που χρησιµοποιεί τοπικές οδούς, παρόλο που η τελευταία µπορεί να είναι µικρότερη σε χιλιόµετρα. Οι εταιρείες υπηρεσιών της εφοδιαστικής αλυσίδας έχουν πρόσφατα δείξει ένα όλο και πιο αυξανόµενο ενδιαφέρον για την παροχή οικολογικών λύσεων για το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου δηµιουργώντας ισορροπηµένες και συµπαγείς συστάδες. Οι πελάτες οµαδοποιούνται µεταξύ τους δηµιουργώντας συστάδες που έχουν την ίδια συνολική Ϲήτηση, επιτυγχάνοντας έτσι ισορροπηµένες συστάδες. Ενα όχηµα ϑα πρέπει να µπορεί να εξυπηρετεί όλους τους πελάτες που ϐρίσκονται στην ίδια συστάδα επιτυγχάνοντας έτσι συµπαγείς συστάδες. Αυτή η προσέγγιση είναι δίκαιη και για τους οδηγούς, εφόσον όλοι έχουν παρόµοιο ϕόρτο εργασίας, και είναι πιο οικολογική καθώς οι συστάδες που δηµιουργούνται έχουν την ιδιότητα ότι όλοι οι πελάτες ϐρίσκονται κοντά µεταξύ τους και να έχουν συµβατά παράθυρα χρόνου. Η λύση του προβλήµατος ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου µε δηµιουργία συµπαγών και εξισορροπηµένων συστάδων είναι ένα απαιτητικό πρόβληµα το οποίο έχει κατά µέρος εξεταστεί στις εργασίες [3, 7]. Στην εργασία [3], παρουσιάζεται µια παραλλαγή του γνωστού αλγορίθµου συσταδοποίησης k means για τη δηµιουργία συστάδων πελατών. Επίσης, προτείνεται ένας αλγόριθµος δύο ϕάσεων που δηµιουργεί συνεκτικές και ισορροπηµένες συστάδες. Η πρώτη ϕάση είναι µια κατασκευαστική ϕάση και η δεύτερη µια ϕάση ϐελτίωσης. Η συνεκτικότητα επιτυγχάνεται µε τη δηµιουργία ενός γεννητικού δέντρου (spanning tree) σε κάθε 2

συστάδα και η ισορροπία επιτυγχάνεται διατηρώντας περίπου τον ίδιο αριθµό πελατών για κάθε συστάδα. Οµως η προσέγγιση αυτή δεν λαµβάνει υπόψιν της παράθυρα χρόνου. Στην εργασία [7], λαµβάνονται υπόψιν παράθυρα χρόνου. Προτείνεται ένας αλγόριθµος τριών ϕάσεων και παρουσιάζεται ένα Μικτό Ακέραιο Γραµµικό Πρόγραµµα (Mixed Integer Linear Program - MILP) για την επίλυση του προβλήµατος ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου. Καθώς το µοντέλο µπορεί να λύσει µικρά στιγµιότυπα του προβλήµατος (µέχρι 25 πελάτες) προτείνεται και εδώ ένας αλγόριθµος συσταδοποίησης. Στη Φάση Ι αναγνωρίζονται εφικτές συστάδες (συστάδες που δεν παραβιάζουν τους περιορισµούς) και στη Φάση ΙΙ οι συστάδες ανατίθενται σε οχήµατα. Η Φάση ΙΙΙ λύνει το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου για κάθε συστάδα που δηµιουργήθηκε. Για τη δηµιουργία των συστάδων προτείνεται ένας ευρετικός αλγόριθµος ϐασισµένος σε παράθυρα χρόνου. Παρόλα αυτά, η προσέγγιση της εργασίας [7] δεν παρέχει ισορροπηµένες συστάδες. 1.2 Στόχοι της διπλωµατικής εργασίας Στόχοι της διπλωµατικής εργασίας ήταν η πλήρης επισκόπηση του προβλήµατος ροµολόγησης Στόλου Οχηµάτων και των παραλλαγών του µε στόχο την δηµιουργία µιας νέας µεθόδου επίλυσης του προβλήµατος ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα χρόνου δηµιουργώντας συµπαγείς και εξισορροπηµένες συστάδες. Επειδή υπάρχουν πολλές παραλλαγές του προβλήµατος, η παρούσα εργασία επικεντρώνεται στην ροµολόγηση Στόλου Οχηµάτων µε Παράθυρα Χρόνου (Vehicle Routing Problem with Time Windows - VRPTW). Στο µοντέλο αυτό κάθε πελάτης ϑα πρέπει να εξυπηρετηθεί σε ένα συγκεκριµένο και προκαθορισµένο χρονικό διάστηµα (π.χ. 9 µε 10 το πρωί). Στόχος της διπλωµατικής εργασίας είναι να αναπτυχθεί ένας ευρετικός αλγόριθµος που ϑα κάνει µία συσταδοποίηση των πελατών σε οµάδες µε κοινά χαρακτηριστικά έτσι ώστε να µπορεί να λυθεί το πρόβληµα της δροµολόγησης στόλου οχηµάτων για κάθε οµάδα ξεχωριστά. Οι συστάδες που δηµιουργούνται ϑα είναι συµπαγείς και ισορροπηµένες. 1.3 Συνεισφορά διπλωµατικής εργασίας Στην παρούσα µεταπτυχιακή διπλωµατική εργασία, προτείνεται µία νέα ευρετική προσέγγιση για την επίλυση του προβλήµατος ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου παρέχοντας ισορροπηµένες και συµπαγείς συστάδες πελατών που αποτελείται από τρεις ϕάσεις. Στην πρώτη ϕάση, δηµιουργούνται συστάδες που περιέχουν πελάτες µε συµβατά παράθυρα χρόνου. Στη δεύτερη ϕάση, δηµιουργούνται συστάδες πελατών που ϐρίσκονται γεωγραφικά κοντά. Η τρίτη ϕάση, αποτελεί µια ϕάση εκλέπτυνσης. Κατά τη διάρκεια της ϕάσης εκλέπτυνσης οι συστάδες συγχωνεύονται µεταξύ τους, εφόσον αυτό είναι εφικτό, ή χωρίζονται σε µικρότερες αν χρειαστεί. Για παράδειγµα, αν υπάρχουν δύο συστάδες που ϐρίσκονται 3

γεωγραφικά κοντά και έχουν συµβατά παράθυρα χρόνου, ϑα συγχωνευτούν σε µία συστάδα. Αντιθέτως, αν υπάρχει µια συστάδα που περιέχει πελάτες που ϐρίσκονται γεωγραφικά κοντά αλλά τα παράθυρα χρόνου τους δεν είναι συµβατά µεταξύ τους, χωρίζεται σε µικρότερες συστάδες. Η προσέγγιση που προτείνεται είναι αρκετά αποδοτική σε δυναµικά περιβάλλοντα, για παράδειγµα όταν συµβαίνει µια αλλαγή στις αρχικά υπολογισµένες διαδροµές. Καθώς έχουνε δηµιουργηθεί συστάδες, επιπλέον παραγγελίες µπορούν να αντιστοιχηθούν σε κάποια συστάδα. Με παρόµοια λογική, αν κάποιος πελάτης ακυρώσει την παραγγελία του, εντοπίζεται η συστάδα στην οποία ανήκει και αφαιρείται από την διαδροµή. Ως εκ τούτου, η προτεινόµενη προσέγγιση είναι αποδοτική σε ένα δυναµικό σενάριο και δεν χρειάζεται να εκτελεστεί από την αρχή. Είναι η πρώτη προσέγγιση που επιλύει το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου παρέχοντας συµπαγείς και ισορροπηµένες συστάδες. Συνοπτικά, η συνεισφορά της διπλωµατικής εργασίας έγκειται στους παρακάτω τοµείς : Κριτική επισκόπηση της περιοχής της ροµολόγησης Στόλου Οχηµάτων. όθηκε έµφαση στο πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου. Παρουσίαση των παραλλαγών του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων. Παρουσίαση των κύριων τεχνικών επίλυσης του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων. Παρουσίαση νέας ευρετικής προσέγγισης τριών ϕάσεων για το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου. Υλοποίηση και πειραµατική αξιολόγηση της προτεινόµενης προσέγγισης. Η πειραµατική αξιολόγηση έγινε µε πραγµατικά δεδοµένα επιτρέποντας έτσι στην προσέγγιση να δείξει τη συµπεριφορά της σε στιγµιότυπα του πραγµατικού κόσµου. Ενα τµήµα αυτής της µεταπτυχιακής διπλωµατικής εργασίας παρουσιάστηκε στο συνέδριο VeRoLog 2014 [13]. 1.4 οµή της διπλωµατικής εργασίας Η δοµή της διπλωµατικής εργασίας είναι η εξής : στο Κεφάλαιο 2 παρουσιάζονται οι ϐασικές έννοιες και µέθοδοι, καθώς και το απαραίτητο µαθηµατικό υπόβαθρο για την κατανόηση της εργασίας. Παρουσιάζονται το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων καθώς και διάφορες παραλλαγές του. Στο Κεφάλαιο 3 παρουσιάζονται διάφοροι τρόποι επίλυσης του προβλήµατος τόσο για ακριβείς (exact) λύσεις όσο και για ευρετικές (heuristics) λύσεις και αναλύεται η πολυπλοκότητα του προβλήµατος. 4

Στο Κεφάλαιο 4 παρουσιάζεται διεξοδικά η προτεινόµενη προσέγγιση τριών ϕάσεων αναλύοντας κάθε ϕάση ξεχωριστά. Στο Κεφάλαιο 5 περιγράφεται το περιβάλλον υλοποίησης, η πειραµατική αξιολόγηση και τα πειραµατικά αποτελέσµατα που προέκυψαν από αυτή. Τέλος στο Κεφάλαιο 6 παρουσιάζονται τα συµπεράσµατα και οι προοπτικές της εργασίας. 5

Κεφάλαιο 2 Βασικές Εννοιες-Μέθοδοι, Μαθηµατικό υπόβαθρο Σε αυτό το κεφάλαιο, παρουσιάζονται οι ϐασικές έννοιες και το απαραίτητο µαθηµατικό υπόβαθρο για το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων. Παρουσιάζεται η ϐασική εκδοχή του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων ως ένα πρόβληµα ϐελτιστοποίησης. Επίσης, παρουσιάζονται διάφορες παραλλαγές του προβλήµατος και δίνεται ιδιαίτερη έµφαση στο πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου. Τέλος, παρουσιάζονται κάποια ϐασικά στοιχεία από τη ϑεωρία γραφηµάτων που είναι απαραίτητα για την παρουσίαση και την κατανόηση της νέας προσέγγισης στο Κεφάλαιο 4. 2.1 ροµολόγηση Στόλου Οχηµάτων Στο πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µας δίνεται ένας στόλος οχηµάτων µε m οχήµατα µε µέγιστη χωρητικότητα Q, ένα σύνολο από n πελάτες και µία αποθήκη. ίνεται επίσης και ένα N N µητρώο κόστους C που περιλαµβάνει το κόστος µετακίνησης από έναν πελάτη i σε έναν πελάτη j. Το κόστος είναι συνήθως η απόσταση ή ο χρόνος που απαιτείται µεταξύ των πελατών i, j. Για κάθε πελάτη δίνεται ένα πλήθος πληροφοριών που τον αφορούν όπως : ένα µοναδικό αναγνωριστικό για κάθε πελάτη id i, οι συντεταγµένες του (γεωγραφικό µήκος, γεωγραφικό πλάτος) που συµβολίζονται µε long i, lat i αντίστοιχα και η Ϲήτηση που έχει και συµβολίζεται µε d i. Στόχος είναι να δηµιουργήσουµε διαδροµές που ξεκινάνε από την αποθήκη και καταλήγουν στην αποθήκη και εξυπηρετούν όλους τους πελάτες, ελαχιστοποιώντας το συνολικό κόστος των διαδροµών. Κάθε πελάτης ϑα πρέπει να εξυπηρετηθεί από ένα όχηµα και πρέπει επίσης να χρησιµοποιηθούν το πολύ m οχήµατα, όσα έχουµε στη διάθεσή µας. Για µια πιο λεπτοµερή περιγραφή του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων, των παραλλαγών του καθώς και διαφόρων τεχνικών επίλυσης ο αναγνώστης µπορεί να ανατρέξει στο ϐιβλίο [27]. Εστω ότι δίνεται ένα πλήρες µη διευθυνόµενο γράφηµα G = (V, E) στο οποίο 6

µε V = {0,..., n} συµβολίζεται το σύνολο των κόµβων-πελατών (µε 0 συµβολίζεται η αποθήκη). Σε κάθε ακµή e E = {(i, j) : i, j V, i < j} αντιστοιχεί ένα κόστος c e ή c ij. Για κάθε ακµή διατηρείται µια ακέραια µεταβλητή x e που µετρά πόσες ϕορές διασχίστηκε η ακµή σε µια λύση. Εστω r(s) δηλώνει το µικρότερο αριθµό οχηµάτων που χρειάζονται για να εξυπηρετηθούν οι πελάτες ενός υποσυνόλου S V. Επίσης, έστω δ(s) = {(i, j) : i S, j S ή i S, j S}. Αν S = {i}, τότε απλά ισχύει ο συµβολισµός δ(i) αντί για δ({i}). Η µαθηµατική µορφοποίηση του προβλήµατος από τον Laporte [18] είναι το εξής ακέραιο γραµµικό πρόγραµµα : minimize c e x e (2.1) e E s.t. x e = 2, i V \ {0}, (2.2) e δ(i) e δ(0) e δ(s) x e = 2m, (2.3) x e 2r(S), S V \ {0}, S, (2.4) x e {0, 1}, e δ(0), (2.5) x e {0, 1, 2}, e δ(0). (2.6) Ο περιορισµός 2.2 δηλώνει ότι κάθε πελάτης επισκέπτεται µία ϕορά ακριβώς. Ο περιορισµός 2.3 δηλώνει ότι ϑα δηµιουργηθούν m διαδροµές ενώ ο περιορισµός 2.4 δηλώνει ότι δεν ϑα ξεπεραστεί η µέγιστη χωρητικότητα κάθε οχήµατος. Τέλος οι περιορισµοί 2.5 και 2.6 δηλώνουν ότι κάθε ακµή µεταξύ δύο πελατών ϑα χρησιµοποιηθεί το πολύ µία ϕορά και κάθε ακµή προσκείµενη στην αποθήκη ϑα χρησιµοποιηθεί το πολύ 2 ϕορές. Αυτό µπορεί να συµβεί αν ένα όχηµα επισκεφτεί µόνο έναν πελάτη. Ακόµα και σε αυτό το ϐασικό µοντέλο που είναι σχετικά απλό οδηγεί σε ένα ακέραιο γραµµικό πρόβληµα. Ενας άλλος ευρέως χρησιµοποιούµενος µαθηµατικός συµβολισµός του προβλήµατος παρουσιάστηκε στην εργασία [19] και ϐασίζεται στο διαχωρισµό συνόλων. Το µειονέκτηµά του είναι ότι µπορεί να περιέχει έναν εκθετικό αριθµό από δυαδικές µεταβλητές. Εστω R = {R 1,..., R s } συµβολίζουν όλες τις εφικτές διαδροµές δηλαδή όλες τις διαδροµές που δεν παραβιάζουν τους περιορισµούς µε s = R. Κάθε διαδροµή R j σχετίζεται µε ένα κόστος γ j και µε α ij συµβολίζεται µία δυαδική µεταβλητή που παίρνει την τιµή 1 αν και µόνο αν ο κόµβος i επισκέφθηκε από την διαδροµή R j. Η δυαδική µεταβλητή x j, j = 1,..., s είναι ίση µε 1 αν και µόνο αν η διαδροµή R j επιλεγεί στην λύση. Το µοντέλο είναι το εξής : 7

minimize s.t. s γ j x j (2.7) j=1 s α ij x j = 1, i V \ {0}, (2.8) j=1 s x j = m, (2.9) j=1 x e {0, 1}, j = 1,..., s. (2.10) Ο περιορισµός 2.8 επιβάλλει κάθε πελάτης να εξυπηρετηθεί από ακριβώς µία διαδροµή και ο περιορισµός 2.9 ότι ϑα επιλεχθούν m διαδροµές. Ο περιορισµός 2.10 δηλώνει ότι κάθε ακµή µεταξύ δύο πελατών ϑα χρησιµοποιηθεί το πολύ µία ϕορά, όπως και στο µοντέλο του Laporte. Το κύριο µειονέκτηµα αυτού του µοντέλου που παρουσιάστηκε είναι ο πολύ µεγάλος αριθµός των δυαδικών µεταβλητών. Ακόµα και για µεσαίου µεγέθους προβλήµατα µπορεί να ϕτάσει τα δισεκατοµµύρια µεταβλητές. Για αυτό το λόγο, ϑα πρέπει να χρησιµοποιηθεί κάποιος αλγόριθµος γεννήσεως στηλών (column generation) για να αντιµετωπίσει αυτό το πρόβληµα. 2.1.1 Συνήθεις Παραλλαγές Ενα στιγµιότυπο του προβλήµατος ροµολόγησης Στόλου Οχηµάτων ϕαίνεται στο Σχήµα 2.1. Εκτός από το ϐασικό µοντέλο, υπάρχει µια πληθώρα παραλλαγών για το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων. Τα µοντέλα αυτά προτάθηκαν στην ϐιβλιογραφία καθώς το ϐασικό µοντέλο δεν καλύπτει περιπτώσεις πραγµατικών εφαρµογών στις οποίες υπάρχουν και επιπρόσθετοι περιορισµοί όπως : χωρητικότητα οχηµάτων, (πολλαπλά) παράθυρα χρόνου για τους πελάτες, παραπάνω από µία αποθήκες, ετερογενή στόλο οχηµάτων (τα οχήµατα είναι διαφορετικού τύπου και έχουν διαφορετικές χωρητικότητες), τα οχήµατα δεν είναι απαραίτητο να επιστρέψουν στην αποθήκη κ.ά. Παρακάτω αναφέρονται οι πιο συνηθισµένες παραλλαγές του προβλήµατος ροµολόγησης Στόλου Οχηµάτων και περιγράφονται οι διαφορές µε το ϐασικό µοντέλο όπως παρουσιάστηκε στην Ενότητα 2.1. ροµολόγηση Στόλου Οχηµάτων µε Χωρητικότητες (Capacitated Vehile Routing Problem - CVRP). Είναι η άµεση επέκταση του ϐασικού µοντέλου. Σε αυτό το µοντέλο, τα οχήµατα έχουν µία µέγιστη χωρητικότητα Q, την οποία δεν µπορούν να υπερβούν σε καµία περίπτωση. ροµολόγηση Στόλου Οχηµάτων µε Παράδοση και Παραλαβή (Vehile Routing Problem with Pickup and Delivery - VRPPD). Σε αυτό το µοντέλο, τα οχήµατα πρέπει να εξυπηρετήσουν κάποιους πελάτες και να παραλάβουν 8

Σχήµα 2.1: Ενα στιγµιότυπο ροµολόγησης Στόλου Οχηµάτων. Υπάρχουν δύο διαδροµές και χρησιµοποιήθηκαν δύο οχήµατα για να εξυπηρετήσουν οκτώ πελάτες. PTV Group. αγαθά από κάποιους άλλους. Υπάρχει περίπτωση ένας πελάτης να επιθυµεί ταυτόχρονα και παραλαβή και παράδοση κάποιων αγαθών. ροµολόγηση Στόλου Οχηµάτων µε Παραλαβές (Vehile Routing Problem with Backhauls - VRPB). Αυτό το µοντέλο είναι παρόµοιο µε το VRPPD αλλά η διαφορά έγκειται στο γεγονός ότι πρώτα πρέπει να γίνουν όλες οι παραδόσεις και στη συνέχεια να γίνουν οι παραλαβές από τους πελάτες (εάν υπάρχουν). ροµολόγηση Στόλου Οχηµάτων µε Παράθυρα Χρόνου (Vehile Routing Problem with Time Windows - VRPTW). Σε αυτό το µοντέλο, κάθε πελάτης πρέπει να εξυπηρετηθεί σε ένα προκαθορισµένο χρονικό διάστηµα. Τα παράθυρα χρόνου µπορεί να είναι είτε ελαστικά µε την έννοια ότι αν η παράδοση γίνει εκτός ορίων υπάρχει µία ποινή, είτε αυστηρά που στην περίπτωση αυτή αν υπάρξει καθυστέρηση η παράδοση δεν µπορεί να γίνει καθόλου. Το µοντέλο αυτό είναι πιο κοντά σε πραγµατικές εφαρµογές µιας και σχεδόν πάντα οι πελάτες αναµένουν την εξυπηρέτησή τους κατά τη διάρκεια ενός προκαθορισµένου χρονικού διαστήµατος. Και εδώ τα οχήµατα έχουν µια µέγιστη χωρητικότητα Q αγαθών που µπορούν να µεταφέρουν. Η παρούσα µεταπτυχιακή διπλωµατική εργασία επικεντρώνεται σε αυτό το µοντέλο. ροµολόγηση Στόλου Οχηµάτων µε Πολλαπλές ιαδροµές (Vehile Routing Problem with Multiple Trips - VRPMT). Σε αυτό το µοντέλο, το ίδιο όχηµα µπορεί να εκτελέσει παραπάνω από µία διαδροµές. Και εδώ τα οχήµατα έχουν µία µέγιστη χωρητικότητα Q, την οποία δεν µπορούν να υπερβούν σε 9

καµία περίπτωση. Ανοιχτή ροµολόγηση Στόλου Οχηµάτων (Open Vehile Routing Problem - OVRP). Σε αυτό το µοντέλο, τα οχήµατα δεν είναι υποχρεωµένα να επιστρέψουν στην αποθήκη. Αυτό το σενάριο µπορεί να συµβεί αν µισθωθεί ένας στόλος οχηµάτων για να κάνουν την παράδοση των αγαθών στους πελάτες. ροµολόγηση Στόλου Οχηµάτων µε Ξεχωριστές Παραδόσεις (Vehile Routing Problem with Split Delivery - VRPSD). Σε αυτό το µοντέλο, κάθε πελάτης µπορεί να εξυπηρετηθεί από παραπάνω από ένα οχήµατα. Κάθε όχηµα που εξυπηρετεί έναν πελάτη µπορεί να µεταφέρει ένα ποσοστό των αγαθών που πρέπει να παραδοθούν σε αυτόν. Στο τέλος κάθε πελάτης πρέπει να λάβει την ποσότητα των αγαθών που παρήγγειλε. υναµική ροµολόγηση Στόλου Οχηµάτων (Dynamic Vehile Routing Problem - DVRP). Σε αυτό το µοντέλο, µερικές παραγγελίες είναι γνωστές εκ των προτέρων αλλά µπορεί να προκύψουν µερικές νέες παραγγελίες που πρέπει να ενσωµατωθούν άµεσα στις παλιές. Από την άλλη µεριά, κάποιος πελάτης µπορεί να ακυρώσει ξαφνικά την προγραµµατισµένη παραγγελία του, κάτι που ϑα πρέπει ϕυσικά να ληφθεί υπόψιν. Στην ϐιβλιογραφία µπορεί να αναφέρεται και µε τον όρο Online Vehile Routing Problem - OVRP. Περιοδική ροµολόγηση Στόλου Οχηµάτων (Period Vehile Routing Problem - PVRP). Σε αυτό το µοντέλο, πρέπει το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων να επιλυθεί για ένα χρονικό διάστηµα. Για παράδειγµα, οι διαδροµές που ϑα δηµιουργηθούν προς τους πελάτες ϑα πρέπει να κρατάνε για µία εβδοµάδα, για ένα µήνα κ.ό.κ. ροµολόγηση Στόλου Οχηµάτων µε Πολλαπλές Αποθήκες (Multi Depot Vehile Routing Problem - MDVRP). Σε αυτό το µοντέλο λαµβάνονται υπόψιν παραπάνω από µία αποθήκες. Τα οχήµατα µπορούν να ξεκινάνε και να καταλήγουν στην ίδια αποθήκη ή µπορούν να ξεκινάνε από µία αποθήκη a και να καταλήγουν σε µία αποθήκη b. ροµολόγηση Στόλου Οχηµάτων µε Στοχαστική Ζήτηση (Vehile Routing Problem with Stohastic Demands - VRPSTD). Σε αυτό το µοντέλο, η Ϲήτηση σε κάθε πελάτη δεν είναι γνωστή εκ των προτέρων αλλά υποθέτουµε ότι ακολουθεί κάποια κατανοµή. Το σενάριο αυτό µπορεί να συµβεί για παράδειγµα µετά από κάποια ϕυσική καταστροφή (σεισµός,πληµµύρα). Η ϐοήθεια που πρέπει να ϕτάσει σε διάφορες περιοχές δεν είναι γνωστή εκ των προτέρων. Εποµένως αν η Ϲήτηση είναι µεγάλη ένα όχηµα ϑα πρέπει να επιστρέψει στην αποθήκη χωρίς να έχει εξυπηρετήσει όλους τους πελάτες που του είχαν ανατεθεί. Θα ανεφοδιαστεί και ϑα συνεχίσει την εξυπηρέτηση των πελατών που µείνανε. 10

Χρονοεξαρτώµενη ροµολόγηση Στόλου Οχηµάτων (Time Dependent Vehile Routing Problem - TDVRP). Σε αυτό το µοντέλο ο χρόνος ταξιδιού µεταξύ δύο πελατών i, j δεν είναι σταθερός και εξαρτάται από την ώρα που ϑα ξεκινήσει το όχηµα. Με αυτό τον τρόπο λαµβάνεται υπόψιν η κίνηση του οδικού δικτύου και αυξάνεται η πολυπλοκότητα του προβλήµατος. ροµολόγηση Ετερογενούς Στόλου Οχηµάτων (Heterogeneous Fleet Vehile Routing Problem - HFVRP). Σε αυτό το µοντέλο, υποθέτουµε ότι υπάρχει διαθέσιµος ένας στόλος οχηµάτων µε διαφορετικά χαρακτηριστικά. Η διαφορά µπορεί να ϐρίσκεται στην χωρητικότητα κάθε οχήµατος, στο µέγεθος των οχηµάτων ή στο κόστος λειτουργίας τους (κατανάλωση καυσίµου, κόστος µίσθωσης οδηγού). ροµολόγηση Στόλου Οχηµάτων µε Εξισορρόπηση ιαδροµών (Vehile Routing Problem with Route Balancing - VRPRB). Σε αυτό το µοντέλο, εκτός από τον κύρια συνάρτηση ελαχιστοποίησης του συνολικού κόστους των διαδροµών, υπάρχει και µία δεύτερη συνάρτηση που πρέπει να ελαχιστοποιηθεί. Αυτή είναι η διαφορά µεταξύ της µεγαλύτερης σε µήκος διαδροµής µείον την µικρότερη σε µήκος διαδροµή. Αυτός ο επιπλέον περιορισµός είναι σηµαντικός καθώς έχει να κάνει µε Ϲητήµατα ίσης κατανοµής ϕόρτου εργασίας µεταξύ των οδηγών. Για παράδειγµα, δεν µπορεί ένας οδηγός να τελειώνει τη ϐάρδια του σε µία ώρα (έχοντας µια µικρή σε µήκος διαδροµή να εξυπηρετήσει) και ένας άλλος σε τρεις ώρες (έχοντας να καλύψει µια µεγάλη σε µήκος διαδροµή). Εµπλουτισµένη ροµολόγηση Στόλου Οχηµάτων (Rich Vehile Routing Problem - RVRP). Τα τελευταία χρόνια καθώς εµφανίζονται πολλές πα- ϱαλλαγές που περιλαµβάνουν πολλαπλές αποθήκες, (πολλαπλά) παράθυρα χρόνου, ετερογενείς στόλους οχηµάτων, πολλαπλές διαδροµές για κάθε όχηµα, παράδοση και παραλαβή αγαθών στους πελάτες κ.ο.κ., έχει εµφανισθεί στη ϐιβλιογραφία το µοντέλο της Εµπλουτισµένης ροµολόγησης Στόλου Οχηµάτων που περιλαµβάνει όλους αυτούς τους περιορισµούς. 2.1.2 ροµολόγηση Στόλου Οχηµάτων µε Παράθυρα Χρόνου Το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου αποτελεί µια γενίκευση του κλασικού προβλήµατος ροµολόγησης Στόλου Οχηµάτων. Σε αυτό το µοντέλο η εξυπηρέτηση σε κάθε πελάτη i πρέπει να συµβεί κατά τη διάρκεια ενός παραθύρου χρόνου [a i, b i ]. Ενα όχηµα µπορεί να ϕτάσει πριν τον νωρίτερο χρόνο άφιξης a i και να περιµένει µέχρι να είναι διαθέσιµος ο πελάτης, αλλά δεν µπορεί να ϕτάσει µετά τον αργότερο χρόνο αναχώρησης b i. Το πρόβληµα ανήκει στην κλάση προβληµάτων NP-hard καθώς αποτελεί γενίκευση του ϐασικού προβλήµατος ροµολόγησης Στόλου Οχηµάτων όταν a i = 0 και b i = για κάθε πελάτη i. Ως 11

αποτέλεσµα, η έρευνα πάνω στο πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου έχει επικεντρωθεί σε ευρετικές προσεγγίσεις. Το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων µε Παράθυρα Χρόνου µπορεί να οριστεί πάνω σε ένα διευθυνόµενο γράφηµα G = (V, E) όπου V = n + 2, και η αποθήκη αντιστοιχεί στους κόµβους 0 και n+1. Οι εφικτές διαδροµές είναι αυτές που ξεκινούν από την κορυφή 0 και καταλήγουν στην κορυφή n + 1 και δεν παραβιάζουν κάποιο περιορισµό. Το σύνολο των οχηµάτων συµβολίζεται µε K και ισχύει K = m. Εστω s i δηλώνει τον χρόνο εξυπηρέτησης στον πελάτη i (ισχύει s 0 = s n+1 = 0) και έστω t ij είναι ο χρόνος ταξιδιού από τον πελάτη i στον πελάτη j. Επίσης κάθε κορυφή σχετίζεται µε ένα παράθυρο χρόνου [a i, b i ],i N = V \ {0, n + 1}. Τα παράθυρα χρόνου σε πολλές εφαρµογές είναι γνωστά εκ των προτέρων και δίνονται σαν είσοδο. Με d i συµβολίζεται η Ϲήτηση κάθε πελάτη, µε Q η µέγιστη χωρητικότητα του οχήµατος και µε c ij το κόστος µετακίνησης από τον πελάτη i στον πελάτη j. Για τον µαθηµατικό συµβολισµό του προβλήµατος χρειάζονται δύο είδη µετα- ϐλητών : δυαδικές µεταβλητές x k ij E, k K που παίρνουν την τιµή 1 αν και µόνο αν η ακµή (i, j) χρησιµοποιείται από το όχηµα k, και συνεχείς µεταβλητές w k i, i N, k K, που δείχνουν τον χρόνο που ξεκίνησε η εξυπηρέτηση στον πελάτη i. Εστω δ + (i) = {j : (i, j) E} και δ (j) = {i : (i, j) E}. Η µαθηµατική διατύπωση του προβλήµατος σύµφωνα µε την εργασία [20] είναι ένα multicommodity δίκτυο ϱοής : minimize k K s.t. k K j δ + (0) i δ (j) (i,j) E j δ + (i) i δ (n+1) c ij x k ij (2.11) x k ij = 1, i N, (2.12) x k 0j = 1, k K, (2.13) x k ij i δ + (j) x k ji = 0, k K, j N, (2.14) x k i,n+1 = 1, k K, (2.15) x k ij(w k i + s i + t ij w k j ) 0, k K, (i, j) E, (2.16) a i wi k b i, k K, i V, (2.17) x k ij Q, k K, (2.18) i N d i j δ + (i) x k ij {0, 1}, k K, (i, j) E. (2.19) Η συνάρτηση κόστους 2.11 ελαχιστοποιεί το συνολικό κόστος µετάβασης και ο περιορισµός 2.12 δηλώνει ότι κάθε πελάτης ϑα επισκεφθεί ακριβώς µία ϕορά. Οι 12

περιορισµοί 2.13-2.15 διασφαλίζουν ότι κάθε όχηµα ϑα χρησιµοποιηθεί ακριβώς µία ϕορά και ότι η ϱοή διατηρείται σε κάθε κορυφή i. Ο περιορισµός 2.16 διασφαλίζει την συνέπεια των µεταβλητών χρόνου wi k ενώ τα παράθυρα χρόνου επιβάλλονται από τον περιορισµό 2.17. Τέλος ο περιορισµός 2.18 ελέγχει τη χωρητικότητα του οχήµατος και ο περιορισµός 2.19 διασφαλίζει ότι µία ακµή ϑα επιλεγεί µία το πολύ ϕορά από ένα όχηµα k. Το µοντέλο αυτό είναι µη γραµµικό εξαιτίας του περιορισµού 2.16. Ο περιορισµός αυτός µπορεί να γίνει γραµµικός µε την µετατροπή : w k j w k i + s i + t ij M ij (1 x k ij), k K, (i, j) E, (2.20) όπου M ij = max{0, b i + s i + t ij a j } είναι µια σταθερά. 2.2 Γραφήµατα - Βασικές Εννοιες Γράφηµα ονοµάζεται ένα Ϲεύγος πεπερασµένων συνόλων G = (V, E), όπου το µεν σύνολο V περιέχει τις κορυφές ή κόµβους του G, το δε σύνολο E περιέχει τις ακµές ή πλευρές του G (Σχήµα 2.2). a e 1 e 4 b d e 5 e e 2 e 3 c G = (V, E) V = {a, b, c, d, e} E = {e 1, e 2, e 3, e 4, e 5 } Σχήµα 2.2: Ενα γράφηµα G µε πέντε κορυφές και πέντε ακµές. Μία διευθυνόµενη ακµή, ή διευθυνόµενη πλευρά, είναι ένα διατεταγµένο Ϲεύγος από κορυφές που µπορούν να αναπαρασταθούν γραφικά σαν ένα ϐέλος ανάµεσα στις δύο κορυφές. Σε ένα τέτοιο διατεταγµένο Ϲεύγος η πρώτη κορυφή ονοµάζεται αρχική κορυφή και η δεύτερη ονοµάζεται τελική κορυφή. Ενα σύνολο από κορυφές ονοµάζεται πολλαπλό ή παράλληλο αν όλες οι κορυφές έχουν την ίδια αρχική και την ίδια τελική κορυφή. Ενα διευθυνόµενο γράφηµα ή διγράφηµα είναι ένα γράφηµα που περιέχει µόνο κατευθυνόµενες ακµές. Η διαφορά ϕαίνεται στο Σχήµα 2.3. 13

1 2 1 2 3 4 3 4 Σχήµα 2.3: Ενα µη διευθυνόµενο γράφηµα και ένα διευθυνόµενο γράφηµα. Μια διαδροµή είναι µια εναλλασσόµενη ακολουθία από ακµές και κορυφές, που ξεκινά και τελειώνει µε µια κορυφή, στην οποία κάθε κορυφή είναι προσπίπτουσα τόσο στην ακµή που προηγείται αυτής όσο και στην ακµή που την ακολουθεί. Οι κορυφές που προηγούνται και ακολουθούν µία ακόµη είναι οι τελικές κορυφές αυτής της πλευράς. Οταν η πρώτη και η τελευταία κορυφή µιας διαδροµής συµπίπτουν και υπάρχουν πάνω από µια διαφορετικές κορυφές τότε η διαδροµή καλείται κύκλος. Αν ο κύκλος σχηµατίζεται από διευθυνόµενες πλευρές λέγεται κύκλωµα. Αν δεν υπάρχουν κύκλοι το γράφηµα ονοµάζεται άκυκλο. Μια διαδροµή λέγεται απλή όταν όλες οι κορυφές της είναι διαφορετικές, εκτός ίσως από την πρώτη και την τελευταία οι οποίες µπορεί να συµπίπτουν. Απλό κύκλο ή απλό κύκλωµα έχουµε όταν ο κύκλος ή το κύκλωµα ως διαδροµή είναι απλή. Μια διαδροµή που περιέχει όλες τις πλευρές του G και µόνο µία ϕορά καλείται διαδροµή Euler. Αν η διαδροµή είναι και κύκλος ή κύκλωµα καλείται κύκλος ή κύκλωµα Euler. Μια απλή διαδροµή (αντίστοιχα κύκλος) που περιέχει όλες τις κορυφές και µόνο µία ϕορά καλείται διαδροµή (αντίστοιχα κύκλος) Hamilton. Μήκος µιας διαδροµής ονοµάζεται το πλήθος των πλευρών της. Απόσταση µεταξύ δύο κορυφών είναι το ελάχιστο µήκος µεταξύ των διαδροµών που τις συνδέουν. ιάµετρος ενός γραφήµατος είναι η µέγιστη απόσταση για όλα τα δυνατά Ϲεύγη κορυφών. Στο Σχήµα 2.4 ϕαίνονται µερικοί κύκλοι. Οταν ένα γράφηµα G είναι µη διευθυνόµενο, καλείται συνεκτικό αν για οποιεσδήποτε δύο κορυφές του υπάρχει διαδροµή που τις ενώνει. Για διευθυνόµενα γραφήµατα υπάρχουν διάφορα είδη συνεκτικότητας. Οταν υπάρχει διαδροµή είτε προς την µία είτε προς την άλλη κορυφή (για οποιοδήποτε Ϲεύγος κορυφών) το γράφηµα ονοµάζεται µονοµερώς συνεκτικό. Αν επιπλέον, για κάθε Ϲεύγος κορυφών, υπάρχει διαδροµή και προς τις δύο κατευθύνσεις, τότε καλείται ισχυρά συνεκτικό. Ενα διευθυνόµενο γράφηµα ονοµάζεται ασθενώς συνεκτικό αν το αντίστοιχο µη διευθυνόµενο γράφηµά του είναι συνεκτικό. Ενα ασθενώς συνδεδεµένο γράφηµα µπορεί να ϑεωρηθεί ως διευθυνόµενο γράφηµα στο οποίο κάθε κορυφή είναι προσβάσιµη από κάθε άλλη, αλλά όχι απαραίτητα ακολουθώντας τις κατευθύνσεις 14

Σχήµα 2.4: Κύκλοι σε ένα διευθυνόµενο γράφηµα. των ακµών. Στο Σχήµα 2.5 παρουσιάζονται οι έννοιες του ασθενώς συνεκτικού γραφήµατος και του ισχυρά συνεκτικού γραφήµατος. (i) (ii) Σχήµα 2.5: Ενα ισχυρά συνεκτικό γράφηµα (i) και ένα ασθενώς συνεκτικό γράφηµα (ii). Μία Ισχυρά Συνεκτική Συνιστώσα (ΙΣΣ) ενός διευθυνόµενου γραφήµατος G είναι το µεγαλύτερο υπογράφηµα του G, έστω H, που είναι ισχυρά συνεκτικό. ηλαδή, δεν µπορεί να προστεθεί καµία επιπλέον ακµή ή κορυφη στο H χωρίς να παραβιαστεί το γεγονός ότι το H είναι ισχυρά συνεκτικό. Οι ΙΣΣ αποτελούν µία διαµέριση του γραφήµατος G. Αν κάθε ΙΣΣ συµπτυχθεί σε έναν κόµβο, το γράφηµα που ϑα προκύψει είναι ένα διευθυνόµενο άκυκλο γράφηµα ( ΑΓ). Ο υπολογισµός των ΙΣΣ ενός γραφήµατος µπορεί να γίνει σε γραµµικό χρόνο 15

χρησιµοποιώντας τον αλγόριθµο Αναζήτησης Πρώτα κατα Βάθος (ΑΠΒ). Στο Σχήµα 2.6 ϕαίνεται ένα διευθυνόµενο γράφηµα και οι ΙΣΣ του. Σχήµα 2.6: Ενα γράφηµα G µε τέσσερις ΙΣΣ. Μία ΙΣΣ µπορεί να αποτελείται µόνο από έναν κόµβο όπως ο κόµβος 4. ένδρο είναι ένα συνεκτικό,άκυκλο και µη διευθυνόµενο γράφηµα. Συνήθως συµβολίζεται µε T. Ρίζα ενός δένδρου είναι ο κόµβος που ϐρίσκεται πιο ψηλά στο δέντρο. Συµβολίζεται µε r. Γονέας ενός κόµβου v είναι ο κόµβος u που ϐρίσκεται ακριβώς πριν τον v στην διαδροµή που ξεκινά από την ϱίζα r. Ο κόµβος w είναι τέκνο του v, αν ο v είναι γονέας του w. Πιο γενικά, ο κόµβος w είναι απόγονος του v (ή ο v είναι πρόγονος του w) αν ο κόµβος v ϐρίσκεται στην διαδροµή από την ϱίζα στον κόµβο w. Ενας κόµβος x είναι ϕύλλο, αν δεν έχει απογόνους. Ενα δένδρο ϕαίνεται στο Σχήµα 2.7. Στην επιστήµη της πληροφορικής τα δένδρα αποτελούν ϑεµελιώδη αντικείµενα καθώς κωδικοποιούν την έννοια της ιεραρχίας. Για παράδειγµα στο Σχήµα 2.7 το δένδρο µπορεί να αντιστοιχεί στην οργανωτική δοµή µιας µικρής εταιρείας. Οι υπάλληλοι b, c υπάγονται στον a, οι υπάλληλοι d, e υπάγονται στον b και οι υπάλληλοι f, g υπάγονται στον c. Πολλοί ιστότοποι είναι οργανωµένοι σε µια δοµή που µοιάζει µε δένδρο για την διευκόλυνση της περιήγησης. Μια τυπική ιστοσελίδα ενός τµήµατος επιστήµης των υπολογιστών ϑα έχει µια εισαγωγική σελίδα ως ϱίζα. Η σελίδα ιδακτικό Προσωπικό και Μαθήµατα είναι τέκνα της εισαγωγικής σελίδας. Το κάθε µάθηµα είναι τέκνο της σελίδας Μαθήµατα κ.ό.κ. Τα γραφήµατα χρησιµοποιούνται για να εκφράσουν σχέσεις σε ϕυσικά, ϐιολογικά, κοινωνικά καθώς και υπολογιστικά συστήµατα. Για το λόγο αυτό, ϐρίσκουν πολλές εφαρµογές σε πρακτικά προβλήµατα. Στην επιστήµη της πληροφορικής, τα 16

a b c d e f g Σχήµα 2.7: Ενα δένδρο T µε επτά κόµβους. Ο κόµβος a είναι η ϱίζα του δένδρου. γραφήµατα χρησιµοποιούνται για να αναπαραστήσουν δίκτυα, οργάνωση δεδοµένων, τη ϱοή του υπολογισµού κ.ά. Για παράδειγµα, το διαδίκτυο µπορεί να ϑεωρηθεί σαν ένα διευθυνόµενο γράφηµα στο οποίο κάθε κόµβος είναι µια ιστοσελίδα και υπάρχει µια ακµή που συνδέει δύο κόµβους αν υπάρχει ένας υπερσύνδεσµος που οδηγεί από την µία ιστοσελίδα σε µία άλλη. Με παρόµοιο τρόπο, µπορεί να οριστεί ένα γράφηµα για εφαρµογές ταξιδιού, ϐιολογίας ή σχεδιασµού ολοκληρωµένων κυκλωµάτων. Εξ αιτίας των πολλών εφαρµογών που έχουν τα γραφήµατα απασχολούν ιδιαίτερα την επιστηµονική κοινότητα της πληροφορικής καθώς υπάρχουν πολλοί αλγόριθµοι που εκτελούνται πάνω σε γραφήµατα. Τα γραφήµατα χρησιµοποιούνται επίσης και στις επιστήµες της Φυσικής και της Χηµείας. Στην Φυσική, χρησιµοποιούνται για την αναπαράσταση τρισδιάστατων ατοµικών δοµών για να µελετηθεί η τοπολογία των ατόµων. Στη Χηµεία, ένα γράφηµα αναπαριστά ένα µόριο, στο οποίο οι κορυφές αναπαριστούν τα άτοµα και οι ακµές το δεσµό µεταξύ των ατόµων. Αυτή η προσέγγιση χρησιµοποιείται για την επεξεργασία της δοµής των ατόµων µε τη ϐοήθεια υπολογιστή. Ενα άλλο πεδίο στο οποίο τα γραφήµατα ϐρίσκουν ολοένα και πιο αυξανόµενη εφαρµογή είναι η κοινωνιολογία και τα κοινωνικά δίκτυα. Σε ένα κοινωνικό δίκτυο κάθε κόµβος αναπαριστά ένα άτοµο και µια ακµή που συνδέει δύο κόµβους αναπαριστά τη µεταξύ τους σχέση. Η σχέση αυτή µπορεί να είναι ϕιλική (αν τα άτοµα γνωρίζονται), σχέση επιρροής (αν το άτοµο a µπορεί να επηρεάσει το άτοµο b) ή σχέση εργασίας (αν είναι συνάδελφοι στον ίδιο εργασιακό χώρο). Στον τοµέα της ϐιολογίας, ένα γράφηµα µπορεί να αναπαριστά τα είδη και τις µεταξύ τους σχέσεις. Για παράδειγµα κάθε κόµβος αντιστοιχεί σε ένα είδος (π.χ. λαγός) και υπάρχει µια ακµή που συνδέει δύο είδη αν το ένα είδος αποτελεί ϑήραµα για το άλλο (π.χ. η αλεπού συνδέεται µε το λαγό). Στο τοµέα των µαθηµατικών, τα γραφήµατα είναι χρήσιµα στην γεωµετρία και στην τοπολογία. Το µοντέλο του γραφήµατος µπορεί να επεκταθεί αν εισαχθούν ϐάρη ή κόστη στις ακµές του γραφήµατος. Το ϐάρος µπορεί να αναπαριστά χιλιοµετρική απόσταση σε ένα οδικό δίκτυο µεταξύ δύο πόλεων ή το χρόνο που χρειάζεται ένα όχηµα να µεταβεί από µία πόλη σε µία άλλη. Τα ϐάρη στις ακµές ενός γραφήµατος µπορεί να είναι 17

και αρνητικοί αριθµοί. Για παράδειγµα στις άγονες γραµµές των πλοίων το κράτος δίνει επιδότηση για ένα δροµολόγιο οπότε σε ένα γράφηµα που υπάρχει µια ακµή που συνδέει το λιµάνι αφετηρίας µε το λιµάνι προορισµού (της άγονης γραµµής) το κόστος της είναι αρνητικός αριθµός. Ενα γράφηµα ονοµάζεται επίπεδο αν µπορεί να σχεδιαστεί στο επίπεδο µε τέτοιο τρόπο ώστε οι ακµές του να µην τέµνονται µεταξύ τους. 18

Κεφάλαιο 3 Πολυπλοκότητα και Τεχνικές Επίλυσης του προβλήµατος ροµολόγησης Στόλου Οχηµάτων Σε αυτό το κεφάλαιο παρουσιάζεται η πολυπλοκότητα του προβλήµατος ροµολόγησης Στόλου Οχηµάτων καθώς και οι ϐασικές τεχνικές επίλυσης που έχουν προταθεί στην ϐιβλιογραφία. Καθώς το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων έχει µελετηθεί εκτενώς, παρουσιάζονται οι πιο ϐασικές τεχνικές επίλυσης. Το ενδιαφέρον στοιχείο έγκειται στο γεγονός ότι δεν υπάρχει µία µόνο τεχνική που να εφαρµόζεται σε όλες τις παραλλαγές του προβλήµατος ροµολόγησης Στόλου Οχηµάτων και να δίνει τα καλύτερα αποτελέσµατα. ιαφορετικές τεχνικές αποδίδουν καλά σε διαφορετικές παραλλαγές του προβλήµατος. 3.1 Τεχνικές Επίλυσης του προβλήµατος ροµολόγησης Στόλου Οχηµάτων Το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων αποτελεί τη γενίκευση του Προβλήµατος του Περιοδεύοντος Πωλητή (Traveling Salesman Problem - TSP) το οποίο είναι γνωστό ότι ανήκει στην κατηγορία των NP-hard προβληµάτων. Αυτό σηµαίνει ότι η ακριβής λύση του προβλήµατος µπορεί να υπολογιστεί για µικρές τιµές του n (30-40 πελάτες). Για αυτό το λόγο, στη ϐιβλιογραφία έχουν προταθεί πολλές ευρετικές (heuristics) και µετα ευρετικές (metaheuristics) προσεγγίσεις που στην πράξη δίνουν πολύ καλά αποτελέσµατα. Από την άλλη πλευρά οι προσεγγίσεις αυτές δεν δίνουν κανένα άνω ϕράγµα για την πολυπλοκότητά χειρότερης περίπτωσής τους. Οι προσεγγίσεις αυτές µπορούν να λύσουν στιγµιότυπα µε 1000 πελάτες σε µερικά δευτερόλεπτα σε ένα σύγχρονο υπολογιστικό σύστηµα. Οι ακριβείς λύσεις υπολογίζονται µε τις τεχνικές της ιακλάδωσης και Φραγής (Branch and Bound) και της ιακλάδωσης και Αποκοπής (Branch and Cut). Οι 19

δύο αυτές τεχνικές δηµιουργούν ένα δέντρο αναζήτησης. Η ιακλάδωση και Φραγή ϕτιάχνει ένα µέρος του δέντρου αναζήτησης και το εξερευνά. Η ιακλάδωση και Αποκοπή κόβει κλαδιά του δέντρου µε κάποιο κριτήριο για να ελαττώσει το χώρο αναζήτησης. Μία από τις πιο επιτυχείς ακριβείς προσεγγίσεις για τη ροµολόγηση Στόλου Οχηµάτων µε Χωρητικότητες είναι η µέθοδος k trees [11], η οποία κατάφερε να λύσει ένα στιγµιότυπο µε 71 πελάτες. Χρησιµοποιεί την τεχνική της ιακλάδωσης και Φραγής χωρίζοντας πρώτα τους πελάτες σε οµάδες. Μπορεί να επεκταθεί ώστε να λαµβάνει υπόψιν της παράθυρα χρόνου και ετερογενείς στόλους οχηµάτων. Στην ϐιβλιογραφία, υπάρχει µια µεγάλη συλλογή από προσεγγιστικές λύσεις για το πρόβληµα της ροµολόγησης Στόλου Οχηµάτων. Σχεδόν όλες ανήκουν στην κατηγορία των ευρετικών ή µεταευρετικών λύσεων εξαιτίας της πολυπλοκότητας του προβλήµατος. Μπορούν να κατηγοριοποιηθούν σε κατασκευαστικές προσεγγίσεις και σε ϐελτιωτικές προσεγγίσεις. Οπως µπορεί να γίνει εύκολα αντιληπτό από το όνοµά τους, οι κατασκευαστικές προσεγγίσεις κατασκευάζουν αρχικές διαδροµές ή υποψήφιες διαδροµές. Στη συνέχεια οι διαδροµές αυτές ϐελτιώνονται περαιτέρω από τις ϐελτιωτικές προσεγγίσεις. Μία ευρέως γνωστή τεχνική είναι η µέθοδος αποταµίευσης (savings method) [4], και η ευρετική προσέγγιση µε εισαγωγές (insertion heuristic) [14]. Γνωστές ϐελτιωτικές τεχνικές που έχουν προταθεί στην ϐιβλιογραφία είναι η [16] και η [17]. Στην εργασία [21] παρουσιάζονται πολλές ευρετικές λύσεις και γίνεται µια εκτενής πειραµατική αξιολόγησή τους. Οι κυριότερες τεχνικές που έχουν προταθεί στην ϐιβλιογραφία ανήκουν σε µία από τις παρακάτω κατηγορίες : Βελτιστοποίηση µε Αποικία Μυρµηγκιών (Ant Colony Optimization - ACO). Είναι µια πιθανοτική τεχνική εµπνευσµένη από τη συµπεριφορά των µυρµηγκιών προς αναζήτηση τροφής. Αρχικά, τα µυρµήγκια περιπλανώνται τυχαία προς αναζήτηση τροφής. Οταν την ϐρούνε, επιστρέφουν στην ϕωλιά τους αφήνοντας ίχνη από ϕεροµόνες κατά µήκος της διαδροµής. Αν κάποιο άλλο µυρµήγκι ϐρει την ίδια διαδροµή την ενισχύει και αυτό αφήνοντας το δικό του ίχνος ϕεροµόνης. Τελικά, κατασκευάζεται µία διαδροµή από τη ϕωλιά προς την τροφή. Στη ροµολόγηση Στόλου Οχηµάτων ακολουθείται παρόµοια λογική ενισχύοντας καλές διαδροµές έναντι των αρχικών τυχαίων. Γενετικοί Αλγόριθµοι (Genetic Algorithms). Η ιδέα των γενετικών αλγορίθµων ϐασίζεται στη ϕυσική επιλογή. Ενας γενετικός αλγόριθµος εξελίσσει έναν πληθυσµό δηµιουργώντας νέες γενιές απογόνων µέσα από µια επαναληπτική διαδικασία µέχρι ικανοποιηθούν κάποια κριτήρια σύγκλισης. Τέτοια κριτήρια µπορεί να είναι για παράδειγµα ο µέγιστος αριθµός γενεών, µία ϐέλτιστη λύση ή η δηµιουργία ενός οµογενούς πληθυσµού. Υπάρχουν τρεις ϕάσης που εκτελούνται σε κάθε γενετικό αλγόριθµο. Αρχικά, εκτελείται η ϕάση επιλογής στην οποία επιλέγονται (αρχικά τυχαία) οι γονείς που ϑα δηµιουργήσουν τους απογόνους. Στη συνέχεια, εκτελείται η ϕάση της αναπαραγωγής στην οποία επιλέγονται τα γονίδια των γονέων για να 20

παραχθούν οι απόγονοι που ϑα αποτελέσουν την επόµενη γενιά. Στην τρίτη ϕάση γίνεται η µετάλλαξη κάποιων γονιδίων προκειµένου να επιτευχθεί γενετική ποικιλοµορφία και να εξερευνηθεί περαιτέρω ο χώρος αναζήτησης του προβλήµατος. Αναζήτηση Ταµπού (Tabu Search). Η Αναζήτηση Ταµπού εξερευνά το χώρο αναζήτησης κινούµενη σε κάθε επανάληψη από µια λύση s στην καλύτερη λύση σε ένα υποσύνολο της γειτονιάς της N(s). Σε αντίθεση µε άλλες µεθόδους αναζήτησης, η τρέχουσα λύση µπορεί να χειροτερεύει από µια επανάληψη στην άλλη. Για να αποφευχθεί η επιλογή λύσεων που οδηγούν σε κυκλική συµπεριφορά, οι λύσεις που έχουν κάποια χαρακτηριστικά πρόσφατα εξερευνηµένων λύσεων κηρύσσονται προσωρινά απαγορευµένες (ταµπού). Η διάρκεια κατά την οποία µερικές λύσεις παραµένουν ταµπού ποικίλει. Η κατάσταση ταµπού µπορεί να ξεπεραστεί αν συµβαίνει για παράδειγµα κάποια από τις ταµπού λύσεις να είναι καλύτερη από όλες τις προηγούµενες λύσεις. Προγραµµατισµός µε Περιορισµούς (Constraint Programming). Στην τεχνική αυτή ϑέλουµε να ελαχιστοποιήσουµε µία συνάρτηση κόστους λαµ- ϐάνοντας υπόψιν κάποιους περιορισµούς. Ελαχιστοποιούµε για παράδειγµα την συνολική απόσταση που διένυσαν τα οχήµατα, υπό τους περιορισµούς να µην ξεπεραστεί η µέγιστη χωρητικότητα κάθε οχήµατος, να εξυπηρετηθούν όλοι οι πελάτες και τα οχήµατα να επιστρέψουν στην αποθήκη. Πολλές ϕορές οι περιορισµοί που επιβάλλουµε µπορεί να είναι µη γραµµικές συναρτήσεις αυξάνοντας έτσι την πολυπλοκότητα του προβλήµατος. Οταν υπάρχουν µόνο γραµµικοί περιορισµοί και η συνάρτηση ελαχιστοποίησης είναι επίσης γραµµική, έχουµε ένα πρόβληµα Γραµµικού Προγραµµατισµού. Προσοµοιωµένη Ανόπτηση (Simulated Annealing). Πρόκειται για µια στοχαστική τεχνική χαλάρωσης, που χρησιµοποιείται στην στατιστική µηχανική. Βασίζεται στην αναλογία της αναδιάταξης των στερεών σωµάτων. Στην αρχή, ένα στερεό σώµα ϑερµαίνεται σε υψηλή ϑερµοκρασία και σταδιακά ψύχεται για να κρυσταλλοποιηθεί. Στην επιστήµη της πληροφορικής χρησιµοποιείται µια µέθοδος τοπικής αναζήτησης και τροποποιείται για να µπορεί να αποδράσει από τοπικά ϐέλτιστα. Μία λύση S αποτελεί µια καινούρια τρέχουσα λύση αν 0, όπου = f(x) f(x i ). Για αποφύγει η αναζήτηση τοπικά ϐέλτιστα, γίνονται κινήσεις που αυξάνουν την συνάρτηση κόστους µε πιθανότητα e /T αν > 0, όπου T είναι µία παράµετρος που ονοµάζεται ϑερµοκρασία. Η τιµή της παραµέτρου T µεταβάλλεται από µια αρχική υψηλή τιµή σε µία τιµή κοντά στο 0. Η µεταβολή ελέγχεται από ένα πρόγραµµα ψύξης που καθορίζει την αρχική τιµή της T και τη µεταβολή της σε κάθε ϐήµα. Παρόµοια λογική ακολουθεί και η µέθοδος της Ντετερµινιστικής Ανόπτησης (Deterministic Annealing) µόνο που σε αυτή τη τεχνική η επιλογή κάθε κίνησης γίνεται µε ντετερµινιστικό και όχι µε πιθανοτικό τρόπο. 21

Εκτός από τις ευρετικές και µεταευρετικές λύσεις στην ϐιβλιογραφία έχουν προταθεί και αλγόριθµοι που αποτελούνται από δύο ϕάσεις (2-Phase Approaches). Η γενική ιδέα των αλγορίθµων αυτών είναι πρώτον η συσταδοποίηση των κορυφών σε οµάδες και δεύτερον η κατασκευή των διαδροµών σε κάθε οµάδα-συστάδα. Η εργασία [10] αποτελεί ένα παράδειγµα τέτοιας τεχνικής. Οι αλγόριθµοι χωρίζονται σε δύο κατηγορίες : Συσταδοποίησης Πρώτα ροµολόγησης στη Συνέχεια (Cluster First Route Second). Σε αυτή την τεχνική, πρώτα δηµιουργούνται συστάδες πελατών µε κοινά χαρακτηριστικά και στη συνέχεια υπολογίζονται οι διαδροµές που ϑα τους εξυπηρετήσουν. Στην εργασία [3], οι συγγραφείς δηµιουργούν συστάδες µε τον ίδιο περίπου αριθµό πελατών χρησιµοποιώντας τον αλγόριθµο k means. Στην εργασία [7], οι συγγραφείς δηµιουργούν συστάδες και στη συνέχεια επιλύουν ένα µικτό ακέραιο γραµµικό πρόγραµµα για τον υπολογισµό των διαδροµών. ροµολόγησης Πρώτα Συσταδοποίησης στη Συνέχεια (Route First Cluster Second). Σε αυτή την τεχνική πρώτα επιλύεται το πρόβληµα του Περιοδεύοντος Πωλητή δηµιουργώντας µία γιγαντιαία διαδροµή. Στη συνέχεια, η γιγαντιαία διαδροµή κόβεται σε µικρότερες που ικανοποιούν τους περιορισµούς χωρητικότητας των οχηµάτων. Στις Ενότητες 3.2,3.3,3.4,3.5 και 3.6 παρουσιάζονται κάποιες ϐασικές τεχνικές για την επίλυση του προβλήµατος ροµολόγησης Στόλου Οχηµάτων. 3.2 Πολυκριτηριακή Βελτιστοποίηση και ροµολόγηση Στόλου Οχηµάτων Μια πρόσφατη τάση στην ϐιβλιογραφία [15] είναι η αντιµετώπιση του προβλήµατος της ροµολόγησης Στόλου Οχηµάτων και των παραλλαγών του χρησιµοποιώντας την πολυκριτηριακή ϐελτιστοποίηση. ηλαδή, εκτός από ελαχιστοποίηση του συνολικού κόστους εισάγεται και µια νέα συνάρτηση που πρέπει να ελαχιστοποιηθεί. Συνήθως, η νέα συνάρτηση που εισάγεται είναι η ελαχιστοποίηση του µήκους των διαδροµών που δηµιουργούνται, η ελαχιστοποίηση του χρόνου ταξιδιού κάθε διαδροµής, η ελαχιστοποίηση των εκποµπών διοξειδίου του άνθρακα κ.ά. Ειδικά όσο αναφορά οικολογικά κριτήρια λίγη έρευνα έχει γίνει, σύµφωνα µε τη γνώση µας, σε αυτόν τον τοµέα. Στην εργασία [15] παρουσιάζεται µία παραλλαγή του ϐασικού προβλήµατος ροµολόγησης Στόλου Οχηµάτων που ονοµάζεται ροµολόγηση Στόλου Οχηµάτων µε Εξισορρόπηση ιαδροµών (Vehicle Routing Problem with Route Balancing - VRPRB). Σε αυτό το µοντέλο εκτός από την ελαχιστοποίηση του κόστους, εισάγεται και µία δεύτερη συνάρτηση που πρέπει να ελαχιστοποιηθεί. Η νέα συνάρτηση είναι η διαφορά της µεγαλύτερης σε µήκος διαδροµής µείον τη µικρότερη σε µήκος διαδροµή. Ο λόγος 22