Please ensure Javascript is enabled for purposes of website accessibility

Παρουσίαση/Προβολή

Εικόνα επιλογής

Ανάπτυξη Λογισμικού για Αλγοριθμικά Προβλήματα

(DI352) -  Γιάννης Εμίρης, Γιάννης Χαμόδρακας

Περιγραφή Μαθήματος

Το μάθημα Κ23γ "Ανάπτυξη Λογισμικού για Αλγοριθμικά Προβλήματα" συνίσταται στην ανάπτυξη λογισμικού για την επίλυση ενός σημαντικού προβλήματος της Πληροφορικής, την χρήση του λογισμικού σε μια πρακτική εφαρμογή και την πειραματική αποτίμηση του λογισμικού που αναπτύχθηκε. Η προσέγγιση στοχεύει στην εξοικείωση με τον προγραμματισμό μεγάλης κλίμακας, συχνά με χρήση ανοικτών βιβλιοθηκών λογισμικού, μέσω συνεργασίας σε ομάδες, καθώς και στην ανάπτυξη δεξιοτήτων για την υλοποίηση και πρακτική χρήση γνωστών, αποδοτικών αλγορίθμων. Χρησιμοποιούνται οι γλώσσες C/C++ (και Python 3) σε σύστημα Linux.

Λέξεις Κλειδιά: Υλοποίηση αποδοτικών αλγορίθμων, πειραματική αξιολόγηση, συνεργατική υλοποίηση μεγάλης κλίμακας, C/C++, Python.

Μέρες / ώρες: Δευτέρα 13-15 (Θ), 15-16 (Φ) στην αίθουσα ΣΤ. Τριτη 11-14 (Φ) στην αίθουσα Ε.
Προς το παρόν, τα Φροντιστήρια απευθύνονται σε όλους καθώς δεν έχουν οριστεί Τμήματα, αλλά ίσως δεν χρησιμοποιούνται όλες οι ώρες Φ.

Ομάδες: Οι ομάδες για την υλοποίηση των προγραμματιστικών εργασίων είναι 2 ατόμων και δηλώνονται με την ανακοίνωση της 1ης εργασίας.

Μέθοδοι αξιολόγησης: 3 προγραμματιστικές εργασίες που παραδίδονται / εξετάζονται σε τακτά διαστήματα. Σύντομη τελική γραπτή εξέταση που μετρά 10%.

Περιεχόμενο μαθήματος: 3 ενότητες που αντιστοιχούν σε 3 παραδοτέα λογισμικού, μία / μήνα.
 
2024: 1. Μη Αμβλυγώνια Τριγωνοποίηση Επίπεδων Γράφων Ευθειών Γραμμών (Planar Straight Line Graphs) 2. Ευρετικές στρατηγικές για τη βελτιστοποίηση της τριγωνοποίησης 3. Metaheuristics και διαγωνισμός
 

2023: 1. Αναζήτηση/συσταδοποίηση διανυσμάτων. Locality sensitive Hashing, μείωση διαστάσεως με τυχαιοκρατική προβολή. 2. Γραφοθεωρητική αναζήτηση διανυσμάτων. 3. Μείωση διαστάσεως με μεθόδους Μηχανικής Μάθησης (Νευρωνικών Δικτύων).

2022: 1. Απλό πολύγωνο που περιέχει όλα τα δεδομένα σημεία. 2. Βελτιστοποίηση ως προς το εμβαδόν. 3. Συγκριτική αξιολόγηση και διαγωνισμός βελτιστοποιημένης πολυγωνοποίησης σημειοσυνόλων μεγάλης κλίμακας.

Ημερομηνία δημιουργίας

Παρασκευή 19 Σεπτεμβρίου 2014

  • Βιβλιογραφία

    Οι διαφάνειες των διαλέξεων θα αναρτώνται στο eclass. Διατίθεται ένα γενικό σύγγραμμα για C ή C++.

    Oι διαλέξεις μαγνητοσκοπούνται και αποθηκεύονται στο delos.

    Μέθοδοι αξιολόγησης

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

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

    Πιθανώς: Σύντομη (2 ώρες) τελική γραπτή εξέταση που μετρά κατά 10%.

    Διδάσκοντες

    Καθηγ. Ι. Εμίρης (Θ).

    Δρ. Ι. Χαμόδρακας (Φ).

    Πρόγραμμα μαθήματος

    Τρεις ενότητες που αντιστοιχούν σε 3 παραδοτέα λογισμικού, μία ανα μήνα.

    1. Μη Αμβλυγώνια Τριγωνοποίηση Επίπεδων Γράφων Ευθειών Γραμμών (Planar Straight Line Graphs)

    2. Ευρετικές στρατηγικές για τη βελτιστοποίηση της τριγωνοποίησης

    3. Metaheuristics και διαγωνισμός