Πληροφορική
Κωνσταντίνος Καρατζάς
Γιατί χρειαζόμαστε το μάθημα της Πληροφορικής;
Τι είναι ένα πρόγραμμα και τι αλγόριθμος; Πόσο γρήγορα εκτελούνται τα προγράμματα στους υπολογιστές; Πως μπορούμε να αναπτύξουμε προγράμματα για να να ελέγχουμε ρομπότ, να προβλέπουμε την ατμοσφαιρική ρύπανση, να επεξεργαζόμαστε εικόνες και να κρυπτογραφούμε μηνύματα; Τι σχέση έχει ένα ρουλεμάν, η ποιότητα του περιβάλλοντος, και μία γραμμή παραγωγής προϊόντων; Όλα προϋποθέτουν τον υπολογισμό, την προσομοίωση και την πρόγνωση της συμπεριφοράς τους με τη βοήθεια κατάλληλων αλγορίθμων και προγραμμάτων Η/Υ!
Στοιχεία μαθήματος
Σε ποιούς απευθύνεται; Το μάθημα της Πληροφορικής απευθύνεται σε φοιτητές Μηχανολόγους Μηχανικούς, αλλά και σε φοιτητές άλλων Τμημάτων και Σχολών, καθώς και σε κάθε ενδιαφερόμενο για θέματα Πληροφορικής και Προγραμματισμού Η/Υ.
Το "ακροατήριο": Οι φοιτητές που παρακολουθούν το μάθημα έχουν πολλές φορές ένα ετερογενές προφίλ ως προς το υπόβαθρό τους σε θέματα Πληροφορικής αλλά και σε σχέση με μαθηματικές έννοιες. Έτσι, και παρά τη διδασκαλία του μαθήματος της Πληροφορικής σε Λυκειακό επίπεδο, συνυπάρχουν στην πράξη φοιτητές με έλλειψη εμπειρίας και γνώσης σε σχέση με Προγραμματισμό (αλλά και απλή χρήση Η/Υ), μαζί με φοιτητές που θα μπορούσαν να θεωρηθούν ως καλοί γνώστες βασικών αρχών (και πρακτικών) προγραμματισμού. Ταυτόχρονα, οι φοιτητές του πρώτου κύκλου σπουδών δεν έχουν προηγούμενη εμπειρία στην διαδικασία επίλυσης προβλημάτων με Η/Υ, ενώ χρειάζεται να αναπτύξουν “κουλτούρα” συστηματικής και παραγωγικής-δημιουργικής μελέτης και συμμετοχής στις εκπαιδευτικές διαδικασίες σε Πανεπιστημιακό επίπεδο.
Βασική δομή μαθήματος: Έχοντας υπόψη τα παραπάνω, το μάθημα της Πληροφορικής διαμορφώθηκε έτσι ώστε να περιλαμβάνει 3ωρη διδασκαλία θεωρίας και 2ωρα υποχρεωτικά εργαστήρια σε εβδομαδιαία βάση, ενώ οι φοιτητές εκπονούν επίσης και ένα σύνολο 3 ατομικών εργασιών ανά εξάμηνο (homework). Το πρόγραμμα του μαθήματος, τα θέματα οργάνωσής του, το περιεχόμενο των μαθημάτων ανά εβδομάδα και ό,τι άλλο αφορά το μάθημα ανακοινώνεται στους φοιτητές από την αρχή του εξαμήνου, μαζί με τους διδακτικούς στόχους και τις μεθόδους διδασκαλίας.
Φόρτος εργασίας: Οι φοιτητές του Τμήματος Μηχανολόγων Μηχανικών ΑΠΘ γνωρίζουν από την αρχή ότι θα πρέπει να επενδύσουν στο μάθημα περί τις δώδεκα ώρες ανά εβδομάδα (παρακολούθηση μαθημάτων και συμμετοχή σε όλες τις εκπαιδευτικές δραστηριότητες και στην εκπόνηση θεμάτων) και αυτή η εκτίμηση επιβεβαιώνεται μέχρι στιγμής και από τα ερωτηματολόγια αξιολόγησης του μαθήματος που συμπληρώνουν στο μέσο και στο πέρας του κάθε εξαμήνου. Αυτό συνεπάγεται έναν “φόρτο” εργασίας ισοδύναμο με 6 ECTS credits. Εφόσον βέβαια κάποιος επιθυμεί να χρησιμοποιήσει το παρόν υλικό με διαφορετικό τρόπο, τότε μπορεί να επιλέξει μέρη του και να τα προσαρμόσει στο δικό του πρόγραμμα σπουδών ή ατομικής μελέτης.
Οργάνωση μαθήματος: Οι εκπαιδευτικές διαδικασίες είναι έτσι οργανωμένες, ώστε το syllabus και όλες οι πληροφορίες του μαθήματος να είναι διαθέσιμες από την αρχή του εξαμήνου, ενώ οι φοιτητές ανά εβδομάδα:
- μπορούν να παρακολουθούν την παράδοση θεωρίας (έχοντας διαθέσιμες τις διαφάνειες και τα βίντεο των διαλέξεων),
- έχουν διαθέσιμο ένα σύνολο από σημειώσεις και επιπρόσθετο υλικό (στα ελληνικά και αγγλικά), πέραν του όποιου συγγράμματος επιλέξουν,
- έχουν διαθέσιμο ένα quiz για έλεγχο γνώσεων,
- εκπονούν ασκήσεις στο εργαστήριο ενώ έχουν διαθέσιμες επιπρόσθετες ασκήσεις για περαιτέρω εμβάθυνση,
- έχουν διαθέσιμες μικρές βιντεοδιαλέξεις με βασικές γνώσεις και πρακτικές οδηγίες από το εργαστήριο για υποστήριξη της προσωπικής μελέτης.
Ταυτόχρονα, οι φοιτητές εκπονούν ένα σύνολο θεμάτων για το σπίτι (ατομική εργασία), από το οποίο λαμβάνουν το 60% της συνολικής βαθμολογίας τους, ενώ το 40% της βαθμολογίας τους προέρχεται από την εξέταση εργαστηρίου στο πέρας του εξαμήνου.
ΛιγότεραΓιατί χρειαζόμαστε το μάθημα της Πληροφορικής;
Τι είναι ένα πρόγραμμα και τι αλγόριθμος; Πόσο γρήγορα εκτελούνται τα προγράμματα στους υπολογιστές; Πως μπορούμε να αναπτύξουμε προγράμματα για να να ελέγχουμε ρομπότ, να προβλέπουμε την ατμοσφαιρική ρύπανση, να επεξεργαζόμαστε εικόνες και να κρυπτογραφούμε μηνύματα; Τι σχέση έχει ένα ρουλεμάν, η ποιότητα του περιβάλλοντος, και μία γραμμή παραγωγής προϊόντων; Όλα προϋποθέτουν τον υπολογισμό, την προσομοίωση και την πρόγνωση της συμπεριφοράς τους με τη βοήθεια κατάλληλων αλγορίθμων και προγραμμάτων Η/Υ!
Στοιχεία μαθήματος
Σε ποιούς απευθύνεται; Το μάθημα της Πληροφορικής απευθύνεται σε φοιτητές Μηχανολόγους Μηχανικούς, αλλά και σε φοιτητές άλλων Τμημάτων και Σχολών, καθώς και σε κάθε ενδιαφερόμενο για θέματα Πληροφορικής και Προγραμματισμού Η/Υ.
Το "ακροατήριο": Οι φοιτητές που παρακολουθούν το μάθημα έχουν πολλές φορές ένα ετερογενές προφίλ ως προς το υπόβαθρό τους σε θέματα Πληροφορικής αλλά και σε σχέση με μαθηματικές έννοιες. Έτσι, και
Γιατί χρειαζόμαστε το μάθημα της Πληροφορικής;
Τι είναι ένα πρόγραμμα και τι αλγόριθμος; Πόσο γρήγορα εκτελούνται τα προγράμματα στους υπολογιστές; Πως μπορούμε να αναπτύξουμε προγράμματα για να να ελέγχουμε ρομπότ, να προβλέπουμε την ατμοσφαιρική ρύπανση, να επεξεργαζόμαστε εικόνες και να κρυπτογραφούμε μηνύματα; Τι σχέση έχει ένα ρουλεμάν, η ποιότητα του περιβάλλοντος, και μία γραμμή παραγωγής προϊόντων; Όλα προϋποθέτουν τον υπολογισμό, την προσομοίωση και την πρόγνωση της συμπεριφοράς τους με τη βοήθεια κατάλληλων αλγορίθμων και προγραμμάτων Η/Υ!
Στοιχεία μαθήματος
Σε ποιούς απευθύνεται; Το μάθημα της Πληροφορικής απευθύνεται σε φοιτητές Μηχανολόγους Μηχανικούς, αλλά και σε φοιτητές άλλων Τμημάτων και Σχολών, καθώς και σε κάθε ενδιαφερόμενο για θέματα Πληροφορικής και Προγραμματισμού Η/Υ.
Το "ακροατήριο": Οι φοιτητές που παρακολουθούν το μάθημα έχουν πολλές φορές ένα ετερογενές προφίλ ως προς το υπόβαθρό τους σε θέματα Πληροφορικής αλλά και σε σχέση με μαθηματικές έννοιες. Έτσι, και
Θεματικές Ενότητες
Στην πρώτη εβδομάδα κάνουμε μία εισαγωγή στην επίλυση προβλημάτων με τη βοήθεια Η/Υ. Κατόπιν εξηγούμε τη διαδικασία επίλυσης ενός προβλήματος, διατυπώνοντας και χαρακτηρίζοντας τα βήματά της και αναγνωρίζοντας την ανάγκη γενίκευσής της, φτάνοντας έτσι στην έννοια του αλγορίθμου. Την εβδομάδα αυτή γνωρίζουμε τις βασικές διαδικασίες και τα εργαλεία του μαθήματος της Πληροφορικής (στο Τμήμα Μηχανολόγων Μηχανικών ΑΠΘ). Στο τέλος της εβδομάδας θα πρέπει να έχετε πετύχει τα εξής:
- Να αναγνωρίζετε και να διατυπώνετε τα βασικά βήματα επίλυσης ενός απλού προβλήματος
- Εγκατάσταση του περιβάλλοντος εργασίας (χρησιμοποιούμε το λογισμικό ανοικτού κώδικα Octave) στον προσωπικό σας υπολογιστή
- Εκτέλεση ενός απλού προγράμματος στο περιβάλλον που εγκαταστήσατε
Λέξεις Κλειδιά: επίλυση προβλημάτων, βήματα, αλγόριθμος
Την εβδομάδα αυτή θα γνωρίσουμε τις μεταβλητές, και θα αναγνωρίσουμε πως στο Matlab/Octave όλα είναι πίνακες! Θα μιλήσουμε για πράξεις και σφάλματα υπολογισμών και θα αναφερθούμε σε βασικές εγγενείς συναρτήσεις. Επίσης θα αναφερθούμε σε δομές προγραμματισμού (επαναλήψεις, έλεγχοι, σειριακή εκτέλεση, κλπ.), και στην έννοια της συνάρτησης ως αυτόνομου προγράμματος. Στο τέλος της εβδομάδας θα πρέπει:
- Να μπορείτε να χρησιμοποιείτε μεταβλητές και να κάνετε πράξεις με αυτές, εμπλέκοντας και βασικές εγγενείς συναρτήσεις
- Να μπορείτε να αναγνωρίζετε δομές προγραμματισμού
- Να μπορείτε να αναπτύξετε το δικό σας απλό πρόγραμμα σε Matlab/Octave
Λέξεις Κλειδιά: μεταβλητές, πίνακες, δομές προγραμματισμού, εγγενείς συναρτήσεις
Αρχικά εξετάζουμε το πώς μπορούμε να διαμορφώσουμε έναν αλγόριθμο επίλυσης για συγκεκριμένο πρόβλημα. Κατόπιν θα δούμε τον τρόπο με τον οποίο μπορούμε να αναπτύσσουμε και να χρησιμοποιούμε συναρτήσεις. Θα γνωρίσουμε την έννοια της εμβέλειας μίας μεταβλητής και θα συζητήσουμε για την αρχιτεκτονική προγραμμάτων και τον επιμερισμό τους σε συναρτήσεις. Στο τέλος της εβδομάδας θα πρέπει:
- Να μπορείτε να αναπτύσσετε τη δική σας απλή συνάρτηση σε Matlab/Octave.
- Να μπορείτε να επιμερίσετε τη λύση ενός προβλήματος σε μικρότερα τμήματα που μπορούν να επιλυθούν ανεξάρτητα.
Λέξεις Κλειδιά: πρόβλημα, αλγόριθμός, εμβέλεια μεταβλητών, συναρτήσεις
Την εβδομάδα αυτή θα γνωρίσουμε αναλυτικά τις βασικές δομές προγραμματισμού αλλά και τις λογικές παραστάσεις, εκφράσεις και τελεστές που αυτές χρησιμοποιούν. Με τις δομές προγραμματισμού θα είσαστε σε θέση να αναπτύξετε πολύ πιο σύνθετα προγράμματα, να κάνετε λογικούς ελέγχους, να επαναλαμβάνετε διαδικασίες και να υλοποιείτε σύνθετους αλγορίθμους. Στο τέλος της εβδομάδας θα πρέπει:
- Να μπορείτε να αναπτύξετε ένα μικρό πρόγραμμα που συνδυάζει δομές ελέγχου και επανάληψης
Λέξεις Κλειδιά: λογικοί και σχεσιακοί τελεστές, δομή επανάληψης, δομή ελέγχου
Εδώ θα γνωρίσουμε περισσότερες εντολές για την υλοποίηση δομών προγραμματισμού καθώς και μία σειρά από μεθόδους επίλυσης προβλημάτων που μπορούν να υλοποιηθούν με αυτές τις δομές, όπως η μέθοδος της διχοτόμησης και η ολοκλήρωση με τη μέθοδο του τραπεζίου. Στο τέλος της τρέχουσας εβδομάδας θα πρέπει:
- Να αναγνωρίζετε και να χρησιμοποιείτε δομές προγραμματισμού
- Να είσαστε σε θέση να υλοποιήσετε τη μέθοδο της διχοτόμησης και της ολοκλήρωσης με τη μέθοδο του τραπεζίου σε προβλήματα και να τις χρησιμοποιείτε απρόσκοπτα
Λέξεις Κλειδιά: δομές επανάληψης, δομές ελέγχου, μέθοδος διχοτόμησης, μέθοδος τραπεζίου
Την εβδομάδα αυτή γνωρίζουμε μία σειρά τεχνικών που μας επιτρέπουν να κάνουμε τον κώδικά μας πιο αποδοτικό. Συγκρίνουμε τις τεχνικές αυτές με τη χρήση δομών προγραμματισμού. Μαθαίνουμε τρόπους για να αποφεύγουμε δομές επανάληψης, εξετάζουμε τους λογικούς δείκτες και μία σειρά εγγενών “διανυσματικών” συναρτήσεων. Στο τέλος της εβδομάδας θα πρέπει να είσαστε σε θέση:
- Να σχεδιάζετε και να υλοποιείτε αλγορίθμους που χρησιμοποιούν δομές προγραμματισμού και ελέγχου με ευχέρεια
- Να χρησιμοποιείτε τα εργαλεία που παρέχει το Matlab/Octave για να κάνετε τον κώδικά σας πιο αποδοτικό και πιο συνοπτικό
Λέξεις Κλειδιά: δομές επανάληψης, δομές ελέγχου, αποτελεσματικός προγραμματισμός, εγγενείς συναρτήσεις
Η τρέχουσα εβδομάδα είναι αφιερωμένη στη μελέτη αλγορίθμων. Εισάγεται η έννοια της αναδρομικότητας στους υπολογισμούς. Παρουσιάζεται και εξετάζεται η υπολογιστική πολυπλοκότητα αλγορίθμων. Στο τέλος της εβδομάδας θα πρέπει:
- Μα δημιουργείτε αναδρομικούς υπολογισμούς και συναρτήσεις
- Να μπορείτε να αντιστοιχίσετε τμήματα κώδικα σε συγκεκριμένες οικογένειες υπολογιστικής πολυπλοκότητας
- Να μπορείτε να συγκρίνετε δύο διαφορετικούς αλγορίθμους επίλυσης του ίδιου προβλήματος ως προς την πολυπλοκότητα και την ταχύτητα εκτέλεσης
Λέξεις Κλειδιά: αναδρομικότητα, υπολογιστική πολυπλοκότητα
Ασχολούμαστε με θέματα αναδρομικότητας και υπολογισμού πολυπλοκότητας. Αναλύουμε απαντήσεις σε ερωτήματα και ασκήσεις που περιελάβανε το επαναληπτικό εργαστήριο της προηγούμενης ενότητας. Παρουσιάζονται στοιχεία δημιουργίας γραφημάτων σε Matlab/Octave. Στο τέλος της εβδομάδας θα πρέπει να είσαστε σε θέση:
- Να δημιουργείτε αναδρομικές συναρτήσεις
- Να εκτιμάτε την υπολογιστική πολυπλοκότητα ενός αλγορίθμου
- Να κατασκευάζετε γραφήματα
Λέξεις Κλειδιά: αναδρομικές συναρτήσεις, πολυπλοκότητα αλγορίθμου, γραφικά
Παρουσιάζεται η έννοια της προσομοίωσης για μηχανολογικά και άλλα συστήματα και προβλήματα. Εισάγονται βασικά στοιχεία τυχαίων αριθμών και εξηγείται ο τρόπος με τον οποίο μπορούμε να τους “δημιουργήσουμε”. Μετά εξηγείται το πως μπορούμε να χρησιμοποιήσουμε τυχαίους αριθμούς για να προσομοιώσουμε φαινόμενα στοχαστικού χαρακτήρα, και να επιλύσουμε σχετικά προβλήματα. Στο τέλος αυτής της εβδομάδας θα πρέπει να είσαστε σε θέση:
- Να δημιουργήσετε και να χρησιμοποιήσετε τυχαίους αριθμούς (εφαρμογή σε Matlab/Octave)
- Να αναγνωρίζετε απλά προβλήματα στοχαστικού χαρακτήρα
- Να διαμορφώσετε έναν βασικό αλγόριθμο για την προσομοίωση και επίλυση προβλημάτων στοχαστικού χαρακτήρα με τη βοήθεια τυχαίων αριθμών
- Να αναγνωρίζετε και να χρησιμοποιείτε τη μέθοδο Monte Carlo (π.χ. σε προβλήματα όπως οι κινήσεις μορίων, η ζήτηση εποχικών προϊόντων, η αντοχή μηχανολογικής κατασκευής)
Λέξεις Κλειδιά: προσομοίωση, μηχανολογικά συστήματα, τυχαίοι αριθμοί
Παρουσιάζονται βασικά στοιχεία αριθμητικής παραγώγισης και ολοκλήρωσης και σχετικά εργαλεία και εγγενείς συναρτήσεις σε Matlab/Octave. Παρουσιάζονται επίσης εγγενείς συναρτήσεις Matlab/Octave για την επίλυση εξισώσεων και άλλων προβλημάτων που άπτονται των σπουδών ενός φοιτητή μηχανικού (και όχι μόνο). Στο τέλος αυτής της εβδομάδας θα πρέπει να είσαστε σε θέση να επιλύετε προβλήματα όπως:
- Ο υπολογισμός ορισμένων και αόριστων ολοκληρωμάτων και παραγώγων συναρτήσεων
- Η επίλυση πολυωνυμικών ή άλλων εξισώσεων
- Η επίλυση γραμμικών συστημάτων με χρήση απλής άλγεβρας πινάκων-οριζουσών (όχι αριθμητικά)
- Η πολυωνυμική προσέγγιση αριθμητικών δεδομένων (πολυωνυμική παρεμβολή)
- Η αριθμητική παραγώγιση και ολοκλήρωση (σε εισαγωγικό επίπεδο)
Στα παραπάνω θα πρέπει να μπορείτε να χρησιμοποιήσετε τις εγγενείς συναρτήσεις του Matlab/Octave
Λέξεις Κλειδιά: αριθμητική παραγώγιση και ολοκλήρωση, επίλυση εξισώσεων, μαθηματικά προβλήματα
Κάνουμε μία εισαγωγή σε εξισώσεις που περιλαμβάνουν την ανεξάρτητη μεταβλητή μαζί με μία συνάρτηση και παραγώγους της (απλές διαφορικές εξισώσεις). Με τον τρόπο αυτό περιγράφουμε ένα χαρακτηριστικό πρόβλημα Μηχανικού όπου η συμπεριφορά του μελετώμενου συστήματος μεταβάλλεται με το χρόνο (απλή αρμονική ταλάντωση χωρίς απόσβεση αλλά και με απόσβεση).
Επίσης κάνουμε μία εισαγωγή στο αλληλεπιδραστικό προσομοιωτικό περιβάλλον προγραμματισμού και μελέτης συμπεριφοράς δυναμικών συστημάτων Simulink, εξετάζοντας παραδείγματα όπως η απλή αρμονική ταλάντωση. Στο τέλος της εβδομάδας θα πρέπει να είσαστε σε θέση:
- Να επιλύετε μία απλή διαφορική εξίσωση συμβολικά σε Matlab/Octave
- Να μπορείτε να δημιουργήσετε μία απλή προσομοίωση δυναμικού συστήματος μέσω Simulink
- Να χρησιμοποιείτε αρχεία δεδομένων στο Matlab/Octave, και να κάνετε υπολογισμούς, αναλύσεις και γραφικές παραστάσεις με αυτά.
Λέξεις Κλειδιά: ανεξάρτητη μεταβλητή, συνάρτηση, διαφορική εξίσωση
Γίνεται μία γενική επανάληψη εστιάζοντας στα σημαντικότερα σημεία του μαθήματος, με τη βοήθεια ενός προβλήματος-παραδείγματος: το «παιχνίδι της ζωής» και η προσομοίωση δομικών μεταβολών χάλυβα και δασικών πυρκαγιών.
Λέξεις Κλειδιά: επανάληψη, επίτευξη στόχων μαθήματος
Ανοικτό Ακαδ. Μάθημα

Αρ. Επισκέψεων : 9280
Αρ. Προβολών : 56585
Ημερολόγιο
Ανακοινώσεις
- - Δεν υπάρχουν ανακοινώσεις -