Τεχνολογία Υλοποίησης Αλγορίθμων
Γενικά
| Σχολή
|
Σχολή Θετικών Επιστημών
|
| Τμήμα
|
Τμήμα Μαθηματικών
|
| Επίπεδο Σπουδών
|
Προπτυχιακό
|
| Κωδικός Μαθήματος
|
MAE844
|
| Εξάμηνο
|
8
|
| Τίτλος Μαθήματος
|
Τεχνολογία Υλοποίησης Αλγορίθμων
|
| Αυτοτελείς Διδακτικές Δραστηριότητες
|
Διαλέξεις, Ασκήσεις και Εργασίες (Εβδομαδιαίες Ώρες Διδασκαλίας: 3, Πιστωτικές Μονάδες: 6)
|
| Τύπος Μαθήματος
|
Ειδίκευσης
|
| Προαπαιτούμενα Μαθήματα
|
|
| Γλώσσα Διδασκαλίας και Εξετάσεων
|
Ελληνική
|
| Τρόπος Διεξαγωγής Μαθήματος
|
Δια ζώσης (100%)
|
| Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus
|
Ναι (στην Αγγλική γλώσσα)
|
| Ηλεκτρονική Σελίδα Μαθήματος (URL)
|
Δείτε το eCourse, την Πλατφόρμα Ασύγχρονης Εκπαίδευσης του Πανεπιστημίου Ιωαννίνων.
|
Μαθησιακά Αποτελέσματα
| Μαθησιακά Αποτελέσματα
|
Ο κύριος σκοπός του μαθήματος είναι η παρουσίαση τεχνικών, ιδιοτήτων, υλοποιήσεων και εφαρμογών βασικών αλλά και προηγμένων αλγορίθμων και δομών δεδομένων.
Θέματα δημιουργίας περιβαλλόντων και βιβλιοθηκών λογισμικού που επιτρέπουν την εύκολη υλοποίηση και πειραματική αξιολόγηση αλγορίθμων, θέματα μεθοδολογίας σε ότι αφορά την πειραματική έρευνα αλγορίθμων και δομών δεδομένων, καθώς και σε ότι αφορά τη διαδικασία μετατροπής των απαιτήσεων του χρήστη σε αποδοτικές αλγοριθμικές λύσεις και υλοποιήσεις. Στο μάθημα περιλαμβάνονται ατομικές και ομαδικές ασκήσεις. Στόχος του μαθήματος είναι οι φοιτητές να είναι σε θέση:
- να κατανοήσουν βασικές αλγοριθμικές τεχνικές,
- να επεκτείνουν την αλγοριθμική τους σκέψη
- να αναπτύξουν μεθοδολογίες πειραματικής έρευνας.
|
| Γενικές Ικανότητες
|
- Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση και των απαραίτητων τεχνολογιών
- Αυτόνομη εργασία
- Ομαδική εργασία
|
Περιεχόμενο Μαθήματος
- Εισαγωγικά στην υλοποίηση αλγορίθμων
- Tεχνολογίες Υλοποίησης Αλγορίθμων: Κίνητρα/Στόχοι, Βιβλιοθήκες/Περιβάλλοντα
- Δοκιμή Προγραμμάτων
- Έλεγχος Ορθότητας Προγραμμάτων
- STL και Γενικευμένος Προγραμματισμός
- Πειραματική αξιολόγηση Αλγορίθμων
|
Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση
| Τρόπος Διδασκαλίας
|
Στην τάξη.
|
| Τρόπος και Συχνότητα Επικοινωνίας με Φοιτητές
|
Η επικοινωνία με τους φοιτητές γίνεται:
- Μέσω email.
- Δια ζώσης στο γραφείο.
- Κατά τη διάρκεια των διαλέξεων.
Η συχνότητα επικοινωνίας με τους φοιτητές καθορίζεται από τις ανάγκες των φοιτητών.
|
| Διασφάλιση Τρόπου Επικοινωνίας Μεταξύ Φοιτητών
|
Συνέργεια στα πλαίσια της παράδοσης του μαθήματος.
|
| Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών
|
Υποστήριξη Μαθησιακής διαδικασίας μέσω της ηλεκτρονικής πλατφόρμας e-class.
|
| Απαιτούμενος Τεχνολογικός Εξοπλισμός και Γνώσεις Τεχνολογίας
|
Δεν απαιτείται τεχνολογικός εξοπλισμός, καθώς παρέχεται. Δεν απαιτούνται εξειδικευμένες γνώσεις τεχνολογίας.
|
| Πολιτική Μαθήματος για τη Λογοκλοπή και Εργαλεία Ελέγχου Λογοκλοπής
|
Η λογοκλοπή απαγορεύεται ρητά και τιμωρείται κλιμακούμενα, ανάλογα με την επανάληψη της χρήσης της. Ελέγχεται, δε, με σχετικά εργαλεία όπως το "Turnitin", που παρέχει η Βιβλιοθήκη του Πανεπιστημίου.
|
| Πολιτική Μαθήματος για τη Χρήση Τεχνητής Νοημοσύνης
|
Επιτρέπεται η χρήση Τεχνητής Νοημοσύνης κατόπιν άδειας από τον διδάσκοντα/τη διδάσκουσα.
|
| Οργάνωση Διδασκαλίας
|
| Δραστηριότητα
|
Φόρτος Εργασίας Εξαμήνου
|
| Διαλέξεις (13Χ3)
|
39
|
| Αυτοτελής Μελέτη
|
78
|
| Επίλυση Ασκήσεων - εργασίες
|
33
|
| Σύνολο Μαθήματος
|
150
|
|
| Αξιολόγηση Φοιτητών
|
- Γραπτή τελική εξέταση (70%)
- Εργασίες (30%)
|
Συνιστώμενη Βιβλιογραφία
Δείτε την υπηρεσία Εύδοξος. Συγγράμματα και άλλες πηγές εκτός της υπηρεσίας Εύδοξος:
Algorithm Engineering
General
| School
|
School of Science
|
| Academic Unit
|
Department of Mathematics
|
| Level of Studies
|
Undergraduate
|
| Course Code
|
MAE844
|
| Semester
|
8
|
| Course Title
|
Algorithm Engineering
|
| Independent Teaching Activities
|
Lectures, laboratory exercises, tutorials, quiz (Weekly Teaching Hours: 3, Credits: 6)
|
| Course Type
|
Special Background
|
| Prerequisite Courses
|
-
|
| Language of Instruction and Examinations
|
Greek
|
| Mode of Course Delivery
|
Face-to-face (100%)
|
| Is the Course Offered to Erasmus Students
|
Yes
|
| Course Website (URL)
|
See eCourse, the Learning Management System maintained by the University of Ioannina.
|
Learning Outcomes
| Learning outcomes
|
This course aims at introducing to students the concepts , techniques, properties, developments and applications of basic and advanced algorithms and data structures.
Software development and software libraries that allow to easily develop and evaluate experimentally algorithms. Methodologies related to experimental research of efficient algorithms and data structures.
After successfully passing this course the students will be able to:
- Understand basic algorithmic techniques
- Analyze complex algorithms
- Design and develop new algorithmic tools for experimental evaluation
|
| General Competences
|
- Search for, analysis and synthesis of data and information, with the use of the necessary technology
- Working independently
- Team work
- Project planning and management
|
Syllabus
- Introduction to algorithm engineering
- Methodology of Algorithm Engineering: motivation, applications, software systems
- System checking
- Software reliability and correctness
- STL and Generalized programming
- Experimental evaluation of algorithms
|
Teaching and Learning Methods - Evaluation
| Mode of Instruction
|
Lectures.
|
| Mode and Frequency of Communication with Students
|
Communication with students takes place through:
- Email.
- In-person meetings during office hours.
- During lectures.
The frequency of communication with students is determined by their needs.
|
| Ensuring Communication Among Students
|
Collaboration and interaction are encouraged within the context of course delivery.
|
| Use of Information and Communications Technology
|
- Use of projector and interactive board during lectures.
- Course website maintenance. Announcements and posting of teaching material (lecture slides and notes, programs).
- Announcement of assessment marks via the ecourse platform by UOI.
|
| Required Technological Equipment and Technology Skills
|
No technological equipment is required from students, as all necessary equipment is provided. No specialized technology skills are required.
|
| Course Policy on Plagiarism and Plagiarism Detection Tools
|
Plagiarism is strictly prohibited and is subject to progressively stricter penalties in the event of repeated offenses. It is monitored using plagiarism detection tools such as Turnitin, which is provided by the University Library.
|
| Course Policy on the Use of Artificial Intelligence
|
The use of Artificial Intelligence is permitted only with the prior approval of the instructor.
|
| Teaching Methods
|
| Activity
|
Semester Workload
|
| Lectures
|
39
|
| Working independently
|
78
|
| Team work
|
33
|
| Course total
|
150
|
|
| Student Performance Evaluation
|
- Final written examination (70%)
- Exercises (30%)
|
Attached Bibliography
See the official Eudoxus site. Books and other resources, not provided by Eudoxus:
- K. Mehlhorn and S. Naeher, LEDA: A platform for combinatorial and geometric computing, Cambridge University Press, 1999.
- M. Mueller-Hannemanni and S. Schirra, Algorithm Engineering - Bridging the Gap between Algorithm Theory and Practice, Springer 2010.
- C.C. McGeoch, A Guide to Experimental Algorithmics, Cambridge University Press, 2012.
- J. Siek, L.Q. Lee, and A. Lumsdaine, The Boost Graph Library, Addison-Wesley, 2002.
- M.A. Weiss, Data structures and problem solving with C++, 2 Edition, Addison-Wesley, 2000.