Σχεδίαση και Προσομοίωση Συστημάτων
Δημήτριος Κοσμάνος
Ακαδημαϊκός Υπότροφος
Μαθησιακά Αποτελέσματα
Ο κύριος στόχος του μαθήματος είναι να διδάξει στους φοιτητές τις θεμελιώδεις έννοιες της προσομοίωσης συστημάτων χρησιμοποιώντας μια πρακτική προσέγγιση. Οι φοιτητές θα διδαχθούν τις βασικές έννοιες της προσομοίωσης συστημάτων, την επικύρωση των αντίστοιχων μοντέλων και την αξιολόγηση των αποτελεσμάτων της προσομοίωσης. Μετά την εισαγωγή, οι φοιτητές θα είναι σε θέση να χρησιμοποιήσουν τον αντίστοιχο προσομοιωτή για τη δημιουργία μοντέλων προσομοίωσης.
Μετά την παρακολούθηση του μαθήματος οι φοιτητές θα είναι σε θέση:
- vα αξιολογήσουν τα πλεονεκτήματα και τα μειονεκτήματα των διαφορετικών τεχνικών προσομοίωσης και να επιλέξουν την κατάλληλη μέθοδο,
- vα είναι εξοικειωμένοι με περιβάλλοντα και γλώσσες προσομοίωσης όπως το MATLAB, ModelSim, OMNET++, κ.α.,
- vα σχεδιάσουν μοντέλα προσομοίωσης για απλά και πολύπλοκα συστήματα,
- vα αξιολογήσουν στατιστικά και να οπτικοποιήσουν τα αποτελέσματα των προσομοιώσεων,
- vα έχουν την δυνατότητα να προσομοιώσουν με γρήγορο, ευέλικτο και αξιόπιστο τρόπο εφαρμογές μελλοντικών συστημάτων ασυρμάτων δικτύων, για παράδειγμα 5G, ασύρματα δίκτυα οχημάτων κ.α.
Ενδεικτικό Περιεχόμενο Μαθήματος
Η προσομοίωση αποτελεί τεχνική με την οποία χρησιμοποιείται ο υπολογιστής για την αξιόπιστη περιγραφή (μοντέλο) και μελέτη της συμπεριφορά μιας διεργασίας, ή ενός (υπαρκτού ή όχι) συστήματος στο χρόνο, και εξοικείωσης με τα χαρακτηριστικά του, με σκοπό την επαλήθευση της ορθότητας λειτουργίας, ή την επίλυση προβλημάτων, και ουσιαστικά συμβάλλει στην τελική (βέλτιστη) σχεδίαση αυτού του συστήματος. Το μάθημα αυτό προσφέρει τη δυνατότητα εξοικείωσης με περιβάλλοντα και γλώσσες μοντελοποίησης και προσομοίωσης (π.χ. MATLAB Simulink, ModelSim, OMNeT++) διαφόρων συστημάτων με έμφαση στα ψηφιακά συστήματα.
Οι θεματικές ενότητες που περιλαμβάνει το μάθημα είναι οι εξής:
- Βασικές έννοιες της προσομοίωσης.
- Περιβάλλοντα ανάπτυξης προγραμμάτων προσομοίωσης (MATLAB Simulink, OCTAVE, SPICE, ModelSim, Quartus/Vivado, Scilab, OpenModelica, LabView). Παραδείγματα περιπτώσεων μελέτης.
- Συστήματα διακριτών γεγονότων και ανάπτυξη μοντέλων διακριτών συστημάτων (προσομοίωση γεγονότων). Μηχανισμοί ροής χρόνου. Δομές δεδομένων για τη διαχείριση γεγονότων.
- Μέθοδοι δειγματοληψίας. Δημιουργία ψευδοτυχαίων αριθμών και τυχαίων μεταβλητών από συγκεκριμένες κατανομές. Γεννήτριες τυχαίων αριθμών και παραγωγή τυχαίων δειγμάτων. Μέθοδος Monte Carlo.
- Προσομοίωση ψηφιακών συστημάτων.
- Σχεδίαση και προσομοίωση κυκλωμάτων. Κυκλώματα αποκωδικοποιητών, συγκριτών, πολυπλέκτη, ALUs, μνήμης.
- Προσομοίωση μοντέλου απλής ουράς FIFO ενός εξυπηρετητή (MATLAB Simulink, OMNeT++).
- Προσομοίωση ενός απλού δικτύου δεδομένων. Αξιολόγηση βασικών πρωτοκόλλων μεταφοράς δεδομένων για δίκτυα TCP/IP, παρουσίαση μηχανισμών ελέγχου ροής, συμφόρησης και αξιοπιστίας στο TCP. Προσομοίωση δικτύων Petri. Colored Petri nets (CPN TOOLS).
- Ασκήσεις και παραδείγματα δικτύων δεδομένων και πιο πολύπλοκων σεναρίων ασύρματων δικτύων τηλεπικοινωνιών για εφαρμογές της τεχνολογίας 5G.
- Μοντελοποίηση και προσομοίωση φυσικών συστημάτων (COMSOL) και συστημάτων νεφοϋπολογιστικής του διαδικτύου των πραγμάτων (όπως ασύρματα δίκτυα αισθητήρων, οχημάτων και μη-επανδρωμένων εναέριων οχημάτων). Εισαγωγή στην προσομοίωση Vehicular Ad-Hoc Networks (VANETs) με τον προσομοιωτή VEINS που βασίζονται στον προσομοιωτή Omnet++ για την προσομοίωση του δικτύου.
- Επικύρωση και επαλήθευση μοντέλου προσομοίωσης. Στατιστική ανάλυση αποτελεσμάτων προσομοίωσης.
- Ανάλυση αποτελεσμάτων. Στατιστικές διαδικασίες, τυπικές και πιθανολογικές κατανομές, επιλογή των πιθανών κατανομών των μεταβλητών εισόδου, συγκρίσεις των παρατηρήσεων και των αποτελεσμάτων.
- Προσομοίωση βιομηχανικών συστημάτων. Εφαρμογές στα συστήματα βιομηχανικής παραγωγής, μελέτες περιπτώσεων. Προσομοίωση ρομποτικών συστημάτων (RoboDK, RobotStudio, CIROS).