Περίληψη
Η επιστήμη της Επιχειρησιακής Έρευνας έχει αναπτύξει τα τελευταία χρόνια, σε στενή συνάφεια με την επιστήμη της πληροφορικής, μια μεγάλη ποικιλία εργαλείων για την αντιμετώπιση πραγματικών προβλημάτων απόφασης ή προσομοίωσης σε διάφορες περιοχές. Είναι γνωστό ότι τα μοντέλα μαθηματικού προγραμματισμού αποτελούν τα βασικά εργαλεία στη διαδικασία της λήψης αποφάσεων. Παρόλα αυτά, όταν οι επιστήμονες και οι ειδικοί της Επιχειρησιακής Έρευνας χρησιμοποιούν τα εργαλεία που τους παρέχονται, συναντούν συχνά πολλά εμπόδια στην εφαρμογή τους που κυρίως οφείλονται στην πολυπλοκότητα τους και στην ανεπάρκεια του περιβάλλοντος Η/Υ στο οποίο εργάζονται για την υποστήριξη αποφάσεων. Η πρόοδος στην επιστήμη της πληροφορικής, κυρίως στους τομείς των Βάσεων Δεδομένων και της Τεχνολογίας Λογισμικού (ιδιαίτερα τα εργαλεία CASE - Computer Aided Software Engineering και οι τεχνικές όπως ο αντικειμενοστραφής προγραμματισμός), έχει δώσει τη δυνατότητα να αναπτύσσονται νέα περιβάλλοντα σε Η/Υ τα οποία προσδίδ ...
Η επιστήμη της Επιχειρησιακής Έρευνας έχει αναπτύξει τα τελευταία χρόνια, σε στενή συνάφεια με την επιστήμη της πληροφορικής, μια μεγάλη ποικιλία εργαλείων για την αντιμετώπιση πραγματικών προβλημάτων απόφασης ή προσομοίωσης σε διάφορες περιοχές. Είναι γνωστό ότι τα μοντέλα μαθηματικού προγραμματισμού αποτελούν τα βασικά εργαλεία στη διαδικασία της λήψης αποφάσεων. Παρόλα αυτά, όταν οι επιστήμονες και οι ειδικοί της Επιχειρησιακής Έρευνας χρησιμοποιούν τα εργαλεία που τους παρέχονται, συναντούν συχνά πολλά εμπόδια στην εφαρμογή τους που κυρίως οφείλονται στην πολυπλοκότητα τους και στην ανεπάρκεια του περιβάλλοντος Η/Υ στο οποίο εργάζονται για την υποστήριξη αποφάσεων. Η πρόοδος στην επιστήμη της πληροφορικής, κυρίως στους τομείς των Βάσεων Δεδομένων και της Τεχνολογίας Λογισμικού (ιδιαίτερα τα εργαλεία CASE - Computer Aided Software Engineering και οι τεχνικές όπως ο αντικειμενοστραφής προγραμματισμός), έχει δώσει τη δυνατότητα να αναπτύσσονται νέα περιβάλλοντα σε Η/Υ τα οποία προσδίδουν μεγάλη αποτελεσματικότητα στην υποστήριξη αποφάσεων και τη χρήση μοντέλων μαθηματικού προγραμματισμού της Επιχειρησιακής Έρευνας. Αυτό ακριβώς είναι το αντικείμενο της διατριβής, το οποίο εντάσσεται στη συνεργεία των επιστημών της Τεχνολογίας Λογισμικού και της Επιχειρησιακής Έρευνας. Δύο κατηγορίες εργαλείων έχουν αναπτυχθεί μέχρι σήμερα που απευθύνονται σε δύο ξεχωριστές ομάδες χρηστών, τους αναλυτές μοντέλων και τους λήπτες αποφάσεων. Η πρώτη κατηγορία εργαλείων αφορά τα Συστήματα Διαχείρισης Μοντέλων, τα οποία χρησιμοποιούνται κυρίως στις περιπτώσεις εκείνες όπου ένα μοντέλο εφαρμόζεται για την επίλυση ενός προβλήματος μερικές μόνο φορές, όπως π.χ. η εύρεση της κατάλληλης τοποθεσίας κατασκευής ενός εργοστασίου. Τα Συστήματα Διαχείρισης Μοντέλων χρησιμοποιούνται για τη μοντελοποίηση προβλημάτων απόφασης και προσομοίωσης. Ενσωματώνουν μια αλγεβρική γλώσσα υλοποίησης μοντέλων (π.χ. GAMS, AMPL, MPL, SML, LINDO κτλ.), είναι προσανατολισμένα στην υποστήριξη των αναλυτών μοντέλων και επικεντρώνονται στη δημιουργία, ανάπτυξη, συντήρηση και επίλυση μοντέλων μαθηματικού προγραμματισμού. Το κύριο μειονέκτημα τους είναι ότι απαιτούν καλή γνώση τόσο της γλώσσας στην οποία είναι υλοποιημένο το μοντέλο, όσο και του τρόπου με τον οποίο αυτό επιλύεται. Το γεγονός αυτό αποθαρρύνει τους λήπτες αποφάσεων από το να χρησιμοποιήσουν αυτού του είδους τα συστήματα για την αντιμετώπιση προβλημάτων απόφασης και οι αναλυτές μοντέλων αναλαμβάνουν να διεκπεραιώσουν τη μελέτη χρησιμοποιώντας Συστήματα Διαχείρισης Μοντέλων. Οι αναλυτές μοντέλων, στην περίπτωση αυτή, παρουσιάζουν τα αποτελέσματα της μελέτης στους λήπτες αποφάσεων χρησιμοποιώντας τρίτες εφαρμογές (π.χ. λογιστικά φύλλα κτλ.). Η δεύτερη κατηγορία εργαλείων αφορά τα Συστήματα Υποστήριξης Αποφάσεων (ΣΥΑ), τα οποία χρησιμοποιούνται κυρίως στις περιπτώσεις εκείνες όπου ένα μαθηματικό μοντέλο εφαρμόζεται για τη λήψη μιας απόφασης που λαμβάνεται πολλές φορές σε συχνή βάση, όπως π.χ. η διανομή προϊόντων από τους παραγωγούς στους καταναλωτές με το ελάχιστο κόστος μεταφοράς. Τα ΣΥΑ ενσωματώνουν ένα ή περισσότερα μοντέλα μαθηματικού προγραμματισμού, εργαλεία ανάλυσης και παρουσίασης δεδομένων και ένα φιλικό περιβάλλον επικοινωνίας με το χρήστη σε μια ολοκληρωμένη εφαρμογή. Το κύριο μειονέκτημα των ΣΥΑ είναι η χρονοβόρα και δαπανηρή διαδικασία σχεδίασης και υλοποίησης τους, το οποίο οδηγεί, σε συνδυασμό με το ότι πρέπει να είναι προσαρμοσμένα στον τρόπο απόφασης των χρηστών τους, σε στενή εξάρτηση των μοντέλων μαθηματικού προγραμματισμού με το υπολογιστικό περιβάλλον των ΣΥΑ. Για το λόγο αυτό τα ΣΥΑ είναι προσαρμοσμένα στα μαθηματικά μοντέλα που ενσωματώνουν και το αντίστροφο, με αποτέλεσμα οι τροποποιήσεις υπαρχόντων μοντέλων ή η ενσωμάτωση νέων να είναι εξαιρετικά χρονοβόρες και πολύπλοκες διαδικασίες, οι οποίες απαιτούν εκτενείς τροποποιήσεις τόσο στο περιβάλλον των ΣΥΑ, όσο και στα ίδια τα μοντέλα μαθηματικού προγραμματισμού, και επιτελούνται μέσα από διαφορετικά υπολογιστικά περιβάλλοντα από έμπειρους επιστήμονες της Τεχνολογίας Λογισμικούς. Η διατριβή ερευνά την τομή των δύο αυτών κατηγοριών συστημάτων και προτείνει μια αρχιτεκτονική η οποία ενοποιεί τις τεχνολογίες αυτές, υποστηρίζοντας μέσα από το ίδιο περιβάλλον τόσο τους αναλυτές μοντέλων όσο και τους λήπτες αποφάσεων. Η προτεινόμενη αρχιτεκτονική οδηγεί σε ένα ενοποιημένο περιβάλλον διαχείρισης μοντέλων μαθηματικού προγραμματισμού και ανάπτυξης εφαρμογών υποστήριξης αποφάσεων που μπορεί να λειτουργήσει ως Σύστημα Διαχείρισης Μοντέλων αλλά και ως Σύστημα Υποστήριξης Αποφάσεων. Το ενοποιημένο περιβάλλον Η/Υ διαχείρισης μοντέλων μαθηματικού προγραμματισμού και ανάπτυξης εφαρμογών υποστήριξης αποφάσεων διαχειρίζεται πολύπλοκα και μεγάλης κλίμακας μοντέλα μαθηματικού προγραμματισμού, οργανώνει τα δεδομένα και τα αποτελέσματα τους σε πολυδιάστατες δομές δεδομένων, επιτρέπει τη δημιουργία παραλλαγών (π.χ. σεναρίων) για την αποτίμηση των επιπτώσεων μιας απόφασης κάτω από διαφορετικές συνθήκες και προσφέρει τεχνικές ανάλυσης για την υποστήριξη ad-hoc αναγκών του χρήστη, όπως η διάθεση των στοιχείων και αποτελεσμάτων σε μορφή λογιστικού φύλλου με την υποστήριξη πράξεων επί πολυδιάστατων κύβων (OLAP). Παράλληλα δίνει τη δυνατότητα στους αναλυτές μοντέλων να δημιουργήσουν, μέσα από το ίδιο πάντα περιβάλλον, εφαρμογές υποστήριξης αποφάσεων σε συμπιεσμένη και εξειδικευμένη μορφή έτοιμες για τελική χρήση, ώστε να χρησιμοποιηθούν από τους λήπτες αποφάσεων χωρίς αυτοί να απαιτείται να γνωρίζουν το πλήρες σύστημα. Οι εφαρμογές αυτές μπορούν να δημιουργηθούν χωρίς προγραμματισμό κώδικα (δηλ. εφαρμόζονται τεχνικές παρόμοιες με τα εργαλεία CASE της Τεχνολογίας Λογισμικού) και μπορούν να εκτελεσθούν είτε μέσα από το περιβάλλον από το οποίο δημιουργήθηκαν, είτε ως αυτόνομες εφαρμογές, είτε, τέλος, να προσπελασθούν μέσω του Διαδικτύου. Σε κάθε περίπτωση οι εφαρμογές αυτές λειτουργούν ως ολοκληρωμένα Συστήματα Υποστήριξης Αποφάσεων, για την αντιμετώπιση προβλημάτων απόφασης ή προσομοίωσης της λειτουργίας συστημάτων (όπως οικονομικών και ενεργειακών συστημάτων, ηλεκτρικών συστημάτων, κτλ.). Το ενοποιημένο περιβάλλον διαχείρισης μοντέλων μαθηματικού προγραμματισμού και ανάπτυξης εφαρμογών υποστήριξης αποφάσεων χρησιμοποιεί την αλγεβρική γλώσσα GAMS ως την κύρια αλγεβρική γλώσσα αναπαράστασης μοντέλων μαθηματικού προγραμματισμού στον υπολογιστή. Η σχεδίαση του συστήματος επιτρέπει τη διαχείριση οποιουδήποτε μοντέλου μαθηματικού προγραμματισμού (linear programming, non-linear programming, mixed complementarity, relaxed mixed integer programming, dynamic programming, κτλ.) που μπορεί να χειριστεί το GAMS, ανεξαρτήτως μεγέθους, τύπου και προβλήματος απόφασης στο οποίο αυτό εφαρμόζεται. Η αλγεβρική γλώσσα μοντελοποίησης GAMS δεν είναι γλώσσα προγραμματισμού, αλλά μια αφαιρετική γλώσσα που ακολουθεί αλγεβρική γραμματική και συντακτικό κατάλληλη για την αναπαράσταση κάθε εφαρμοσμένου μαθηματικού προβλήματος Επιχειρησιακής Έρευνας, Οικονομικών και Αριθμητικής Ανάλυσης. Η αφαιρετικότητα της αναπαράστασης μέσω του GAMS και η δομή της γλώσσας μπορούν να θεωρηθούν σε τελευταία ανάλυση ισόμορφες με κατάλληλη πολυδιάστατη δομή δεδομένων. Αυτή είναι η αφετηρία της παρούσας διατριβής, η οποία επιτρέπει την οικοδόμηση του συστήματος λογισμικού σε πλήρη συνάφεια με κάθε αναπαράσταση μοντέλου μέσω της γλώσσας GAMS. Συγκεκριμένα, η προσέγγιση της διατριβής βασίζεται στην τυποποίηση του σχήματος ενός μοντέλου υλοποιημένου σε GAMS, όπου με τον όρο «σχήμα μοντέλου» εννοείται το σύνολο των οντοτήτων του (δείκτες, παράμετροι, μεταβλητές και εξισώσεις) καθώς και οι μαθηματικές σχέσεις που καθορίζουν την αλληλεπίδραση τους. Με βάση αυτή την τυποποίηση ορίζονται κανόνες και μετασχηματισμοί για τη δημιουργία κοινής, πολυδιάστατης, δομής δεδομένων για όλα τα μαθηματικά μοντέλα που μπορεί ναχειριστεί το GAMS. Έχοντας ως αφετηρία την κοινή δομή δεδομένων κτίζεται ένα σύστημα διαχείρισης μοντέλων, ένα ολοκληρωμένο περιβάλλον ανάπτυξης εφαρμογών υποστήριξης αποφάσεων και μια εφαρμογή πολυδιάστατου λογιστικού φύλλου. Το σύστημα διαχείρισης μοντέλων υποστηρίζει τους αναλυτές μοντέλων στη δημιουργία ενός συγκεκριμένου μοντέλου (είτε υλοποιώντας ένα νέο μοντέλο είτε συνθέτοντας ήδη υπάρχοντα μοντέλα) και στη συνέχεια στην επίλυση του, στη δημιουργία υποθέσεων σχετικά με τις συνθήκες του προβλήματος, για την αποτίμηση των συνεπειών της λήψης μιας απόφασης κάτω από διαφορετικές καταστάσεις, στη διαχείριση υποθέσεων, στην τροποποίηση του μοντέλου, στη συντήρηση του και στην ανάκτηση πληροφοριών από τη χρήση του. Το σύστημα διαχείρισης μοντέλων ενσωματώνει υποσύστημα διαχείρισης και ελέγχου των διαφορετικών εκδόσεων του πηγαίου κώδικα ενός μοντέλου, το οποίο διατηρεί ιστορικό των τροποποιήσεων του κώδικα του μοντέλου επιτρέποντας σύγκριση τωνδιαφορετικών εκδόσεων και την επιστροφή σε μια προηγούμενη έκδοση του κώδικα. Το ολοκληρωμένο περιβάλλον ανάπτυξης εφαρμογών υποστήριξης αποφάσεων υποστηρίζει τη δημιουργία γραφικού περιβάλλοντος επικοινωνίας με ένα ή περισσότερα μοντέλα. Μέσω κατάλληλων αντικειμένων που παρέχονται από το σύστημα (π.χ. κουμπιά, παράθυρα, πολυδιάστατοι κύβοι, γραφήματα, μενού επιλογών, μπάρες εργασίας, φύλλα εργασίας κτλ.) δίνεται η δυνατότητα στον αναλυτή να δημιουργήσει εξειδικευμένο και πλήρως γραφικό περιβάλλον επικοινωνίας με ένα ή περισσότερα μοντέλα, για την υποστήριξη της εισαγωγής και τροποποίησης δεδομένων των μοντέλων, διαχείρισης υποθέσεων, επίλυσης μοντέλων, ανάλυσης και παρουσίασης αποτελεσμάτων. Η δημιουργία του γραφικού περιβάλλοντος επικοινωνίας μπορεί να γίνει χωρίς προγραμματισμό κώδικα, απλά συνδέοντας τα κατάλληλα αντικείμενα μεταξύ τους. Παρόλα αυτά, ο αναλυτής μπορεί να καθορίσει με ακρίβεια την αλληλεπίδραση του γραφικού περιβάλλοντος επικοινωνίας με τον τελικό χρήστη χρησιμοποιώντας scripting languages ή δημιουργώντας μακροεντολές. Οι scripting languages που υποστηρίζονται είναι οι Perl, JScript, VBScript, Python, ενώ παρέχεται και Pascal-like scripting language. Ενσωματώνοντας σε ένα ενιαίο περιβάλλον Η/Υ τα μαθηματικά μοντέλα και το περιβάλλον επικοινωνίας τους, δίνεται η δυνατότητα στους αναλυτές μοντέλων να δημιουργήσουν πλήρεις εφαρμογές υποστήριξης αποφάσεων, τις οποίες μπορούν να διανείμουν είτε μέσω Διαδικτύου είτε ως αυτόνομες εκτελέσιμες εφαρμογές στους λήπτες αποφάσεων. Τα πλεονεκτήματα της προσέγγισης αυτής έναντι άλλων προσεγγίσεων είναι: • Η δημιουργία της εφαρμογής υποστήριξης αποφάσεων γίνεται μέσα από το ίδιο το περιβάλλον δημιουργίας και διαχείρισης μοντέλων εξασφαλίζοντας την ακεραιότητα της πληροφορίας. • Η ανάπτυξη της εφαρμογής γίνεται γρήγορα και οδηγεί σε εξειδικευμένη εφαρμογή, η οποία είναι εύκολα συντηρήσιμη. Τροποποιήσεις - βελτιώσεις των ενσωματωμένων μοντέλων, καθώς και προσθήκες νέων, μπορούν να γίνουν με διαφανή τρόπο σε σημαντικά μικρότερους χρόνους από ότι στην περίπτωση των ΣΥΑ. • Μπορεί να εφαρμοστεί η μέθοδος του πρωτοτύπου (prototyping), όπου ο αναλυτής μοντέλων κατασκευάζει γρήγορα και άμεσα κάποιο πρωτότυπο περιβάλλον επικοινωνίας με ένα ή περισσότερα μοντέλα, το διανέμει στον τελικό χρήστη (δηλαδή στο λήπτη αποφάσεων), αξιολογείται από αυτόν και στο τέλος βελτιώνεται από τον ίδιο τον αναλυτή μέσα από τα σχόλια και τις παρατηρήσεις του τελικού χρήστη. Η διαδικασία αυτή μπορεί να επαναληφθεί έως ότου τα δύο μέρη συμφωνήσουν σχετικά με το περιβάλλον επικοινωνίας κοινής αποδοχής. Όσον αφορά την εφαρμογή λογιστικού φύλλου, η εφαρμογή αυτή επικοινωνεί με τις πολυδιάστατες βάσεις δεδομένων του συστήματος, ώστε να διασφαλίζεται η ακεραιότητα της πληροφορίας. Η εφαρμογή λογιστικού φύλλου μπορεί να χρησιμοποιηθεί από τους αναλυτές μοντέλων, αλλά και από τους λήπτες αποφάσεων, στις περιπτώσεις εκείνες όπου προτιμάται ad-hoc ανάλυση των στοιχείων ή των αποτελεσμάτων και δεν κρίνεται απαραίτητη η δημιουργία πλήρους γραφικού περιβάλλοντος επικοινωνίας με τα ενσωματωμένα μοντέλα μαθηματικού προγραμματισμού. Παραδείγματα τέτοιων περιπτώσεων είναι: α) η εκσφαλμάτωση ενός μοντέλου, όπου η εφαρμογή λογιστικού φύλλου μπορεί να χρησιμοποιηθεί για τη γρήγορη και εύκολη απεικόνιση των αποτελεσμάτων του μοντέλου και β) οι ενδιάμεσες αναλύσεις πάνω στα δεδομένα ή/και τα αποτελέσματα ενός μοντέλου, με σκοπό την κατανόηση του ή τη δημιουργία επιπρόσθετων πληροφοριών. Θα πρέπει επίσης να επισημανθεί πως η προτεινόμενη αρχιτεκτονική έχει σχεδιαστεί έτσι ώστε να λειτουργεί πλήρως και σε δικτυακό περιβάλλον. Με τον τρόπο αυτό υποστηρίζεται η απομακρυσμένη διαχείριση μοντέλων μαθηματικού προγραμματισμού, η απομακρυσμένη επίλυση τους για διάφορα προβλήματα αποφάσεων ή προσομοίωσης της λειτουργίας συστημάτων και η απομακρυσμένη ανάλυση των δεδομένων και των αποτελεσμάτων τους. Για λόγους ασφαλείας δεν επιτρέπεται η απομακρυσμένη δημιουργία εφαρμογών υποστήριξης αποφάσεων, αλλά ο αναλυτής μπορεί να δημιουργήσει τοπικά στον υπολογιστή του μια τέτοια εφαρμογή και να τη στείλει σε έναν κεντρικό εξυπηρετητή, ώστε να είναι προσπελάσιμη από απομακρυσμένους χρήστες μέσω ενός προγράμματος πλοήγησης στο Διαδίκτυο (web browser). Κατά συνέπεια η διατριβή αναπτύσσει και τυποποιεί σύστημα, το οποίο μπορεί να χρησιμοποιηθεί για διαχείριση μοντέλων και υποστήριξη αποφάσεων, ενσωματώνοντας τα πλεονεκτήματα τόσο των Συστημάτων Διαχείρισης Μοντέλων όσο και των Συστημάτων Υποστήριξης Αποφάσεων, μέσω προχωρημένων τεχνικών της Τεχνολογίας Λογισμικού. Η διατριβή είχε ως στόχους: 1. Να περιγράψει την αρχιτεκτονική και τη λειτουργία του ενοποιημένου περιβάλλοντος διαχείρισης μοντέλων μαθηματικού προγραμματισμού και ανάπτυξης εφαρμογών υποστήριξης αποφάσεων. 2. Να αναδείξει τις καινοτομίες που εισάγονται και οι οποίες οδηγούν στη δημιουργία μιας νέας οικογένειας περισσότερο ανοιχτών Συστημάτων Υποστήριξης Αποφάσεων. 3. Να αξιολογήσει την αρχιτεκτονική και την υλοποίηση του προτεινόμενου συστήματος και να καταγράψει τις δυνατότητες του νέου μοντέλου εργασίας για τους αναλυτές και τους λήπτες αποφάσεων που εισάγεται με την παρούσα διατριβή. 4. Να επιδείξει την εφαρμογή του συστήματος σε μεγάλης κλίμακας πρόβλημα απόφασης και συγκεκριμένα σε μοντέλο βελτιστοποίησης του ηλεκτρικού συστήματος στα πλαίσια της απελευθερωμένης αγοράς ηλεκτρικής ενέργειας των χωρών της Ευρωπαϊκής Ένωσης. Το ενοποιημένο περιβάλλον διαχείρισης μοντέλων μαθηματικού προγραμματισμού και ανάπτυξης εφαρμογών υποστήριξης αποφάσεων τυποποιήθηκε και υλοποιήθηκε σε μια ολοκληρωμένη εφαρμογή λογισμικού. Στη σχεδίαση του χρησιμοποιήθηκε η αντικειμενοστραφής τεχνολογία UML (Unified Modelling Language) [Booch et al., 1997] μέσω του εμπορικού πακέτου Rational Rose 98. Για την υλοποίηση του επιλέχθηκε η αντικειμενοστραφής γλώσσα προγραμματισμού υψηλού επιπέδου Borland Delphi [Borland, 2000]. Η δικτυακή σχεδίαση του έγινε με βάση τη μεθοδολογία OOHDM (Object Oriented HyperMedia Design Method) [Schwabe D. και Rossi G , 1998], ενώ η υλοποίηση του σε δικτυακό περιβάλλον έγινε με βάση τις γλώσσες VBScript και JScript, καθώς και με τη δημιουργία scripts CGI (Common Gateway Interface). Η υλοποίηση της προτεινόμενης αρχιτεκτονικής οδήγησε σε ένα πρωτότυπο, το οποίο ονομάστηκε XMOD (από τα αρχικά των λέξεων experience MODelling), που αυτή τη στιγμή λειτουργεί πλήρως στο εργαστήριο της ερευνητικής ομάδας του κ. Κάπρου και χρησιμοποιείται από τα μέλη του εργαστηρίου για τη διαχείριση μοντέλων μαθηματικού προγραμματισμού και την ανάπτυξη προσαρμοσμένων και εξειδικευμένων εφαρμογών υποστήριξης αποφάσεων.
περισσότερα
Περίληψη σε άλλη γλώσσα
A variety of computer-based modelling environments have been developed in the Operations Research/Management Science (OR/MS) field, to support decision-making when facing real problems. These tools are falling into two main categories; model management systems [6] or integrated modelling environments [35], and Decision Support Systems. To facilitate modelers and analysts to formalise a model for a real problem, model management systems have been developed using high-level symbolic languages for model formulation and running. These languages are often called Algebraic Modelling Languages (AMLs) [40]. GAMS [7], AMPL [16],SML [19], AIMMS [5], MPL [28], LINGO [12] are the most widely used AMLs in modem model management systems. The main advantage of these systems is that they support the model analyst (the modeller) in all stages of the modelling life cycle (table 1-1 in page 3). However, their major disadvantage is that they are not abstract enough to be used by a decision maker, because ...
A variety of computer-based modelling environments have been developed in the Operations Research/Management Science (OR/MS) field, to support decision-making when facing real problems. These tools are falling into two main categories; model management systems [6] or integrated modelling environments [35], and Decision Support Systems. To facilitate modelers and analysts to formalise a model for a real problem, model management systems have been developed using high-level symbolic languages for model formulation and running. These languages are often called Algebraic Modelling Languages (AMLs) [40]. GAMS [7], AMPL [16],SML [19], AIMMS [5], MPL [28], LINGO [12] are the most widely used AMLs in modem model management systems. The main advantage of these systems is that they support the model analyst (the modeller) in all stages of the modelling life cycle (table 1-1 in page 3). However, their major disadvantage is that they are not abstract enough to be used by a decision maker, because they require knowledge of the underlying modelling language and the operation of model solver. In order to allow non-expert users to use these tools, an alternative approach is needed. Towards this direction, Huh and Chung [22] proposed a model management framework that provides universal models manipulation commands in order to accommodate models written in different algebraic modelling languages. Geoffrion [20] proposed the concept of structure modelling, which intends to provide a formal mathematical framework, language, and computer environment for conceiving, representing, and manipulating a wide variety of models. Chari and Sen [9] presented a graph-based modelling system for structured modelling that supports model formulation, maintenance and solution using directed acyclic graphs for the representation of the main model entities and their interconnections. Moreover, lijima [23] considered the design and implementation of a system that automatically specifies an optimization model from an abstract form with a given data set specified by the user, and solves it by calling the appropriate solvers. MoGLI [43] is a complete interactive graphic basedmodelling environment for the process of developing, solving and analyzing linear, integer and goal mathematical programmes. Other examples on this approach are PDM [27], and MODFORM [37]. On the other hand the Decision Support Systems (DSS) are standing in a higher abstraction level than the model management systems, and assist the decision maker in the decision-making process. These systems usually integrate a substitute or a simple form of a high level modelling language, models, solvers, database management procedures and a user interface into one package that appears to the user as a single decision support application. Other features provided by these tools are report generation, scenario management, connection to external databases etc. [39]. The DSS are distinguished into two main categories: the data-driven DSS and the model-driven DSS. The data driven DSS emphasize in accessing and manipulating data, and are useful for routine managerial activities such as producing various reports, answering ad-hoc queries, presenting information in different forms, etc. On the other hand, the model-driven DSS emphasise in accessing and managing models and they do not require large and complex databases. However many model-driven DSS incorporate data management procedures and provide OLAP capabilities. The design procedure of model-driven DSS is complex, ill structured and remains essentially ad-hoc. The complexity is result of the need to model not only the problem data and processes, but also themathematical relationships, the integration of data and models, and the decision making style of the decision maker. Several methodologies have been proposed to construct a model-driven DSS that is generic enough to integrate mathematical models of different types for solving various decision problems. Indicative of the significant research that has been conducted on this field is Geoffrion [18] who presented FW/SM, which was a prototype structured modelling environment, and Wright et al. [49] who presented the OR/SM influenced by the work of Geoffrion's and introduced a computerized modelling environment based on structured modelling. Muhanna [32] proposed an object-oriented framework for model management and DSS development, integrating Geoffrion's Structured Modelling approach with Muhanna and Pick's system approach [31]. Raghunathan [36] proposed a methodology based on structured modelling to model and design a DSS. This methodology integrates the research in database design and in the mathematical model formulation within the structured modelling framework.Holocher et al. [21] presented the MIDA architecture suitable for building distributed DSS by integrating high level modelling approaches and implementation techniques for platform independent distributed client/server applications. A Decision Support Framework supporting the PRIMES Energy Model [14], which is based on the GAMS algebraic modelling language and generates a common data structure for models written in GAMS, was presented by Antoniou and Capros [2]. Finally, [17, 34] presented a survey on available commercial model management and model-driven DSS. One of them is AIMMS 3 [42], an all-round development environment for building advanced decision support applications. The development environment includes tools for building a sophisticated graphical end-user interface (GUI), which is highly integrated with the modelling environment. The purpose of this thesis is to describe the design and the features of a model-driven DSS prototype developed at the National Technical University of Athens, using GAMS as the main modelling language, the X-MOD (experience MODelling). The X-MOD combines the advantages of both model management systems and model-based DSS, operating in two different modes in order to support two primary user groups: modelers (who will also be called application developers) and decision makers (who will also be called end-users). In the first mode it operates as a model management system that offers an integrated modelling environment for formulating, developing, solving, and maintaining models written in GAMS. It supports the modeller during the whole modelling life cycle, and it is able to incorporate all kinds of mathematical programming models that are supported by GAMS. The transition to the second operating mode is accomplished through the integrated development environment for building all-round decision support applications, which are ready to run. The ready-torun application incorporates mathematical models, and operates as a specific model-based DSS for a specific decision support problem. It can be used as an alternative user interface for the prototype, or delivered to the decision maker as an executable application, or, finally, published on a web site. Hence in the second operating mode, the prototype runs as a generic model-based DSS that provides the decision makers with an environment focused on decision-making process, designed to meet their individual decision-making styles. The decision environment has been built from inside the prototype, and the decision makers act as end-users who are using the decision support application for a specific problem. From the above is clear that a modeler plays two roles inside the prototype. The first role is the role of the model analyst in which the modeler uses the integrated modelling environment, in order to develop, solve and maintain mathematical models. The second role is the role of the application developer in which the modeler uses the integrated development environment in order to design and implement a ready-to run decision support application for a specific decision problem. So, the prototype operates as a model management system, as a generic model-driven DSS and as an integrated development environment for building ready-to-aim decision support applications. Thus, it stands in the top level of the OR/MS tools hierarchy (Figure 2-2 in page 38), which represents the various OR/MS tools according to the kinds of users that intend to support and to their abstraction of model and solver knowledge. The key motivating factor for designing the prototype is that currently GAMS language lacks support of an integrated system that: a) manages complex and decision-oriented models, b) organizes interrelated multidimensional data, c) employees an advanced graphical user interface builder in order to provide an insight into the solution and problem analysis, and d) operates in a local computer orthrough the Internet/Intranet. It is important to note that the features and components of AIMMS 3 significantly influenced the design and the development of the prototype. However, the X-MOD excels AIMMS 3 in the following points: a) it supports the development of decision-support applications that incorporate more than one models, b) the all-round development environment for decision-support applications can be further programmed using common Active Scripting Languages, c) the task of building a decision-support application is further facilitated by using specialized visual tools, d) the decision-support applications can be either distributed to the decision makers as single executables packages that contain models and data or accessed through an Internet Browser, and e) the open architecture of X-MOD allows the incorporation of third-party developed objects for building a decision support application, and supports the plug-in technology. The structure of the summary is as follows. Section 1 presents the design requirements describing the desired system functionality. In Section 2 we illustrate briefly some of the key components designed to carry out the tasks outlined in section 1 and a case study is examined in Section 3. Finally, Section 4 outlines some suggestions for future research and development. [...]
περισσότερα