Τεχνολογία Λογισμικού

Μαθησιακά Αποτελέσματα

Στα πλαίσια του μαθήματος διδάσκονται οι βασικές αρχές που διέπουν την ανάπτυξη έργων λογισμικού, παρουσιάζονται τα πιο διαδεδομένα Μοντέλα Κύκλου Ζωής Λογισμικού, καθώς και μεθοδολογίες, τεχνικές και εργαλεία για τη συστηματοποιημένη ανάλυση, σχεδίαση, ανάπτυξη, έλεγχο, λειτουργία και συντήρηση συστημάτων καλής ποιότητας λογισμικού μέσα σε συγκεκριμένο χρονοδιάγραμμα και προϋπολογισμό ακολουθώντας τη δομημένη και την αντικειμενοστρεφή προσέγγιση.

Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση να:

  • Εξηγεί τις βασικές έννοιες, μεθοδολογίες και τεχνικές που χρησιμοποιούνται σε κάθε φάση του κύκλου ζωής λογισμικού.
  • Αξιολογεί και να επιλέγει το κατάλληλο μοντέλο κύκλου ζωής λογισμικού.
  • Σχεδιάζει διαγράμματα χρησιμοποιώντας τη γλώσσα μοντελοποίησης UML (Unified Modelling Language) για την ανάλυση απαιτήσεων, το σχεδιασμό και την ανάπτυξη συστημάτων λογισμικού.
  • Εφαρμόζει τεχνικές ελέγχου για τον έλεγχο συστημάτων λογισμικού (επικύρωση και επαλήθευση).

Περιεχόμενα

  • Εισαγωγή / Γνωριμία με την Τεχνολογία Λογισμικού, Αρχές Τεχνολογίας Λογισμικού, Προβλήματα στην ανάπτυξη έργων λογισμικού
  • Μοντέλα κύκλου ζωής λογισμικού – Γνωριμία, ταξινόμηση και κριτική τοποθέτηση γενικών ποιοτικών χαρακτηριστικών τους
  • Ανάλυση και Προδιαγραφή απαιτήσεων – Παρουσίαση διαδικασιών προσδιορισμού και τρόπων περιγραφής απαιτήσεων με την προσέγγιση της Δομημένης Ανάλυσης
  • Μοντέλα Παράστασης Λογισμικού, Έγγραφο Προδιαγραφών Απαιτήσεων Λογισμικού
  • Μεθοδολογίες Ανάλυσης και Σχεδίασης αντικειμενοστρεφών συστημάτων, Ενοποιημένη Γλώσσα Μοντελοποίησης (UML)
  • Διαγράμματα Περιπτώσεων Χρήσης
  • Διαγράμματα Κλάσεων και Αντικειμένων
  • Διαγράμματα Αλληλεπίδρασης
  • Διαγράμματα Καταστάσεων
  • Σχεδίαση συστημάτων λογισμικού, Αρχιτεκτονική Σχεδίαση
  • Παραγωγή πηγαίου κώδικα (κωδικοποίηση) – Επιθυμητά χαρακτηριστικά – Τεχνικές συγγραφής και καλές πρακτικές κωδικοποίησης
  • Έλεγχος ορθής λειτουργίας λογισμικού – Τεχνικές ελέγχου – Διόρθωση σφαλμάτων
  • Εργαλεία ανάπτυξης λογισμικού (CASE tools)
  • Εφαρμογές με UML

Προτεινόμενα Συγγράμματα

  • «Τεχνολογία Λογισμικού», 8η έκδοση, R. Pressman, B. Maxim, Επιμέλεια Α. Πρέντζα, Κ. Σαΐδης, Εκδόσεις Τζιόλα, 2018 (1ο Προτεινόμενο Σύγγραμμα)
  • «Τεχνολογία Λογισμικού – Θεωρία και πράξη», 2η έκδοση, S. L. Pfleeger, Εκδόσεις Κλειδάριθμος, 2011 (2οΠροτεινόμενο Σύγγραμμα)

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Δομές Δεδομένων

Μαθησιακά Αποτελέσματα

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

Με την επιτυχή ολοκλήρωση του μαθήματος ο φοιτητής /τρια θα είναι σε θέση:

  • να έχει κατανοήσει τις βασικές έννοιες οργάνωσης δεδομένων και τρόπων πρόσβασης στην κύρια μνήμη του υπολογιστή
  • να επιλέγει την καταλληλότερη δομή δεδομένων προς χρήση σε εφαρμογές λογισμικού που αναπτύσσει
  • να υπολογίζει την πολυπλοκότητα αλγορίθμων που χρησιμοποιούν δομές δεδομένων ως προς το χρόνο εκτέλεσης και το χώρο μνήμης που καταλαμβάνουν τα υποκείμενα δεδομένα.

Περιεχόμενα

  • Εισαγωγή, στόχος μαθήματος, ανάλυση πολυπλοκότητας ως εργαλείο αποτίμησης της απόδοσης πράξεων σε δομές δεδομένων
  • Πίνακες
  • Στοίβες και ουρές.
  • Συνδεδεμένες λίστες, απλά συνδεδεμένες, διπλά συνδεδεμένες, κυκλικές λίστες
  • Απλή ταξινόμηση (bubblesort, selectionsort, insertionsort)
  • Δυαδικά δέντρα, δυαδικά δέντρα αναζήτησης
  • Ισοζυγισμένα δυαδικά δέντρα αναζήτησης
  • Ουρές προτεραιότητας, εισαγωγικά στοιχεία προχωρημένης ταξινόμησης
  • Ερυθρόμαυρα δέντρα, 2-3-4 δέντρα
  • Δέντρα πολλαπλών δρόμων, Β-δέντρα
  • Πίνακας κατακερματισμού
  • Δομές δεδομένων με τη μορφή γράφων, τρόποι αναπαράστασης (πίνακας και λίστα γειτνίασης), βασικοί αλγόριθμοι αναζήτησης (αναζήτηση κατά βάθος και κατά πλάτος)
  • Επανάληψη

Προτεινόμενα Συγγράμματα

  • Lafore R. (2005): Δομές Δεδομένων και Αλγόριθμοι στη JAVA (μεταφρασμένο), Εκδόσεις Μ. Γκιούρδας.
  • Goodrich M., Tamassia R. (2013): Δομές Δεδομένων και Αλγόριθμοι σε Java, (μεταφρ. Μ.Χατζόπουλος), Εκδόσεις Δίαυλος.
  • Sedgewick R. (2005): Αλγόριθμοι σε Java, Τόμοι 1-4, 3η αμερικάνικη έκδοση (μεταφρασμένο), Εκδόσεις Κλειδάριθμος

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Αρχιτεκτονικές Υπολογιστών

Μαθησιακά Αποτελέσματα

Στόχος του μαθήματος είναι η εξοικείωση των φοιτητών με τη δυαδική λογική, τις βασικές ­μεθόδους και διαδικασίες σχεδίασης ψηφιακών κυκλωμάτων καθώς και με τα βασικά χαρακτηριστικά και οργάνωση των δομικών μονάδων ενός Υπολογιστικού Συστήματος.

Με την ολοκλήρωση του μαθήματος οι φοιτητές θα αποκτήσουν θεμελιώδεις γνώσεις στη Λογική Σχεδίαση και την Αρχιτεκτονική Υπολογιστών (βλ. Περιεχόμενο Μαθήματος) που επιτρέπουν την κριτική εμβάθυνση στο ευρύτερο επιστημονικό πεδίο της Αρχιτεκτονικής Υπολογιστών, περιλαμβανομένων των μικροεπεξεργαστικών και μικροϋπολογιστικών συστημάτων.

Οι φοιτητές θα έχουν τη δυνατότητα:

  • να εκτελούν αριθμητικούς υπολογισμούς στα αριθμητικά συστήματα και στα πρότυπα αναπαράστασης αριθμών που απαντώνται στην Αρχιτεκτονική των Υπολογιστών.
  • να σχεδιάζουν, βελτιστοποιούν, υλοποιούν και αναλύουν σύνθετα συνδυαστικά και ακολουθιακά κυκλώματα με πλήθος δομικών στοιχείων (πύλες, κυκλώματα SSI και MSI, πολυπλέκτες, flip-flops κλπ).
  • να αξιολογούν την επίδοση των δομικών στοιχείων της Αριθμητικής και Λογικής Μονάδας της Κεντρικής Μονάδας Επεξεργασίας.
  • να αξιολογούν και συγκρίνουν την επίδοση υπολογιστικών συστημάτων λαμβάνοντας υπόψη τη δομή και οργάνωσή τους, περιλαμβανομένης της ιεραρχίας μνήμης, της θετικής επίδρασης της κρυφής μνήμης, και βαθμίδων μερικώς επικαλυπτόμενων λειτουργιών.
  • να αποφασίσουν τη δομή της ιεραρχίας μνήμης του υπολογιστικού συστήματος για τη βελτίωση της επίδοσής του, λαμβάνοντας υπόψη το κόστος.
  • να υλοποιούν αποδοτικά προγράμματα με χρήση γλωσσών προγραμματισμού λαμβάνοντας υπόψη την απεικόνισή τους στο επίπεδο της αρχιτεκτονικής του υλικού.
  • να υλοποιούν και αναλύουν προγράμματα σε συμβολική γλώσσα σε διαφορετικές αρχιτεκτονικές συνόλου εντολών (αρχιτεκτονικές στοίβας, συσσωρευτή, καταχωρητή-μνήμης, καταχωρητή-καταχωρητή).
  • να υλοποιούν βελτιστοποιημένα προγράμματα σε συμβολική γλώσσα για επεξεργαστές μερικών επικαλυπτόμενων λειτουργιών.

Περιεχόμενα

  • Εισαγωγή: Ψηφιακά Συστήματα, Ιστορικά Στοιχεία.
  • Αριθμητικά Συστήματα: Δυαδικό, Οκταδικό, Δεκαεξαδικό, Μετατροπές μεταξύ Συστημάτων.
  • Πράξεις στο Δυαδικό Σύστημα, Χρήση Συμπληρωμάτων, Δυαδικοί Κώδικες.
  • Λογικές Πύλες. Άλγεβρα Boole (Αξιώματα – Λογικές Πράξεις).
  • Πίνακες Αληθείας, Χάρτες Karnaugh για απλοποίηση λογικών παραστάσεων, παραδείγματα σχεδίασης συνδυαστικών λογικών κυκλωμάτων, υλοποίηση συνδυαστικών κυκλωμάτων με πύλες NAND/NOR/κυκλώματα SSI/MSI/πολυπλέκτες.
  • Εισαγωγή στα Σύγχρονα Ακολουθιακά Κυκλώματα. Flip – Flops (D, T, RS και JK-type).
  • Σχεδίαση Μετρητών – Καταχωρητών – Καταχωρητών Ολίσθησης.
  • Διαδικασία Σχεδίασης και Ανάλυσης Σύγχρονων Ακολουθιακών Kυκλωμάτων.
  • Δομή, Οργάνωση και Λειτουργία Υπολογιστών, Von Neumann Αρχιτεκτονική.
  • Μορφές Αναπαράστασης Δεδομένων (Σταθερή και Κινητή Υποδιαστολή).
  • Αρχιτεκτονικές Συνόλου Εντολών, Συμβολική Γλώσσα.
  • Οργάνωση και Λειτουργία Κεντρικής Μονάδας Επεξεργασίας. Μονάδα Ελέγχου.
  • Ιεραρχία Μνήμης, Τύποι Διευθυνσιοδότησης, Σχεδίαση και Διευθυνσιοδότηση Μνημών Τυχαίας Προσπέλασης, Διασύνδεση Μνήμης με την Κεντρική Μονάδα Επεξεργασίας.
  • Ιδεατή Μνήμη, Σελιδοποίηση, Τμηματοποίηση.
  • Κρυφή Μνήμη, Τεχνικές Οργάνωσης Κρυφής Μνήμης.
  • Αξιολόγηση Επίδοσης Υπολογιστών.
  • Επεξεργαστές Μερικών Επικαλυπτόμενων Λειτουργιών (pipeline).

Προτεινόμενα Συγγράμματα

  • Patterson D. & Hennessy J. (2010): Οργάνωση και Σχεδίαση Υπολογιστών, η Διασύνδεση Υλικού και Λογισμικού, Τόμοι Α & Β, 4η αμερικάνικη έκδοση (μεταφρασμένο), Εκδόσεις Κλειδάριθμος.
  • Νικολός Δ. (2017): Αρχιτεκτονική Υπολογιστών, Εκδόσεις Π. Παπακωνσταντίνου.
  • M. Mano (2018): Ψηφιακή Σχεδίαση. Εκδόσεις Παπασωτηρίου.
  • Hennessy J. and Patterson A.: Αρχιτεκτονική Υπολογιστών: Ποσοτική Προσέγγιση, 4η Έκδοση, Εκδόσεις Τζιόλα.
  • Stallings W. (2017): Οργάνωση και Αρχιτεκτονική Υπολογιστών, 10η Έκδοση, Εκδόσεις Τζιόλα.
  • C. Hammacher, Z. Vranesic, S. Zaky (2007): Οργάνωση και Αρχιτεκτονική Ηλεκτρονικών Υπολογιστών. Εκδόσεις Επίκεντρο.
  • Hayes J. (1997): Computer Architecture and Organization, 3rd Edition, McGraw-Hill.
  • V. Nelson, H.T. Nagle, J.D. Irwin, B. Carrol (2007): Ανάλυση και Σχεδίαση Κυκλωμάτων Ψηφιακής Λογικής, Εκδόσεις Επίκεντρο.

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Διακριτά Μαθηματικά

Μαθησιακά Αποτελέσματα

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

Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση:

  • να γνωρίζει βασικές μεθόδους ανάλυσης των διακριτών μαθηματικών (ενδεικτικά: μαθηματική επαγωγή, συνδυαστική απαρίθμηση, επίλυση αναδρομικών σχέσεων, θεωρία γραφημάτων).
  • να επιλέγει τις κατάλληλες μαθηματικές έννοιες και αναπαράστασεις για το εκάστοτε πρόβλημα που καλείται να επιλύσει (σχεδιασμός αλγορίθμου, προγραμματισμός, ανάλυση δικτύου, μελέτη κρυπτογραφικού πρωτοκόλλου, σχεδιασμός βάσης δεδομένων).
  • να επιλέγει την κατάλληλη μαθηματική μέθοδο ανάλυσης της επίδοσης και της ορθότητας του εκάστοτε μοντέλου που υλοποιεί για το πρόβλημα που μελετά.

Περιεχόμενα

  • Σύνολα, Συναρτήσεις, Ακολουθίες.
  • Μαθηματική Επαγωγή.
  • Στοιχεία Θεωρίας Αριθμών.
  • Συνδυαστική Απαρίθμηση.
  • Αναδρομικές Σχέσεις.
  • Γεννήτριες Συναρτήσεις.
  • Τάξη των Συναρτήσεων.
  • Σχέσεις και Ιδιότητες.
  • Στοιχεία Θεωρίας Γραφημάτων.
  • Στοιχεία Θεωρίας Υπολογισμού.

Προτεινόμενα Συγγράμματα

  • Διακριτά Μαθηματικά και Εφαρμογές τους. ROSEN, K.H., 7η Έκδοση, Εκδόσεις Τζιόλα 2014.
  • Διακριτά Μαθηματικά με Εφαρμογές. EPP, S. S., Κλειδάριθμος 2010.
  • Στοιχεία Διακριτών Μαθηματικών, LIU C.L., Πανεπιστημιακές Εκδόσεις Κρήτης, 2009.
  • Συνκριτά Μαθηματικά. Graham, R.L., Knuth, D. E., Patashnik O., Κλειδάριθμος 2011.

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Στοχαστικές Ανελίξεις

Μαθησιακά Αποτελέσματα

Στόχος του μαθήματος είναι η εμπέδωση στοχαστικών ανελίξεων με έμφαση σε εφαρμογές στις τηλεπικοινωνίες.

Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής/τρια θα διαθέτει προχωρημένες γνώσεις στο πεδίο των Στοχαστικών Ανελίξεων, οι οποίες συνεπάγονται κριτική κατανόηση θεωριών και αρχών στις επιστημονικές περιοχές των Πιθανοτήτων, Στοχαστικής Ανάλυσης, Στοχαστικής Μοντελοποίησης και σχεδιασμού σημάτων και συστημάτων με στοχαστική συμπεριφορά.

Οι φοιτητές θα έχουν τη δυνατότητα να μοντελοποιήσουν και να επεξεργαστούν προβλήματα με τα εργαλεία της Στοχαστικής Ανάλυσης. Μεταξύ των δεξιοτήτων που θα αποκτήσουν συμπεριλαμβάνονται η μοντελοποίηση, ερμηνεία, προσδιορισμός και χαρακτηρισμός ιδιοτήτων στοχαστικών συστημάτων και διαδικασιών και εφαρμογή των παραπάνω στη μελέτη προβλημάτων αναλύσης και σχεδίασης συστημάτων τηλεπικοινωνιών και δικτύων, ως συνάρτηση της φασματικής πυκνότητας ισχύος, του στοχαστικού μοντέλου του θορύβου, της παρουσίας παρεμβολών, για διαφορετικές περιπτώσεις καναλιού, δικτυακού φορτίου και άλλων παραμέτρων.

Περιεχόμενα

  • Ορισμός Στοχαστικών ανελίξεων, Συναρτήσεις μέσης τιμής, ροπές, συναρτήσεις αυτοσυσχέτισης και αυτοσυμμεταβλητότητας στοχαστικών ανελίξεων.
  • Χρονικοί μέσοι και εργοδοτικότητα.
  • Gaussian στοχαστικές ανελίξεις.
  • Πολλαπλές στοχαστικές ανελίξεις και συναρτήσεις ετεροσυσχέτισης και μεταβλητότητας.
  • Ανεξάρτητες και ασυχέτιστες στοχαστικές ανελίξεις.
  • Παραδείγματα Διακριτών Στοχαστικών Ανελίξεων.
  • Παραδείγματα Συνεχών Στοχαστικών Ανελίξεων.
  • Εισαγωγή στις Διαδικασίες Markov.
  • Ορισµοί οµογενούς διαδικασίας Poisson, Βασικά θεωρήµατα, Εφαρµογές.
  • Στατικότητα, Στατικότητα υπό την ευρεία έννοια, WSS Gaussian στοχαστικές ανελίξεις, Κυκλοστατικές στοχαστικές ανελίξεις.
  • Συνέχεια, παραγώγιση και ολοκλήρωση στοχαστικών ανελίξεων.
  • Χρονικές μέσες τιμές και εργοδικότητα.
  • Θόρυβος: Θόρυβος βολής, θερμικός θόρυβος, λευκός θόρυβος, ισοδύναμο εύρος ζώνης θορύβου.
  • Θόρυβος στενής ζώνης.
  • Μετάδοση στοχαστικής ανέλιξης μέσω γραμμικού φίλτρου.
  • Πυκνότητα φάσματος ισχύος.

Προτεινόμενα Συγγράμματα

  • Χρυσαφίνου Ο. (2004): Εισαγωγή στις Στοχαστικές Ανελίξεις, Εκδόσεις Εκδοτικός Οίκος Σοφία, 2004
  • Δάρα, Σύψα, Στοχαστικές Ανελίξεις, Εκδόσεις ΖΗΤΗ, 2003

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Μαθηματική Ανάλυση ΙΙ

Μαθησιακά Αποτελέσματα

Στα πλαίσια του μαθήματος διδάσκονται ορισμοί, μαθηματικά αποτελέσματα, θεμελιώδεις μέθοδοι λογισμού πολλών μεταβλητών και θεωρίας fourier και βασικές μέθοδοι εξαγωγής συμπερασμάτων σχετικά με τα βασικά μαθηματικά εργαλεία ανάλυσης πολλών μεταβλητών που απαντώνται στη θεμελίωση και στην εφαρμογή της επιστήμης των υπολογιστών Το μάθημα υποστηρίζει άμεσα τα περισσότερα αντικείμενα και μαθήματα του προγράμματος σπουδών: Ας σημειωθεί πως κατά τη διάρκεια του μαθήματος συζητούνται συγκεκριμένα παραδείγματα με χρήση νέων Τεχνολογιών με τη βοήθεια προγραμμάτων όπως είναι το Matlab, το Octave,  και η R.

Μετά την επιτυχή παρακολούθηση αυτού του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση:

  • να γνωρίζει, να περιγράφει και να χειρίζεται τις βασικές γνώσεις της μαθηματικής ανάλυσης πολλών μεταβλητών (ενδεικτικά: Συνάρτηση Γάμμα και βήτα, Μετασχηματισμός Laplace, συναρτήσεις πολλών μεταβλητών (παραγώγιση, ολοκλήρωση), ακολουθίες και σειρές συναρτήσεων ,σειρά fourier, ολοκλήρωμα fourier, μετασχηματισμός fourier).
  • Να επιλέγει τις κατάλληλες μαθηματικές έννοιες και να μπορεί να μοντελοποιήσει το εκάστοτε πρόβλημα Πληροφορικής που καλείται να επιλύσει. Επιπλέον να αναπτύσσει μαθηματική σκέψη και να μπορεί να αναλύσει και να προσαρμόσει τις αποκτηθείσες γνώσεις σε εφαρμογές της επιστήμης των υπολογιστών. Έτσι να αναλύει με τρόπο κριτικό και υπεύθυνο τις ιδέες και τις πληροφορίες για τα στοιχεία εκείνα τα οποία τους αφορούν.
  • Να συνδυάζει τα βασικά συστατικά του Λογισμού πολλών μεταβλητών και θεωρίας Fourier προκειμένου να λύσει πολυπλοκότερα μαθηματικά προβλήματα και να επιλύει σύνθετα ή νέα προβλήματα του επιστημονικού πεδίου σπουδών τους αναπτύσσοντας ολοκληρωμένες δημιουργικές και καινοτόμες προσεγγίσεις, με τρόπο μεθοδικό και επιστημονικό ώστε να επιλύει της επιστήμης υπολογιστών.
  • Να γνωρίζει, να χειρίζεται και να κατανοεί τα προγράμματα Matlab, Octave και R πάνω σε εφαρμογές της μαθηματικής Ανάλυσης πολλών μεταβλητών και θεωρίας fourier στην επιστήμη των υπολογιστών.

 

Περιεχόμενα

  • Γενικευμένα Ολοκληρώματα (Α είδους, Β είδους, Μικτού είδους)
  • Βήτα συνάρτηση – Γάμμα συνάρτηση και εφαρμογές. Συνάρτηση Bessel και εφαρμογές σε δίκτυα-κρυπτογραφία
  • Μετασχηματισμός Laplace-Μετασχηματισμός Z. Επίλυση διαφορικών εξισώσεων με χρήση μετασχηματισμού Laplace και μετασχηματισμού Ζ. Εφαρμογές αυτών.
  • Διανυσματικές συναρτήσεις-συναρτήσεις πολλών μεταβλητών. Όριο και συνέχεια διανυσματικών συναρτήσεων
  • Ακρότατα συναρτήσεων δύο και τριών μεταβλητών με ή χωρίς δεύσμευση. Πολλαπλασιαστές Lagrange και εφαρμογές σε δίκτυα και σε προβλήματα βελτιστοποίησης σε θεωρία πληροφορίας
  • Διπλό ολοκλήρωμα-κλασικοί μετασχηματισμοί. Θεωρία αλλαγής μεταβλητών. Τριπλό ολοκλήρωμα-κλασικοί μετασχηματισμοί (σφαιρικές-κυλινδρικές συντεταγμένες)-εφαρμογές
  • Ακολουθίες και σειρές συναρτήσεων. Σειρές Taylor και ιδιότητες.
  • Θεωρία Fourier. Τριγωνομετρική σειρά Fourier, Μετασχηματισμοί Fourier-Ολοκλήρωμα Fourier
  • Θεωρία καμπυλών (κλίση-περιστροφή-απόκλιση). Διανυσματικό πεδίο-συντηρητικό πεδίο και εφαμογές
  • Επικαμπύλια ολοκληρώματα (α είδους, β είδους) , θεώρημα Green-Επιφανειακά ολοκληρώματα (α είδους, β είδους) θεώρηματα Gauss, Stokes και εφαρμογές.

Προτεινόμενα Συγγράμματα

  • Μ. Φιλιππάκης, Εφαρμοσμένη ανάλυση και Θεωρία Fourier, Εκδόσεις Τσότρας, Β έκδοση, Αθήνα 2017.
  • Ζygmund A., Τριγωνομετρικές σειρές.
  • Σημειώσεις διδάσκοντα.

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Θεωρία Πιθανοτήτων

Μαθησιακά Αποτελέσματα

Στα πλαίσια του μαθήματος διδάσκονται ορισμοί, μαθηματικά αποτελέσματα, βασικές μέθοδοι εξαγωγής συμπερασμάτων σχετικά  με τα βασικά μαθηματικά εργαλεία Θεωρίας Πιθανοτήτων που απαντώνται στη θεμελίωση και στην εφαρμογή της επιστήμης των υπολογιστών Το μάθημα υποστηρίζει άμεσα τα περισσότερα αντικείμενα και μαθήματα του προγράμματος σπουδών: Ας σημειωθεί πως κατά τη διάρκεια του μαθήματος συζητούνται συγκεκριμένα παραδείγματα εφαρμογής σε αρκετά πεδία των ψηφιακών συστημάτων όπως σε εφαρμογές σε τηλεπικοινωνιακά συστήματα, σε κρυπτογραφία, σε ψηφιακές υπηρεσίες (e-learning, e-health) με χρήση νέων Τεχνολογιών με τη βοήθεια προγραμμάτων όπως είναι το Matlab, το Octave, το SPSS και το R.

Μετά την επιτυχή παρακολούθηση αυτού του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση:

  • να γνωρίζει, να περιγράφει τις βασικές γνώσεις της Θεωρίας Πιθανοτήτων (ενδεικτικά: ορισμός πιθανότητας, Συνδυαστική ανάλυση, τυχαίες μεταβλητές, διακριτές και συνεχείς κατανομές, πιθανογεννήτριες και ροπογεννήτριες διδιάστατες τυχαίες μεταβλητές κ.λ.π.) τα αξιώματα, τις βασικές ιδιότητες, και τα βασικά εργαλεία (συναρτήσεις μάζας και πυκνότητας πιθανότητας, ΚΟΘ, κτλ.) της Θεωρίας Πιθανοτήτων.
  • Να υπολογίσει τις πιθανότητες ενδεχομένων σε μη τετριμμένα προβλήματα πιθανοτήτων με χρήση θεωρίας πιθανοτήτων, συνδυαστικής και Λογισμού.
  • Να διακρίνει και να γνωρίζει γνωστά πιθανοθεωρητικά μοντέλα σε προβλήματα που άπτονται της Πληροφορικής.
  • Να επιλέγει την κατάλληλη μαθηματική μέθοδο ώστε να μπορεί να μοντελοποιήσει το εκάστοτε πρόβλημα που καλείται να επιλύσει και να συνθέτει νέα πιθανοθεωρητικά μοντέλα για προβλήματα και συστήματα που εμφανίζονται στην επιστήμη των υπολογιστών χρησιμοποιώντας απλούστερα συστατικά πιθανοθεωρητικά μοντέλα.

Να γνωρίζει, να χειρίζεται και να κατανοεί τα προγράμματα Matlab, Octave, SPSS και R πάνω σε εφαρμογές της θεωρίας πιθανοτήτων στην επιστήμη των υπολογιστών.

Γενικές Ικανότητες

  • Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση και των απαραίτητων τεχνολογιών
  • Λήψη Αποφάσεων
  • Προσαρμογή σε νέες καταστάσεις
  • Αυτόνομη εργασία
  • Ομαδική εργασία
  • Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης,
  • Παράγωγή νέων ερευνητικών ιδεών
  • Άσκηση κριτικής και αυτοκριτικής
  • Ανάπτυξη Μαθηματικής σκέψης

Περιεχόμενα

  • Εισαγωγή στη θεωρία πιθανοτήτων, ορισμός πιθανότητας.
  • Βασικές έννοιες, αξιώματα πιθανοτήτων και ιδιότητες πιθανοτήτων.
  • Δεσμευμένη πιθανότητα, ανεξαρτησία ενδεχομένων, Θεώρημα Ολικής Πιθανότητας, τύπος του Bayes.
  • Tυχαίες μεταβλητές, διακριτές τυχαίες μεταβλητές, μέση τιμή και διακύμανση αυτής.
  • Βασικές διακριτές κατανομές (διωνυμική-Γεωμετρική-Υπεργεωμετρική-Αρνητική Διωνυμική-Κατανομή Poisson)
  • Βασικές συνεχείς κατανομές (Ομοιόμορφη-Κανονική-Εκθετική-Βήτα-Γάμμα-Erlang κατανομή)
  • Πιθανογεννήτριες-Ροπογεννήτριες-Ροπή 1ης και 3ης τάξης.
  • Δισδιάστατες διακριτές τυχαίες μεταβλητές. Περιθώριες κατανομές κατανομές, Μέση τιμή-Δεσμευμένες κατανομές
  • Δισδιάστατες συνεχείς τυχαίες μεταβλητές. Περιθώριες κατανομές κατανομές, Μέση τιμή-Δεσμευμένες κατανομές
  • Μετασχηματισμοί τυχαίων μεταβλητών-Στοχαστική ανεξαρτησία δύο τυχαίων μεταβλητών.

Προτεινόμενα Συγγράμματα

  • Μ. Φιλιππάκης , Θεωρία Πιθανοτήτων και  στοιχεία στατιστικής ανάλυσης, Εφαρμογές με χρήση των προγραμμάτων Python, R, Matlab, Spss, Εκδόσεις Τσότρας, Α έκδοση, Αθήνα 2019
  • Μ. Φιλιππάκης – Θ.Παπαδόγγονας, Θεωρία Πιθανοτήτων και Στατιστική των Επιχειρήσεων, Εκδόσεις Τσότρας, Β έκδοση, Αθήνα 2017.
  • Μ. Κούτρας, Θεωρία Πιθανοτήτων και Εφαρμογές, εκδόσεις Τσότρας.
  • Σημειώσεις διδάσκοντα.

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

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

Μαθησιακά Αποτελέσματα

Στόχος του μαθήματος είναι η εισαγωγή στο συντακτικό και στη σημασιολογία του προτασιακού και του κατηγορηματικού λογισμού, η μελέτη επιχειρημάτων, η κατανόηση και χρήση των συστημάτων αποδείξεων του προτασιακού και κατηγορηματικού λογισμού (πίνακες αλήθειας, άμεση μαθηματική επιχειρηματολογία, ισοδυναμίες, σύστημα φυσικής συμπερασματολογίας, σύστημα Beth), η μετατροπή λογικών εκφράσεων στην φυσική γλώσσα και αντίστροφα. Επιπροσθέτως, στο πλαίσιο του μαθήματος, πραγματοποιείται μία εισαγωγή στην γλώσσα προγραμματισμού τεχνητής νοημοσύνης Prolog.

Με την ολοκλήρωση του μαθήματος οι φοιτητές θα αποκτήσουν βασικές γνώσεις στην πρωτοβάθμια λογική που επιτρέπουν την κριτική εμβάθυνση στο επιστημονικό πεδίο της μαθηματικής λογικής, περιλαμβανομένων συστημάτων μεγαλύτερης τάξης.

Οι φοιτητές θα έχουν τη δυνατότητα να μοντελοποιήσουν και επεξεργαστούν προβλήματα με τα εργαλεία της μαθηματικής λογικής. Μεταξύ των δεξιοτήτων που θα αποκτήσουν συμπεριλαμβάνονται ακριβείς μοντελοποιήσεις και η ερμηνεία πραγματικών προβλημάτων στα τυπικά συστήματα της προτασιακής και κατηγορηματικής λογικής, καθώς και αποδείξεις εγκυρότητας, ικανοποιησιμότητας και ισοδυναμίας λογικών προτάσεων και εγκυρότητας λογικών επιχειρημάτων με εργαλεία της μαθηματικής λογικής. Επιπλέον οι φοιτητές θα έχουν την ικανότητα να υλοποιήσουν εφαρμογές έμπειρων συστημάτων και τεχνητής νοημοσύνης μικρής κλίμακας στη γλώσσα προγραμματισμού Prolog.

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

Περιεχόμενα

  • Προτασιακός Λογισμός: Γλώσσα, σύνταξη (syntax) και σημασιολογία (semantics), Μοναδική αναγνωσιμότητα, Λογικοί σύνδεσμοι, απονομές αλήθειας, σημασιολογικές έννοιες, επάρκεια συνδέσμων, διαζευκτική και συζευκτική κανονική μορφή, μετατροπή λογικών εκφράσεων στην φυσική γλώσσα και αντίστροφα, εφαρμογές.
  • Πρωτοβάθμιος κατηγορηματικός λογισμός: Γλώσσα, μεταβλητές, έννοιες ελεύθερης και δεσμευμένης μεταβλητής, αντικατάσταση, αναλογία με τον προγραμματισμό, η έννοια της δομής, ερμηνεία της γλώσσας, μετατροπή λογικών εκφράσεων στην φυσική γλώσσα και αντίστροφα, ορισμός της αλήθειας κατά Tarski.
  • Αποδεικτική θεωρία προτασιακού και κατηγορηματικού λογισμού: Αποδεικτικές διαδικασίες Natural Deduction, Tableaux και Επίλυσης (Resolution), ορθότητα και πληρότητα των διαδικασιών αυτών, επεξεργασία επιχειρημάτων.
  • Εφαρμογές στην Πληροφορική (αρχιτεκτονική υπολογιστών, βάσεις γνώσεων, έμπειρα συστήματα και τεχνητή νοημοσύνη).
  • Εισαγωγή στη γλώσσα προγραμματισμού λογικής για εφαρμογές Τεχνητής Νοημοσύνης Prolog.
  • Προγραμματιστική Εργασία Prolog (έμπειρο σύστημα τουριστικού περιεχομένου).

Προτεινόμενα Συγγράμματα

  • Γ. Μητακίδης (1992): Από τη Λογική στο Λογικό Προγραμματισμό και την Prolog, Εκδόσεις Καρδαμίτσα.
  • Μ. Μαρακάκης (2016): Prolog: Προγραμματισμός σε Λογική για Τεχνητή Νοημοσύνη. Εκδόσεις Νέων Τεχνολογιών.
  • S. Russel, P. Norvig (2004): Τεχνητή Νοημοσύνη: Μία Σύγχρονη Προσέγγιση. Εκδόσεις Κλειδάριθμος.
  • Α. Τζουβάρας (1998): Στοιχεία Μαθηματικής Λογικής. Εκδόσεις Ζήτη.
  • Δ. Πορτίδης, Σ. Ψύλλος, Δ. Αναπολιτάνος (2007): Λογική: Η Δομή του Επιχειρήματος
  • P.D. Magnus: forallx: An Introduction to Formal Logic
  • Mendelson E. (1997): Introduction to Mathematical Logic, 4th Edition, Chapman & Hall.

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Μαθηματική Ανάλυση και Στοιχεία Γραμμικής Άλγεβρας

Μαθησιακά Αποτελέσματα

Στα πλαίσια του μαθήματος διδάσκονται ορισμοί, μαθηματικά αποτελέσματα, θεμελιώδεις μέθοδοι λογισμού και βασικές μέθοδοι εξαγωγής συμπερασμάτων σχετικά  με τα βασικά μαθηματικά εργαλεία ανάλυσης και άλγεβρας που απαντώνται στη θεμελίωση και στην εφαρμογή της επιστήμης των υπολογιστών Το μάθημα υποστηρίζει άμεσα τα περισσότερα αντικείμενα και μαθήματα του προγράμματος σπουδών: Ας σημειωθεί πως κατά τη διάρκεια του μαθήματος συζητούνται συγκεκριμένα παραδείγματα εφαρμογής σε κάποια από τα παραπάνω αντικείμενα με χρήση νέων Τεχνολογιών με τη βοήθεια προγραμμάτων όπως είναι το Matlab και το Octave.

Μετά την επιτυχή παρακολούθηση αυτού του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση:

  • να γνωρίζει, να περιγράφει και να χειρίζεται τις βασικές γνώσεις της Ανάλυσης (ενδεικτικά: ακολουθίες, σειρές, συναρτήσεις μιας μεταβλητής (παραγώγιση, ολοκλήρωση), διαφορικές εξισώσεις) και της Γραμμικής Άλγεβρας (ενδεικτικά: Αλγεβρική δομή, Πίνακες, Ορίζουσες, Γραμμικά Συστήματα, χαρακτηριστικά μεγέθη).
  • Να επιλέγει τις κατάλληλες μαθηματικές έννοιες και να μπορεί να μοντελοποιήσει το εκάστοτε πρόβλημα Πληροφορικής που καλείται να επιλύσει. Επιπλέον να αναπτύσσει μαθηματική σκέψη και να μπορεί να αναλύσει και να προσαρμόσει τις αποκτηθείσες γνώσεις σε εφαρμογές της επιστήμης των υπολογιστών. Έτσι μαθαίνει να αναλύει με τρόπο κριτικό και υπεύθυνο τις ιδέες και τις πληροφορίες για τα στοιχεία εκείνα τα οποία τους αφορούν.
  • Να συνδυάζει τα βασικά συστατικά του Λογισμού και της Άλγεβρας προκειμένου να λύσει πολυπλοκότερα μαθηματικά προβλήματα.
  • Να επιλέγει την κατάλληλη μαθηματική μέθοδο ώστε να επιλύει σύνθετα ή νέα προβλήματα του επιστημονικού πεδίου σπουδών τους, και να αναπτύσσει ολοκληρωμένες, καθώς και δημιουργικές ή καινοτόμες λύσεις και προσεγγίσεις, με τρόπο μεθοδικό και επιστημονικό.
  • Να γνωρίζει, να χειρίζεται και να κατανοεί τα προγράμματα Matlab και Octave πάνω σε εφαρμογές της μαθηματικής Ανάλυσης και γραμμικής άλγεβρας στην επιστήμη των υπολογιστών.

Περιεχόμενα

  • Πραγματικοί αριθμοί και απεικονίσεις
  • Όριο και συνέχεια συνάρτησης
  • Παράγωγος συνάρτησης και εφαρμογές
  • Αόριστο ολοκλήρωμα. Διαφορικές εξισώσεις και εφαρμογές
  • Ορισμένο Ολοκλήρωμα και εφαρμογές
  • Θεωρία Πινάκων-Ορίζουσες πινάκων και ιδιότητες τους. Γραμμικά ομογενή και μη ομογενή συστήματα. Επίλυση με μέθοδο Gauss-μέθοδο Cramer
  • Ομάδες-Δακτύλιοι-Διανύσματα στο επίπεδο και στο χώρο. Διανυσματικοί χώροι, ορισμός και ιδιότητες-διανυσματικός υπόχωρος και βάσεις διανυσματικών χώρων.
  • Γραμμικές απεικονίσεις, ορισμός πυρήνα γραμμικής απεικόνισης και πεδίο τιμών αυτής.
  • Ακολουθίες πραγματικών αριθμών. Ορισμός ακολουθίας, μονοτονία ακολουθίας και σύγκλιση αυτής. Σειρές πραγματικών αριθμών και ιδιότητες σύγκλισης

Προτεινόμενα Συγγράμματα

  • Μ. Φιλιππάκης, Εφαρμοσμένη ανάλυση και στοιχεία γραμμικής άλγεβρας, Εκδόσεις Τσότρας, Β έκδοση, Αθήνα 2017
  • Χ. Μωυσιάδης, Ανώτερα Μαθηματικά
  • Σημειώσεις διδάσκοντα

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Λειτουργικά Συστήματα

Μαθησιακά Αποτελέσματα

Ο σκοπός του μαθήματος είναι η εξοικείωση των φοιτητών με τις βασικές έννοιες των λειτουργικών συστημάτων, τις αρχές σχεδίασής τους, τα θέματα που διαχειρίζονται και η επίδρασή των διαφόρων παραλλαγών τους στη λειτουργία των συστημάτων.

Σ’ αυτό το πλαίσιο, οι μαθησιακοί στόχοι του μαθήματος είναι, μετά από την επιτυχημένη ολοκλήρωση του μαθήματος, ο/η φοιτητής/τρια να είναι ικανός/η:

  • να κατανοεί τις βασικές έννοιες των λειτουργικών συστημάτων καθώς και τους βασικούς τομείς / δυσκολίες λειτουργίας ενός υπολογιστικού συστήματος που καλούνται να διαχειριστούν.
  • να γνωρίζει τους βασικούς μηχανισμούς που υλοποιεί ένα λειτουργικό σύστημα για την εξυπηρέτηση πολλαπλών διεργασιών, για τη διαχείριση της μνήμης και τη διαχείριση των αρχείων ενός συστήματος.
  • να αναλύει, να αξιολογεί και να τεκμηριώνει εναλλακτικές τεχνολογίες/μηχανισμούς λειτουργικών συστημάτων.

Περιεχόμενα

    • Βασικές Έννοιες και Ιστορία των Λειτουργικών Συστημάτων.
    • Δομή Λειτουργικών Συστημάτων.
    • Διεργασίες: Ιδιότητες και Υλοποίηση Διεργασιών, Διαδιεργασιακή Επικοινωνία, Χρονοπρογραμματισμός Διεργασιών.
    • Χρήση και Υλοποίηση Νημάτων, Αναδυόμενα Νήματα, Μετατροπή Μονονηματικού Κώδικα σε Πολυνηματικό, Χρονοπρογραμματισμός Νημάτων.
    • Αδιέξοδα: Ο Αλγόριθμος της Στρουθοκαμήλου, Ανίχνευση, Ανάκαμψη, Αποφυγή, Πρόληψη.
    • Διαχείριση Μνήμης: Εικονική Μνήμη, Σχεδίαση και Υλοποίηση Μηχανισμών Σελιδοποίησης, Αλγόριθμοι Αντικατάστασης Σελίδων, Τμηματοποίηση.
    • Είσοδος/Έξοδος: Υλικό και Λογισμικό Εισόδου-Εξόδου, Δίσκοι, Τερματικά.
    • Συστήματα Αρχείων: Αρχεία και Κατάλογοι, Υλοποίηση.

Επιπλέον, στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.

Προτεινόμενα Συγγράμματα

  • Andrew S. Tanenbaum, Herbert Bos (2018), Σύγχρονα Λειτουργικά Συστήματα, 4η Αμερικανική Έκδοση (μεταφρασμένο), ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ.
  • Silberschatz, Galvin, Gagne (2013), Λειτουργικά Συστήματα, 9η έκδοση (μεταφρασμένο), Χ. ΓΚΙΟΥΡΔΑ & ΣΙΑ.

Πρόσθετη βιβλιογραφία

Στο σύστημα ΕΥΔΟΞΟΣ αναρτώνται σε ηλεκτρονική μορφή χρήσιμες πληροφορίες καθώς και ασκήσεις για την εξάσκηση των φοιτητών/τριών.