Μετάβαση στο κύριο περιεχόμενο

Γραμμικός Προγραμματισμός: Κεφάλαιο 3.2 - Η Μέθοδος Simplex - γεωμετρική ερμηνεία

Στο προηγούμενο κεφάλαιο περιγράψαμε την μέθοδο Simplex, αλγεβρικά. Σε αυτή την σειρά όμως βασικό μας μέλημα είναι η διαίσθηση που προσφέρει η γεωμετρία του προβλήματος. Εδώ θα ασχοληθούμε με την ερμηνεία των αλγεβρικών βημάτων του προηγούμενου κεφαλαίου από γεωμετρικής σκοπιάς. Ας θυμηθούμε άλλη μια φορά την κεντρική ιδέα της μεθόδου Simplex, όπως την περιγράψαμε στο Κεφάλαιο 2.0:

Κεντρική Ιδέα Μεθόδου Simplex
  1. Έστω v μία κορυφή της εφικτής περιοχής
  2. Όσο υπάρχει ένας γείτονας της v, v' με καλύτερη τιμή της συνάρτησης στόχου:
  3.         θέσε v' := v
Αυτή ακριβώς την κεντρική ιδέα υλοποιήσαμε και στο Κεφάλαιο 3.1. Έστω ότι έχουμε ένα ΓΠ με n μεταβλητές (άρα θα "ζούμε" στον n-διάστατο χώρο), ουσιαστικά κινούμαστε κάθε φορά πάνω σε μία ακμή του πολυτόπου των λύσεων (η μία ακμή ορίζεται από n-1 υπερεπίπεδα, οι n-1 μεταβλητές που παραμένουν σταθερές) και θα σταματήσουμε στην άλλη άκρη της ακμής. Η γειτονιά συνεπώς που αναφέρουμε στην Κεντρική Ιδέα δεν είναι άλλη από το σύνολο των των κορυφών v' του πολυτόπου που απέχουν από την v ακριβώς μία ακμή. Ας το δούμε και πιο αναλυτικά.


3Δ πολύτοπο
Σχήμα 1: 3-διάστατο πολύτοπο


Το σχήμα θα μας βοηθήσει να το δούμε καλύτερα. (Όσες έχετε τα 4έδρα ζάρια του D&D, μπορείτε να δείτε εκεί το επιχείρημα πειραματιζόμενες με αυτά). Θυμόμαστε ότι μια ανισότητα αντιστοιχεί σε ένα ημιχώρο, δηλαδή τον χώρο που ορίζεται την μία πλευρά ενός υπερεπιπέδπου. Στο Κεφάλαιο 3.1 όταν αυξάναμε μία μεταβλητή, αυτό είχε ως συνέπεια μία ανισότητα να γίνει ισότητα, την ονομάσαμε σφιχτή. Αυτό που δεν επισημάναμε τότε είναι ότι, κάθε φορά θα έχουμε n σφιχτές ανισότητες, όπου n = # μεταβλητών = διάσταση του χώρου που βρισκόμαστε. Γιατί; Μα επειδή μία κορυφή στον n-διάστατο χώρο ορίζεται σαν τομή n υπερεπιπέδων.

Παρατηρήστε το Σχήμα 1, η κορυφή Α είναι η τομή των υπερεπιπέδων \(H_{ADC}, H_{ADB}, H_{ACB}\). Όταν μια ανισότητα γίνεται σφιχτή σταματάει να περιγράφει έναν ολόκληρο ημιχώρο και περιγράφει μόνο έναν υπερεπίπεδο. Έτσι ξέρουμε κάθε φορά σε ποια κορυφή του πολυτόπου βρισκόμαστε· σε εκείνη που ορίζεται από τις σφιχτές ανισότητες.

Ας πούμε το σύνολο των σφιχτών ανισοτήτων T (από το tight). Τι θα κάνουμε σε ένα βήμα της Simplex; Μία ανισότητα θα σταματήσει να είναι σφιχτή, ενώ κάποια άλλη θα γίνει. Έτσι ο πλυθάριθμος του Τ θα διατηρείται πάντα, \(|T| = n\). Τι σημαίνει όμως αυτό; Αν έχουμε n-1 ανισότητες σφιχτές έχουμε μια ευθεία στον n-διάστατο χώρο, συνεπώς κινούμαστε πάνω σε αυτή ακριβώς την ευθεία.

Έστω ότι θέλουμε να πάμε από το Α στο Β στο Σχήμα 1, θα χαλαρώσουμε την ανισότητα που αντιστοιχεί στο υπερεπίπεδο \(H_{ADC}\), έτσι μπορούμε να κινηθούμε σε όλο τον χώρο πάνω από το \(H_{ADC}\), μένοντας πάνω στην ευθεία \(\epsilon_{AB}\) αφού έχουμε κρατήσει σφιχτές τις ανισότητες των υπερεπιπέδων \(H_{ADB}, H_{ACB}\). Μέχρι που; Μέχρι να συναντήσουμε κάποια άλλη κορυφή του πολυτόπου (ξέρουμε ότι θα γίνει αφού το πολύτοπο είναι φραγμένο). Όταν συναντήσουμε κάποια άλλη κορυφή, τότε κάποια άλλη ανισότητα θα έχει γίνει σφιχτή. Έτσι πάλι το Τ θα έχει n στοιχεία. Στο συγκεκριμένο παράδειγμα θα είναι η ανισότητα που αντιστοιχεί στο υπερεπίπεδο \(Η_{BDC}\).

Έχουμε αντιστοιχήσει, λοιπόν, και πάλι την άλγεβρα με την γεωμετρία. Στο επόμενο μέρος του Κεφαλαίου 3 θα δούμε, γιατί η Simplex μας επιστρέφει πράγματι μια βέλτιστη λύση.

Σημειώσεις:
Αν δεν εμφανίζονται σωστά τα μαθηματικά σύμβολα, παρακαλώ πατήστε Ctrl+F5. 
Τα σχήματα έγιναν με τον GeoGebra5. Το πρόγραμμα διατίθεται για Windows, Mac και Linux.
Για μαθηματικά σύμβολα στο blogger ακολούθησα αυτές εδώ τις οδηγίες

Πλοήγηση




Σχόλια

Δημοφιλείς αναρτήσεις από αυτό το ιστολόγιο

Γραμμικός Προργαμματισμός: Κεφάλαιο 3.1 - Η Μέθοδος Simplex

Τώρα έχουμε επιτέλους τα κατάλληλα εργαλεία (συγκεκριμένα την εξίσωση (4) ), ώστε να λύσουμε ένα ΓΠ. Συγκεκριμένα ας θεωρήσουμε το ακόλουθο ΓΠ.:                 \(max\) \(z = 2x_1 + 5x_2\) υ.π.:                 (1)    \(2x_1 - x_2 \leq 4\)                 (2)    \(x_1 + 2x_2 \leq 9\)                 (3)    \(-x_1 + x_2 \leq 3\)                 (4)    \(x_1, \geq 0\)                 (5)    \(x_2, \geq 0\) Ας ονομάσουμε την παραπάνω γραφή του ΓΠ (Π1). Δεν θα κάνουμε κάτι άλλο από το να υλοποιήσου...

Γραμμικός Προγραμματισμός: Περιεχόμενα

Ο Γραμμικός Προγραμματισμός είναι εξαιρετικό μαθηματικό εργαλείο, με τεράστια εκφραστική ισχύ· πάρα πολλά προβλήματα μπορούμε να τα γράψουμε ως Γραμμικά Προγράμματα. Ακόμη προσφέρει γόνιμο έδαφος για να παρατηρηθεί η σχέση μεταξύ άλγεβρας και γεωμετρίας, η οποία αποτυπώνεται στην γλώσσα της αναλυτικής γεωμετρίας. Η γεωμετρία θα μας προσφέρει μια διαίσθηση του προβλήματος, ενώ η άλγεβρα θα επιταχύνει τους υπολογισμούς μας και θα επιτρέψει να γραφτεί κάποιο πρόγραμμα (σε υπολογιστή) για να επιλύει ΓΠ. Αυτή η μίνι σειρά μαθημάτων αποσκοπεί να εξοικειώσει τον αναγνώστη με τις βασικές έννοιες του γραμμικού προγραμματισμού. Δεν απαιτούνται προηγούμενες γνώσεις· μόνο κάποια εξοικείωση κυρίως με τα διανύσματα και τις πράξεις τους. Μία μαθήτρια λυκείου που έχει εμπεδώσει την ύλη της αναλυτικής γεωμετρίας που διδάσκεται στην Β' Λυκείου, δεν θα πρέπει να έχει πρόβλημα να διαβάσει τα κεφάλαια 0 - 3. Περιεχόμενα Κεφάλαιο 0: Εισαγωγή Κεφάλαιο 1: Γραφική Μέθοδος Επίλυσης Κεφάλαιο 2.0: Λί...

Γραμμικός Προγραμματισμός: Κεφάλαιο 2.1 - λίγη γραμμική άλγεβρα & αναλυτική γεωμετρία - ευθείες και υπερεπίπεδα

Είδαμε στα προηγούμενα κεφάλαια την σημασία της γεωμετρίας των ευθειών και των υπερεπιπέδων για τον Γραμμικό Προγραμματισμό. Σε αυτό το κεφάλαιο θα πάμε πιο βαθιά σε αυτή την έννοια και θα δείξουμε πως να την "κωδικοποιούμε" στην γλώσσα της άλγεβρας. Ευθείες, Επίπεδα και Υπερεπίπεδα Τι ακριβώς είναι μια ευθεία ή ένα υπερεπίπεδο; Πως γράφουμε μια ευθεία σε αλγεβρική μορφή; Θα πρέπει να σκεφτόμαστε την αναλυτική γεωμετρία σαν ένα υπολογιστικό σύστημα, σαν μια γλώσσα προγραμματισμού. Στην ευκλείδια γεωμετρία που κάναμε στο σχολείο η ευθεία και το επίπεδο είναι κάτι τελείως χειροπιαστό, στην άλγεβρα όμως έχουμε μόνο πράξεις, μεταβλητές και εξισώσεις, τι άλλο θα μπορούσε να είναι λοιπόν μια ευθεία από μια εξίσωση, η εξίσωση θα ισχύει μόνο για τα σημεία εκείνα τα οποία ανήκουν στην ευθεία . Στο σχολείο γράφαμε το εξής: \(y = \frac{-a}{b}x + \frac{-c}{b}\) ή \(y = \lambda x+\beta\) θα δούμε πως η πρώτη μορφή είναι πολύ πιο χρήσιμη από την δεύτερη: $$  y = \frac{-a}{b}...