Τεχνολογίες Υλοποίησης Αλγορίθµων

Σχετικά έγγραφα
Τεχνολογίες Υλοποίησης Αλγορίθµων

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 1

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 5

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4

Δομές Δεδομένων Ενότητα 1

Εισαγωγή στους Αλγορίθμους Ενότητα 11η Άσκηση - Σταθμισμένος Χρονοπρογραμματισμός Διαστημάτων

Διοικητική Λογιστική

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 8

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

ΗΛΕΚΤΡΟΝΙΚΗ ΙIΙ Ενότητα 6

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 5: ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ-ΑΝΑΓΩΓΗ

Τεχνολογίες Υλοποίησης Αλγορίθµων

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Τίτλος Μαθήματος: Μαθηματική Ανάλυση Ενότητα Γ. Ολοκληρωτικός Λογισμός

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Ψηφιακή Επεξεργασία Εικόνων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Διδακτική της Πληροφορικής

Τεχνολογίες Υλοποίησης Αλγορίθµων

Βάσεις Περιβαλλοντικών Δεδομένων

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Επιστηµονικός Υπολογισµός Ι Ενότητα 1 - Εισαγωγή. Ευστράτιος Γαλλόπουλος

Μηχανολογικό Σχέδιο Ι

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού Υπέρθερμου Ατμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 2

Προγραμματισμός Η/Υ. Αλγόριθμοι. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Διοίκηση Επιχειρήσεων

Διδακτική Πληροφορικής

Βέλτιστος Έλεγχος Συστημάτων

Ευφυής Προγραμματισμός

Διοικητική Λογιστική

ΔΙΑΧΕΙΡΙΣΗ ΕΦΟΔΙΑΣΤΙΚΗΣ ΑΛΥΣΙΔΑΣ

Διδακτική Πληροφορικής

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Μεθοδολογία Έρευνας Κοινωνικών Επιστημών Ενότητα 2: ΣΥΓΚΕΝΤΡΩΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΑΡΚΕΤΙΝΓΚ Λοίζου Ευστράτιος Τμήμα Τεχνολόγων Γεωπόνων-Kατεύθυνση

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Πληροφορική

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 12: Αντιμετώπιση Περιορισμών Αλγοριθμικής Ισχύος

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

Εισαγωγή στους Αλγορίθμους Ενότητα 10η

Ποιοτική μεθοδολογία έρευνας στη Διδακτική των Μαθηματικών Ενότητα 7: Συγγραφή μιας εργασίας

Εισαγωγή στους Η/Υ. Ενότητα 2β: Αντίστροφο Πρόβλημα. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους (1)

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Κβαντική Επεξεργασία Πληροφορίας

Τεχνικό Σχέδιο - CAD

Διδακτική Πληροφορικής

1 η Διάλεξη. Ενδεικτικές λύσεις ασκήσεων

Εισαγωγή στους Αλγορίθμους Ενότητα 7η

Εφαρμογές των Τεχνολογιών της Πληροφορίας και των Επικοινωνιών στη διδασκαλία και τη μάθηση

Διαχείριση Πολιτισμικών Δεδομένων

Λογιστική Κόστους Ενότητα 11: Λογισμός Κόστους

Εισαγωγή στους Υπολογιστές

Βάσεις Περιβαλλοντικών Δεδομένων

Μάρκετινγκ Αγροτικών Προϊόντων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Θέματα Εφαρμοσμένης. Ενότητα 14.2: Η ψήφος στα πρόσωπα. Θεόδωρος Χατζηπαντελής Τμήμα Πολιτικών Επιστημών ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Εφαρμογές πληροφορικής σε θέματα πολιτικού μηχανικού

Μυελού των Οστών Ενότητα #1: Ερωτήσεις κατανόησης και αυτόαξιολόγησης

Διδακτική Πληροφορικής

Ιστορία της μετάφρασης

Νέες Τεχνολογίες και Καλλιτεχνική Δημιουργία

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

Εφαρμογές των Τεχνολογιών της Πληροφορίας και των Επικοινωνιών στη διδασκαλία και τη μάθηση

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

ΗΛΕΚΤΡΟΝΙΚΗ IΙ Ενότητα 6

Μαθηματικά Διοικητικών & Οικονομικών Επιστημών

Έλεγχος και Διασφάλιση Ποιότητας Ενότητα 4: Μελέτη ISO Κουππάρης Μιχαήλ Τμήμα Χημείας Εργαστήριο Αναλυτικής Χημείας

Εισαγωγή στην Διοίκηση Επιχειρήσεων

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

Ατμοσφαιρική Ρύπανση

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 6

Τεχνικό Σχέδιο - CAD

Ιδιότητες και Τεχνικές Σύνταξης Επιστημονικού Κειμένου

Ιδιότητες και Τεχνικές Σύνταξης Επιστημονικού Κειμένου

Κβαντική Επεξεργασία Πληροφορίας

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Ιδιότητες και Τεχνικές Σύνταξης Επιστημονικού Κειμένου

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Διεθνείς Οικονομικές Σχέσεις και Ανάπτυξη

Οργάνωση και Διοίκηση Πωλήσεων

ΗΛΕΚΤΡΟΝΙΚΗ IΙ Ενότητα 3

Transcript:

Τεχνολογίες Υλοποίησης Αλγορίθµων Χρήστος Ζαρολιάγκης Καθηγητής Τµήµα Μηχ/κων Η/Υ & Πληροφορικής Πανεπιστήµιο Πατρών email: zaro@ceid.upatras.gr Ενότητα 2 1 / 33

Αδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ϱητώς. 2 / 33

Χρηµατοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδηµαϊκά Μαθήµατα στο Πανεπιστήµιο Πατρών» έχει χρηµατοδοτήσει µόνο τη αναδιαµόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράµµατος «Εκπαίδευση και ια Βίου Μάθηση» και συγχρηµατοδοτείται από την Ευρωπαϊκή Ενωση (Ευρωπαϊκό Κοινωνικό Ταµείο) και από εθνικούς πόρους. 3 / 33

Περιεχόµενα Τεχνολογίες Υλοποίησης Αλγορίθµων (Algorithm Engineering) Τι είναι Κίνητρα και Στόχοι Βιβλιοθήκες Λογισµικού Αλγορίθµων και οµών εδοµένων Ανάγκη και Χρησιµότητα Εργαλεία Τεχνολογιών Υλοποίησης Αλγορίθµων 4 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων (Algorithm Engineering) Συστηµατικό πλαίσιο αντιµετώπισης της διαδικασίας µετατροπής (ϑεωρητικώς) αποδοτικών αλγορίθµων και δοµών δεδοµένων σε χρήσιµο λογισµικό 5 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (1) Ασυµπτωτική ανάλυση ( Asymptopia ) Μπορεί να αφορά µόνο εξαιρετικά µεγάλα µεγέθη προβληµάτων, εκτός κάθε λογικά πρακτικής εφαρµογής Μπορεί να κρύβει τεράστιες σταθερές 6 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (1) Παράδειγµα 1 Ελάχιστο Γεννητικό ένδρο: Fredman & Tarjan (FT) vs Prim Αλγόριθµος FT, χρονικής πολυπλοκότητας O(mβ(m, n)), ασυµπτωτικά αποδοτικότερος αλγορίθµου Prim, χρονικής πολυπλοκότητας O(m log n) Πειραµατική µελέτη [Moret & Shapiro, 1995] έδειξει ότι ο αλγόριθµος FT είναι καλύτερος στην πράξη από τον αλγόριθµο Prim µόνο για τεράστια και πυκνά γραφήµατα µε n 10 6 7 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (1) Παράδειγµα 2 Ελεγχος ελάσσονος γραφήµατος είναι ένα δεδοµένο γράφηµα G ελάσσον (minor) ενός άλλου γραφήµατος H; G H διαγραφή διακεκοµένων ακµών και συρρίκνωση γκρίζας ακµής Εικόνα 1 Εικόνα 2 Εικόνα 3 Αλγόριθµος Robertson & Seymour, χρονικής πολυπλοκότητας O(n 3 ): η «κρυµµένη» σταθερά είναι 10 150 8 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (2) Απόδοση Χειρότερης Περίπτωσης vs Απόδοση στην Πράξη Πολλοί αλγόριθµοι έχουν πολύ καλύτερη συµπεριφορά από αυτήν που εκφράζει η ΠΧΠ τους Φράγµατα ΠΧΠ: µπορεί να υποεκτιµούν την χρήση των αλγορίθµων στην πράξη Παράδειγµα Η µέθοδος Simplex για επίλυση προβληµάτων γραµµικού προγραµµατισµού ΠΧΠ εκθετική πολυωνυµική στην πράξη 9 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (3) Πρακτικά Προβλήµατα vs NP-δυσκολία Πολλές πρακτικές εφαρµογές απαιτούν την επίλυση NP-δύσκολων προβληµάτων Η ασυµπτωτική ανάλυση δεν προσφέρει ικανοποιητικές απαντήσεις για την επίλυση ενός NP-δύσκολου προβλήµατος στην πράξη Παράδειγµα Πρόβληµα περιοδεύοντος πωλητή (Travelling Salesman Problem) Πρόβληµα δροµολόγησης στόλου οχηµάτων (Vehicle Routing Problem) 10 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (4) Ελλειψη χρονικών φραγµάτων ή ποιότητας λύσης αλγόριθµοι χωρίς αποδεδειγµένα (αυστηρά) ασυµπτωτικά χρονικά ϕράγµατα (π.χ. άγνωστης πολυπλοκότητας) αποδεδειγµένες (ϑεωρητικές) εγγυήσεις για την ποιότητα των λύσεων που υπολογίζουν Ευρετικοί ή εµπειρικοί αλγόριθµοι 11 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (4) Παράδειγµα 1 Ελαχιστοποίηση τοµών ακµών στον σχεδιασµό διµερών γραφηµάτων Πειραµατική µελέτη [Demetrescu & Finocchi, 2000] έδειξε ότι ένας αλγόριθµος χωρίς ϑεωρητικά αποδεδειγµένο σταθερό λόγο προσέγγισης υπολογίζει λύσεις µε λιγότερες τοµές από αλγορίθµους µε (αποδεδειγµένα) µικρό και σταθερό λόγο προσέγγισης 12 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (4) Παράδειγµα 2 Πλήρως δυναµική προσβασιµότητα (fully dynamic reachability) σε κατευθυνόµενα γραφήµατα Πειραµατική µελέτη [Krommudas & Zaroliagis, 2005] έδειξε ότι αλγόριθµοι µε µη ϑεωρητικά αποδεδειγµένες χρονικές πολυπλοκότητες υπερτερούν αλγορίθµων µε τις (ϑεωρητικά) καλύτερες χρονικές πολυπλοκότητες 13 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (5) Νέοι αλγόριθµοι βασίζονται σε προηγούµενους Υλοποίηση και πρακτική αξιολόγηση: δύσκολο έργο Πρέπει πρώτα να υλοποιηθούν διάφορα στρώµατα προηγούµενων (πιθανών πολύπλοκων) αλγορίθµων και δοµών δεδοµένων 14 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (6) Εµπλουτισµός κώδικα υλοποίησης αλγορίθµων µε ευρετικές µεθόδους Μπορεί να επιταχύνει σηµαντικά την υλοποίηση στην πράξη, παρόλο που µπορεί να µη ϐελτιώνει την ασυµπτωτική συµπεριφορά του αλγορίθµου Παραδείγµατα Αλγόριθµοι Εύρεσης Συντοµότερων ιαδροµών Αλγόριθµοι Εύρεσης Μέγιστης Ροής 15 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (7) Εκτέλεση πειραµάτων Ενα προσεκτικά διαµορφωµένο σύνολο δεδοµένων δοκιµής συχνά ϐοηθάει στην διασφάλιση της ορθότητας µιας υλοποίησης Συλλογή στιγµιοτύπων στα οποία κάποιος κώδικας έχει εσφαλµένη συµπεριφορά είναι χρήσιµα για έλεγχο µελλοντικών υλοποιήσεων 16 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Κίνητρα (8) Μέτρηση σηµαντικών δεικτών απόδοσης Παραδείγµατα σηµαντικών δεικτών απόδοσης: σταθερές περιορισµοί πραγµατικού περιβάλλοντος τοπικότητα αναφορών (locality of references) επηρεασµός λανθάνουσας µνήµης (cache effects) πολυπλοκότητα επικοινωνίας... µπορεί να είναι πολύ δύσκολο να προβλεφθούν ϑεωρητικά, αλλά µπορούν να µετρηθούν πειραµατικά (και µε ακρίβεια) 17 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Στόχοι (1) Παροχή ϐιβλιοθηκών υψηλής ποιότητας που παρέχουν αποδοτικές και αξιόπιστες υλοποιήσεις αλγορίθµων και δοµών δεδοµένων 18 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Στόχοι (2) Ανάπτυξη συστηµάτων λογισµικού για την υποστήριξη της διαδικασίας υλοποίησης, αποσφαλµάτωσης, και πειραµατικής αξιολόγησης αλγορίθµων Περιβάλλοντα λογισµικού Προγράµµατα αποσφαλµάτωσης υψηλού-επιπέδου Εργαλεία οπτικοποίησης Περιβάλλοντα προσοµοίωσης και δοκιµών 19 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Στόχοι (3) Προσδιορισµός δεδοµένων δοκιµής για την (όσο το δυνατόν) καλύτερη αξιολόγηση των υλοποιηµένων αλγορίθµων Τυχαία δεδοµένα Συνθετικά δεδοµένα Πραγµατικά δεδοµένα 20 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Στόχοι (4) Εκτέλεση συγκριτικών πειραµατικών µελετών για τον προσδιορισµό της καλύτερης υλοποίησης µιας δεδοµένης εφαρµογής Εντοπισµός αλγορίθµων-διαχωριστών: αλγορίθµων που εµφανίζουν σαφώς διαφορετική συµπεριφορά σε διαφορετικούς τύπους και µεγέθη εισόδων Προσδιορισµός µεθοδολογιών για αποδοτική υλοποίηση και χρήσιµη πειραµατική αξιολόγηση αλγορίθµων 21 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Στόχοι (5) Ελεγχος ορθότητας προγραµµάτων Ανάπτυξη προγραµµάτων πιστοποίησης ( certifying programms): πιστοποιούν την ορθότητα της υλοποίησης 22 / 33

Τεχνολογίες Υλοποίησης Αλγορίθµων Αλλοι Στόχοι Εµπειρική αξιολόγηση ευρετικών µεθόδων για υπολογιστικά (π.χ. NP-δύσκολα) προβλήµατα Χαρακτηρισµός ασυµπτωτικής συµπεριφοράς πολύπλοκων αλγορίθµων Προσδιορισµός επιτάχυνσης παράλληλων αλγορίθµων Μελέτη ιεραρχιών µνήµης και επίδραση επικοινωνίας σε πραγµατικά περιβάλλοντα Πρόβλεψη απόδοσης αλγορίθµων Εύρεση περιορισµών ή σηµείων συµφόρησης σε πραγµατικές εφαρµογές 23 / 33

Βιβλιοθήκες/Περιβάλλοντα Λογισµικού Αλγορίθµων Ανάγκη & Χρησιµότητα Βασική προϋπόθεση επίτευξης των στόχων των Τεχνολογιών Υλοποίησης Αλγορίθµων Ευκολότερος (και καλύτερος) σχεδιασµός και ανάπτυξη λογισµικού αλγορίθµων (π.χ. έτοιµοι ενσωµατωµένοι τύποι δεδοµένων για πολύπλοκες συνδυαστικές δοµές) Επαναχρησιµοποίηση κώδικα πολύ ευκολότερη υλοποίηση πολύπλοκων αλγορίθµων Χρήση αποδοτικών, αξιόπιστων και καλά δοκιµασµένων αλγορίθµων, οι οποίοι (αρκετά συχνά) είναι οι καλύτεροι που υπάρχουν 24 / 33

Εργαλεία Τεχνολογιών Υλοποίησης Αλγορίθµων (1) Βιβλιοθήκες/Περιβάλλοντα Λογισµικού Αλγορίθµων LEDA (Library for Efficient Data types and Algorithms) http://www.algorithmic-solutions.com/ Boost C++ Library http://www.boost.org/ 25 / 33

Εργαλεία Τεχνολογιών Υλοποίησης Αλγορίθµων (2) Συλλογές-Αποθετήρια Αλγορίθµων Stony Brook Algorithm Repository http://www.cs.sunysb.edu/ algorith CATS (Combinatorial Algorithms Test Sets) - παρωχηµένο εδοµένα οκιµών Stanford GraphBase http://www.cs.sunysb.edu/ algorith/implement/graphbase/implement.shtml Netlib http://www.netlib.org/ Αλλα Συστήµατα Λογισµικού Συστήµατα οπτικοποίησης αλγορίθµων (algorithm animation): Tango, Leonardo, Catai, Polka, ZStep95, Eliot, Pavane,... ιάφορα εκπαιδευτικά περιβάλλοντα αλγορίθµων 26 / 33

Σύνοψη Τεχνολογίες Υλοποίησης Αλγορίθµων: µια νέα µέθοδος ανάπτυξης αλγορίθµων Βιβλιοθήκες/περιβάλλοντα λογισµικού: κλειδί για τις τεχνολογίες υλοποίησης αλγορίθµων 27 / 33

Τέλος Ενότητας 28 / 33

Σηµείωµα Ιστορικού Εκδόσεων Εργου Το παρόν έργο αποτελεί την έκδοση 1.0. 29 / 33

Σηµείωµα Ιστορικού Εκδόσεων Εργου Copyright Πανεπιστήµιο Πατρών, Χρήστος Ζαρολιάγκης, 2014. «Τεχνολογίες Υλοποίησης Αλγορίθµων». Εκδοση: 1.0. Πάτρα 2014. ιαθέσιµο από τη δικτυακή διεύθυνση: https://eclass.upatras.gr/courses/ceid1084 30 / 33

Σηµείωµα Ιστορικού Εκδόσεων Εργου Το παρόν υλικό διατίθεται µε τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εµπορική Χρήση, Οχι Παράγωγα Εργα 4.0 [1] ή µεταγενέστερη, ιεθνής Εκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. ϕωτογραφίες, διαγράµµατα κ.λ.π., τα οποία εµπεριέχονται σε αυτό. [1] http://creativecommons.org/licenses/by-nc-nd/4.0 Ως Μη Εµπορική ορίζεται η χρήση: που δεν περιλαµβάνει άµεσο ή έµµεσο οικονοµικό όφελος από την χρήση του έργου, για το διανοµέα του έργου και αδειοδόχο που δεν περιλαµβάνει οικονοµική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανοµέα του έργου και αδειοδόχο έµµεσο οικονοµικό όφελος (π.χ. διαφηµίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος µπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιµοποιεί το έργο για εµπορική χρήση, εφόσον αυτό του Ϲητηθεί. 31 / 33

Πηγές εικόνων - Χρήση Εργων Τρίτων Εικόνα 1: https://commons.wikimedia.org/wiki/file:graphminorexamplea.png Εικόνα 2: https://commons.wikimedia.org/wiki/file:graphminorexampleb.svg Εικόνα 3: https://commons.wikimedia.org/wiki/file:graphminorexamplec.svg 32 / 33

ιατήρηση Σηµειωµάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού ϑα πρέπει να συµπεριλαµβάνει : το Σηµείωµα Αναφοράς το Σηµείωµα Αδειοδότησης τη δήλωση ιατήρησης Σηµειωµάτων το Σηµείωµα Χρήσης Εργων Τρίτων (εφόσον υπάρχει) µαζί µε τους συνοδευόµενους υπερσυνδέσµους 33 / 33