Skip to main content

Undergraduate Programmes

Πτυχίο Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής

Δομή και περιεχόμενο

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

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

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

Σχολές

Σχολή Μηχανικής και Τεχνολογίας

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής

Προγράμματα Σπουδών

Προπτυχιακές Σπουδές

Πτυχίο Πληροφορικής και Μηχανικών Ηλεκτρονικών Υπολογιστών

Παρουσίαση του προγράμματος

 

580100_100____________.pdf

ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ - ΠΤΥΧΙΟ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ 

ΜΑΘΗΜΑΤΑ

ΑΡΙΘΜΟΣ

ECTS

ΥΠΟΧΡΕΩΤΙΚΑ ΜΑΘΗΜΑΤΑ

35

188

ΤΜΗΜΑΤΙΚΗ ΕΠΙΛΟΓΗ

4

20

ΕΠΙΛΟΓΗ ΣΤΟ ΤΟΜΕΑ ΤΗΣ ΜΗΧΑΝΙΚΗΣ

2

10

ΕΛΕΥΘΕΡΗΣ ΕΠΙΛΟΓΗΣ

3

15

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ Ι & ΙΙ

2

15

ΣΥΝΟΛΟ

46

248

Τμηματική Επιλογή Ι

ΕΕΝ 318  Ψηφιακή Επεξεργασία Σήματος

EEN 214  Ηλεκτρονική Ι

EEN 215  Εργαστήριο Ηλεκτρικών Κυκλωμάτων ΙΙ

Τμηματική Επιλογή ΙΙ

CSE 461  Συστήματα για Μηχανική Μάθηση Μεγάλης Κλίμακας

CSE 470  Τεχνικές Σχεδίασης Ολοκληρωμένων Κυκλωμάτων

Τμηματική Επιλογή III

CSE 471  Βαθιά Μάθηση I

CSE 463 Προχωρημένα Θέματα Τεχνολογίας Λογισμικού

Τμηματική Επιλογή IV

CSE 466  Προχ. Αρχιτεκτονική και Παράλληλοι Υπολογιστές

CSE 467  Κλιμακώσιμα Συστημάτων Επεξεργασίας Δεδομένων

CSE 472 Βαθιά Μάθηση II

Άλλες Τμηματικές Επιλογές

EEN 413 Φωτονική

EEN 442 Συστήματα Ισχύος ΙΙ

EEN 443 Ηλεκτρονικά Ισχύος

EEN 445 Ανανεώσιμες Πηγές Ενέργειας

Επιλογές Μηχανικής

Οι φοιτητές μπορούν να εγγραφούν σε μαθήματα που προσφέρονται από τη Σχολή Μηχανικής και Τεχνολογίας με την έγκριση του τμήματος Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ και Πληροφορικής.

Ελεύθερες Επιλογές

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

Semester Modules
1ο Εξάμηνο

ECTS

EEI 101
Προχωρημένα Μαθηματικά I
5
EEI 102
Φυσική Ι
6
CSE 121
Ηλεκτρικά και Ηλεκτρονικά Κυκλώματα
6
EEI 132
Εισαγωγή στον Υπολογισμό και τον Προγραμματισμό (C)
6
CSE 120
Θεμελιώσεις της Ηλεκτρολογίας και της Μηχανικής Η/Υ και Πληροφορικής
6
LCE 115
Αγγλικά για Πληροφορική και Μηχανικούς Υπολογιστών Ι
4
Total
33
2ο Εξάμηνο

ECTS

EEI 103
Προχωρημένα Μαθηματικά ΙΙ
5
EEI 104
Γραμμική Άλγεβρα
5
CSE 122
Ψηφιακή Λογική
5
EEI 133
Αντικειμενοστρεφής Μεθοδολογία και Προγραμματισμός (C++)
6
LCE 116
Αγγλικά για Πληροφορική και Μηχανικούς Υπολογιστών II
4
Ελεύθερη Επιλογή
5
Total
30
3ο Εξάμηνο

ECTS

EEI 203
Εισαγωγή στη Βιολογία
5
CSE 221
Διακριτά Μαθηματικά
5
CSE 222
Αρχές Γλωσσών Προγραμματισμού και Μεταγλωττιστές
6
CSE 223
Ανάλυση και Σχεδιασμός Πληροφοριακών Συστημάτων
5
CSE 224
Δομές Δεδομένων και Αλγόριθμοι
5
CSE 225
Λειτουργικά Συστήματα
5
Total
31
4ο Εξάμηνο

ECTS

CSE 226
Αλγόριθμοι και Πολυπλοκότητα
5
CSE 227
Προχωρημένη Αντικειμενοστρεφής Μεθοδολογία και Προγραμματισμός (UML, Java)
6
CSE 228
Προγραμματισμός Συστημάτων
5
EEI 231
Σήματα και Συστήματα
6
CSE 229
Βιοπληροφορική
6
EEI 233
Οργάνωση Υπολογιστών
6
Total
34
5ο Εξάμηνο

ECTS

CSE 321
Δίκτυα και Επικοινωνίες Υπολογιστών
5
CSE 322
Εργαστήριο Δικτύων Υπολογιστών και Επικοινωνιών
4
CSE 323
Αρχιτεκτονική Υπολογιστών
6
CSE 324
Τεχνολογία Λογισμικού
5
CSE 325
Βάσεις Δεδομένων
5
EEI 331
Θεωρία Πιθανοτήτων και Στοχαστικές Ανελίξεις
5
Total
30
6ο Εξάμηνο

ECTS

CSE 326
Μηχανική Ιστού
6
CSE 327
Παράλληλη Επεξεργασία και Κατανεμημένα Συστήματα
6
CSE 328
Εργασία Τεχνολογίας Λογισμικού και Επαγγελματική Πρακτική
7
CSE 329
Στατιστική Αναγνώριση Προτύπων και Μηχανική Μάθηση
6
Τμηματική Επιλογή Ι
5
Total
30
7ο Εξάμηνο

ECTS

CSE 421
Διπλωματική Εργασία Ι
5
CSE 423
Εισαγωγή στην Κρυπτογραφία και Ασφάλεια Υπολογιστών
5
Τμηματική Επιλογή ΙΙ
5
Τμηματική Επιλογή ΙΙΙ
5
Επιλογή στον Τομέα Μηχανικής
5
Ελεύθερη Επιλογή
5
Total
30
8ο Εξάμηνο

ECTS

CSE 422
Διπλωματική Εργασία ΙΙ
10
Τμηματική Επιλογή IV
5
CSE 473
Εισαγωγή στην Επιστήμη Δεδομένων
5
Επιλογή στον Τομέα Μηχανικής
5
Ελεύθερη Επιλογή
5
Total
30
Entrance Exams
ΥΠΟΧΡΕΩΤΙΚΑ

(3)

Νέα Ελληνικά
Μαθηματικά
Φυσική
ΕΠΙΛΕΓΟΜΕΝΑ

(1)

Χημεία
Βιολογία
Πληροφορική
Ελεύθερο - Προοπτικό Σχέδιο
Αρχιτεκτονικό-Τεχνικό Σχέδιο ή Αρχιτεκτονικό Σχέδιο Τ.Σ. (Θ.Κ.)
Σχεδιασμός και Τεχνολογία ή Τεχνολογία Τ.Σ. (Θ.Κ.)
Employment prospects

Προοπτικές Απασχόλησης

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

Περιγραφές Μαθημάτων
CSE 120 Θεμελιώσεις της Ηλεκτρολογίας, της Πληροφορικής και της Μηχανικής Υπολογιστών

Στόχοι Μαθήματος: Εισαγωγή, παρουσίαση και συζήτηση για τους θεμελιώδεις νόμους, και αξιώματα της Ηλεκτρολογίας, της Πληροφορικής και της Μηχανικής Υπολογιστών. Το μάθημα έχει σκοπό να εισαγάγει στους φοιτητές τις βασικές θεωρίες πάνω στις οποίες στηρίζονται τα δυο παραπάνω πεδία και να τους δώσει την ευκαιρία να παρουσιάσουν και αναπτύξουν τις δικές τους ιδέες για λύση διαφόρων προβλημάτων που αντιμετωπίζει το επιστημονικό αυτό αντικείμενο. Κατά την διάρκεια των μαθημάτων γίνεται μια εισαγωγή σε αντικείμενα όπως θεμελιώδης γνώσεις μηχανικής, θεμελιώδη μεγέθη και μονάδες μέτρησης, ιστορία και εξέλιξη της ηλεκτρολογίας, εισαγωγή στην επεξεργασία σημάτων, αναλογικά και ψηφιακά μεγέθη, πηγές ηλεκτρικής ενέργειας και απλή συνδεσμολογία κυκλωμάτων, παραγωγή ηλεκτρικής ενέργειας στη Κύπρο, ηλεκτρικές εγκαταστάσεις, γειώσεις ηλεκτρικών συσκευών και κυκλωμάτων, ηλεκτροπληξία, εισαγωγή στα ηλεκτρικά κυκλώματα και απλές συνδεσμολογίες, στατιστική, στατιστική ανάλυση σημάτων. Επίσης γίνονται παρουσιάσεις από όλους τους φοιτητές σε επιλεγμένα αντικείμενα των δικών τους ενδιαφερόντων.

Μαθησιακά Αποτελέσματα: Εισαγωγή στις βασικές αρχές της ηλεκτρολογίας, βιοτεχνολογίας σε συνδυασμό βασικών αρχών της μηχανικής και της Πληροφορικής και της Μηχανικής Υπολογιστών και σε προβλήματα και προκλήσεις που αντιμετωπίζει ο κλάδος. Κατανόηση των βασικών αρχών, και αξιωμάτων ηλεκτρολογίας και του τρόπου δημιουργίας, διαχείρισης, μεταφοράς και αξιοποίησης ενέργειας. Ιστορία της ηλεκτρολογίας, βασικά ηλεκτρικά κυκλώματα, παραγωγή ηλεκτρικής ενεργείας, ηλεκτρικές εγκαταστάσεις, γείωση και στατιστική.

Περιεχόμενο Μαθήματος: Παρουσιάσεις μπορούν να γίνουν σε διάφορα θέματα (δίνονται μερικά παρακάτω): 1) Ηλεκτρικά και αυτόνομα αυτοκίνητά, 2) Ανανεώσιμες πηγές ενεργείας, 3) Ηλιακή ενέργεια, ανανεώσιμες πήγες ενεργείας, 4) Τα μεγάλα ερωτήματα για τα G5, 5) Η εξέλιξη των αυτοκινήτων και οι συνέπειες στο περιβάλλον, 6) Arduino, χρήσης και εφαρμογές, 7) Επεξεργασία και ανάλυση προσώπου για διαπίστωση των συναισθημάτων, 8) Εικονική πραγματικότητα, 9) Η διαχείριση των πληροφοριών μέσα από την επιστήμη της πληροφορικής και του διαδικτύου, 10) Κβαντικός υπολογιστής, 11) Ιατρική και τεχνολογία, 12) Τηλεϊατρική, μεταφορά αποθήκευση, συμπίεση, επεξεργασία, ανάλυση δεδομένων, 13) Επεξεργασία σήματος και εικόνας για ιατρική αποτίμηση, 14) Το χειρουργείο του μέλλοντος.

CSE 121 Ηλεκτρικά και Ηλεκτρονικά Κυκλώματα

Στόχοι Μαθήματος: Η ανάπτυξη της θεωρίας της ανάλυσης των Ηλεκτρικών και Ηλεκτρονικών Κυκλωμάτων (με τη βοήθεια χαρακτηριστικών παραδειγμάτων) με μια συστηματική και απλή διαδικασία με τρόπο που τα γενικά προβλήματα Ηλεκτρολογίας και Ηλεκτρονικής να γίνονται κατανοητά και να προσεγγίζονται με εύκολο και παράλληλα σωστό τρόπο.

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

Περιεχόμενο Μαθήματος: Νόμος του Ohm, Διαιρέτης Τάσης, Διαιρέτης έντασης, Νομοί του Kirchhoff (Νόμος Ρευμάτων και Νόμος Τάσεων), Θεωρήματα και Ανάλυση Κυκλωμάτων, Ηλεκτρική Ισχύς και Μεγίστη Μεταφορά Ισχύος, Κατασκευή και λειτουργία Διόδου, Διπολικού Τρανζίστορ Επαφής, Τρανζίστορ Φαινομένου Πεδίου (JFET, MOSFET και νεότεροι τύποι), Πόλωσης, Σταθερότητα πόλωσης, διακοπτικά χαρακτηριστικά, καθυστερήσεις διάδοσης. Ενίσχυση. Κυκλώματα και τοπολογίες πυλών (BJT, NMOS, CMOS και νεότεροι τύποι): χαρακτηριστική μεταφοράς ιδανικών και πραγματικών πυλών, στάθμες εισόδου-εξόδου Βασικές οικογένειες λογικών κυκλωμάτων. Τελεστικοί Ενισχυτές. Ιδανικός Τελεστικός Ενισχυτής. Απλές  Εφαρμογές  Συγκριτής, φίλτρα. Μετατροπείς από Ψηφιακό σε Αναλογικό (DAC) και από Αναλογικό σε Ψηφιακό (ADC), Σύστημα Δειγματοληψίας (SAH).

CSE 122 Ψηφιακή Λογική

Στόχοι Μαθήματος: Να παρέχει στους φοιτητές βασικές γνώσεις στα ψηφιακά συστήματα (digital systems), γύρω από την ανάλυση, προδιαγραφή, λειτουργία, σχεδίαση και υλοποίηση τους. Επίσης να παρέχει γνώσεις ψηφιακής σχεδίασης (digital design) με εργαλεία αυτοματοποίησης της σχεδίασης και γλώσσες περιγραφής υλικού, με συμπληρωματικές γνώσεις στις βασικές έννοιες ψηφιακής σχεδίασης, μέσω ενός συνδυασμού διαλέξεων, ασκήσεων και εργαστηρίων.

Μαθησιακά Αποτελέσματα: Το μάθημα ασχολείται με την ανάλυση και σχεδίαση ψηφιακών συστημάτων. Ειδικότερα εξετάζονται τα αριθμητικά συστήματα η άλγεβρα Bool και η ελαχιστοποίηση λογικών συναρτήσεων. Καλύπτονται οι ψηφιακές πύλες, flip flops, συνδυαστικά και ακολουθιακά ψηφιακά κυκλώματα, τύποι καταχωρητών, λογικές και μαθηματικές ψηφιακές μονάδες. Γίνεται εισαγωγή στη γλώσσα περιγραφής και ανάπτυξης υλικού Verilog και στα εργαλεία αυτοματοποίησης της ψηφιακής σχεδίασης για την υλοποίηση ψηφιακών κυκλωμάτων σε ψηφιακά κυκλώματα πολύ μεγάλης ολοκλήρωσης (Very Large Scale Integration – VLSI).

Περιεχόμενο Μαθήματος: Το μάθημα βασίζεται στα βασικά στοιχεία της σχεδίασης λογικών κυκλωμάτων και έχει ως κύριους στόχους: (1) την εισαγωγή στη σχεδίαση συνδυαστικών και ακολουθιακών ψηφιακών κυκλωμάτων, (2) τη χρήση της γλώσσας περιγραφής υλικού Verilog για την μοντελοποίηση και την εξομοίωση τους καθώς και την υλοποίηση τους, (3) την υλοποίηση ψηφιακών συστημάτων σε προγραμματιζόμενες λογικές διατάξεις (CPLDs και FPGAs), (4) την απόκτηση εμπειρίας στον πλήρη κύκλο της διαδικασίας σχεδιασμού, εξομοίωσης και υλοποίησης ψηφιακών συστημάτων με χρήση σύγχρονων εργαλείων σε υπολογιστή μέσω των εργαστηριακών ασκήσεων. Καλύπτονται οι εξής ενότητες-κεφάλαια: (1) Αριθμητικά Συστήματα (Ψηφιακά συστήματα, Δυαδικοί αριθμοί, Μετατροπές αριθμών σε μορφές άλλης βάσης, Συμπληρώματα, Προσημασμένοι δυαδικοί αριθμοί, Καταχωρητές και δυαδική λογική), (2) Άλγεβρα Boole (Ορισμοί, βασικά θεωρήματα και ιδιότητες, Συναρτήσεις Boole, Κανονικές και πρότυπες μορφές, Λογικές πύλες, Ψηφιακά ολοκληρωμένα κυκλώματα, οικογένειες ψηφιακής λογικής (TTL, ECL, MOS και συμπληρωματικό MOS-CMOS), επίπεδα ολοκλήρωσης), (3) Ελαχιστοποίηση Λογικών Συναρτήσεων (Μέθοδος του χάρτη Καρνώ, Κανόνες για τους χάρτες, Χάρτης Καρνώ τεσσάρων και πέντε μεταβλητών, Απλοποίηση γινομένου αθροισμάτων, Υλοποίηση με πύλες NAND και NOR, Συνθήκες αδιαφόρου τιμής, Συνάρτηση XOR και κυκλώματα ανίχνευσης και διόρθωσης λαθών), (4) Συνδυαστική Λογική (Διαδικασία ανάλυσης και σχεδιασμού συνδυαστικών κυκλωμάτων, Δυαδικοί αθροιστές και αφαιρέτες, Δυαδικοί πολλαπλασιαστές, Συγκριτές μεγέθους, Κωδικοποιητές/Αποκωδικοποιητές, Πολυπλέκτες), (5) Σύγχρονη Ακολουθιακή Λογική  (Μανδαλωτές (Latches) και Flip-Flops, Ανάλυση ακολουθιακών κυκλωμάτων με ρολόι, Ελαχιστοποίηση και κωδικοποίηση καταστάσεων, Συγκριτές μεγέθους, Κωδικοποιητές και Αποκωδικοποιητές, Διαδικασία σχεδίασης με Flip-Flop), (6) Καταχωρητές, Μετρητές, Μνήμες και Προγραμματιζόμενη Λογική  (Καταχωρητές/Καταχωρητές ολίσθησης, Μετρητές ριπής (Ripple counters), σύγχρονοι μετρητές, άλλοι τύποι μετρητών, Μνήμη ανάγνωσης μόνο (ROM), Μνήμη τυχαίας προσπέλασης (RAM), Αποκωδικοποίηση μνήμης, Ανίχνευση και διόρθωση λαθών, PLA, PAL, ακολουθιακές PLD (SPLD), CPLD, FPGA), (7) Ασύγχρονη Ακολουθιακή Λογική  (Διαδικασία ανάλυσης, Κυκλώματα με μανδαλωτές, Διαδικασία σχεδιασμού, Ελαχιστοποίηση πινάκων κατάστασης και ροής, Κωδικοποίηση καταστάσεων για αποφυγή κυνηγητών, Σπινθήρες), (8) Γλώσσες Περιγραφής Υλικού (HDL) και Εργαλεία Αυτοματοποίησης της Σχεδίασης (EDA) (Βασικές έννοιες, Verilog για συνδυαστικά κυκλώματα, Verilog για ακολουθιακά κυκλώματα, Σχεδίαση σε επίπεδο μεταφοράς καταχωρητών (RTL), Μηχανές πεπερασμένων καταστάσεων (FSM), Ανάλυση και σχεδίαση top-down, Προσομοίωση και επαλήθευση κυκλωμάτων, λογική σύνθεση, θέση και δρομολόγηση), Αντιστοίχιση τεχνολογίας και βιβλιοθήκες στοιχείων, ολοκληρωμένα κυκλώματα πλήρως προσαρμοσμένα (full-custom), τυποποιημένων στοιχείων (semi-custom) και ολοκληρωμένα με συστοιχίες πυλών (gate-arrays).

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

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

Μαθησιακά Αποτελέσματα: Απόκτηση επιπλέον σημαντικού υπόβαθρου για χρήση σε εφαρμογές στην Πληροφορική.

Περιεχόμενο Μαθήματος: Μαθηματική λογική, προτάσεις, κατηγορήματα, συμπερασματολογικοί κανόνες, Εισαγωγή στις αποδεικτικές μεθόδους, Ακολουθίες, αρχές επαγωγής, θεωρία αναδρομών, Θεωρία των συνόλων, Σχέσεις, συναρτήσεις, σχέσεις ισοδυναμίας, Άλγεβρα του Boole και εφαρμογές, Συνδυαστική, μεταθέσεις, συνδυασμοί, Αλγόριθμοι, θεμελιώδεις αρχές, αποδοτικότητα, Συστήματα αρίθμησης, Γράφοι, διαδρομές, αλγόριθμοι, δέντρα, παράγον δέντρο.

CSE 222 Αρχές Γλωσσών Προγραμματισμού και Μεταγλωττιστών

Στόχοι Μαθήματος: Το μάθημα αυτό αποτελεί μια εισαγωγή στις διάφορες φάσεις μεταγλωττισμού μιας γλώσσας προγραμματισμού. Γίνεται αναφορά στις κύριες έννοιες των γλωσσών προγραμματισμού με στόχο την επεξήγηση των φάσεων που ακολουθεί ένας μεταγλωττιστής για να μετατρέψει ένα πηγαίο πρόγραμμα στην γλώσσα μηχανής. Ως εκ τούτου ασχολείται με την λεκτική, συντακτική, σημασιολογική ανάλυση μιας αρχικής γλώσσας προγραμματισμού και την μετατροπή της σε ενδιάμεσο κώδικα και τελική γλώσσα. Τα εργαλεία flex και bison χρησιμοποιούνται για πρακτική εφαρμογή και ανάπτυξη μικρών λεκτικών αναλυτών και συντακτικών αναλυτών αντίστοιχα.

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος, οι επιτυχημένοι φοιτητές πρέπει να είναι σε θέση να: (1) Να εξηγήσουν πώς η ανάλυση, οι κανονικές εκφράσεις και οι γλώσσες λειτουργούν με την εφαρμογή των λεκτικών αναλυτών. (2) Να εξηγήσουν την ανάλυση σύνταξης, την ανάλυση από πάνω προς τα κάτω και από κάτω προς τα πάνω, την εφαρμογή συντακτικών αναλυτών. (3) Να εξερευνήσουν τον τρόπο λειτουργίας της σημασιολογικής ανάλυσης και της δημιουργίας ενδιάμεσου κώδικα. (4) Να εξηγήσουν θέματα σχετικά με την οργάνωση της μνήμης και το περιβάλλον εκτέλεσης (περιβάλλον χρόνου εκτέλεσης), την κατανομή καταχωρητών και τη δημιουργία και βελτιστοποίηση του τελικού κώδικα. (5) Να υλοποιήσουν έναν απλό μεταγλωττιστή για τον επεξεργαστή MIPS. Η υλοποίηση αυτή θα πραγματοποιηθεί μέσω της γλώσσας C και των εργαλείων Flex και Bison.

Περιεχόμενο Μαθήματος: 1η εβδομάδα: Εισαγωγή, Γλώσσες προγραμματισμού, Μεταγλωττιστές, Αναγκαιότητα και ιστορική αναδρομή, Είδη μεταγλωττιστών και συναφή εργαλεία, Βασική δομή ενός μεταγλωττιστή. 2η εβδομάδα: Τυπικές γλώσσες, Γεννητικά και αναγνωριστικά μοντέλα, Γραμματικές, Ιεραρχία Chomsky, Αναγνωριστές, Κανονικές γλώσσες, Κανονικές εκφράσεις, Πεπερασμένα αυτόματα. 3η εβδομάδα: Λεκτική ανάλυση, Διαγράμματα μετάβασης, Κατασκευή του λεκτικού αναλυτή. 4η εβδομάδα: Γλώσσες χωρίς συμφραζόμενα, Διφορούμενες γλώσσες, Τρόποι παράσταστασης γλωσσών χωρίς συμφραζόμενα. 5η εβδομάδα: Συντακτική ανάλυση, αναλυτής από κάτω προς τα πάνω. 6η εβδομάδα: Ανάκτηση από σφάλματα, χρήση μεταγλωττιστών για τη δημιουργία συντακτικών αναλυτών. 7η εβδομάδα: Ενδιάμεση εξέταση, 8η εβδομάδα: Συντακτική ανάλυση, Βοηθητικές έννοιες, υπολογισμός FIRST και FOLLOW, Ανοδικοί και καθοδικοί συντακτικοί αναλυτές, Ανοδική συντακτική ανάλυση. 9η εβδομάδα: Σημασιολογική ανάλυση, Στατική σημασιολογία, Δυναμική σημασιολογία, Σημασιολογικός έλεγχος, Έλεγχος τύπων, Εξαγωγή τύπων, Κατηγορικές γραμματικές, Πίνακας συμβόλων. 10η εβδομάδα: Παραγωγή ενδιάμεσου κώδικα, Μορφές ενδιάμεσων γλωσσών, Η γλώσσα των τετράδων, Τελούμενα, Τελεστές. 11η εβδομάδα: Παραγωγή ενδιάμεσου κώδικα, Ένα απλό σχέδιο παραγωγής τετράδων, Αριθμητικές εκφράσεις, Λογικές εκφράσεις, Απλές εντολές, Σύνθετη εντολή, Εντολή if, Εντολή while, Κλήση υποπρογραμμάτων. 12η εβδομάδα: Παραγωγή τελικού κώδικα. 13η εβδομάδα: Βελτιστοποίηση κώδικα, Τεχνικές βελτιστοποίησης κώδικα. 14η εβδομάδα:  Επανάληψη-Προετοιμασία για την τελική εξέταση.

CSE 223 Ανάλυση και Σχεδιασμός Πληροφοριακών Συστημάτων

Στόχοι Μαθήματος: Αξιοποίηση της Ανάλυσης και Σχεδιασμού συστημάτων ώστε να καταστεί αποτελεσματικό εργαλείο ανάπτυξης Πληροφοριακών Συστημάτων. Γνωριμία και κατανόηση των δραστηριοτήτων που περιλαμβάνουν οι φάσεις της Ανάλυσης και Σχεδιασμού συστημάτων, και πώς αυτές καθοδηγούν τη μετέπειτα  υλοποίησή τους. Θεωρητική και πρακτική εξοικείωση αναφορικά με θέματα Διαχείρισης Έργων, το ρόλο και τα καθήκοντα του Αναλυτή Συστημάτων, τις ευθύνες του, όπως επίσης και με τη στελέχωση και οργάνωση της ομάδας εργασίας για την ανάπτυξη συστημάτων. Κατανόηση των διαφόρων σταδίων του κύκλου ζωής ενός Πληροφοριακού Συστήματος και της σημαντικότητας του καθενός.

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

Περιεχόμενο Μαθήματος: Μελέτη της θεωρίας των συστημάτων και ο τρόπος χρησιμοποίησης της για τη σχεδίαση και την ανάπτυξη συστημάτων πληροφορικής. Μελέτη των διαφόρων φάσεων για τη συστηματική ανάλυση, σχεδίαση, εκπόνηση και υλοποίηση ενός πληροφοριακού συστήματος.              Γίνεται αναφορά και πρακτική εξάσκηση σε γνωστικά αντικείμενα όπως διεύθυνση έργου, επικοινωνία, ανεύρεση δεδομένων και μελέτη σκοπιμότητας. ΕΝΟΤΗΤΕΣ - ΚΕΦΑΛΑΙΑ (1) Οι Εμπλεκόμενοι στην Ανάλυση Συστημάτων (2) Δομικά Στοιχεία Πληροφοριακών Συστημάτων (3) Ανάπτυξη Πληροφοριακών Συστημάτων (4) Διαχείριση Έργων (5) Ανάλυση Συστημάτων (6) Ανάλυση Απαιτήσεων (7) Μοντελοποίηση Δεδομένων (8) Μοντελοποίηση Διαδικασιών (9) Πρόταση Συστήματος (10) Σχεδιασμός Συστήματος (11) Αρχιτεκτονική Εφαρμογών Λογισμικού και Μοντελοποίηση (12) Σχεδιασμός Διαπροσωπείας Χρήστη.

CSE 224 Δομές Δεδομένων και Αλγόριθμοι

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

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν να: (1) Περιγράφουν και να υλοποιούν σε Python βασικές δομές δεδομένων και αλγόριθμους. (2) Υλοποιούν προγραμματιστικές τεχνικές που απαντώνται συχνά στη λύση αλγοριθμικών προβλημάτων. (3) Αναλύουν την πολυπλοκότητα αλγορίθμων και να εκτιμούν το υπολογιστικό κόστος των αλγορίθμων. (4) Επιλέγουν τις κατάλληλες δομές δεδομένων και αλγόριθμους για την επίλυση συγκεκριμένων προγραμματιστικών προβλημάτων. (5) Συνδυάζουν αλγόριθμους και δομές δεδομένων για την επίλυση πολύπλοκων υπολογιστικών προβλημάτων.

Περιεχόμενο Μαθήματος: Ανάλυση Αλγορίθμων, Προγραμματισμός σε Python και Αντικειμενοστραφείς Προγραμματισμός, Αναδρομή, Πίνακες, Στοίβες (Stacks), Ουρές (Queues), Συνδεδεμένες Λίστες (Linked List), Δέντρα και Δυαδικά Δέντρα, Ουρές Προτεραιότητας και Σωροί (Heaps), Χάρτες (Maps), Λεξικά (Dictionaries), Πίνακες Κατακερματισμού (Hash Maps), Σύνολα, Δέντρα Αναζήτησης και AVL Δέντρα, Δέντρα Splay, Δέντρα (2,4), Ταξινόμηση και Επιλογή, Γράφοι και Αλγόριθμοι Συντομότερου Μονοπατιού.

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

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

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

Περιεχόμενο Μαθήματος: Η ύλη περιλαμβάνει 4 ενότητες: Ενότητα 1: Εισαγωγή: Εισαγωγικές  έννοιες,  ιστορική αναδρομή και εξέλιξη των λειτουργικών συστημάτων. Γενική δομή, λειτουργίες και χαρακτηριστικά ενός λειτουργικού συστήματος. Δομή του λειτουργικού συστήματος.  Βασικές λειτουργίες: χειρισμός συσκευών, παροχή υπηρεσιών στον χρήστη, αντιμετώπιση σφαλμάτων, συντονισμός διεργασιών. Ενότητα 2:  Διαχείριση διεργασιών – Process Management: A. Tι είναι διεργασία (process). Χρονοδρομολόγηση διεργασιών (process scheduling). Επικοινωνία μεταξύ διεργασιών (interprocess communication). Επικοινωνία σε Client-Server Systems. B. Νήματα (threads)  και Πολυνηματικές Διεργασίες (Multithreading Models) C. Χρονοδρομολόγηση (CPU Scheduling), Επίπεδα, στόχοι και κριτήρια των μηχανισμών χρονοδρομολόγησης. Πρόωρη (preemptive) και αποκλειστική (nonpreemptive) χρονοδρομολόγηση. Προτεραιότητες (priorities). Αλγόριθμοι χρονοδρομολόγησης D. Συγχρονισμός διεργασιών (process synchronization). Συνθήκες ανταγωνισμού (race conditions). Κρίσιμες περιοχές διεργασιών (critical regions). Αμοιβαίος αποκλεισμός (mutual exclusion). Επικοινωνία μεταξύ διεργασιών (interprocess communication). E. Tο πρόβλημα του αδιέξοδου (deadlock) και της συνεχούς αναβολής (indefinite postponement). Τρόποι χειρισμού του αδιέξοδου. Αιτίες δημιουργίας αδιέξοδου και παραδείγματα. Ικανές συνθήκες για δημιουργία αδιέξοδου. Ενότητα 3: Διαχείριση πραγματικής και ιδεατής μνήμης (real and virtual memory management). A.              Διαχείριση μνήμης (main memory). Αλγόριθμοι τοποθέτησης. Απλή σελιδοποίηση (paging) και swapping. B. Iδεατή μνήμη (virtual memory). Σελιδοποίηση ιδεατής μνήμης. Frames. Thrashing. Ενότητα 4: Διαχείριση Αποθήκευσης (Storage management) A. Διαχείριση αρχείων (file management). Διαδικασίες με αρχεία: δημιουργία, διάβασμα, γράψιμο, επαναφορά, διαγραφή. Σύστημα αρχείων και στόχοι: μέθοδοι προσπέλασης (access methods), διαχείριση αρχείων και περιφερειακής μνήμης, μηχανισμοί ακεραιότητας (integrity mechanisms). Οργάνωση αρχείων. Κατάλογος αρχείων (directory). Οργάνωση καταλόγων. Τρόποι παροχής μνήμης (memory allocation) για αποθήκευση αρχείων. B. Διαχείριση συσκευών Εισόδου-Εξόδου (Mass Storage Structure and  I/O Systems). Στόχοι της διαχείρισης συσκευών Ι/Ο: ανεξαρτησία από την κωδικοποίηση χαρακτήρων (character code independence), ανεξαρτησία από την συσκευή (device independence), αποδοτικότητα (efficiency) και ομοιόμορφος χειρισμός συσκευών (uniform treatment of devices). Χρήση ενδιάμεσης μνήμης (buffering). Παράμετροι απόδοσης εισαγωγής/εξαγωγής δεδομένων σε/από δίσκο: χρόνος αναζήτησης (seek), χρόνος μεταφοράς (latency), επιβράδυνση περιστροφής (rotational delay). Στρατηγικές βελτιστοποίησης χρόνου αναζήτησης. Χρήση κρυφής μνήμης (cache memory).

CSE 226 Αλγόριθμοι και Πολυπλοκότητα

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

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

Περιεχόμενο Μαθήματος: Το μάθημα καλύπτει τα εξής θέματα: ανάλυση αλγορίθμων, ο ασυμπτωτικός συμβολισμός, οι αναδροµικές σχέσεις, οι αλγόριθμοι διαίρει και κυρίευε, ο δυναμικός προγραμματισμός, οι άπληστοι αλγόριθμοι, η αναπαράσταση γραφημάτων, η αναζήτηση σε γραφήματα, τα ελαφρύτατα συνδετικά δένδρα, οι ελαφρύτατες διαδρομές, η μέγιστη ροή δικτύων, η NP-πληρότητα, και οι προσεγγιστικοί αλγόριθμοι.

CSE 227 Προχωρημένη Αντικειμενοστρεφής Μεθοδολογία και Προγραμματισμός (UML, Java)

Στόχοι Μαθήματος: Το μάθημα αποσκοπεί να προσφέρει στους φοιτητές μια ολοκληρωμένη κατανόηση του αντικειμενοστραφούς προγραμματισμού (Object-Oriented Programming – OOP) με τη χρήση της γλώσσας Java, συνδυάζοντας τις βασικές αρχές με σύγχρονες πρακτικές ανάπτυξης λογισμικού. Στόχος είναι οι φοιτητές να αναπτύξουν την ικανότητα να σχεδιάζουν, να υλοποιούν και να αναλύουν αντικειμενοστραφή συστήματα λογισμικού που είναι αξιόπιστα, αρθρωτά (modular) και επεκτάσιμα. Μέσα από διαλέξεις, εργαστηριακές ασκήσεις και ατομικές εργασίες, οι φοιτητές εξοικειώνονται με θεμελιώδεις έννοιες, όπως η ενθυλάκωση (encapsulation), η κληρονομικότητα (inheritance) και ο πολυμορφισμός (polymorphism), και μαθαίνουν να τις εφαρμόζουν αποτελεσματικά στην πράξη. Ιδιαίτερη έμφαση δίνεται στην επίλυση προβλημάτων, στη σωστή χρήση του Java Collections Framework, στη διαχείριση εξαιρέσεων, στις λειτουργίες εισόδου/εξόδου αρχείων (file I/O) και στην ανάπτυξη γραφικών διεπαφών χρήστη (GUI). Το μάθημα εισάγει επίσης προχωρημένα θέματα, όπως ο πολυνηματικός προγραμματισμός (multithreading), τα γενικευμένα πρότυπα (generics) και τα πρότυπα σχεδίασης λογισμικού (software design patterns), προετοιμάζοντας τους φοιτητές για πραγματικές συνθήκες ανάπτυξης. Η Ενοποιημένη Γλώσσα Μοντελοποίησης (UML) χρησιμοποιείται καθ’ όλη τη διάρκεια του μαθήματος για την υποστήριξη του αντικειμενοστραφούς σχεδιασμού και την ενίσχυση της ικανότητας μοντελοποίησης και επικοινωνίας της αρχιτεκτονικής λογισμικού.

Μαθησιακά Αποτελέσματα: Με την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές θα είναι σε θέση να: 1. Κατανοούν και εφαρμόζουν τις βασικές αρχές του αντικειμενοστραφούς προγραμματισμού, όπως η ενθυλάκωση, η κληρονομικότητα, ο πολυμορφισμός και η σύνθεση. 2. Σχεδιάζουν και υλοποιούν αρθρωτές και εύκολα συντηρήσιμες εφαρμογές σε Java, αξιοποιώντας κατάλληλα χαρακτηριστικά της γλώσσας και αντικειμενοστραφείς δομές. 3. Χειρίζονται αποτελεσματικά το Java Collections Framework και τα γενικευμένα πρότυπα για τη διαχείριση και επεξεργασία δομημένων δεδομένων. 4. Διαχειρίζονται λειτουργίες εισόδου/εξόδου αρχείων και εξαιρέσεις. 5. Δοκιμάζουν και αποσφαλματώνουν προγράμματα Java, χρησιμοποιώντας κατάλληλα εργαλεία και τεχνικές. 6. Αναπτύσσουν διαδραστικά προγράμματα με γραφικές διεπαφές (GUI) και συμπεριφορά βασισμένη σε γεγονότα (event-driven). 7. Κατανοούν και εφαρμόζουν βασικές έννοιες του παράλληλου προγραμματισμού, χρησιμοποιώντας νήματα (threads). 8. Χρησιμοποιούν διαγράμματα UML για την ανάλυση, τον σχεδιασμό και την επικοινωνία αντικειμενοστραφών συστημάτων λογισμικού.

Περιεχόμενο Μαθήματος: Το μάθημα καλύπτει θεμελιώδεις και προχωρημένες έννοιες του αντικειμενοστραφούς προγραμματισμού σε Java, καθώς και βασικές πρακτικές σχεδίασης και ανάπτυξης λογισμικού. Σύνταξη Java, δομές ελέγχου, μέθοδοι, πίνακες. Κλάσεις, αντικείμενα, ενθυλάκωση, σύνθεση, κληρονομικότητα, πολυμορφισμός, αφαίρεση. Διεπαφές, αφηρημένες κλάσεις, γενικευμένα πρότυπα. Συλλογές: λίστες, σύνολα, πίνακες κατακερματισμού, iterators, ταξινόμηση. Διαχείριση εξαιρέσεων. Είσοδος/έξοδος αρχείων. Αρθρωτοποίηση (modularization) και διαχείριση πακέτων. Δοκιμή και αποσφαλμάτωση. Γραφικές διεπαφές χρήστη (GUI) και διαχείριση γεγονότων. Πολυνηματικός προγραμματισμός και ταυτόχρονη εκτέλεση.             Διαγράμματα UML. Βασικά πρότυπα σχεδίασης, μοντέλα ανάπτυξης λογισμικού.

CSE 228 Προγραμματισμός Συστημάτων

Στόχοι Μαθήματος: Κατανόηση των μηχανισμών με τους οποίους επιτυγχάνεται η πρόσβαση στις διάφορες μονάδες και βιβλιοθήκες ενός Λειτουργικού Συστήματος Unix με τη χρήση της γλώσσας προγραμματισμού C και διαφόρων κελυφών, όπως επίσης και τον ακριβή τρόπο με τον οποίο λειτουργούν αυτά τα συστήματα. Εκμάθηση πολυπρογραμματισμού και μεθόδων συγχρονισμού και επικοινωνίας διεργασιών (processes) και νημάτων (threads).

Μαθησιακά Αποτελέσματα: Βασικές γνώσεις λειτουργίας και προγραμματισμού Λειτουργικών Συστημάτων UNIX. Γνώσεις πολυπρογραμματισμού.

Περιεχόμενο Μαθήματος: Εισαγωγή στο Unix; Το Σύστημα Αρχείων (File System); Διεργασίες και Νήματα (Processes and Threads): Δημιουργία, Συγχρονισμός, Επικοινωνία, Σήματα (Signals), Σωληνώσεις (Pipes), TCP/UDP Sockets, Mutexes, Condition Variables, Κανονικές Εκφράσεις (Regular Expressions), Σενάρια Φλοιού (Shell Scripts), Φίλτρα (Filters).

CSE 229 Βιοπληροφορική

Στόχοι Μαθήματος: Οι φοιτητές θα πρέπει να αφομοιώσουν τις απαραίτητες θεωρητικές και πρακτικές γνώσεις σχετικά με τις διάφορες πτυχές της βιοπληροφορικής. Εισαγωγή στην Εμβιομηχανική και στη Βιοπληροφορική. Στατιστική σημασία των αποτελεσμάτων ευθυγράμμισης. Αναζήτηση βάσεων δεδομένων για παρόμοιες ακολουθίες, αποτελεσματικότητα σχετικών αλγορίθμων. Στατιστική ανάλυση πειραματικών δεδομένων μικροσυστοιχίας DNA. Ειδικά θέματα περιλαμβάνουν, εμβιομηχανική και βιοϋλικά, βιοεπεξεργασία και τηλεϊατρική, βιοϊατρικά όργανα, επεξεργασία σήματος και τρόπους απεικόνισης. Εισαγωγή στην αναδυόμενη βιομηχανία ιατροτεχνολογικών προϊόντων. Απεικόνιση με υπερηχογράφημα, ακτινογραφία, αξονική τομογραφία, μαγνητική τομογραφία και τομογραφία εκπομπής ποζιτρονίων (PET). Ο ρόλος των ακτίνων λέιζερ στη χειρουργική. Ενδοσκόπηση και θεραπείες με τη βοήθεια ενδοσκόπησης. Καρδιακές συσκευές (π.χ. βηματοδότες). Αρχές του νευρικού συστήματος. Κατανόηση του ηλεκτροκαρδιογραφήματος, του ηλεκτροεγκεφαλογράμματος και του ηλεκτρομυογράμματος. Αρχές του νευρικού συστήματος. Κατανόηση του ηλεκτροκαρδιογραφήματος, του ηλεκτροεγκεφαλογράμματος και του ηλεκτρομυογράμματος. Αρχές ακτινοθεραπείας, τηλεματικής στην υγειονομική περίθαλψη. Θεραπευτικό υπερηχογράφημα και εφαρμογές θεραπειών με χρήση θερμικής ακτινοβολίας. Αλγόριθμοι στοίχισης ακολουθιών κατά ζεύγη και στοίχισης πολλαπλών ακολουθιών. Ταξινόμηση πρωτεϊνών και πρόβλεψη δομής.

Μαθησιακά Αποτελέσματα: Αποκτήστε ολοκληρωμένη γνώση των βασικών αρχών της βιοτεχνολογίας σε συνδυασμό με βασικές αρχές της μηχανικής σε προβλήματα που σχετίζονται με τη βιολογία και την ιατρική. Κατανόηση των βασικών λειτουργιών του ανθρώπινου σώματος και του τρόπου παραγωγής βιολογικών σημάτων. Εφαρμόστε βασικές αρχές μηχανικής για την ανάκτηση βιολογικών σημάτων και μεθόδους σε προβλήματα στη βιολογία και την ιατρική, την ενσωμάτωση της μηχανικής στη βιολογία και νέους τομείς στη βιομηχανία. Εισαγωγή στη βιοπληροφορική, με αλγόριθμους στοίχισης αλληλουχιών κατά ζεύγη και στοίχισης πολλαπλών ακολουθιών. Στατιστική σημασία των αποτελεσμάτων ευθυγράμμισης. Φυλογενετική πρόβλεψη. Επίσης αποκτήστε γνώσεις στην Αναζήτηση βάσεων δεδομένων για παρόμοιες ακολουθίες, αποτελεσματικότητα σχετικών αλγορίθμων. Ταξινόμηση πρωτεϊνών και πρόβλεψη δομής. Στατιστική ανάλυση πειραματικών δεδομένων μικροσυστοιχίας DNA. Ειδικά θέματα περιλαμβάνουν βιομηχανική και βιοεπεξεργασία βιοϋλικών και βιοϊατρική βιοϊατρική επεξεργασία σημάτων και εικόνας. Κατανόηση του τρόπου εφαρμογής και χρησιμότητας των σύγχρονων τεχνολογιών στην υγειονομική περίθαλψη. Κατανόηση βασικών αρχών προτύπων και μεθόδων αποθήκευσης ιατρικών δεδομένων. Κατανοήστε τις αρχές της απεικόνισης υπερήχων, ακτίνων Χ, CT, MRI και PET.

Περιεχόμενο Μαθήματος: Καλύπτονται τα ακόλουθα κεφάλαια: Ενότητα 1: Βασικά στοιχεία βιοϊατρικών σημάτων, συστημάτων και υπερήχων. Ενότητα 2: Εισαγωγή στη Βιοστατιστική και Στατιστική Ανάλυση Δεδομένων, Βιοϊατρικά Συστήματα Υγείας. Ενότητα 3: Πληροφοριακά Συστήματα Υγείας, MRI και πρότυπο DICOM & PACS. Ενότητα 4: Ιατρική Απεικόνιση (Επεξεργασία, Ανάλυση, Αξιολόγηση Ποιότητας), τεχνολογίες και εφαρμογές. Ψηφιακή ακτινογραφία. Ενότητα 5: Ανθρώπινος Εγκέφαλος, Ανατομία Εγκεφάλου, Νευρικό Σύστημα (ΚΝΣ), Ακτινογραφίες. Ενότητα 6: Ενδοσκόπηση, Καρδιά και λειτουργία και διαγράμματα, Ηλεκτροκαρδιογράφημα, Πίεση και λειτουργία. Ενότητα 7: Ιατρικές Μηχανές, ΗΕΓ, Πίεση αίματος, Πίεση αίματος, Συσκευές Ακτινοβολίας. Ενότητα 8: Τηλεϊατρική, τεχνολογίες και εφαρμογές. Ενότητα 9: Βιοϋλικά. Ενότητα 10: Βιοαισθητήρες και ανάλυση στατιστικών δεδομένων. Γιατί χρειαζόμαστε βιονικά; Ενότητα 11: Τρισδιάστατη εκτύπωση, Εισαγωγή στη μοριακή βιολογία, ανάλυση/αναπαράσταση. Φυσική ποικιλότητα και ποικιλία.  Ενότητα 12: Θερμική κατάλυση, Θεραπεία, Τεχνικές.

CSE 321 Δίκτυα και Επικοινωνίες Υπολογιστών

Στόχοι Μαθήματος: Εισαγωγή στα δίκτυα ηλεκτρονικών υπολογιστών, με έμφαση στο Διαδίκτυο (Internet). Καλύπτεται ένα μεγάλο εύρος θεμάτων, όπως οι βασικές αρχές πρωτοκόλλων επιπέδου εφαρμογών (π.χ., Web, FTP, DNS), διανομή περιεχομένου, αρχιτεκτονικές πελάτη-εξυπηρετητή (client-server) και ομότιμων (peer-to-peer), πρωτόκολλα μεταφοράς δεδομένων TCP/UDP, αρχές αξιόπιστης μεταφοράς δεδομένων και ελέγχου συμφόρησης, έλεγχος συμφόρησης στο Διαδίκτυο, αρχές δρομολόγησης και δρομολόγηση στο Διαδίκτυο, το πρωτόκολλο IP και αρχιτεκτονικές δρομολογητών δικτύου, διευθύνσεις στο Διαδίκτυο, IPv4 και IPv6, ενσύρματα και ασύρματα δίκτυα πρόσβασης, (π.χ., Ethernet, DSL, WLANs), ζεύξεις δεδομένων.

Μαθησιακά Αποτελέσματα: Γνώσεις αρχών και λειτουργίας δικτύων ηλεκτρονικών υπολογιστών με έμφαση στο Διαδίκτυο

Περιεχόμενο Μαθήματος: Εισαγωγή στα Δίκτυα Υπολογιστών, δομή Διαδικτύου, αρχιτεκτονική επιπέδων, μέτρα απόδοσης, βασικές έννοιες. Επίπεδο Ζεύξης Δεδομένων, Τοπικά Δίκτυα. Επίπεδο Δικτύου, πρωτόκολλο IP, δρομολόγηση, διευθύνσεις. Επίπεδο Μεταφοράς, πρωτόκολλα TCP/UDP, συμφόρηση, έλεγχος. Επίπεδο Εφαρμογής, αρχιτεκτονικές Client-Server και Peer-to-Peer.

CSE 322 Εργαστήριο Δικτύων Υπολογιστών και Επικοινωνιών

Στόχοι Μαθήματος: Το μάθημα αυτό έχει ως σκοπό την πρακτική εξάσκηση και πειραματισμό των φοιτητών σε θέματα δικτύων Η/Υ. Συγκεκριμένα, το μάθημα προσφέρει στους φοιτητές τη δυνατότητα να διασυνδέσουν τοπικά δίκτυα Η/Υ χρησιμοποιώντας διακόπτες (switches), δρομολογητές (routers) και τερματικά (hosts), και να διενεργήσουν διάφορα πειράματα σχετικά με τη στοίβα πρωτοκόλλων TCP/IP.

Μαθησιακά Αποτελέσματα: Πρακτική εμπειρία με έννοιες όπως το υποδίκτυο (subnet) τη διευθυνσιοδότηση (addressing, subneting, subnet masks), πρωτόκολλα δρομολόγησης (π.χ., RIP, OSPF), πρωτόκολλα πολλαπλής πρόσβασης, συσκευές δικτύου (routers, switches, hosts), καθώς και εμπειρία σε πρακτικά θέματα προγραμματισμού δρομολογητών (Cisco IOS).

Περιεχόμενο Μαθήματος: Εισαγωγή στον εξοπλισμό (hardware και software) του εργαστηρίου, το λειτουργικό σύστημα των δρομολογητών CISCO (CISCO Internet Operating System—IOS). Διασύνδεση και προγραμματισμός IP δικτύων Ethernet (Singe-Segment IP Networks). Προγραμματισμός δικτύων για στατική δρομολόγηση (Static Routing). Προγραμματισμός δικτύων για δυναμική δρομολόγηση (Dynamic Routing Protocols (RIP, OSPF, BGP)). Μετρήσεις κίνησης πρωτοκόλλων μεταφοράς UDP και TCP σε πραγματικά δίκτυα.

CSE 323 Αρχιτεκτονική Υπολογιστών

Στόχοι Μαθήματος: Το μάθημα της Αρχιτεκτονικής Υπολογιστών παρέχει μια ολοκληρωμένη εισαγωγή στις θεμελιώδεις αρχές της αρχιτεκτονικής υπολογιστών, εστιάζοντας στον σχεδιασμό και τη συμπεριφορά (σε υψηλό επίπεδο) των συστημάτων υπολογιστών. Το μάθημα απαντά στα «Τί» αποτελεί ένα υπολογιστικό σύστημα και «Γιατί», και επικεντρώνεται στις διάφορες τεχνικές που αυξάνουν την επίδοση ενός υπολογιστικού συστήματος. Το μάθημα δίνει έμφαση στη σχέση μεταξύ αρχιτεκτονικής και επίδοσης λογισμικού, καθώς και στις τρέχουσες τάσεις και προκλήσεις στην έρευνα αρχιτεκτονικής υπολογιστών. Το μάθημα διδάσκει τον παραλληλισμό εντολών (ILP),  τον παραλληλισμό δεδομένων (DLP) και το παραλληλισμό υπολογισμό (TLP). Διδάσκει επίσης τελευταίες τεχνολογίες όπως Cloud Computing (στο επίπεδο της αρχιτεκτονικής) και τους τελευταίους επιταχυντές ειδικών τομέων (Domain-specific Accelerators), συμπεριλαμβανομένων GPU και AI accelerators. Σε κάθε ενότητα θα εξετάζονται οι πιο σημαντικές τεχνικές που χρησιμοποιούνται σήμερα σε υπάρχον συστήματα αλλά και σε ερευνητικά προγράμματα.

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν να: (1) Κατανοούν και να εφαρμόζουν τη σύγχρονη μεθοδολογία αξιολόγησης και σύγκρισης επίδοσης υπολογιστικών συστημάτων. (2) Περιγράφουν και να εξηγούν τις βασικές και προχωρημένες αρχές που διέπουν την αρχιτεκτονική διαφορών ειδών μοντέρνων επεξεργαστών και τον αντίκτυπο τους στην επίδοση. (3) Να αξιολογούν τις σύγχρονες τάσεις και προκλήσεις στην περιοχή της αρχιτεκτονικής υπολογιστών. (4) Να απαντούν στα ερωτήματα «Τί» και «Γιατί» υλοποιεί ένα υπολογιστικό σύστημα για να αυξήσει την επίδοση του.

Περιεχόμενο Μαθήματος: Βασικές αρχές ποσοτικού σχεδιασμού και ανάλυσης υπολογιστικών συστημάτων, Παραλληλισμός στο επίπεδο των εντολών, Branch Prediction, Dynamic Scheduling, Hardware Speculation, Παραλληλισμός στο επίπεδο των δεδομένων, GPUs, Παράλληλα συστήματα, Multiprocessors, Shared memory and Cache coherence, Memory Consistency, Παραλληλισμός στο επίπεδο των αιτημάτων, Cloud Computing, Ειδικοί Επιταχυντές, Domain-specific Accelerators, AI and DNN Accelerators. Επιπλέον ερευνητικά/πρακτικά θέματα βάση της εξέλιξης της τεχνολογίας (π.χ. Processor Security, Quantum Computing).

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

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

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

Περιεχόμενο Μαθήματος: Το μάθημα αυτό αποτελεί μια εισαγωγή στην Τεχνολογία Λογισμικού, του κλάδου εκείνου της Πληροφορικής ο οποίος ασχολείται με τις θεωρητικές προσεγγίσεις, τις μεθοδολογίες και τα εργαλεία που απαιτούνται για την ανάπτυξη ποιοτικών συστημάτων λογισμικού εντός του προβλεπόμενου χρονοδιαγράμματος και του συμφωνηθέντος προϋπολογισμού. Καλύπτονται οι εξής ενότητες-κεφάλαια: (1) Εισαγωγικές έννοιες, (2) Η διαδικασία ανάπτυξης λογισμικού, (3) Μοντέλα κύκλου ζωής του λογισμικού, (4) Οργάνωση ομάδων και διαχείριση έργων παραγωγής, (5) Εργαλεία CASE: Τεχνολογία λογισμικού υποβοηθούμενη από τον Η/Υ, (6) Έλεγχος, (7) Εισαγωγή στα objects, (8) Απαιτήσεις, (9) Προδιαγραφές, (10) Αντικειμενοστρεφής ανάλυση, (11)  Σχεδίαση, (12)  Υλοποίηση, (13) Υλοποίηση και Συνένωση, (14) Συντήρηση.

CSE 325 Βάσεις Δεδομένων

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

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

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

CSE 326 Μηχανική Ιστού

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

Μαθησιακά Αποτελέσματα: (1) Οι φοιτητές θα αποκτήσουν γνώσεις σχετικές με τον βασικό σχεδιασμό των εφαρμογών του διαδικτύου, οι οποίες καλύπτουν πρωτόκολλά, πρότυπα, διαχείριση δεδομένων, πολυεπίπεδες αρχιτεκτονικές και ασφάλεια. (2) Θα μάθουν πως να σχεδιάσουν και να εφαρμόσουν αξιόπιστες, εύχρηστες, κλιμακούμενες, ευέλικτες, ασφαλείς και διατηρήσιμες εφαρμογές ιστού. (3) Θα γνωρίσουν πώς μελετήσουν πολλά ακαδημαϊκά άρθρα που περιγράφουν το σχέδιο φιλοσοφίας συστημάτων στα οποία βασίζεται η υποδομή WWW. (4) Μέσω μιας σειράς ασκήσεων εφαρμογής του διαδικτυακού συστήματος, οι φοιτητές θα αποκτήσουν τις γνώσεις του προγραμματισμού και τις υποδομής που απαιτούνται για τη δημιουργία ενός προχωρημένου ιστού εφαρμογής.

Περιεχόμενο Μαθήματος: Το μάθημα αυτό αποτελεί μια εισαγωγή στις τεχνολογίες διαδικτύου, οι οποίες πλέον αποτελούν την κύρια πλατφόρμα εφαρμογών λογισμικού. Θα καλύψουμε ένα μεγάλο εύρος πλαισίων εργασίας (frameworks) για την ανάπτυξη εφαρμογών ιστού τα οποία χρησιμοποιούνται σε κρίσιμες επιχειρηματικές εφαρμογές μεγάλης κλίμακας, όπως Online Social Networks, Banking, Online Stores, Online Video Services, κ.ο.κ. Θα περιγράψουμε τις βασικές αρχές των εφαρμογών διαδικτύου, όπως πρωτόκολλα, standards, διαχείριση δεδομένων, multi-tier αρχιτεκτονικές και ασφάλεια. Θα μελετήσουμε πως μπορούμε να αναπτύξουμε αξιόπιστες, φιλικές στο χρήστη, κλιμακώσιμες, ευέλικτες και διατηρήσιμες εφαρμογές. 1η  Εβδομάδα: Εισαγωγή. Web servers και HTTP.   Εργασία: Εγκατάσταση LAMP stack (Ubuntu 10.04LTS, Apache, MySQL, PHP/Python). 2η -3η  Εβδομάδα:  Σχεδιασμός διαπροσωπείας και χρηστικότητα εφαρμογών. HTML, CSS.  Εργασία: Διαμόρφωση (configuration/set up) Apache web server και εξυπηρέτηση μιας απλής σελίδας ΗΤΜL/CSS. 4η-6η  Εβδομάδα: Μηχανική ιστού. Model-View-Controller architectural pattern για εφαρμογές ιστού. PHP, server-side programming, sessions.  Εργασία: Set up PHP και εξυπηρέτηση μιας απλής δυναμικής σελίδας. Multι-tier εφαρμογές.  Εργασία: Διαμόρφωση βάσης δεδομένων MySQL. Χρήση  PHP για  δυναμικές σελίδες που φορτώνουν δεδομένα από τη βάση. 7η-9η Εβδομάδα: Client-side programming. Javascript, AJAX, JQuery, XML.  Εργασία: Αναβάθμιση της μέχρι τώρα αναπτυχθέισας εφαρμογής με διαδραστικότητα AJAX. 10η  Εβδομάδα: Aσφάλεια εφαρμογών ιστού. OpenSSL και X.509 Public Key Certificates.   Εργασία:  Μετατροπή της μέχρι τώρα αναπτυχθείσας  εφαρμογής σε HTTPS/SSL και κάλυψη κενών ασφαλείας της.

CSE 327 Παράλληλη Επεξεργασία και Κατανεμημένα Συστήματα

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

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

Μαθησιακά Αποτελέσματα: Στο τέλος του μαθήματος οι σπουδαστές/στριες: (1) Οι φοιτητές θα αποκτήσουν γνώσεις σχετικές με τον βασικό σχεδιασμό των κατανεμημένων συστημάτων και τους τρόπους επίτευξης βασικών λειτουργίων τους όπως η κατανεμημένη συμφωνία (distributed consensus). (2) Θα αποκτήσουν βαθιά τεχνική γνώση για το πότε και πώς θα αξιοποιούν τις δυνατότητες των σύγχρονων παράλληλων και  κατανεμημένων συστημάτων για να εξυπηρετούν τις ανάγκες των οργανισμών τους. Θα εξοικειωθούν με συστήματα επεξεργασίας μεγάλων δεδομένων όπως αυτά που χρησιμοποιούν εταιρείες όπως η Google, Amazon, Facebook, etc. (3) Θα εκπαιδευτούν στην κριτική κατανόηση αμφιλεγόμενων ζητημάτων ώστε να ξεχωρίζουν την πραγματικά επιστημονική πληροφορία από διαφημιστικές ανοησίες. Για παράδειγμα γιατί κάποιοι/ες ισχυρίζονται ότι οι κεντρικές λύσεις είναι κάτι που ποτέ δεν θέλουμε; Πόσο χρήσιμη είναι τελικά η τεχνολογία blockchain;

Περιεχόμενο Μαθήματος: Αρχιτεκτονικές Κατανεμημένων Συστημάτων. Διεργασίες. Επικοινωνία. Ονοματοδοσία (Naming). Συντονισμός και Κατανεμημένη Συμφωνία. Συνέπεια και Aντιγραφή (Consistency and Replication). Aνθεκτικότητα σε Σφάλματα (Fault Tolerance). Ασφάλεια

CSE 328 Θέματα Τεχνολογίας Λογισμικού και Επαγγελματική Πρακτική

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

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

Περιεχόμενο Μαθήματος: Το μάθημα αυτό αποτελεί φυσική συνέχεια του ΜΗΥΠ 324  - Τεχνολογία Λογισμικού και έχει ως στόχο την αφομοίωση και εμπέδωση στην πράξη της θεωρητικής προσέγγισης και των μεθοδολογιών που ακολουθούνται για την ανάπτυξη ποιοτικών συστημάτων λογισμικού, μέσω ομαδικής εργασίας δημιουργίας ενός προϊόντος λογισμικού που θα εξυπηρετεί συγκεκριμένους σκοπούς από το χώρο της αγοράς, της κοινωνίας, όπως επίσης και από τον ακαδημαϊκό / ερευνητικό χώρο. Η εργασία παρακολουθείται από τον διδάσκοντα μέσω εβδομαδιαίων συναντήσεων με κάθε ομάδα ξεχωριστά (αντί διαλέξεων) κατά τις οποίες συζητούνται και αναλύονται θέματα που σχετίζονται με την πορεία υλοποίησης, παρουσιάζονται διάφορα σχετικά προβλήματα και μελετούνται προτεινόμενες εναλλακτικές λύσεις. Σε κάθε συνάντηση οι ομάδες παραδίδουν έγγραφο πεπραγμένων - έκθεση προόδου στο οποίο αναλύονται οι εργασίες που έγιναν στο διάστημα που μεσολάβησε από την προηγούμενη συνάντηση, τον έλεγχο της πορείας του έργου βάσει του αρχικού χρονοδιαγράμματος, τα προβλήματα που αντιμετωπίστηκαν και τα θέματα προς συζήτηση κατά τη διάρκεια της συνάντησης. Επίσης το έγγραφο αυτό περιέχει σύντομη αναφορά στις εργασίες που διεκπεραίωσε κάθε μέλος της ομάδας, καθώς επίσης κι εκείνες που θα γίνουν μέχρι την επόμενη συνάντηση. Κατά τη διάρκεια της υλοποίησης των συστημάτων καταγράφονται στοιχεία-μετρικές αναφορικά με την προσπάθεια που καταβλήθηκε, το κόστος, το χρόνο, τη διαδικασία ανάπτυξης και την ποιότητα του λογισμικού. Κάθε ομάδα δημιουργεί και παραδίδει τα ακόλουθα έγγραφα: (1) Έγγραφο Ανάλυσης Λειτουργικών Αναγκών και Απαιτήσεων, (2) Έγγραφο Τεχνικών Προδιαγραφών, (3) Έγγραφο Σχεδιασμού, (4) Έγγραφο Υλοποίησης, (5) Εγχειρίδιο Εγκατάστασης και Χρήσης. Τέλος, η ομάδα εκπαιδεύει τον πελάτη και πραγματοποιεί έναν πρώτο κύκλο συντήρησης/υποστήριξης του συστήματος για περίοδο μιας εβδομάδας κατά την οποία ανιχνεύει και διορθώνει προβλήματα και λάθη, και καταγράφει μελλοντικές επεκτάσεις του συστήματος λογισμικού που αναπτύχθηκε.

CSE 329 Στατιστική αναγνώριση προτύπων και μηχανική εκμάθηση

Στόχοι Μαθήματος: Το μάθημα είναι μια εισαγωγή των βασικών εννοιών στη σύγχρονη μηχανική μάθηση. Αρχικά εισάγουμε τις έννοιες της εποπτευόμενης, μη εποπτευόμενης και ημι-εποπτευόμενης μάθησης. Στη συνέχεια, παρουσιάζουμε την κύρια βιολογική έμπνευση της σύγχρονης μη εποπτευόμενης απεικόνισης δεδομένων, δηλαδή της Deep Learning. Περαιτέρω, εισάγουμε τα βασικά μοντέλα εποπτείας μάθησης. Επιπρόσθετα, επεξεργαζόμαστε τους αλγορίθμους Collaborative Filtering, με έμφαση στο Matrix Factorization. Παρουσιάζουμε τα προβλήματα της μάθησης πολλαπλών περιπτώσεων και της ημι-εποπτείας, καθώς αντιμετωπίζονται στο πλαίσιο του μεγάλου περιθωρίου κέρδους. Σε όλες τις περιπτώσεις, επεξεργαζόμαστε τεχνικές που μπορούμε να χρησιμοποιήσουμε για να αποτρέψουμε την υπερφόρτωση, μέσω κατάλληλης χρήσης των μεθόδων νομιμοποίησης. Τέλος, εισάγουμε τεχνικές μάθησης ενίσχυσης, όπου οι πράκτορες μαθαίνουν τις βέλτιστες πολιτικές μέσω της δυναμικής αλληλεπίδρασης με το περιβάλλον τους.

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

Περιεχόμενο Μαθήματος: Το μάθημα περιλαμβάνει ένα θεωρητικό μέρος και μια σειρά εργαστηριακών ασκήσεων. ΘΕΩΡΗΤΙΚΟ ΜΕΡΟΣ: Εισαγωγή, Στοιχεία Μηχανικής Μάθησης, Παλινδρόμηση, Ταξινόμηση, Επικύρωση, Επιλογή μοντέλου, Ομαδοποίηση, Εκμάθηση χαρακτηριστικών. ΕΡΓΑΣΤΗΡΙΟ: Επίλυση απλών εργασιών ταξινόμησης, παλινδρόμησης και ομαδοποίησης με τη χρήση της μάθησης Scikit.

CSE 423 Εισαγωγή στην Κρυπτογραφία και την Ασφάλεια Υπολογιστών

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

Μαθησιακά Αποτελέσματα: Με την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές θα είναι σε θέση να: 1. Κατανοούν τις θεμελιώδεις αρχές της ασφάλειας υπολογιστών, συμπεριλαμβανομένων των βασικών στόχων ασφάλειας: εμπιστευτικότητα, ακεραιότητα και διαθεσιμότητα. 2. Περιγράφουν και συγκρίνουν βασικές κρυπτογραφικές δομές, όπως συμμετρική και ασύμμετρη κρυπτογράφηση, συναρτήσεις κατακερματισμού (hash functions), κώδικες αυθεντικοποίησης μηνυμάτων (MACs) και ψηφιακές υπογραφές. 3. Εφαρμόζουν κρυπτογραφικά πρωτόκολλα, όπως ανταλλαγή κλειδιών και ψηφιακά πιστοποιητικά (PKI), στο πλαίσιο του ασφαλούς σχεδιασμού συστημάτων και ασφαλών επικοινωνιών. 4. Δείχνουν επίγνωση επιλεγμένων προχωρημένων θεμάτων, όπως η μετα-κβαντική κρυπτογραφία και η ομομορφική κρυπτογράφηση. 5. Εντοπίζουν και αναλύουν συνήθεις απειλές ασφάλειας και επίπεδα επίθεσης, όπως κακόβουλο λογισμικό (π.χ. ιοί, worms, δούρειοι ίπποι), spoofing και phishing, επιθέσεις άρνησης υπηρεσίας (DoS), cross-site scripting (XSS), επιθέσεις SQL injection και ευπάθειες υπερχείλισης buffer. 6. Αναγνωρίζουν τις εξελισσόμενες απειλές ασφάλειας και τις ευπάθειες συστημάτων και σχεδιάζουν ασφαλή συστήματα/εφαρμογές επιλέγοντας και εφαρμόζοντας κατάλληλες στρατηγικές άμυνας, όπως αυθεντικοποίηση, εξουσιοδότηση και έλεγχο πρόσβασης. 7. Αξιολογούν εναλλακτικές κρυπτογραφικές τεχνικές και μηχανισμούς ασφάλειας, λαμβάνοντας υπόψη συμβιβασμούς, απόδοση, πολυπλοκότητα, χρηστικότητα και την αξία των προστατευόμενων πόρων. 8. Συζητούν βασικά ζητήματα ιδιωτικότητας στα υπολογιστικά συστήματα και κατανοούν θεμελιώδεις πρακτικές προστασίας της ιδιωτικότητας.

Περιεχόμενο Μαθήματος: Το μάθημα αποτελεί εισαγωγή στις θεμελιώδεις έννοιες και τεχνικές της κρυπτογραφίας και της ασφάλειας υπολογιστών. Ξεκινά με τις βασικές αρχές και στόχους της ασφάλειας, όπως εμπιστευτικότητα, ακεραιότητα, διαθεσιμότητα, καθώς και αυθεντικοποίηση, μη αποποίηση ευθύνης (non-repudiation) και λογοδοσία. Παρουσιάζονται επίσης οι αρχές σχεδιασμού ασφαλών συστημάτων και τα κλασικά μοντέλα ασφάλειας. Οι φοιτητές εισάγονται σε τεχνικές εκτίμησης κινδύνου και μοντελοποίησης απειλών ως βάση για την αξιολόγηση ευπαθειών συστημάτων και την αντιμετώπιση πιθανών επιθέσεων. Οι βασικές κρυπτογραφικές ενότητες περιλαμβάνουν συμμετρική και ασύμμετρη κρυπτογράφηση, συναρτήσεις κατακερματισμού (hash functions), γεννήτριες ψευδοτυχαίων αριθμών, ροής κρυπτογράφησης (stream ciphers), κώδικες αυθεντικοποίησης μηνυμάτων (MACs) και ψηφιακές υπογραφές. Το μάθημα καλύπτει επίσης πρακτικές διαχείρισης κλειδιών και κρυπτογραφικά πρωτόκολλα, όπως ασφαλή ανταλλαγή κλειδιών και χρήση ψηφιακών πιστοποιητικών στο πλαίσιο Υποδομών Δημοσίου Κλειδιού (PKI). Μελετώνται θεμελιώδη μοντέλα και μηχανισμοί αυθεντικοποίησης και ελέγχου πρόσβασης, καθώς και μοντέλα εξουσιοδότησης και διαχείρισης ταυτοτήτων. Εξετάζονται ευπάθειες λογισμικού και συστημάτων, όπως επιθέσεις άρνησης υπηρεσίας (DoS), κακόβουλο λογισμικό (π.χ. ιοί, worms, δούρειοι ίπποι), phishing, spoofing, καθώς και συνήθη ζητήματα ασφάλειας ιστού, όπως cross-site scripting (XSS), επιθέσεις SQL injection και υπερχείλιση buffer. Οι φοιτητές εκπαιδεύονται σε ασφαλείς πρακτικές προγραμματισμού και αρχές μείωσης κινδύνων που σχετίζονται με το λογισμικό, καθώς και σε μηχανισμούς ασφάλειας φυλλομετρητών, όπως η Πολιτική Ίδιας Προέλευσης (Same-Origin Policy). Το μάθημα καλύπτει βασικούς μηχανισμούς άμυνας που χρησιμοποιούνται στην πράξη, όπως λογισμικό προστασίας από ιούς, τείχη προστασίας (firewalls), συστήματα ανίχνευσης εισβολών (IDS) και συστήματα αποτροπής εισβολών (IPS). Παρουσιάζονται επίσης πραγματικά πρωτόκολλα ασφαλείας, όπως TLS/SSL, μηχανισμοί αυθεντικοποίησης βάσει κωδικών πρόσβασης, διαχείριση και αποθήκευση κωδικών, καθώς και μηχανισμοί πολυπαραγοντικής αυθεντικοποίησης. Το μάθημα εξετάζει επίσης τεχνικές κοινωνικής μηχανικής, τον ρόλο του ανθρώπινου παράγοντα στην ασφάλεια και τις προκλήσεις εξισορρόπησης της ασφάλειας με την πρακτικότητα και τη χρηστικότητα. Τέλος, περιλαμβάνεται συνοπτική αναφορά σε επιλεγμένα προχωρημένα θέματα κρυπτογραφίας, όπως η μετα-κβαντική κρυπτογραφία, η ομομορφική κρυπτογράφηση και οι ελαφριές κρυπτογραφικές μέθοδοι, ενώ γίνεται εισαγωγή σε έννοιες που σχετίζονται με την ιδιωτικότητα και σε μηχανισμούς και πρακτικές προστασίας της ιδιωτικότητας.

CSE 461 Συστήματα για Μηχανική Μάθηση Μεγάλης Κλίμακας

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

Μαθησιακά Αποτελέσματα: Στο τέλος του μαθήματος οι διδασκόμενοι θα είναι εις θέση να: (1) περιγράψουν τις σημαντικότερες αρχές σχεδιασμού κατανεμημένων συστημάτων, (2) περιγράψουν και χρησιμοποιήσουν βασικές τεχνικές υλοποίησης κατανεμημένων συστημάτων μεγάλης κλίμακας, (3) κατανοήσουν τις  αρχές λειτουργίας της υποδομής υπολογιστικού νέφους και Μηχανικής Μάθησης της Google, Amazon, Facebook και άλλων γιγαντιαίων διαδικτυακών υπηρεσιών, (4) διαβάζουν και να κατανοούν ερευνητικές αναφορές της μηχανικής υπολογιστικών συστημάτων, (5) κατανοούν την υλοποίηση ενός περίπλοκου και μεγάλης κλίμακας κατανεμημένου συστήματος για Μηχανική Μάθηση ώστε να μπορούν να το τροποποιήσουν και να αξιολογήσουν την απόδοση του

Περιεχόμενο Μαθήματος: Η ύλη του μαθήματος περιλαμβάνει τα ακόλουθα. Virtual Memory, Process Management και Inter-process Communication. Το λειτουργικό σύστημα Unix. Log-structured συστήματα αρχείων. Κατανεμημένα συστήματα αρχείων. Virtual Machines. Θέματα που αφορούν τον κύκλο ζωής της ανάλυσης δεδομένων για Μηχανική Μάθηση (ML), περιλαμβανομένων των data sourcing and preparation για ML, προγραμματιστικά μοντέλα ML, συστήματα για κλιμακώσιμη δημιουργία μοντέλων ML, και αναδυόμενα θέματα όπως διακυβέρνηση ML συστημάτων, επεξηγησιμότητα, και ηθική (fairness, transparency, etc.) της Μηχανικής Μάθησης.

CSE 463 Προχωρημένα Θέματα Τεχνολογίας Λογισμικού

Στόχοι Μαθήματος: Να εμβαθύνει σε συγκεκριμένες περιοχές και  προχωρημένα θέματα της Τεχνολογίας Λογισμικού με έμφαση σε τρεις άξονες: (1)Τεχνολογία Λογισμικού για Κατανεμημένα Συστήματα και το Υπολογιστικό Νέφος, (2) Εξόρυξη Διαδικασιών, (3) Επαναχρησιμοποίηση Λογισμικού.

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

Περιεχόμενο Μαθήματος: Ενότητα A’ - Τεχνολογία Λογισμικού για Κατανεμημένα Συστήματα και το Υπολογιστικό Νέφος:  Τεχνολογία Λογισμικού για κατανεμημένα συστήματα, Εισαγωγή στο DevOps, Τεχνολογία Λογισμικού και Υπολογιστικό Νέφος, Τεχνολογία Λογισμικού προσανατολισμένη στις Υπηρεσίες  Λογισμικού, Εισαγωγή στο σύστημα του Blockchain. Ενότητα Β’ - Εξόρυξη Διαδικασιών:  Εισαγωγή στην Εξόρυξη Διαδικασιών, Μοντελοποίηση και Ανάλυση Διαδικασιών, Συλλογή Δεδομένων για Εξόρυξη Διαδικασιών. Ενότητα Γ’ - Επαναχρησιμοποίηση: Επαναχρησιμοποίηση λογισμικού, Τεχνολογία Λογισμικού βασισμένη στα συστατικά λογισμικού.

CSE 466 Προχωρημένη Αρχιτεκτονική Υπολογιστών

Στόχοι Μαθήματος: Το μάθημα διερευνά το σχεδιασμό και την ανάλυση σύγχρονων αρχιτεκτονικών υπολογιστών, με έμφαση σε συστήματα υψηλής επίδοσης και ενεργειακής απόδοσης. Βασιζόμενοι στη θεμελιώδη αρχιτεκτονική υπολογιστών, οι φοιτητές θα εμβαθύνουν σε προηγμένα θέματα όπως η επεξεργασία πολλαπλών πυρήνων. Το μάθημα καλύπτει επίσης τις τάσεις της βιομηχανίας αιχμής και τις κατευθύνσεις έρευνας, συμπεριλαμβανομένων των επιταχυντών τεχνητής νοημοσύνης, του σχεδιασμού GPU και TPU, του RISC-V, των αρχιτεκτονικών για συγκεκριμένο τομέα και της ασφάλειας υλικού. Μέσω ενός μίγματος θεωρίας, εργαλείων προσομοίωσης, περιπτωσιολογικών μελετών και συζητήσεων ερευνητικών/επιστημονικών άρθρων, οι φοιτητές θα αποκτήσουν βαθιά εννοιολογική κατανόηση και πρακτικές δεξιότητες στην αξιολόγηση και το σχεδιασμό σύνθετων αρχιτεκτονικών που οδηγούν τους σύγχρονους υπολογιστές.

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν να: (1) Περιγράφουν και να εξηγούν προχωρημένες αρχές που διέπουν την αρχιτεκτονική ειδών μοντέρνων επεξεργαστών και βελτιστοποιήσεων και τον αντίκτυπο τους στην επίδοση των εφαρμογών. (2) Να αξιολογούν τις σύγχρονες τεχνολογίες στην περιοχή της αρχιτεκτονικής υπολογιστών. (3) Κατανοούν, να κρίνουν και να αναλύουν επιστημονικά άρθρα στον τομέα της Αρχιτεκτονικής Υπολογιστών. (4) Διεκπεραίωσης έρευνα σε προχωρημένο πτυχιακό επίπεδο, μέσω της ανάπτυξης βασικών ερευνητικών δεξιοτήτων.

Περιεχόμενο Μαθήματος: Το μάθημα θα περιλαμβάνει τις εξής ενότητες: (1) Βασικές αρχές των επεξεργαστών, (2)  Παραλληλισμός και Παράλληλες αρχιτεκτονικές (Scalable Multi-core and Many-core Systems, Interconnection Networks and NoC (Network-on-Chip)), (3) Αναδυόμενες και υψηλών επιδόσεων αρχιτεκτονικές (GPU Architecture and GPGPU Programming,  Specialized AI Accelerators,  RISC-V Architecture and Open-ISA Revolution,  Heterogeneous Computing), (4)  Επιταχυντές και αρχιτεκτονικές για ειδικές εφαρμογές (FPGAs in the Datacenter,  Neuromorphic Computing, Quantum-Aware Architectures,  In-Memory Computing), (5)  Ασφάλεια στο υλικό και τις αρχιτεκτονικές (Side-channel Attacks and Defenses, Trusted Execution Environments (Intel SGX, AMD SEV)), (6) Τρέχουσες κατευθύνσεις και τάσεις έρευνας στον ευρύτερο τομέα της Αρχιτεκτονικής Υπολογιστών (Open Hardware Movement and Hardware-Software Co-design, Approximate Computing)

CSE 467 Κλιμακώσιμα Συστήματα Επεξεργασίας Δεδομένων

Στόχοι Μαθήματος: Η εκμάθηση και κατανόηση εννοιών, τεχνικών και συστημάτων που σχετίζονται με κλιμακώσιμη επεξεργασία δεδομένων χρησιμοποιώντας παράλληλα σχεσιακά συστήματα βάσεων δεδομένων, συστήματα NoSQL και συστήματα επεξεργασίας δεδομένων όπως το MapReduce και το Spark.

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

Περιεχόμενο Μαθήματος: Η ανάγκη για αποθήκευση και επεξεργασία δεδομένων μεγάλης κλίμακας έχει οδηγήσει σε μία εξέλιξη των υπαρχόντων συστημάτων βάσεων δεδομένων, ενώ μια νέα γενιά συστημάτων επεξεργασίας δεδομένων έχει αναδυθεί. Αυτό το μάθημα καλύπτει ένα φάσμα θεμάτων από τις βασικές τεχνικές της διαχείρισης σχεσιακών δεδομένων μέχρι την κλιμακώσιμη επεξεργασία δεδομένων χρησιμοποιώντας παράλληλα συστήματα βάσεων δεδομένων και κατανεμημένα συστήματα επεξεργασίας δεδομένων (π.χ., MapReduce, Spark). Αρχικά, το μάθημα καλύπτει τις βασικές αρχές της επεξεργασίας και βελτιστοποίησης ερωτημάτων, όπως είναι οι δείκτες, οι τεχνικές διάταξης και συνένωσης, η επανεγγραφή ερωτημάτων και η επιλογή εκτελεστικών πλάνων. Το μάθημα καλύπτει επίσης θέματα από παράλληλες και κατανεμημένες βάσεις δεδομένων, συμπεριλαμβανομένου των κατατμήσεων δεδομένων και των κατανεμημένων αλγόριθμων συνένωσης. Τέλος, το μάθημα καλύπτει κλιμακώσιμα συστήματα επεξεργασίας δεδομένων και βάσεις δεδομένων NoSQL (αποθήκες στηλών, κειμένων και κλειδιών-τιμών). Το υλικό των μαθημάτων θα αντληθεί από εκπαιδευτικά βιβλία καθώς και πρόσφατη ερευνητική βιβλιογραφία.

CSE 470 Τεχνικές Σχεδίασης και Ελέγχου Ολοκληρωμένων Κυκλωμάτων

Στόχοι Μαθήματος: Στόχος του μαθήματος είναι να εμβαθύνει σε συγκεκριμένες περιοχές και προχωρημένα θέματα της Σχεδίασης και Ελέγχου Ολοκληρωμένων Κυκλωμάτων όπως: (1) H ροή σχεδιασμού και η υλοποίηση συστημάτων υλικού καθώς και μελέτη και συγκριτική αποτίμηση των διαφορετικών εναλλακτικών αρχιτεκτονικών υλοποίησης τους. (2) Τεχνικές βελτιστοποίησης ψηφιακών σχεδιασμών και πρακτική εφαρμογή τους. (3) Τεχνικές ελέγχου και ελεγξιμότητας ορθής λειτουργίας ολοκληρωμένων κυκλωμάτων (ICs), στην αποτίμηση γραμμών παραγωγής IC (yield), στα οικονομικά του ελέγχου ICs κ.α. (4) Η μοντελοποίηση και ανίχνευση σφαλμάτων και ο σχεδιασμός για ελεγξιμότητα ICs.

Μαθησιακά Αποτελέσματα: Τα μαθησιακά αποτελέσματα του μαθήματος είναι: (1) H αξιολόγηση και χρήση των εναλλακτικών αρχιτεκτονικών υλοποίησης και στρατηγικών σχεδιασμού ψηφιακών συστημάτων για τη σχεδίαση ψηφιακών κυκλωμάτων υψηλής ταχύτητας, χαμηλής κατανάλωσης και μικρής επιφάνειας ολοκλήρωσης. (2) H συγκριτική αποτίμηση και χρήση τεχνικών βελτιστοποίησης σε όλα τα επίπεδα της σχεδιαστικής ροής. (3) Η απόκτηση εκτενούς εμπειρίας στον σχεδιασμό, βελτιστοποίηση και υλοποίηση σχεδιασμών  ψηφιακών συστημάτων σε υλικό με τη γλώσσα περιγραφής υλικού VHDL μέσω των κατ' οίκον εβδομαδιαίων mini εργαστηριακών ασκήσεων. (4) Η αξιολόγηση και αποτίμηση των διαφόρων  τεχνικών ελέγχου ολοκληρωμένων κυκλωμάτων αναφορικά και με οικονομικές παραμέτρους του σχεδιασμού και υλοποίησης ICs. (5) Η χρήση και πρακτική εφαρμογή τεχνικών ανίχνευσης και μοντελοποίησης σε λογικό επίπεδο των σφαλμάτων σε ICs καθώς και τεχνικών σχεδιασμού για ελεγξιμότητα  σε ICs.

Περιεχόμενο Μαθήματος: Εισαγωγικές  αλλά και προχωρημένες τεχνικές ανάπτυξης, σχεδιασμού και ελέγχου ολοκληρωμένων κυκλωμάτων. Τεχνικές βελτιστοποίησης ψηφιακών σχεδιασμών ως προς διάφορες παραμέτρους των σχεδιαζόμενων συστημάτων καθώς και εφαρμοσμένες πρακτικές επαλήθευσης των σχεδιασμών αυτών. Αναλυτική προσέγγιση της ροής σχεδιασμού, των επιπέδων σχεδιασμού και υλοποιήσεων ψηφιακών συστημάτων, Top/Down και Bottom/Up προσέγγιση με παραδείγματα, Θέματα χρονισμού και βελτιστοποίησης του. Σχεδίαση συστημάτων με pipeline για υψηλή απόδοση. Σχεδίαση συστημάτων με παραλληλισμό για χαμηλή κατανάλωση. Σχεδιασμοί με Pipeline, Αλγοριθμικό ξεδίπλωμα, και παράλληλη επεξεργασία για χαμηλή κατανάλωση. Υλοποίηση Testbenches για εξομοίωση συστημάτων. Προβλήματα σχεδίασης σε σύγχρονες τεχνολογίες μικρότερες των 90nm. Σχεδιασμός ψηφιακών συστημάτων με γλώσσα περιγραφής υλικού VHDL. Περιπτωσιολογική εκτενής ανάλυση και βελτιστοποιημένος επανασχεδιασμός  υλοποίησης σε υλικό κρυπτογραφικού αλγορίθμου: περίπτωση συνάρτησης κατακερματισμού SHA-1 με  pipelined σχεδιασμό. Εισαγωγή στον έλεγχο ορθής λειτουργίας. Μοντελοποίηση και ανίχνευση σφαλμάτων. Μοντέλα απλών και πολλαπλών σφαλμάτων. Κάλυψη σφαλμάτων. Σφάλματα γεφύρωσης. Λογική εξομοίωση και εξομοίωση σφαλμάτων. Σειριακοί, Παράλληλοι, Επαγωγικοί και Σύνδρομοι εξομοιωτές σφαλμάτων. Δημιουργία και εφαρμογή διανυσμάτων ελέγχου. Αλγεβρικές και αλγοριθμικές μέθοδοι εξαγωγής διανυσμάτων ελέγχου. Τεχνικές σχεδιασμού για ελεγξιμότητα. Σημεία παρατήρησης και ελέγχου. Ψευδό-εξαντλητικός έλεγχος. Scan-path τεχνική για έλεγχο ακολουθιακών κυκλωμάτων.

CSE 471 Βαθιά Μάθηση Ι

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

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος, οι φοιτητές θα μπορούν να: (1) Περιγράφουν και να ταξινομούν τις θεμελιώδεις αρχές σχεδίασης συστημάτων βαθιάς μάθησης. (2) Υλοποιούν και να χρησιμοποιούν καθιερωμένες τεχνικές για την κατασκευή και εκπαίδευση βαθιών νευρωνικών δικτύων. (3) Συνοψίζουν και να αξιολογούν κριτικά επιστημονικά άρθρα σχετικών θεμάτων. (4) Εφαρμόζουν μεθόδους βαθιάς μάθησης σε ολοκληρωμένα έργα, από τη διατύπωση προβλήματος έως την υλοποίηση και αξιολόγηση μοντέλου.

Περιεχόμενο Μαθήματος: (1) Εισαγωγή στη Βαθιά Μάθηση: Ιστορικό, σημασία και εφαρμογές. (2) Βασικά Νευρωνικά Δίκτυα: Perceptrons, συναρτήσεις ενεργοποίησης, πολυεπίπεδα δίκτυα, αλγόριθμος backpropagation. (3) Αναπαραστάσεις Δεδομένων: Μάθηση χαρακτηριστικών αυτόματα έναντι παραδοσιακής εξαγωγής χαρακτηριστικών. (4) Εκπαίδευση Νευρωνικών Δικτύων: Στοχαστική καθοδική κλίση και παραλλαγές, συναρτήσεις κόστους, σταθερότητα εκπαίδευσης. (5) Κανονικοποίηση: L2, dropout, early stopping, και η επίδρασή τους στη γενίκευση. (6) Βελτιστοποίηση και Ρύθμιση Υπερπαραμέτρων: Ρυθμός μάθησης, μέγεθος batch, αρχικοποίηση, κανονικοποίηση batch. (7) Συνελικτικά Δίκτυα (CNNs): Αρχές, αρχιτεκτονικές, και εξαγωγή χωρικών χαρακτηριστικών. (8) Επαναλαμβανόμενα Δίκτυα (RNNs): Μοντελοποίηση ακολουθιών, LSTM/GRU.

CSE 472 Βαθιά Μάθηση ΙΙ

Στόχοι Μαθήματος:Το μάθημα "Βαθιά Μάθηση ΙΙ" αποτελεί τη συνέχεια της σειράς στη βαθιά μάθηση και εστιάζει σε προχωρημένα θέματα και σύγχρονες τεχνικές. Βασιζόμενο στο υπόβαθρο του "Βαθιά Μάθηση Ι", αυτό το μάθημα εισάγει τους φοιτητές σε καινοτόμες αρχιτεκτονικές νευρωνικών δικτύων και μεθοδολογίες. Εξετάζονται σύγχρονες εξελίξεις όπως τα μοντέλα μετασχηματιστών (transformers), οι μηχανισμοί αυτοπροσοχής, τα μοντέλα διάχυσης (diffusion), και άλλες προχωρημένες γενετικές αρχιτεκτονικές. Περιλαμβάνονται επίσης τεχνικές τακτοποίησης, βελτιστοποίησης και εκπαίδευσης μεγάλης κλίμακας, καθώς και εφαρμογές αιχμής στον χώρο της έρευνας και της βιομηχανίας. Στόχος είναι οι φοιτητές να κατανοήσουν και να εφαρμόσουν αυτές τις τεχνικές, προετοιμαζόμενοι για σύγχρονα ερευνητικά προβλήματα και καινοτόμες λύσεις βαθιάς μάθησης.

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος, οι φοιτητές θα μπορούν να: (1) Περιγράφουν προηγμένες αρχιτεκτονικές βαθιάς μάθησης (όπως transformers) και να εξηγούν τις αρχές σχεδίασής τους. (2) Εφαρμόζουν τεχνικές αιχμής (π.χ. γενετικά μοντέλα, προχωρημένη τακτοποίηση) για την επίλυση σύνθετων προβλημάτων. (3) Αξιολογούν κριτικά σύγχρονες ερευνητικές δημοσιεύσεις και να παρουσιάζουν τα ευρήματά τους με σαφήνεια. (4) Αναπτύσσουν λύσεις βαθιάς μάθησης για εφαρμογές μεγάλης κλίμακας ή καινοτόμες περιοχές, αντιμετωπίζοντας πρακτικές προκλήσεις.

Περιεχόμενο Μαθήματος: (1) Μοντέλα Μετασχηματιστών & Αυτοπροσοχή: Αρχιτεκτονική transformers, μηχανισμός αυτοπροσοχής, μοντέλα όπως BERT και GPT. (2) Γενετικά Νευρωνικά Δίκτυα: VAEs, GANs, αρχές βαθιάς παραγωγικής μοντελοποίησης και σύνθεση δεδομένων. (3) Μοντέλα Διάχυσης: Εισαγωγή σε μοντέλα διάχυσης για παραγωγή εικόνας/ήχου (π.χ. DDPM). (4) Προχωρημένες Τεχνικές Κανονικοποίησης: Στρατηγικές για γενίκευση, όπως data augmentation, adversarial training. (5) Εφαρμογές Αιχμής: LLMs στη φυσική γλώσσα, όραση υπολογιστών, ενισχυτική μάθηση, ερμηνευσιμότητα και ηθικά ζητήματα.

CSE 473 Εισαγωγή στην Επιστήμη Δεδομένων

Στόχοι Μαθήματος: Το μάθημα εστιάζει στις βασικές έννοιες και πρακτικές που αφορούν την αξιόπιστη υλοποίηση ενός έργου επιστήμης δεδομένων. Οι φοιτητές θα εισαχθούν στη διαδικασία και στον κύκλο ζωής της επιστήμης δεδομένων που συνήθως ακολουθείται για την υλοποίηση ενός τέτοιου έργου. Επίσης, θα εξοικειωθούν με τις μεθόδους συλλογής, χειρισμού και καθαρισμού δεδομένων, αποκτώντας παράλληλα εμπειρία στην αξιολόγηση της ποιότητας των δεδομένων. Ως τρόπους αποθήκευσης και πρόσβασης σε δεδομένα, το μάθημα καλύπτει τις σχεσιακές βάσεις δεδομένων και τη γλώσσα SQL, καθώς και άλλα παραδείγματα βάσεων δεδομένων, όπως NoSQL,. Οι φοιτητές θα γνωρίσουν τις κατανομές δεδομένων και τη στατιστική ανάλυση – περιλαμβανομένων της συσχέτισης, των διαστημάτων εμπιστοσύνης και της επαγωγικής στατιστικής – και θα μάθουν πώς να τα εφαρμόζουν σε ένα προγραμματιστικό περιβάλλον. Τέλος, οι φοιτητές θα αποκτήσουν πρακτική εμπειρία σε διαφορετικούς τομείς προβλημάτων μηχανικής μάθησης (εποπτευόμενη και μη εποπτευόμενη) και θα εμβαθύνουν στα διαθέσιμα μοντέλα μηχανικής μάθησης, σχεδιάζοντας και αναπτύσσοντας κατάλληλες ροές δεδομένων που τα ενσωματώνουν. Επίσης θα εξεταστούν οι ηθικές προεκτάσεις στην επιστήμη δεδομένων. Με την ολοκλήρωση του μαθήματος, οι φοιτητές θα έχουν αποκτήσει γνώση στην εφαρμογή και πρακτικές δεξιότητες σε όλο το φάσμα της ροής εργασιών της επιστήμης δεδομένων, θα είναι σε θέση να σχεδιάζουν, να αναπτύσσουν, να υλοποιούν και να αξιολογούν τις δικές τους ολοκληρωμένες λύσεις επιστήμης δεδομένων.

Μαθησιακά Αποτελέσματα: Με το τέλος του μαθήματος, οι φοιτητές θα είναι σε θέση να: 1) Διακρίνουν μεταξύ διαφορετικών τύπων δεδομένων που παράγονται στην επιστήμη δεδομένων, καθώς και να εφαρμόζουν στρατηγικές για τη διασφάλιση της ποιότητας των δεδομένων. 2) Αντλούν δεδομένα από ποικίλες πηγές και σε διάφορες μορφές. 3) Εφαρμόζουν επαγωγική στατιστική και διαδικασίες στατιστικής για τον έλεγχο υποθέσεων σχετικά με χαρακτηριστικά και σχέσεις μέσα σε σύνολα δεδομένων. 4) Χρησιμοποιούν κατάλληλα διαγράμματα για την παρουσίαση και την εξερεύνηση συνόλων δεδομένων. 5) Χρησιμοποιούν βάσεις δεδομένων, τόσο σχεσιακές όσο και άλλων παραδειγμάτων, για την αποθήκευση και ανάκτηση δεδομένων. 6) Υλοποιούν αλγορίθμους εποπτευόμενης και μη εποπτευόμενης μηχανικής μάθησης. 7) Αναγνωρίζουν τα ηθικά ζητήματα σχετικά με την προέλευση των δεδομένων, την ιδιωτικότητα των ατόμων και τον αντίκτυπο που μπορεί να έχει η ανάλυση δεδομένων στην κοινωνία.

Περιεχόμενο Μαθήματος: Εβδομάδα 1: Εισαγωγή στην επιστήμη δεδομένων, κύκλοι ζωής και παραδείγματα παραδειγμάτων. Εβδομάδα 2: Συλλογή δεδομένων, διερευνητική ανάλυση δεδομένων, οπτικοποίηση δεδομένων. Εβδομάδα 3: Δομημένα και μη δομημένα δεδομένα, σχεσιακές βάσεις δεδομένων. Εβδομάδα 4: Κανονικοποίηση βάσεων δεδομένων, Γλώσσα Δομημένων Ερωτημάτων (SQL), APIs βάσεων δεδομένων, NoSQL. Εβδομάδα 5: Επεξεργασία δεδομένων και ακεραιότητα δεδομένων. Εβδομάδα 6: Πιθανότητες, κεντρικό οριακό θεώρημα, διαστήματα εμπιστοσύνης, συνδιακύμανση, συσχέτιση. Εβδομάδα 7: Επαγωγική στατιστική (παραμετρική και μη παραμετρική). Εβδομάδα 8: Εισαγωγή στη μηχανική μάθηση και εποπτευόμενη μάθηση (παλινδρόμηση). Εβδομάδα 9: Εποπτευόμενη μάθηση (ταξινόμηση). Εβδομάδα 10: Μη εποπτευόμενη μάθηση (συσταδοποίηση, μείωση διαστάσεων). Εβδομάδα 11: Ηθική στην επιστήμη δεδομένων, πρότυπα/νόμοι/οδηγίες για τα δεδομένα. Εβδομάδα 12: Ανάπτυξη και εξέλιξη μοντέλων επιστήμης δεδομένων. Εβδομάδα 13: Παρουσιάσεις φοιτητών.

EEN 214 Ηλεκτρονική Ι

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

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

Περιεχόμενο Μαθήματος: (1) Δίοδοι επαφής, (2) Διπολικοί τρανζίστορ επαφής (BJT), (3) Τρανζίστορ πεδίου (FET), (4) Πόλωση και σταθερότητα, (5) Ενισχυτές μικρού σήματος, (6) Διαφορικοί ενισχυτές, (7) Απόκριση συχνότητας.

EEN 215 Εργαστήριο Ηλεκτρικών Κυκλωμάτων ΙΙ

Στόχοι Μαθήματος: Οι στόχοι αυτού του μαθήματος είναι: (1) Nα αποκτήσουν οι φοιτητές εργαστηριακή hands-on εμπειρία στον σχεδιασμό ψηφιακών κυκλωμάτων και στην χρήση έτοιμων Ολοκληρωμένων Κυκλωμάτων (ICs) τόσο σε εκπαιδευτικά boards όσο και με CAD εργαλεία σε FPGAs. (1) Nα αποκτήσουν οι φοιτητές πρακτική γνώση και να εξασκηθούν στην χρήση των απαραίτητων σχεδιαστικών προσεγγίσεων για τον σχεδιασμό συστημάτων όπως η επαναχρησιμοποίηση, η ιεραρχική σχεδίαση, επίπεδα αφαιρετικότητας κ.α. (3) Nα αποκτήσουν οι φοιτητές πρακτική γνώση και να εξασκηθούν στις τεχνικές ελέγχου ορθής λειτουργίας και αποσφαλμάτωσης κατά την φάση σχεδιασμού (simulation). (4) Η μελέτη και κατανόηση των αρχών λειτουργίας των ψηφιακών συστημάτων και κυκλωμάτων, των παραμέτρων τους, τον σχεδιαστικών περιορισμών τους και των διάφορων τεχνολογιών υλοποίησης και σχεδίασης τους. (5) Η χρήση και κατανόηση της δομής και τρόπου λειτουργίας και αξιοποίησης των συσκευών FPGA, η σχηματική περιγραφή κυκλωμάτων συνδυαστικής και ακολουθιακής λογικής καθώς και η σύγκριση με την περιγραφή ψηφιακών κυκλωμάτων και συστημάτων με γλώσσες περιγραφής υλικού (HDLs). (6) H υλοποίηση τόσο σε εκπαιδευτικά boards όσο και με CAD εργαλεία σε FPGAs με ταυτόχρονη κατανόηση των αρχών που διέπουν τον σχεδιασμό κυκλωμάτων συνδυαστικής και ακολουθιακής λογικής καθώς και ο βέλτιστος σχεδιασμός τους και οι διάφορες παράμετροι υλοποίησης τους. (7) H ανάλυση, σχεδίαση και υλοποίηση απαριθμητών (σύγχρονων και ασύγχρονων) όπως και πιο πολύπλοκων σχεδιασμών όπως οι ALUs τόσο σε εκπαιδευτικά boards όσο και σε FPGAs μέσω CAD tools.

Μαθησιακά Αποτελέσματα: Στο τέλος αυτού του μαθήματος οι φοιτητές θα έχουν: (1) Αποκτήσει Ηands-on experience στον σχεδιασμό ψηφιακών κυκλωμάτων (συνδυαστικά και ακολουθιακά) και στην χρήση έτοιμων ολοκληρωμένων ICs τόσο σε CAD εργαλεία με τελική υλοποίηση σε FPGAs όσο και σε εκπαιδευτικά boards. (2) Αποκτήσει πρακτικές γνώσεις για να εφαρμόζουν τις απαραίτητες σχεδιαστικές τεχνικές όπως Eπαναχρησιμοποίηση, Ιεραρχικό σχεδιασμό, Επίπεδα αφαιρετικότητας κλπ για την αποδοτική υλοποίηση πολύπλοκων σχεδιασμών. (3) Αποκτήσει πρακτικές γνώσεις στο να κάνουν αποδοτικά έλεγχο ορθής λειτουργίας (simulation) και αποσφαλμάτωση των σχεδιασμών τους κατά την φάση σχεδιασμού. (4) Μελετήσει και κατανοήσει τις βασικές αρχές λειτουργίας και σχεδιασμού των ψηφιακών συστημάτων και κυκλωμάτων, τις παραμέτρους τους και σχεδιαστικούς περιορισμούς τους και τις διάφορες σχεδιαστικές επιλογές τους, τόσο σε FPGAs όσο και σε εκπαιδευτικά boards. (5) Κατανοήσει την εσωτερική δομή καθώς και την χρήση των FPGAs για σχεδιασμό συνδυαστικών και ακολουθιακών κυκλωμάτων. (6) Μάθει να χρησιμοποιούν CAD tools λογισμικά για τον σχεδιασμό, την εξομοίωση της λειτουργίας των ψηφιακών κυκλωμάτων καθώς και για την τελική υλοποίηση των σχεδιασμών τους σε FPGA. (7) Εκπαιδευτεί να χρησιμοποιούν άριστα τον εργαστηριακό εξοπλισμό για τους πειραματικούς σχεδιασμούς τους ήτοι τα breadboards, ICs, γεννήτριες συχνοτήτων, πολύμετρα, ψηφιακούς παλμογράφους κλπ. (8) Κατανοήσει την διαφορά μεταξύ υλοποίησης μέσω σχεδιαστικής περιγραφής και υλοποίησης μέσω γλωσσών περιγραφής υλικού HDL. (9) Υλοποιήσει σύνθετους σχεδιασμούς σε FPGAs, με διαχείριση της πολυπλοκότητας των σχεδιασμών και αποτίμηση των πλεονεκτημάτων/μειονεκτημάτων κάθε σχεδιαστικής προσέγγισης.

Περιεχόμενο Μαθήματος: Επεξήγηση εξοπλισμού, εξοικείωση με τις βασικές λογικές πύλες και σχεδιασμός και υλοποίηση κυκλωμάτων και εφαρμογών συνδυαστικής λογικής, με την χρήση ολοκληρωμένων SSI και MSI κυκλωμάτων. Σχεδιασμός και υλοποίηση Αθροιστών, Συγκριτή, Πολυπλεκτών, Αποκωδικοποιητών, Κωδικοποιητών κ.α., σε εκπαιδευτικό board. Εξοικείωση με Flip Flops: S-R flip flop, D flip flop και J-K flıp flop. Λειτουργίες Preset και Clear. Υλοποίηση απλών ακολουθιακών κυκλωμάτων και εφαρμογών (εκπαιδευτικό board). Σχεδιασμός και υλοποίηση Ασύγχρονων και Σύγχρονων απαριθμητών (εκπαιδευτικό board). Εισαγωγή στο πρόγραμμα σχεδιασμού ALTERA Quartus II, στις προγραμματιζόμενες συσκευές και στην υλοποίηση ψηφιακών κυκλωμάτων μέσω προγραμματισμού FPGA board. FPGΑs vs ICs, Σχηματική περιγραφή vs HDL περιγραφής, Simulation και Debugging στο Altera Quartus II, Κατέβασμα σχεδιασμού σε FPGA. Σχεδιασμός και υλοποίηση σε FPGA συνδυαστικών κυκλωμάτων: Αθροιστών, Συγκριτή, Πολυπλεκτών, Αποκωδικοποιητών, Κωδικοποιητών κ.α. Ιεραρχική σχεδίαση και αλυσιδωτή (cascade) σύνδεση. Τεχνική επαναχρησιμοποίησης. Σχεδιασμός και υλοποίηση σε FPGA  ψηφιακών κυκλωμάτων ακολουθιακής λογικής: S-R flıp flop, D flıp flop και J-K flıp flop. Κυκλώματα Ασύγχρονων και Σύγχρονων απαριθμητών  σε FPGAs. Ιεραρχική σχεδίαση και υλοποίηση σε FPGA board Αριθμητικής και Λογικής Μονάδας (ALU). Επίπεδα αφαιρετικότητας, πλεονεκτήματα και μειονεκτήματα. Σχηματική περιγραφή vs HDL περιγραφής

EEN 318 Ψηφιακή επεξεργασία σημάτων

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

Μαθησιακά Αποτελέσματα: Να αποκτήσουν ολοκληρωμένη γνώση ανάλυσης σήματος, προδιαγραφών, λειτουργίας, σχεδίασης, ανάλυσης και προγραμματισμού ψηφιακών συστημάτων. Επίσης αποκτήστε γνώσεις για συστήματα και ιδιότητες διακριτού χρόνου, συνεχή και διακριτό μετασχηματισμό Fourier και εφαρμογές. Εισαγωγή στη σχεδίαση πεπερασμένων και άπειρων ψηφιακών φίλτρων (FIR και IIR) κρουστικής απόκρισης.

Περιεχόμενο Μαθήματος: Το μάθημα βασίζεται στα βασικά στοιχεία της ανάλυσης και επεξεργασίας ψηφιακών σημάτων και συστημάτων, που προσφέρονται στο προαπαιτούμενο μάθημα και έχει ως κύριους στόχους τους: (1)Ανακεφαλαίωση σε σήματα, συστήματα, ημιτονοειδείς δειγματοληψίες. Αλλαγή και δίπλωμα. Θεώρημα δειγματοληψίας. (2) Συστήματα και ιδιότητες διακριτού χρόνου. Παρορμητική απόκριση. Σύγκλιση. Εφαρμογή σε περιβάλλον MATLAB. (3) Σειρά, μετασχηματισμός Fourier και ιδιότητες. Απόκριση Συχνότητας Συστήματος. Συστήματα απόκρισης πεπερασμένης και άπειρης κρούσης (FIR, IIR). Εφαρμογές σε περιβάλλον MATLAB. (4)Απόκριση συχνότητας συστημάτων FIR και IIR. Γραμμική φάση. (5) Δειγματοληψία συχνότητας. Διακριτός μετασχηματισμός Fourier. Εφαρμογές σε περιβάλλον MATLAB. (6) Ιδιότητες και εφαρμογές διακριτού μετασχηματισμού Fourier. Ανάλυση φάσματος σήματος. Κυκλική συνέλιξη. (7) Εισαγωγή στα ψηφιακά φίλτρα. Σχεδιασμός φίλτρων FIR με χρήση παραθύρων. Εφαρμογές σε περιβάλλον MATLAB. (8) Σχεδιασμός φίλτρων FIR με δειγματοληψία συχνότητας. (9) Z-Transform. Υλοποίηση σε περιβάλλον MATLAB. (10) Σχεδιασμός φίλτρων IIR. (11) Εφαρμογή συστημάτων διακριτού χρόνου. Καλύπτονται τα ακόλουθα κεφάλαια: (1) Δειγματοληψία ημιτονοειδών σημάτων. Θεώρημα δειγματοληψίας. (2)Συστήματα διακριτού χρόνου και οι ιδιότητές τους. (3) Σειρά Fourier και μετασχηματισμός Fourier και ιδιότητες. Συστήματα πεπερασμένης και άπειρης συνέλιξης (απόκρισης) (FIR, IIR). (4) Δειγματοληψία συχνότητας. Διακριτός μετασχηματισμός Fourier. Κυκλική συνέλιξη. (5) Εισαγωγή στα ψηφιακά φίλτρα. Σχεδιασμός φίλτρων FIR με χρήση παραθύρων και δειγματοληψία συχνότητας. (6)Μετασχηματισμός Ζ. (7) Σχεδιασμός φίλτρων IIR.

EEN 413 Φωτονική

Στόχοι Μαθήματος: Κατανόηση των βασικών ιδιοτήτων του φωτός, των οπτικών κυματοδηγών και γενικότερα των βασικών εννοιών της φωτονικής

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

Περιεχόμενο Μαθήματος: (1) Εισαγωγή στη Φωτονική και τις Οπτικές Επικοινωνίες: Επισκόπηση της φωτονικής και των εφαρμογών της σε διάφορους τομείς όπως η τεχνολογία πληροφοριών και επικοινωνιών, η υγειονομική περίθαλψη, οι βιοεπιστήμες, η οπτική ανίχνευση, ο φωτισμός, η ενέργεια και η βιομηχανία. Θα συζητηθεί η εξέλιξη των συστημάτων φωτεινού κύματος πριν από την εισαγωγή στις βασικές αρχές των συστημάτων οπτικών επικοινωνιών. (2) Η φύση του φωτός και η παραγωγή ηλεκτρομαγνητικής ακτινοβολίας για εφαρμογές φωτονικής (i) Κυματική φύση του φωτός: Φωτεινά κύματα σε ομοιογενή μέσα. Δείκτης διάθλασης. Ομαδική ταχύτητα και ομαδικός δείκτης. Μαγνητικό πεδίο, ακτινοβολία και διανύσμα Πόιντινγκ. Νόμος του Σνελ και ολική εσωτερική ανάκλαση. Εξισώσεις Fresnel. Πολλαπλή παρέμβαση και οπτικοί συντονιστές. Χρονική και χωρική συνοχή. Αρχές περίθλασης. Πόλωση. Μαθηματικές μέθοδοι καθορισμού των χαρακτηριστικών του φωτός (παράμετροι Stokes, διανύσματα και πίνακες Jones) και πώς καθορίζονται αυτά τα χαρακτηριστικά. (ii) Οπτικές πηγές και λέιζερ: Επιστήμη και υλικά ημιαγωγών. Έννοιες ημιαγωγών και ενεργειακές ζώνες. Άμεσοι και έμμεσοι ημιαγωγοί: διαγράμματα E-k. Αρχές p-n επαφής και διαγράμματα ενεργειακών ζωνών. Αρχές εκπομπής φωτός και ενίσχυσης σε λέιζερ. Λέιζερ (παλμικά και συνεχούς κύματος), διόδους εκπομπής φωτός (LEDs), ημιαγώγιμα λέιζερ (λέιζερ ακμής και VCSELs). Εξίσωση ρυθμού σε σταθερή κατάσταση. Λέιζερ στερεάς κατάστασης μονής συχνότητας. Οπτικοί ενισχυτές. (3)Οπτικοί κυματοδηγοί: Η διάδοση του φωτός σε οπτικούς κυματοδηγούς. Διηλεκτρικοί κυματοδηγοί και οπτικές ίνες. Συμμετρικός επίπεδος διηλεκτρικός κυματοδηγός. Διάχυση τρόπων και κυματοδηγού στον επίπεδο κυματοδηγό. Οπτική ίνα βαθμίδας δείκτη. Αριθμητικό άνοιγμα. Διασπορά σε μονοτροπικές ίνες. Ρυθμός bit, διασπορά και οπτικές μη-γραμμικότητες. Ηλεκτρικό και οπτικό εύρος ζώνης. Οπτική ίνα μεταβλητού δείκτη διάθλασης. Εξασθένιση στις οπτικές ίνες - απορρόφηση φωτός και σκέδαση. Κατασκευή οπτικών ινών. (4) Οπτικοί ανιχνευτές και δέκτες: Η ανίχνευση του φωτός και η αποδιαμόρφωση του φωτός, περιλαμβανομένων των φωτοαγωγών, φωτοδιόδων και συστημάτων δεκτών.Αρχή λειτουργίας φωτοδιόδου p-n επαφής. Εξωτερικό φωτορεύμα. Συντελεστής απορρόφησης και υλικά φωτοδιόδων. Κβαντική απόδοση και απόκριση. Οι φωτοδιόδοι p-i-n, κρουστικές και ετεροεπαφής. Φωτοτρανζίστορ. Φωτοαγώγιμοι ανιχνευτές και κέρδος φωτοαγωγιμότητας. Θόρυβος στους φωτοανιχνευτές. Ζητήματα συστήματος: πηγές θορύβου και λόγος σήματος προς θόρυβο, περιορισμοί χρονικής απόκρισης και αποτελεσματικού εύρους ζώνης. (5) Ενσωμάτωση πληροφορίας σε ηλεκτρομαγνητική ακτινοβολία & τεχνικές επικοινωνίας: (i) Βασικές αρχές διαμόρφωσης: Πόλωση και διαμόρφωση του φωτός. Διάδοση φωτός σε ανισοτροπικά μέσα: διπλοθλαστικότητα. Διπλοθλαστικές οπτικές συσκευές. Οπτική δραστηριότητα και κυκλική διπλοθλαστικότητα. Ηλεκτροοπτικά φαινόμενα. Ενσωματωμένοι οπτικοί διαμορφωτές. Ακουστοοπτικός διαμορφωτής. Μαγνητοοπτικά φαινόμενα. Μη γραμμική οπτική και δημιουργία δεύτερης αρμονικής, (ii) Διαμόρφωση: Ακουστοοπτικές και ηλεκτροοπτικές τεχνικές, εναλλαγή LED, αναλογικές και ψηφιακές τεχνικές με λέιζερ, τεχνικές διαμόρφωσης AM, FM και φάσης. (6) Εφαρμογές συστημάτων φωτεινού κύματος: Σύνοψη σημαντικών εννοιών της ψηφιακής επικοινωνίας όπως η ψηφιακή μετάδοση βασικής και ευρείας ζώνης, ρυθμός σφάλματος bit, ρυθμός σφαλμάτων ομάδας bit και πολυπλεξία διαίρεσης χρόνου (TDM) και πολυπλεξία διαίρεσης μήκους κύματος (WDM). Τάσεις και νέες κατευθύνσεις στις εφαρμογές φωτονικής, (i) Θόρυβος και ανίχνευση: Θόρυβος που προέρχεται από τις ιδιότητες των ινών, των πομπών, των δεκτών και των ενισχυτών καθώς και ο καθορισμός του ρυθμού σφαλμάτων bit, (ii) Οπτικοί Πολυπλέκτες και Αποπολυπλέκτες: Αρχή λειτουργίας πολυπλεκτών και αποπολυπλεκτών. Διάφορες οπτικές συσκευές απαραίτητες για οπτικά δίκτυα, οπτικοί ενισχυτές, συσκευές ελέγχου πόλωσης, οπτικοί απομονωτές, οπτικά φίλτρα και διαθλαστικά πλέγματα, διαμορφωτές και διακόπτες, (iii) Σχεδίαση οπτικών συστημάτων: Διαδικασία σχεδίασης συνδέσεων οπτικών συνδέσμων σημείου προς σημείο.

EEN 442 Ανάλυση και Προστασία Συστημάτων Ηλεκτρικής Ισχύος

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

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση αυτού του μαθήματος, οι φοιτητές θα πρέπει να είναι σε θέση να: (1) Κατανοούν τις θεμελιώδεις υπολογιστικές μεθόδους για την ανάλυση της λειτουργίας των ηλεκτρικών συστημάτων ισχύος τόσο σε μόνιμη κατάσταση όσο και υπό συνθήκες σφάλματος, (2) Κατανοούν και να αναλύουν τα βασικά όρια μεταφοράς ισχύος στα ηλεκτρικά συστήματα, και (3) Κατανοούν τις βασικές αρχές λειτουργίας των διατάξεων προστασίας και τα κριτήρια επιλογής προστασίας.

Περιεχόμενο Μαθήματος: Το μάθημα αποτελείται από τα εξής μέρη: (1) Επανάληψη βασικών αρχών ηλεκτρικής ισχύος (ανά μονάδα, μοντέλα γραμμών/ μετασχηματιστών/ γεννητριών/ φορτίων), (2) Βασικές αρχές λειτουργίας συστημάτων ηλεκτρικής ισχύος (Φόρτιση χαρακτηριστικής αντίστασης, γραμμή χωρίς απώλειες, απόδοση, ικανότητα φόρτισης, μέγιστη μεταφορά ισχύος μέσω γραμμής, χαρακτηριστικές P-δ και P-V, φαινόμενο Ferranti), (3) Ανάλυση ροής ισχύος (Πίνακας αγωγιμότητας κόμβων, μέθοδος Newton-Raphson, μέθοδος ταχείας αποσύζευξης, ροή ισχύος DC), (4) Ασύμμετρη λειτουργία (Συμμετρικά στοιχεία, θετική/ αρνητική/ μηδενική ακολουθία και σχετικά διαγράμματα), (5) Ανάλυση σφαλμάτων (Μοντελοποίηση γραμμής/ μετασχηματιστή/ γεννήτριας κατά τη διάρκεια σφάλματος, απόλυτα σφάλματα), (6) Βασικές αρχές προστασίας (Αρχές, δομή, προστασία υπερέντασης, προστασία απόστασης, διαφορική προστασία, ψηφιακά ρελέ, σχεδίαση και συντονισμός προστασίας).

EEN 443 Ηλεκτρονικά Ισχύος

Στόχοι Μαθήματος: Το μάθημα αυτό στοχεύει την προχωρημένη κατανόηση των συστημάτων ηλεκτρονικών ισχύος, καλύπτοντας διατάξεις ημιαγωγών ισχύος, τοπολογίες μετατροπέων, ανάλυση κυκλωμάτων και πρακτικές εφαρμογές. Με βάση προϋπάρχουσες γνώσεις στην ηλεκτρονική και τη θεωρία κυκλωμάτων, οι φοιτητές αναπτύσσουν ικανότητες ανάλυσης, σχεδιασμού και βελτιστοποίησης κυκλωμάτων ισχύος. Μέσω προβληματοκεντρικής μάθησης και προσομοιώσεων, οι φοιτητές εφαρμόζουν θεωρητικές έννοιες σε πρακτικά σενάρια, επιλύουν σύνθετα τεχνικά προβλήματα και επαληθεύουν τα σχέδια κυκλωμάτων. Το μάθημα παρέχει ένα ισχυρό υπόβαθρο για επαγγελματική σταδιοδρομία στη βιομηχανία και την έρευνα. Στόχοι: (1) Εισαγωγή στις θεμελιώδεις έννοιες και τεχνικές που χρησιμοποιούνται στα σύγχρονα ηλεκτρονικά ισχύος. (2) Κατανόηση της επιλογής και εφαρμογής των διατάξεων ισχύος σε πραγματικά συστήματα. (3) Εξοικείωση με βασικά κυκλώματα μετατροπής ενέργειας και τον ρόλο τους στην επεξεργασία ηλεκτρικής ισχύος. (4) Xρήση εργαλείων προσομοίωσης ως μέρος της διαδικασίας σχεδιασμού και ανάλυσης ηλεκτρονικών κυκλωμάτων ισχύος. (5) Αντιμετώπιση προκλήσεων στον σχεδιασμό αποδοτικών και αξιόπιστων μετατροπέων. (6) Επισκόπηση σύγχρονων τάσεων και τεχνολογιών στα ηλεκτρονικά ισχύος.

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος, οι φοιτητές θα είναι σε θέση να: (1) Αξιολογούν ιδιότητες, λειτουργία και απόδοση διατάξεων ισχύος όπως δίοδοι, MOSFETs, IGBTs και διατάξεων ισχύος από υλικά ευρέος ενεργειακού χάσματος. (2)  Σχεδιάζουν και βελτιστοποιούν κυκλώματα ηλεκτρονικών ισχύος με χρήση διακοπτών ημιαγωγών. (3)  Αναλύουν τοπολογίες μετατροπής ισχύος (AC/DC, DC/DC, DC/AC, AC/AC, ενεργά φίλτρα) και την απόδοσή τους. (4) Ερμηνεύουν κυματομορφές και χαρακτηριστικά ρευμάτων για την ανάλυση της συμπεριφοράς κυκλωμάτων. (5) Χρησιμοποιούν εργαλεία προσομοίωσης (όπως SPICE) για σχεδίαση, επαλήθευση και βελτιστοποίηση κυκλωμάτων. (6) Επιλύουν σύνθετα προβλήματα που συνδυάζουν θεωρία και πρακτική υλοποίηση. (7) Σχεδιάζουν κυκλώματα για εφαρμογές σε ΑΠΕ (π.χ. φωτοβολταϊκά, ανεμογεννήτριες). (8) Εξετάζουν νέες τεχνολογίες και αρχιτεκτονικές στον τομέα των ηλεκτρονικών ισχύος.

Περιεχόμενο Μαθήματος: (1) Διακόπτες Ισχύος Ημιαγωγών (Υλικά και ιδιότητες, Χαρακτηριστικά και δείκτες απόδοσης, Ιδανικός διακόπτης και βασικές αρχές, Δίοδοι και ανορθωτές, MOSFETs, IGBTs, Υλικά ευρέος ενεργειακού χάσματος), (2) Τοπολογίες Αντιστροφέων και Λειτουργία (Οι πέντε βασικοί μετατροπείς (AC/DC, DC/DC, DC/AC, AC/AC, ενεργά φίλτρα), Παραγωγή και ανάλυση κυματομορφών και ρευμάτων), (3) Ανάλυση Κυκλωμάτων Ισχύος (Μοντελοποίηση, προσομοίωση και ανάλυση κυκλωμάτων με χρήση SPICE), (4) Εφαρμογές σε ΑΠΕ (Ενδεικτικές εφαρμογές σε φωτοβολταϊκά και ανεμογεννήτριες), (5) Νέες Τάσεις (Περιγραφή σύγχρονων τάσεων και συστημάτων στα ηλεκτρονικά ισχύος).

EEN 445 Ανανεώσιμες Πηγές Ενέργειας

Στόχοι Μαθήματος: Το μάθημα αυτό έχει σχεδιαστεί ώστε να παρέχει στους φοιτητές της μηχανικής εις βάθος και κριτική κατανόηση των τεχνολογιών ανανεώσιμων πηγών ενέργειας, με έμφαση στα φωτοβολταϊκά και στα συστήματα αιολικής ενέργειας. Στόχος είναι η ανάπτυξη ικανοτήτων ανάλυσης, σχεδιασμού και υλοποίησης τέτοιων συστημάτων, λαμβάνοντας υπόψη τεχνικούς περιορισμούς και θέματα βιωσιμότητας.  Κύριοι στόχοι: (1) Εμβάθυνση της θεωρητικής και πρακτικής γνώσης στις βασικές τεχνολογίες ανανεώσιμων πηγών ενέργειας. (2) Ανάπτυξη κριτικής σκέψης και ικανοτήτων σχεδιασμού για την ανάλυση και ενσωμάτωση συστημάτων ΑΠΕ. (3) Εφαρμογή σύνθετων αρχών μηχανικής για την ανάπτυξη αποδοτικών και βιώσιμων λύσεων ενέργειας. (4) Εκτίμηση της απόδοσης των συστημάτων με τεχνικά και περιβαλλοντικά κριτήρια. (5) Εξοικείωση με τεχνολογίες αποθήκευσης ενέργειας και υβριδικές διατάξεις.

Μαθησιακά Αποτελέσματα: Με την επιτυχή ολοκλήρωση του μαθήματος, οι φοιτητές θα μπορούν να: (1) Αποκτήσουν εις βάθος γνώση στην ανάλυση, σχεδίαση και υλοποίηση φωτοβολταϊκών και ανεμογεννητριών. (2) Κριτικά να αξιολογούν τη λειτουργία, απόδοση και ενσωμάτωση των συστημάτων ΑΠΕ. (3) Αναπτύσσουν τεχνικές προδιαγραφές και αξιολογούν συστήματα υπό διαφορετικές συνθήκες. (4) Σχεδιάζουν και βελτιστοποιούν ΑΠΕ χρησιμοποιώντας προχωρημένες μεθόδους μηχανικής. (5) Χρησιμοποιούν εργαλεία προσομοίωσης για ανάλυση της συμπεριφοράς των συστημάτων. (6) Βελτιώνουν την απόδοση φωτοβολταϊκών και αιολικών συστημάτων. (7) Συγκρίνουν και επιλέγουν κατάλληλες λύσεις αποθήκευσης ενέργειας. (8) Προτείνουν καινοτόμες λύσεις για ενίσχυση της λειτουργικότητας και ανθεκτικότητας των συστημάτων.

Περιεχόμενο Μαθήματος: Φωτοβολταϊκά Συστήματα (Το φωτοβολταϊκό φαινόμενο και οι αρχές μετατροπής ηλεκτρικής ενέργειας, Κατασκευή και ηλεκτρικά χαρακτηριστικά φωτοβολταϊκών πάνελ,  Σχεδίαση και υλοποίηση φωτοβολταϊκών διατάξεων, Ηλεκτρονικοί μετατροπείς και ο ρόλος τους σε φωτοβολταϊκά συστήματα, Τεχνικές MPPT (Παρακολούθηση Σημείου Μέγιστης Ισχύος).  Συστήματα Αιολικής Ενέργειας (Βασικές αρχές αιολικής ενέργειας και είδη ανεμογεννητριών.  Αρχές εξαγωγής ισχύος και ζητήματα απόδοσης. Μετατροπείς για ανεμογεννήτριες. Στρατηγικές MPPT για εφαρμογές αιολικής ενέργειας. Ηλεκτρικές μηχανές για εφαρμογές αιολικής ενέργειας). Άλλες τεχνολογίες ανανεώσιμων πηγών ενέργειας και αποθήκευση ενέργειας (Επισκόπηση πρόσθετων τεχνολογιών (π.χ. μικρά υδροηλεκτρικά). Τεχνολογίες μπαταριών και άλλα συστήματα αποθήκευσης ηλεκτρικής ενέργειας.

LCE 115 Αγγλικά για Πληροφορική και Μηχανικούς Υπολογιστών Ι

Στόχοι Μαθήματος: Στόχος  του μαθήματος είναι να καταστήσει τους φοιτητές ικανούς να επικοινωνούν στα Αγγλικά σε επίπεδο Β1-Β2 του Κοινού Ευρωπαϊκού Πλαισίου Αναφοράς (ΚΕΠΑ) για τις Γλώσσες, σε θέματα σχετικά με την κοινωνική και φοιτητική τους ζωή (πανεπιστήμιο, πρόγραμμα σπουδών, κλάδος σπουδών τους), καθώς και σε θέματα που αφορούν στη μελλοντική τους επαγγελματική σταδιοδρομία (επαγγέλματα του κλάδου, σύντομο βιογραφικό, κ.λπ.).  Ειδικότερα σε σχέση με το πτυχίο Πληροφορικής και Μηχανικών Υπολογιστών στοχεύει να καταστήσει τους φοιτητές ικανούς στη διαχείριση αγγλόγλωσσης βιβλιογραφίας, όπως και στην κατανόηση και επεξεργασία υλικού συναφές με τις επιστημονικές κατευθύνσεις Πληροφορικής και Μηχανικών Υπολογιστών.

Μαθησιακά Αποτελέσματα: Μέχρι το τέλος του μαθήματος, οι φοιτητές θα είναι σε θέση να: (1) Ανταποκρίνονται σε  επικοινωνιακές περιστάσεις, σενάρια και ρόλους, μέσα από αυθεντικές καταστάσεις της κοινωνικής και φοιτητικής τους ζωής (πανεπιστήμιο, οδηγίες για πρόσβαση σε κτήρια, κλάδος σπουδών τους), καθώς και από θέματα που αφορούν την μελλοντική τους επαγγελματική σταδιοδρομία (χώρος εργασίας, επαγγέλματα του κλάδου, καθήκοντα). (2) Επικοινωνούν με ικανοποιητική επάρκεια επιπέδου Β1-Β2 του ΚΕΠΑ για τις γλώσσες (παραγωγή και κατανόηση προφορικού και γραπτού λόγου) στα παραπάνω θέματα, μέσα από αντίστοιχα και σχετικά κειμενικά είδη, σενάρια, και ρόλους. (3) Κατανοούν αγγλόγλωσσα γραπτά κείμενα που αφορούν την Πληροφορική και τους Μηχανικούς Υπολογιστών, την Ηλεκτρολογία, διάφορες καινούργιες τεχνολογίες και αρχίζουν να αναπτύσσουν την ικανότητα κριτικής ανάλυσης αυτών των κειμένων. (4) Έχουν αναπτύξει ικανότητες προφορικής κατανόησης και επαρκούς παρακολούθησης αγγλόγλωσσων ομιλιών και σεμιναρίων από ξένους επισκέπτες στο Τμήμα. (5) Έχουν αναπτύξει επαρκείς ικανότητες ατομικής, ακαδημαϊκής έρευνας προς εκπλήρωση των σχετικών τους υποχρεώσεων στο πρόγραμμα σπουδών.

Περιεχόμενο Μαθήματος: Πτυχίο στη Πληροφορική και Μηχανική Υπολογιστών – τι σημαίνει; Το Τεχνολογικό Πανεπιστήμιο Κύπρου – ταυτότητα. Λήψη σημειώσεων. Τύποι μάθησης. Βιβλιογραφικές αναφορές, παραφράσεις, λογοκλοπή. Συγγραφή περίληψης. Δεξιότητες χρήσης βιβλιοθήκης. Δεξιότητες χρήσης λεξικών (μονόγλωσσα, δίγλωσσα). Καριέρα στον Τομέα των Μηχανικούς Υπολογιστών. Εξοικείωση με κειμενικά είδη από τους Ηλεκτρολόγους Μηχανικούς και Ηλεκτρολογία. Ψηφιακές γνώσεις. The Information age. Graphical User Interfaces. Πολυμέσα. Δίκτυα. Το διαδίκτυο. Συστήματα επικοινωνίας. Ρομποτική

LCE 116 Αγγλικά για Πληροφορική και Μηχανικούς Υπολογιστών ΙΙ

Στόχοι Μαθήματος: Γενικός στόχος του δεύτερου μέρους του ειδικού μαθήματος είναι να καταστήσει τους φοιτητές ικανούς να επικοινωνούν στα Αγγλικά σε επίπεδο Β1-Β2 του Κοινού Ευρωπαϊκού Πλαισίου Αναφοράς (ΚΕΠΑ) για τις Γλώσσες, σε θέματα σχετικά με την κοινωνική και φοιτητική τους ζωή (πανεπιστήμιο, πρόγραμμα σπουδών, κλάδος σπουδών τους), καθώς και σε θέματα που αφορούν στη μελλοντική τους επαγγελματική σταδιοδρομία (επαγγέλματα του κλάδου, σύντομο βιογραφικό, κ.λπ.).  Η υποβοηθούμενη από τις νέες τεχνολογίες εκμάθηση της γλώσσας και του πολιτισμού γίνεται μέσα από επικοινωνιακές περιστάσεις οι οποίες αντλούνται από περιστάσεις αυθεντικής επικοινωνίας που πιθανόν να βρεθούν οι φοιτητές στη ζωή τους, κατά τη διάρκεια των σπουδών τους και της επαγγελματικής τους σταδιοδρομίας. Η απόκτηση γλωσσικής ικανότητας γίνεται μέσα από αντίστοιχα κειμενικά είδη, σενάρια, και ρόλους παραγωγής και κατανόησης προφορικού και γραπτού λόγου. Το πρόγραμμα βασίζεται σε σύγχρονες θεωρίες μάθησης όπως τον εποικοδομητισμό και τον κοινωνικό εποικοδομητισμό και μαθητοκεντρικές μεθόδους διδασκαλίας, και αναπτύσσει τόσο τις γλωσσικές δεξιότητες των φοιτητών όσο και μεταβιβάσιμες δεξιότητες του 21ου  αιώνα όπως επικοινωνία, χρήση των νέων τεχνολογιών πληροφόρησης και επικοινωνίας, συνεργασία, δημιουργικότητα και καινοτομία, κριτική σκέψη και διαπολιτισμική συνείδηση καθώς και δεξιότητες όπως την αυτόνομη και δια βίου μάθηση. Ειδικότερα σε σχέση με την Ηλεκτρολογία και τους Ηλεκτρονικούς Υπολογιστές, το μάθημα στοχεύει να καταστήσει τους φοιτητές ικανούς στη διαχείριση αγγλόγλωσσης βιβλιογραφίας, όπως και στην κατανόηση και επεξεργασία υλικού συναφές με τις επιστημονικές κατευθύνσεις της Ηλεκτρολογίας, της Πληροφορικής και της Μηχανικής Υπολογιστών.

Μαθησιακά Αποτελέσματα: Μέχρι το τέλος του μαθήματος, οι φοιτητές θα είναι σε θέση να: (1) Αντλούν επικοινωνιακές περιστάσεις, σενάρια και ρόλους, μέσα από αυθεντικές καταστάσεις της κοινωνικής και φοιτητικής τους ζωής (πανεπιστήμιο, κλάδος σπουδών τους), καθώς και από θέματα που αφορούν την μελλοντική τους επαγγελματική σταδιοδρομία (χώρος εργασίας, επαγγέλματα του κλάδου, καθήκοντα). (2) Επικοινωνούν με ικανοποιητική επάρκεια επιπέδου Β1-Β2 του ΚΕΠΑ για τις γλώσσες (παραγωγή και κατανόηση προφορικού και γραπτού λόγου) στα πιο πάνω θέματα, μέσα από αντίστοιχα και σχετικά κειμενικά είδη, σενάρια, και ρόλους. (3) Κατανοούν αγγλόγλωσσα γραπτά κείμενα που αφορούν τους Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών, διάφορες καινούργιες τεχνολογίες και αρχίζουν να αναπτύσσουν την ικανότητα κριτικής ανάλυσης αυτών των κειμένων. (4) Έχουν αναπτύξει ικανότητες προφορικής κατανόησης και επαρκούς παρακολούθησης αγγλόγλωσσων ομιλιών και σεμιναρίων από ξένους επισκέπτες στο Τμήμα. Έχουν αναπτύξει επαρκείς ικανότητες ατομικής, ακαδημαϊκής έρευνας προς εκπλήρωση των σχετικών τους υποχρεώσεων στο πρόγραμμα σπουδών της Πληροφορικής και των Μηχανικών Υπολογιστών.

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

ΕEI 101 Προχωρημένα Μαθηματικά Ι

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

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

Περιεχόμενο Μαθήματος: (1) Συναρτήσεις μιας μεταβλητής: Εισαγωγικές έννοιες Σύνολα, Διαστήματα,  Ένωση και τομή συνόλων. Ορισμός συνάρτησης. Πεδίο ορισμού και πεδίο τιμών. Γραφική παράσταση συνάρτησης. Πράξεις πραγματικών συναρτήσεων. Σύνθεση πραγματικών συναρτήσεων και πεδίο ορισμού. Σύνθετες συναρτήσεις.  Αντίστροφές συναρτήσεις και πεδίο ορισμού. (2) Όρια: Ορισμός. Πλευρικά όρια. Βασικά θεωρήματα. Άπειρα όρια. Όρια συνάρτησης όταν το χ τείνει στο  . Όρια βασικών συναρτήσεων. Ιδιότητες. (3) Συνέχεια συναρτήσεων: Ορισμός. Συνέχεια συνάρτησης σε ανοιχτό και κλειστό διάστημα. Είδη ασυνέχειας. Ιδιότητες και θεωρήματα συνεχών συναρτήσεων. Όριο και Συνέχεια σύνθεσης συναρτήσεων. (4) Παραγώγιση: Ορισμός. Παραγώγου. Παράγωγοι Βασικών συναρτήσεων. Βασικοί Κανόνες Παραγώγισης. Παράγωγος Σύνθετης Συνάρτησης. Παράγωγοι Πεπλεγμένων Συναρτήσεων. Παράγωγος συναρτήσεων σε παραμετρική μορφή. (5)  Εφαρμογές Παραγώγισης: Μονοτονία  Συναρτήσεως. Τοπικά Ακρότατα. Απόλυτα ακρότατα. Κυρτές και Κοίλες Συναρτήσεις. Σημεία Καμπής. Κανόνες de l'Hospital. (6) Ολοκληρώματα : Αόριστο ολοκλήρωμα. Βασικοί τύποι ολοκληρωμάτων. Ιδιότητες του Αορίστου ολοκληρώματος. Τεχνικές ολοκλήρωσης: Μέθοδος της αντικατάστασης. Ολοκλήρωση ρητών συναρτήσεων - Mερικά κλάσματα. Ολοκλήρωση κατά παράγοντες. (7) Ορισμένο ολοκλήρωμα και εφαρμογές : Υπολογισμοί εμβαδών. Υπολογισμοί όγκων εκ περιστροφής. (8) Μιγαδικοί αριθμοί: Ορισμοί. Σχεδιάγραμμα του Argand. Πράξεις Μιγαδικών αριθμών σε Καρτεσιανή μορφή, Πολική και Εκθετική μορφή. Μετατροπή μιγαδικών αριθμών από μια μορφή σε άλλη. Αλγεβρικές πράξεις μιγαδικών αριθμών. (9) Διαφορικές Εξισώσεις 1ης Τάξης: Εξισώσεις Χωριζόμενων     Μεταβλητών.  Ομογενείς Διαφορικές Εξισώσεις.  Ακριβείς Διαφορικές Εξισώσεις. Γραμμικές Διαφορικές Εξισώσεις. (10) Η έννοια της σειράς. Σύγκλιση σειράς. Κριτήρια Σύγκλισης . Δυναμοσειρές. Σειρές Taylor.  Σύγκλιση Δειναμοσειρών. Παραγώγιση και Ολοκλήρωση Δειναμοσειρών.

ΕEI 102 Φυσική Ι

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

Μαθησιακά Αποτελέσματα: Μετά την επιτυχή ολοκλήρωση του μαθήματος, ο διδασκόμενος θα πρέπει: (1) να είναι σε θέση να εφαρμόσει την θεωρία για την επίλυση οποιουδήποτε προβλήματος Νευτώνειας Μηχανικής και Θερμοδυναμικής, (2) να πειστεί ότι η φυσική είναι σημαντική και άμεσα συνδεδεμένη με ότι βλέπουμε γύρω μας, (3) να αναπτύξει την φυσική του διαίσθηση και την ικανότητα του για κατασκευή μοντέλων για επίλυση προβλημάτων.

Περιεχόμενο Μαθήματος: Κινηματική, Νόμοι του Νεύτωνα, Έργο, ενέργεια, διατήρηση της ενέργειας.  Ορμή και κρούσεις. Περιστροφή στερεού σώματος, περιστρεφόμενα συστήματα αναφοράς. Κίνηση στερεού σώματος. Παγκόσμια έλξη.  Ταλαντώσεις. Μηχανική ρευστών. Κυματική κίνηση. Θερμοκρασία. Ιδανικά αέρια, Πρώτος θερμοδυναμικός νόμος, Κινητική θεωρία αερίων, Θερμικές μηχανές, Εντροπία, Δεύτερος θερμοδυναμικός νόμος, Τρίτος θερμοδυναμικός νόμος.

ΕEI 103 Προχωρημένα Μαθηματικά ΙΙ

Στόχοι Μαθήματος: Η κατανόηση της σημασίας και του ρόλου που διαδραματίζουν ο Απειροστικός Λογισμός και οι Διαφορικές Εξισώσεις σε όλες τις Επιστήμες και ειδικότερα στην Ηλεκτρολογική Μηχανική, την Επιστήμη της Πληροφορικής και τη Μηχανική Υπολογιστών, καθώς και η ευχερής εκμάθηση των διάφορων τεχνικών επίλυσης τους.

Μαθησιακά Αποτελέσματα: Αναμένεται ότι ο φοιτητής θα είναι σε θέση να: (1) κατανοεί πλήρως το θεωρητικό υπόβαθρο, (2) μεταφράζει σε μαθηματικούς όρους τους συσχετισμούς των διαφόρων ποσοτήτων που μεταβάλλονται σε κάθε πρόβλημα, (3) κατασκευάζει την αντίστοιχη Διαφορική Εξίσωση που το διέπει, (4) διερευνά την πραγματική σημασία της λύσης, (5) καθορίζει αν είναι αποδεκτή με βάση τους θεμελιώδεις νόμους της Φυσικής, (6) ορίζει συναρτήσεις πολλών μεταβλητών, να τις παριστάνει γραφικά, να υπολογίζει τα όρια τους και να καθορίζει αν είναι συνεχείς, (7) υπολογίζει μερικές παραγώγους συναρτήσεων πολλών μεταβλητών, και να τις εφαρμόζει για να επιλύει προβλήματα μεγιστοποίησης και ελαχιστοποίησης, (8)υπολογίζει πολλαπλά ολοκληρώματα και να τα χρησιμοποιεί για την εύρεση εμβαδών και όγκων, τον υπολογισμό μέσης τιμής, την εύρεση ροπών, βαρύκεντρου και επιφανειακών εμβαδών.

Περιεχόμενο Μαθήματος: . Διαφορικές Εξισώσεις: (1) Εισαγωγή στις Διαφορικές Εξισώσεις (Βασικά χαρακτηριστικά ΔΕ). (2) Διαφορικές Εξισώσεις 1ης τάξης. (3) Γραμμικές Διαφορικές Εξισώσεις. (4) Μέθοδος δυναμοσειρών για επίλυση Διαφορικών εξισώσεων. Απειροστικός Λογισμός: (1) Συναρτήσεις πολλών μεταβλητών. (2) Μερικές παράγωγοι. (3) Εφαρμογές μερικών παραγώγων. (4) Πολλαπλά ολοκληρώματα. (5)Εφαρμογές ολοκληρωμάτων.

ΕEI 104 Γραμμική Άλγεβρα

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

Μαθησιακά Αποτελέσματα: Με την επιτυχή ολοκλήρωση του μαθήματος, ο/η φοιτητής/τρια θα έχει τις απαιτούμενες γνώσεις και δεξιότητες για να: (1) επιλύει γραμμικά συστήματα με τη χρήση διαφόρων μεθόδων: απαλοιφή Gauss, κανόνα του Cramer, χρήση αντιστρόφου, (2)  υπολογίζει ορίζουσες και τον αντίστροφο ενός πίνακα, (3) προσδιορίζει τους θεμελιώδεις υποχώρους ενός πίνακα, τη διάσταση και μια βάση τους, τις ιδιοτιμές του και τα αντίστοιχα ιδιοδιανύσματα τους, (4) προσδιορίζει τον πίνακα που αναπαριστά μια γραμμική απεικόνιση με δοθείσα βάση, καθώς και τον πυρήνα και την εικόνα της, (5) κάνει πράξεις με μιγαδικούς αριθμούς, να μετατρέπει μιγαδικούς αριθμούς σε πολική μορφή, (6) υπολογίζει όρια, να αποφασίζει για τη συνέχεια μιγαδικών συναρτήσεων, (7) αναπαριστά μιγαδικές συναρτήσεις σαν συναρτήσεις δυναμοσειράς, σειρές Laurent, να υπολογίζει ολοκληρωτικά υπόλοιπα, (8) υπολογίζει μιγαδικά ολοκληρώματα με τη χρήση ολοκληρωτικών υπολοίπων.

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

ΕEI 132 Εισαγωγή στον Υπολογισμό και τον Προγραμματισμό σε C

Στόχοι Μαθήματος: Το μάθημα της Εισαγωγής στον Υπολογισμό και Προγραμματισμό στοχεύει να εμπλουτίσει περαιτέρω τις γνώσεις των φοιτητών στην οργάνωση υλικού ηλεκτρονικών υπολογιστών (μικρο-επεξεργαστές και δομές μνήμης) και υπολογισμού (μηχανές Turing, μηχανές πεπερασμένων καταστάσεων, κανονικές γλώσσες, γραμματικές άνευ πλαισίου). Εισαγωγή στον αρθρωτό προγραμματισμό. Παρουσίαση της διαδικασίας ανάπτυξης συναρτησιακού και διαδικαστικού λογισμικού και εισαγωγή των βασικών αρχών προγραμματισμού και σχεδίασης προγραμμάτων μέσω της γλώσσας C. Γενική παρουσίαση της γλώσσας C επικεντρώνοντας στους τύπους δεδομένων, τις δομές ελέγχου, τις επαναληπτικές δομές, τις συναρτήσεις, τους πίνακες, τις αλφαριθμητικές ακολουθίες, τους δείκτες και την αναδρομή. Το μάθημα περιλαμβάνει αριθμό προγραμματιστικών ασκήσεων και εργασία εξαμήνου.

Μαθησιακά Αποτελέσματα: Μετά την επιτυχή ολοκλήρωση του μαθήματος, ο διδασκόμενος θα πρέπει: (1) Να γνωρίζει την ιστορική επισκόπηση της εξέλιξης των ηλεκτρονικών υπολογιστών, (2) Να γνωρίζει την οργάνωση υλικού ηλεκτρονικών υπολογιστών, (3) Να γνωρίζει τις διάφορες μεθοδολογίες και τις διαφορές τους στον προγραμματισμό ως επίσης τις γενιές γλωσσών προγραμματισμού.

Περιεχόμενο Μαθήματος: Τα θέματα που θα εξεταστούν συμπεριλαμβάνουν: Αλγόριθμοι, εντολές της C όπως if, if/else, while, do/while, for κ.α. ως επίσης συναρτήσεις, διάφορες βιβλιοθήκες, αρχεία κεφαλίδας, τυχαίους αριθμούς, κλάσεις αποθήκευσης και κανόνες πεδίου εφαρμογής, αναδρομή, πίνακες και γραμματοσειρές, πολυδιάστατους πίνακες, δείκτες, μορφοποίηση εσόδων/εξόδων και επεξεργασία αρχείων.

ΕEI 133 Αντικειμενοστρεφής Μεθοδολογία και Προγραμματισμός (C++)

Στόχοι Μαθήματος: Το μάθημα αυτό στοχεύει να εμπλουτίσει περαιτέρω τις γνώσεις των φοιτητών στον αντικειμενοστρεφή προγραμματισμό με την C++. Το μάθημα διδάσκει την C++ αρχίζοντας από απλές έννοιες όπως κλάσεις, αντικείμενα, κληρονομικότητα, κλάσεις ροής εισόδου / εξόδου, αναφορά στους τύπους της C++, δείκτες, struct, κλπ. Επίσης διδάσκονται οι έννοιες της πολυπλοκότητας και της υπερφόρτωσης τελεστών.

Μαθησιακά Αποτελέσματα: Μετά την επιτυχή ολοκλήρωση του μαθήματος, ο διδασκόμενος θα πρέπει: (1) Να γνωρίζει την διαφορά ανάμεσα στον αντικειμενοστρεφή και δομημένο προγραμματισμό. (2) Να γνωρίζει τις έννοιες όπως κλάσεις, αντικείμενα συναρτήσεις-μέλη και δεδομένα-μέλη. (3) Να γνωρίζει τις διαφορές των προσδιοριστών πρόσβασης (public, private, protected) και τι είναι ο constructor και ο destructor. (4) Να είναι σε θέση να γράφει τις κλάσεις σε διαφορετικό αρχείο να δημιουργεί project με διαχωρισμό των προγραμμάτων σε interface, implementation και client για σκοπούς reusability. (5) Να γνωρίζει τις έννοιες όπως encapsulation, inheritance, polymorphism και virtual methods. (6) Να μπορεί να λύνει προβλήματα με τη χρήση εντολών ελέγχου, με δείκτες, με γραμματοσειρές, με αρχεία, πίνακες και διανύσματα και με συναρτήσεις. Να ξέρει να χρησιμοποιεί τις περισσότερες βιβλιοθήκες που διαθέτει η C++.

Περιεχόμενο Μαθήματος: Τα θέματα που θα εξεταστούν συμπεριλαμβάνουν: Κλάσεις και όλες οι γενικές έννοιες του αντικειμενοστρεφή προγραμματισμού όπως  encapsulation, inheritance, polymorphism και virtual methods. Επίσης θα εξεταστούν όλες οι εντολές της C++, όπως εντολές ελέγχου, συναρτήσεις, διάφορες βιβλιοθήκες, τυχαίους αριθμούς, κλάσεις αποθήκευσης και κανόνες πεδίου εφαρμογής, αναδρομή, πίνακες και γραμματοσειρές, πολυδιάστατους πίνακες, δείκτες, μορφοποίηση εσόδων/εξόδων και επεξεργασία αρχείων.

ΕEI 203 Εισαγωγή στη Βιολογία

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

Μαθησιακά Αποτελέσματα: Με την επιτυχή συμπλήρωση του μαθήματος οι φοιτητές αναμένεται να είναι σε θέση: 1) να γνωρίζουν και να περιγράφουν τι είναι κύτταρο, ιστός, όργανο και τις κυριότερες κυτταρικές λειτουργίες ενός ζωντανού οργανισμού, 2) να διακρίνουν ομοιότητες και διαφορές μεταξύ διαφορετικών βιολογικών συστημάτων, 3) να μετατρέπουν αλληλουχίες ενός νουκλεϊνικού οξέος σε αλληλουχία άλλου νουκλεϊνικού οξέος ή/και πρωτεΐνης, 4) να αναγνωρίζουν και να εξηγούν τη σημαντικότητα της Εξελικτικής Θεωρίας για την κατανόηση όλων των Βιολογικών Επιστημών και 5) να γνωρίζουν τη διεπιστημονική σύνδεση μεταξύ Βιολογικών Επιστημών και των Επιστημών της Πληροφορικής και της Μηχανικής Υπολογιστών

Περιεχόμενο Μαθήματος: Καλύπτονται τα εξής κεφάλαια-ενότητες: Ξεκίνημα της ζωής, Χαρακτηριστικά της ζωής, Χημεία της ζωής, Ένζυμα και μεταβολισμός, Κύτταρο, Φωτοσύνθεση, Κυτταρική αναπνοή, Ιστοί και όργανα, Έκφραση του γενετικού υλικού, Κυτταρικός κύκλος  (Μίτωση – Μείωση), Ανάπτυξη και διαφοροποίηση, Μολυσματικές ασθένειες, Γενετικές ασθένειες, Καρκίνος, Γενετική - Ασκήσεις γενετικής, Εξέλιξη και φυσική επιλογή, Συνθετική Βιολογία.

ΕEI 231 Σήματα και Συστήματα

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

Μαθησιακά Αποτελέσματα: Απόκτηση επιπλέον σημαντικού υπόβαθρου για χρήση σε εφαρμογές στη Μηχανική.

Περιεχόμενο Μαθήματος: Εισαγωγή στα Σήματα, Εισαγωγή στα Συστήματα, Ανάπτυγμα και σειρές Fourier, Μετασχηματισμός Fourier και εφαρμογές, Ανάπτυγμα και μετασχηματισμός Fourier διακριτών σημάτων, Μετασχηματισμός Laplace και εφαρμογές, Μετασχηματισμός z.

ΕΕΙ 233 Οργάνωση Υπολογιστών

Στόχοι Μαθήματος: Το μάθημα αυτό παρουσιάζει με λεπτομέρεια τη βασική δομή λειτουργίας των υπολογιστικών συστημάτων με έναν μονοπύρηνο επεξεργαστή, και κάνει εισαγωγή στη μηχανική υπολογιστών. Το μάθημα αυτό απαντά στο ερώτημα «Πώς» υλοποιείται ένα υπολογιστικό σύστημα και επικεντρώνεται στη φυσική υλοποίηση και τις πραγματικές λεπτομέρειες του υλικού που υλοποιούν αρχιτεκτονικές έννοιες/τεχνικές. Παρουσιάζει τα βασικά δομικά στοιχεία ενός υπολογιστικού συστήματος: αριθμητικές και λογικές μονάδες, μονάδες ελέγχου, σύστημα μνήμης, σύστημα εισόδου/εξόδου, δίαυλος δεδομένων. Παρουσιάζει τη Κεντρική Μονάδα Επεξεργασία (CPU) RISC χρησιμοποιώντας σαν βάση την αρχιτεκτονική MIPS και την Αρχιτεκτονική Συνόλου Εντολών RISC ISA (Instruction Set Architecture). Παρουσιάζει την αριθμητική υπολογιστών και την ανάλυση της επίδοσης τους. Παρουσιάζει επίσης την διασωλήνωση (pipelining), την ιεραρχία μνήμης (Main Memory, Cache, Virtual Memory). Και τέλος παρουσιάζει τις μονάδες εισόδου/εξόδου ενός υπολογιστή (Storage, Networks, Peripherals).

Μαθησιακά Αποτελέσματα: Με την ολοκλήρωση του μαθήματος οι φοιτητές θα μπορούν να: (1) Περιγράφουν τα βασικά δομικά στοιχεία ενός υπολογιστή, όπως η Κεντρική Μονάδα Επεξεργασίας (CPU), η μνήμη, οι συσκευές εισόδου/εξόδου και πώς αυτά τα στοιχεία αλληλοεπιδρούν για να εκτελέσουν υπολογισμούς. (2) Να προγραμματίζουν στη γλώσσα Assembly, η οποία είναι μια συμβολική αναπαράσταση του κώδικα μηχανής. (3) Να περιγράφουν τα διάφορα επίπεδα μνήμης σε έναν υπολογιστή, όπως η κρυφή μνήμη, η κύρια μνήμη και η δευτερεύουσα αποθήκευση, και πώς αυτά τα επίπεδα συνεργάζονται για να παρέχουν γρήγορη και αποτελεσματική πρόσβαση στα δεδομένα. (4) Να περιγράφουν τις διάφορες τεχνολογίες που χρησιμοποιούνται για τη σύνδεση περιφερειακών συσκευών, όπως πληκτρολόγια, ποντίκια, οθόνες και εκτυπωτές, στον υπολογιστή. (5) Να απαντούν στο ερώτημα «Πώς» υλοποιείται και πως λειτουργεί ένα υπολογιστικό σύστημα στο υλικό.

Περιεχόμενο Μαθήματος: Το μάθημα περιλαμβάνει τις ακόλουθες ενότητες: (1) Αφαιρετικότητα και Τεχνολογία Υπολογιστών, (2)  Γλώσσα Μηχανής, Εντολές, MIPS, (3) Αριθμητική Υπολογιστών, Αριθμοί ακέραιοι και κινητής υποδιαστολής, Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση, (4) Ανάλυση Επίδοσης Υπολογιστών, (5)  Κεντρική Μονάδα Επεξεργασίας (CPU), Datapath and Control, (6) Διασωλήνωση (Pipeline), Data and Control Hazards, (7) Ιεραρχία Μνήμης, Κύρια μνήμη, Κρυφή μνήμη , Ιδεατή μνήμη, (8) Συσκευές Εισόδου/Εξόδου, Μόνιμη αποθήκευση, διασύνδεση με CPU και άλλες περιφερειακές συσκευές.

ΕΕΙ 331 Θεωρία Πιθανοτήτων και Στοχαστικές Διαδικασίες

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

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

Περιεχόμενο Μαθήματος: Θέματα που καλύπτονται: (1) Βασικές έννοιες-αξιώματα πιθανοτήτων: Εισαγωγή, Δειγματικός Χώρος, Γεγονότα, Μαθηματική Πιθανότητα, Αξίωμα Πιθανοτήτων, Υπό όρους Πιθανότητα, Ανεξαρτησία. (2) Μονοδιάστατες Τυχαίες Μεταβλητές: Τυχαίες μεταβλητές, Συνάρτηση κατανομής, Διακριτές τυχαίες μεταβλητές, συνεχείς τυχαίες μεταβλητές, συναρτήσεις τυχαίας μεταβλητές, μέση τιμή, διασπορά. (3) Σημαντικές τυχαίες μεταβλητές και οι ιδιότητές τους: Διακριτές: Bernoulli, Διωνυμική, Poisson, Γεωμετρική. Συνεχείς: Ομοιόμορφη, Κανονική, Εκθετική, Γάμμα. Κεντρικό οριακό θεώρημα. (4) Πολυδιάστατες Τυχαίες Μεταβλητές: Δισδιάστατες τυχαίες μεταβλητές, συνδιακύμανση και συντελεστής συσχέτισης. (5) Πιθανότητες υπό όρους και ανεξάρτητες τυχαίες μεταβλητές. (6) Εισαγωγή στις στοχαστικές διαδικασίες: Τυχαία σήματα, μέση συσχέτιση και συνδιακύμανση. Η διαδικασία του Poisson. (7) Αυτοσυσχέτιση και φασματική πυκνότητα ισχύος. Στοχαστική διαδικασία Gauss. Θόρυβος: Θόρυβος βολής, Θερμικός θόρυβος, Λευκός θόρυβος. (8) Απόκριση γραμμικών συστημάτων σε στοχαστικές εισόδους.