Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Τμήμα Διοίκησης Τεχνολογίας - 2008 1 Μάνος Ρουμελιώτης Πανεπιστήμιο Μακεδονίας Προσομοίωση και Γλώσσες Προσομοίωσης.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Τμήμα Διοίκησης Τεχνολογίας - 2008 1 Μάνος Ρουμελιώτης Πανεπιστήμιο Μακεδονίας Προσομοίωση και Γλώσσες Προσομοίωσης."— Μεταγράφημα παρουσίασης:

1 Τμήμα Διοίκησης Τεχνολογίας - 2008 1 Μάνος Ρουμελιώτης Πανεπιστήμιο Μακεδονίας http://www.etl.uom.gr/mr/ Προσομοίωση και Γλώσσες Προσομοίωσης

2 Τμήμα Διοίκησης Τεχνολογίας - 2008 2 • Προσομοίωση και Εξομοίωση • Συστήματα και μοντέλα • Τύποι προσομοίωσης • Γλώσσες προσομοίωσης • Παράδειγμα με GPSS • Παράδειγμα με MODSIM Θέματα

3 Τμήμα Διοίκησης Τεχνολογίας - 2008 3 Προσομοίωση είναι μια μέθοδος μελέτης ενός συστήματος και εξοικείωσης με τα χαρακτηριστικά του με τη βοήθεια ενός άλλου συστήματος το οποίο στις περισσότερες περιπτώσεις είναι ηλεκτρονικός υπολογιστής. Τι είναι Προσομοίωση;

4 Τμήμα Διοίκησης Τεχνολογίας - 2008 4 Διαφορά προσομοίωσης από εξομοίωση Προσομοίωση Εξομοίωση

5 Τμήμα Διοίκησης Τεχνολογίας - 2008 5 Συστήματα Σύστημα είναι ένα σύνολο αλληλεπιδρώντων στοιχείων τα οποία συνεργάζονται μεταξύ τους ή λειτουργούν συλλογικά για την επίτευξη κάποιου σκοπού. Συστήματα και χαρακτηριστικά τους ΣύστημαΟντότητεςΧαρακτηριστικάΔραστηριότητες ΤράπεζαΠελάτεςΥπόλοιπο Πίστωση Κατάθεση Ανάληψη ΠαντοπωλείοΠελάτεςΚατάλογος ψώνιωνΠληρωμή Δίκτυο υπολογιστών ΠακέταΜέγεθοςΜετάδοση ΒενζινάδικοΑυτοκίνηταΤύπος βενζίνηςΠληρωμή ΑνελκυστήραςΕπιβάτεςΌροφος εισόδου Όροφος εξόδου Είσοδος στον ανελκυστήρα ΑποθήκηΑνταλλακτικάΚόστος Είδος Προμήθεια Πώληση ΠανεπιστήμιοΦοιτητέςΈτος σπουδών Βαθμολογία Εξετάσεις

6 Τμήμα Διοίκησης Τεχνολογίας - 2008 6 Μοντέλα Μοντέλο είναι μία αναπαράσταση ενός φυσικού συστήματος ή οργανισμού ή φυσικού φαινομένου ή ακόμη και μίας ιδέας. Ως δεύτερος ορισμός: Μοντέλο είναι το σύνολο των πληροφοριών ενός συστήματος που έχει συγκεντρωθεί με σκοπό τη μελέτη του συστήματος.

7 Τμήμα Διοίκησης Τεχνολογίας - 2008 7 Τύποι προσομοίωσης Στα συνεχή συστήματα οι μεταβολές της κατάστασης είναι κατά κύριο λόγο ομαλές. Οι δραστηριότητες δηλαδή, μεταβάλλουν συνεχώς την κατάσταση του συστήματος και όχι μόνον όταν τελειώσουν. Παράδειγμα τέτοιου συστήματος είναι ένα αυτοκίνητο. Στα διακριτά συστήματα οι μεταβολές είναι κυρίως ασυνεχείς, πράγμα που σημαίνει, ότι η κατάσταση του συστήματος αλλάζει μόλις τελειώσει μία δραστηριότητα. Παράδειγμα διακριτού συστήματος είναι μια τράπεζα. Η προσομοίωση μπορεί να είναι είτε συνεχής είτε διακριτή, ανάλογα με το σύστημα που προσομοιώνεται

8 Τμήμα Διοίκησης Τεχνολογίας - 2008 8 Γλώσσες προσομοίωσης Γενικά χαρακτηριστικά των γλωσσών προσομοίωσης: 1.Άποψη του κόσμου (προσανατολισμός σε γεγονότα, δραστηριότητες, ή διεργασίες). 2.Μηχανισμός ροής χρόνου (αυξάνουν αυτόματα το χρόνο και διατηρούν λίστα με τα μελλοντικά γεγονότα). 3.Περιλαμβάνουν γεννήτρια τυχαίων αριθμών. Οι γεννήτριες των γλωσσών παράγουν συνήθως αριθμούς ομοιόμορφα κατανεμημένους στο διάστημα 0 μέχρι 1, όπως αναπτύσσεται στο επόμενο κεφάλαιο. 4.Περιλαμβάνουν γεννήτρια τυχαίων δειγμάτων που να ακολουθούν την κατανομή που προσδιορίζει ο χρήστης. 5.Έχουν ικανότητες συλλογής δεδομένων του μοντέλου. 6.Παρέχουν στοιχειώδη στατιστική ανάλυση των δεδομένων που έχουν συλλέξει. 7.Παρέχουν διαγνωστικά στοιχεία και βοήθεια στην ανίχνευση λαθών.

9 Τμήμα Διοίκησης Τεχνολογίας - 2008 9 Σύγκριση γλωσσών Όνομα γλώσσαςGASPGPSSSIMSCRIPTMODSIMSIMULINK Ερμηνεία ονόματοςGeneral Activity Simulation Program (Γενικό Πρόγραμμα Προσομοίωσης Δραστηριοτήτων) General Purpose Simulation Language (Σύστημα Προσομοίωσης Γενικής Χρήσεως) SIMulation SCRIPTMODular SIMulation language Καμία Συγκεκριμένη Γλώσσα υλοποίησηςFORTRAN ή PL/IAssemblyAssembly, CC++ Υπολογιστικό σύστημαΟποιοσδήποτε υπολογιστής που διαθέτει μεταγλωττιστή FORTRAN ή PL/I (σε συστήματα διαμοιρασμού χρόνου) PC, Macintosh, πολλές πλατφόρμες UNIX και πολλά μεγάλα συστήματα διαμοιρασμού χρόνου PC, McIntosh, πολλές πλατφόρμες UNIX και πολλά μεγάλα συστήματα διαμοιρασμού χρόνου PC, UNIXPC, McIndosh, Linux και Solaris Μέθοδος προγραμματισμού ΕντολήΜπλοκΕντολή Εντολή κσι functional block Άποψη του ΚόσμουΓεγονότοςΔιεργασία (Δοσοληψία)Γεγονότος ή Διεργασίας Διεργασίας Διαχείριση μνήμηςΣταθερήΔυναμική Τύπος γλώσσαςΜεταγλωττιστήςΔιερμηνευτής (μεταγλωττιστής στην έκδοση GPSS/H) ΜεταγλωττιστήςΜεταγλώσσα: παράγει C++ πηγαίο κώδικα Διερμηνευτής ΚόστοςΧαμηλόΜέσοΥψηλό Σχετικά υψηλό

10 Τμήμα Διοίκησης Τεχνολογίας - 2008 10 Παράδειγμα με GPSS Super Unleaded 25% 75% 30% 70% 100%

11 Τμήμα Διοίκησης Τεχνολογίας - 2008 11 Διάγραμμα μπλοκ

12 Τμήμα Διοίκησης Τεχνολογίας - 2008 12 Πρόγραμμα SIMULATE EXPON FUNCTION RN2,C24 0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915/.7,1.2.75,1.36/.8,1.6/.84,1.83/.88,2.12/.9,2.3/.92,2.52/.94,2.81.95,2.99/.96,3.2/.97,3.5/.98,3.9/.99,4.6/.995,5.3/.998,6.2.999,7/.9998,8 STORAGE S$WASQ,2 Η αρχική χωρητικότητα αναμονής GENERATE 8,FN$EXPON στο πλυντήριο είναι 2 αυτοκίνητα TRANSFER.25,,SUPER Το 25% των αυτοκινήτων πηγαίνουν QUEUE UNLDQ για βενζίνη SUPER ενώ το SEIZE UNLD υπόλοιπο 75% μπαίνει στην ουρά DEPART UNLDQ για αμόλυβδη βενζίνη. ADVANCE 8,3 RELEASE UNLD TRANSFER.30,,WASHER Το 30% των αυτοκινήτων συνεχίζει TERMINATE στο πλυντήριο ενώ τα άλλα φεύγουν * SUPER QUEUE SUPRQ Τα αυτοκίνητα περιμένουν στην SEIZE SUPR ουρά για βενζίνη SUPER DEPART SUPRQ ADVANCE 8,3 RELEASE SUPR TRANSFER.30,,WASHER Το 30% των αυτοκινήτων συνεχίζει TERMINATE στο πλυντήριο ενω τα άλλα φεύγουν * WASHER TRANSFER BOTH,,BYEBYE Αν δεν υπάρχουν θέσεις αναμονής WAIT ENTER WASQ τα αυτοκίνητα φεύγουν SEIZE WASR LEAVE WASQ ADVANCE 25,5 RELEASE WASR Όσα αυτοκίνητα πλυθούν αναχωρούν BYEBYE TERMINATE κι αυτά * GENERATE 10080 Χρόνος προσομοίωσης 1 εβδομάδα TERMINATE 1 START 1 Αρχή της πρώτης εκτέλεσης STORAGE S$WASQ,3 Χώρος αναμονής 3 αυτοκίνητα CLEAR Μηδενισμός στατιστικών START 1 Αρχή της δεύτερης εκτέλεσης STORAGE S$WASQ,4 Χώρος αναμονής 4 αυτοκίνητα CLEAR Μηδενισμός στατιστικών START 1 Αρχή τρίτης εκτέλεσης STORAGE S$WASQ,5 Χώρος αναμονής 5 αυτοκίνητα CLEAR Μηδενισμός στατιστικών START 1 Αρχή τέταρτης εκτέλεσης END Τέλος προσομοίωσης

13 Τμήμα Διοίκησης Τεχνολογίας - 2008 13 Αποτελέσματα Δεύτερη εκτέλεση με χώρο αναμονής για 3 αυτοκίνητα BLOCK CURRENT TOTAL BLOCK CURRENT TOTAL BLOCK CURRENT TOTAL 1 1247 11 322 21 1 343 2 1247 12 322 22 342 3 6 925 13 1 322 BYEBYE 375 4 919 14 321 24 1 5 919 15 321 25 1 6 1 919 16 237 7 918 WASHER 376 8 918 WAIT 343 9 626 19 343 SUPER 322 20 343 Τρίτη εκτέλεση με χώρο αναμονής για 4 αυτοκίνητα BLOCK CURRENT TOTAL BLOCK CURRENT TOTAL BLOCK CURRENT TOTAL 1 1330 11 334 21 1 370 2 1330 12 334 22 369 3 996 13 334 BYEBYE 398 4 996 14 334 24 1 5 996 15 334 25 1 6 1 996 16 239 7 995 WASHER 402 8 995 WAIT 3 373 9 688 19 370 SUPER 334 20 370 Τέταρτη εκτέλεση με χώρο αναμονής για 5 αυτοκίνητα BLOCK CURRENT TOTAL BLOCK CURRENT TOTAL BLOCK CURRENT TOTAL 1 1272 11 293 21 1 339 2 1272 12 293 22 338 3 3 978 13 1 293 BYEBYE 354 4 975 14 292 24 1 5 975 15 292 25 1 6 1 975 16 199 7 974 WASHER 358 8 974 WAIT 3 342 9 709 19 339

14 Τμήμα Διοίκησης Τεχνολογίας - 2008 14 Αποτελέσματα Θέσεις αναμονής n1n1n2n2n3n3l 23573154211.76% 3376343338.78% 4402376266.47% 5358345133.63%

15 Τμήμα Διοίκησης Τεχνολογίας - 2008 15 Προσoμοίωση με MODSIM

16 Τμήμα Διοίκησης Τεχνολογίας - 2008 16 Προσoμοίωση με MODSIM

17 Τμήμα Διοίκησης Τεχνολογίας - 2008 17 Προσoμοίωση με MODSIM

18 Τμήμα Διοίκησης Τεχνολογίας - 2008 18 Παράδειγμα προγράμματος MODSIM OBJECT AircraftObj; ASK METHOD SetSpeed(IN speed:INTEGER); BEGIN BestSpeed := speed; IF InFlight INTERRUPT SELF FlyDistance; END IF; END METHOD; TELL METHOD FlyDistance (IN dist:INTEGER); BEGIN InFlight := TRUE; WHILE dist > 0.0 speed := BestSpeed; start := SimTime; WAIT DURATION dist/BestSpeed; ON INTERRUPT elapsed := SimTime-start; dist := dist-(elapsed*speed); END WAIT; END WHILE; InFlight:=FALSE; OUTPUT ("Arrived at",SimTime); End METHOD; END OBJECT;

19 Τμήμα Διοίκησης Τεχνολογίας - 2008 19 Στατιστικά Αποτελέσματα

20 Τμήμα Διοίκησης Τεχνολογίας - 2008 20 Βιβλιογραφία N.L. Biggs, Introduction to Computing With Pascal, Oxford Univ Press, 1989. G.M. Birtwistle, DEMOS - Discrete Event Modeling on SIMULA, Macmillan, London, 1979. CACI, MODSIM III User's Manual, La Jolla, California, 1997. CACI, SIMPROCESS User's Manual, La Jolla, California, 1997. CACI, Windows SIMSCRIPT II.5, User's Manual, La Jolla, California, 1997. O. Dahl, K. Nygaard, "SIMULA - an Algol-based simulation language," Comm ACM, Vol. 9, No. 9, 1966, pp. 671-678. G. Gordon, System Simulation, Prentice-Hall Englewood Cliffs, NJ, 1969. G. Gordon, “The design of the GPSS language.” In Adam, N.R. & Dogramaci, A. (eds.), Current Issues in Computer Simulation, Academic Press, New York, 1979. E. Horowitz, S. Sahni, Fundamentals of Data Structures in Pascal, W. H. Freeman & Co. 1994. H.M. Markowitz, B. Hausner, and H.W. Karr, SIMSCRIPT: A Simulation Programming Language, RAND Corporation, RM-3310-pr, Prentice-Hall, Englewood Cliffs, USA, 1962. M. Pidd, Computer Simulation in Management Science, 3η έκδοση, Wiley, 1992. A.A.B. Pritsker, The GASP IV Simulation Language, Wiley, New York, 1974. E.C. Russel, SIMSCRIPT II.5 Programming Language, CACI, Los Angeles, 1987. Stahl, Introduction to Simulation with GPSS on the PC, Macintosh and VAX, Prentice- Hall, 1990. T.J. Schriber, An Introduction to Simulation Using Gpss/H, John Wiley & Sons, 1991.


Κατέβασμα ppt "Τμήμα Διοίκησης Τεχνολογίας - 2008 1 Μάνος Ρουμελιώτης Πανεπιστήμιο Μακεδονίας Προσομοίωση και Γλώσσες Προσομοίωσης."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google