8. Παράλληλη εκτέλεση βρόχων

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "8. Παράλληλη εκτέλεση βρόχων"

Transcript

1 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων Παράλληλη εκτέλεση βρόχων 8.1 Εισαγωγή Στα περισσότερα υπολογιστικά προβλήματα η κύρια πηγή καθυστέρησης είναι οι εμφωλευμένοι βρόχοι (nested loops). Όπως είναι φυσικό, η παραλληλοποίηση τους έχει κερδίσει το ενδιαφέρον της ερευνητικής κοινότητας με αποτέλεσμα τη δημιουργία αρκετών μεθοδολογιών για το μετασχηματισμό ενός εμφωλευμένου βρόχου σε ισοδύναμο βρόχο, ο οποίος να μπορεί να εκτελεστεί παράλληλα. Στην περίπτωση του βρόχου η αντίστοιχη έννοια της εργασίας (task) είναι το στιγμιότυπο (instance) του βρόχου, η έννοια του οποίου περιγράφεται αναλυτικά παρακάτω. Ο τελικός στόχος είναι ο διαμερισμός του συνόλου των στιγμιότυπων του βρόχου σε όσο το δυνατό μεγαλύτερες ομάδες. Το χαρακτηριστικό κάθε ομάδας είναι ότι τα στιγμιότυπα που περιλαμβάνει είναι ανεξάρτητα μεταξύ τους και συνεπώς μπορούν να εκτελεστούν παράλληλα στους διαθέσιμους επεξεργαστές. Ο προσδιορισμός αυτών των ομάδων που ονομάζεται διαμερισμός (partition) των στιγμιότυπων του βρόχου, είναι γενικά δύσκολη διαδικασία και σε ορισμένες περιπτώσεις μη αποτελεσματική. Στη συνέχεια θα δούμε τις προϋποθέσεις υπό τις οποίες ένας τέτοιος διαμερισμός είναι εφικτός και κυρίως αποτελεσματικός. Επίσης, θα παρουσιαστούν ορισμένες βασικές μεθοδολογίες διαμερισμού, που θεωρούμε ώριμες και αντιπροσωπευτικές, χωρίς αυτό να σημαίνει ότι είναι οι μοναδικές. Στο κεφάλαιο αυτό θα μελετηθούν οι βρόχοι, η δομή τους, η κανονικοποίησή τους με ειδική έμφαση στους βρόχους που είναι εμφωλευμένοι (nested) ο ένας μέσα στον άλλο. Κατόπιν θα μελετηθούν οι εξαρτήσεις δεδομένων (Εξαρτήσεις ροής, Αντιεξαρτήσεις, και Εξαρτήσεις Εξόδου) όπως αυτές εμφανίζονται σε εμφωλευμένους βρόχους. Κάθε τύπος εξάρτησης θα μελετηθεί αρχικά σε απλούς βρόχους δηλαδή βρόχους βάθους n=1 για λόγους απλότητας και μεγαλύτερης ευκολίας στην κατανόηση των βασικών εννοιών. Στη συνέχεια θα μελετηθεί σε βρόχους βάθους n=2 όπου εκεί θα γίνει κατανοητή ή γενίκευση των εννοιών για βρόχους οποιουδήποτε βάθους n Η δομή του βρόχου Απλοί βρόχοι Η δομή ενός μονοδιάστατου βρόχου (γνωστή από οποιαδήποτε γλώσσα προγραμματισμού) παρουσιάζεται στο παρακάτω παράδειγμα: for (i=p; i<=q; i=i+s) { H(i); } //end for i

2 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 175 Ένας βρόχος αποτελείται από ένα δείκτη i, που συνήθως (αλλά όχι πάντα) είναι μια ακέραια μεταβλητή η οποία λαμβάνει τιμές μεταξύ των ακραίων τιμών p και q, που ονομάζονται αρχικό όριο και τελικό όριο του βρόχου, αντίστοιχα. Η μη μηδενική μεταβλητή s 0 ονομάζεται βήμα (stride) του βρόχου. Αν το βήμα είναι θετικό (s > 0) τότε πρέπει το αρχικό όριο να είναι μικρότερο ή ίσο του τελικού ορίου (p q) διαφορετικά ο βρόχος δεν εκτελείται. Αντίστοιχα, αν το βήμα είναι αρνητικό (s<0) τότε πρέπει p q. Στην περίπτωση που p q, p=0 και s=1 ο βρόχος θα ονομάζεται κανονικοποιημένος (normalized). Στην παράγραφο θα δούμε ότι, υπό συνθήκες, ένας βρόχος με μη μηδενικό βήμα s 1 μπορεί να μετατραπεί σε ισοδύναμο βρόχο με μοναδιαίο βήμα μέσω μιας διαδικασίας που ονομάζεται κανονικοποίηση (normalization). Σε κάθε επανάληψη, εκτελείται ένα σύνολο από εντολές H(i), οι οποίες εξαρτώνται συνήθως από την τιμή που έχει ο δείκτης κατά την επανάληψη αυτή. Οι εντολές αυτές ονομάζονται σώμα (body) ή πυρήνας (core) του βρόχου. Εκτός από την μεταβλητή δείκτη i είναι συχνά χρήσιμο να οριστεί και ο μετρητής επανάληψης i' που δεν είναι άμεσα ορατός και είναι ουσιαστικά ο αύξων αριθμός της επανάληψης αρχίζοντας να μετράμε από το μηδέν, δηλαδή ο μετρητής i' παίρνει τιμές 0,1,2,... κτλ. Κάθε επανάληψη αποτελεί ένα στιγμιότυπο (instance) του βρόχου. Αν ο βρόχος είναι κανονικοποιημένος, δηλαδή έχουμε βήμα s=1 και αρχικό όριο p=0, τότε η τιμή του δείκτη i του βρόχου ταυτίζεται με την τιμή του μετρητή επανάληψης i'. Ας θεωρήσουμε το βρόχο του παραδείγματος 2, ο οποίος υπολογίζει τους πρώτους δέκα όρους της ακολουθίας Fibonacci. Το σώμα H(i) του βρόχου αποτελείται από μια εντολή ανάθεσης: F[i]=F[i-1]+F[i-2]; η οποία εκτελείται για διάφορες τιμές του δείκτη i. Πρακτικά, για κάθε τιμή του δείκτη εκτελείται και μια διαφορετική εντολή ανάθεσης. Για παράδειγμα για i=5 εκτελείται η εντολή F[5]=F[4]+F[3]; ενώ για i=7 εκτελείται η εντολή F[7]=F[6]+F[5];. Παράδειγμα 2 int F[11]; F[0]=0; F[1]=1; for (i=2; i<=10; i=i+1) { F[i]=F[i-1]+F[i-2]; } //end for i Ο βρόχος του παραδείγματος αποτελείται από 9 επαναλήψεις ή στιγμιότυπα, τα οποία καθορίζονται από τις εννέα διαφορετικές τιμές που λαμβάνει ο δείκτης i= 2, 3,..., 10.

3 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 176 Να σημειωθεί ότι η μεταβλητή αυτή λαμβάνει τις ακέραιες τιμές στο διάστημα [2,10] ενώ ο μετρητής επανάληψης i' λαμβάνει τις ακέραιες τιμές στο διάστημα [0,8]. Ο εννοιολογικός αυτός διαχωρισμός μεταξύ της μεταβλητής δείκτη και του μετρητή επανάληψης είναι πολύ σημαντικός για την ανάλυση εξαρτήσεων που θα δούμε σε επόμενες παραγράφους. Οι δύο έννοιες ταυτίζονται μόνο στην περίπτωση που ο βρόχος είναι κανονικοποιημένος Κανονικοποίηση βρόχων (Loop Normalization) Στην περίπτωση που ένας βρόχος έχει είτε μη μοναδιαίο βήμα s +1 είτε το αρχικό όριο p του βρόχου δεν είναι το 0, τότε ο δείκτης i δεν ταυτίζεται με τον μετρητή επανάληψης i'. Μπορεί όμως εύκολα να βρεθεί η σχέση μεταξύ των δύο και ο βρόχος να μετασχηματιστεί σε έναν ισοδύναμο βρόχο με βήμα αύξησης +1 και αρχικό όριο 0. Η διαδικασία αυτή ονομάζεται κανονικοποίηση (normalization) και περιγράφεται περιληπτικά στη συνέχεια μέσω του παραδείγματος 3. Παράδειγμα 3 for (i=p; i<=q; i=i+s) { S1(i); S2(i);... } Στο παράδειγμα αυτό ο βρόχος έχει βήμα s 0 ενώ το σώμα του βρόχου αποτελείται από ένα σύνολο εντολών S1(i), S2(i),..., που εξαρτώνται από την τιμή του δείκτη i. Αν θεωρήσουμε τον μετρητή επαναλήψεων i' ο οποίος εκκινεί από την τιμή 0 τότε κατά την επανάληψη i'=0 έχουμε i=p κατά την επανάληψη i'=1 έχουμε i=p+s κατά την επανάληψη i'=2 έχουμε i=p+2s κατά την επανάληψη i'=3 έχουμε i=p+3s... Γενικά i = p + i'*s υπό τον περιορισμό, φυσικά, ότι ο δείκτης i είναι εντός των παρακάτω ορίων p, q. Λύνοντας ως προς i παίρνουμε τον μετρητή επανάληψης σαν συνάρτηση του δείκτη i i = (i p)/s = 0. Προφανώς ο μετρητής επανάληψης έχει αρχική τιμή

4 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 177 i = (p p)/s = 0 και τελική τιμή i = (q p)/s = q, εφόσον το (q-p) διαιρείται ακριβώς με το s. Γενικά, αν το (q-p) δεν διαιρείται ακριβώς με το s, τότε i = (q p)/s = q όπου x συμβολίζει το ακέραιο μέρος του x. Η τιμή q' ονομάζεται κανονικοποιημένο άνω όριο του βρόχου και είναι πάντα θετικός ακέραιος αριθμός ή μηδέν. Ο αρχικός βρόχος μπορεί να μετασχηματιστεί στον παρακάτω ισοδύναμο βρόχο αντικαθιστώντας το i με i'. for (i'=0; i' <= q'; i'++) { S1(p+s*i'); S2(p+s*i');... } Μια πρακτική εφαρμογή δίνεται στο βρόχο του παραδείγματος 4. Παράδειγμα 4 for (i=100; i>=10; i=i-3) { A[i]=A[i+1]-1; } Στο παράδειγμα αυτό έχουμε s = 3, p = 100, q=10. Το άνω κανονικοποιημένο όριο του βρόχου είναι q = q p = = 30. Η σχέση μεταξύ του δείκτη i και του μετρητή επαναλήψεων i' είναι s 3 i = i' Με αντικατάσταση του i=100-3 i' η εντολή A[i]=A[i+1]-1 μετασχηματίζεται στην A[100-3*i']=A[101-3*i']-1. Κατά συνέπεια ο βρόχος μετασχηματίζεται στον παρακάτω ισοδύναμο βρόχο: for (i'=0; i'<=36; i'++) { A[100-3*i']=A[101-3*i']-1; } Η μεθοδολογία μπορεί να εφαρμοστεί και στην περίπτωση όπου το βήμα του βρόχου είναι s=1 αλλά το κάτω όριο του βρόχου είναι p 0. Στην περίπτωση αυτή ο

5 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 178 μετασχηματισμός θα δώσει βρόχο που ξεκινάει από το μηδέν μέχρι το κανονικοποιημένο άνω όριο: q = q p = q p. Για παράδειγμα, ας μελετήσουμε τον παρακάτω βρόχο: 1 Παράδειγμα 5 for (i=2; i<=10; i++) { A[i-2]=A[i]-A[i-1]; } Στο παράδειγμα αυτό έχουμε p=2, q=10, s=1. Το άνω κανονικοποιημένο όριο του βρόχου είναι: q = 10 2 = 8 και ο δείκτης i=p+s i' = 2+i'. Κατά 1 συνέπεια ο βρόχος μετασχηματίζεται στον παρακάτω βρόχο for (i'=0; i'<=8; i'++) { A[i']=A[i'+2]-A[i'+1]; } Παρόμοια είναι η διαδικασία και στην περίπτωση βρόχων μεγαλύτερης διάστασης, όπου εφαρμόζεται ανάλογα και ανεξάρτητα για κάθε εμφωλευμένο βρόχο. Η διαδικασία της κανονικοποίησης είναι περισσότερο σύνθετη στην περίπτωση βρόχων μεγαλύτερου βάθους και ειδικά αν τα όρια του βρόχου δεν είναι σταθεροί αριθμοί αλλά συναρτήσεις των δεικτών. Αν οι συναρτήσεις αυτές είναι γραμμικοί ή μετατοπισμένοι γραμμικοί συνδυασμοί των δεικτών τότε μπορεί να δοθεί μια μεθοδολογία κανονικοποίησης. Στη γενική περίπτωση όμως όπου μπορεί τα όρια του βρόχου να είναι μη γραμμικές συναρτήσεις των δεικτών ή ακόμα και το βήμα αύξησης να είναι συνάρτηση των δεικτών αντί σταθερός αριθμός, η κανονικοποίηση του βρόχου είναι δύσκολη διαδικασία και πολλές φορές αδύνατη Εμφωλευμένοι βρόχοι (Nested loops) Αν το σώμα του βρόχου είναι επίσης βρόχος τότε έχουμε έναν εμφωλευμένο βρόχο (nested loop). Οι εμφωλευμένοι βρόχοι είναι γνωστοί και ως πολλαπλά εμφωλευμένοι βρόχοι. Θα αποκαλούμε βάθος (depth) ή διάσταση ενός εμφωλευμένου βρόχου το πλήθος των βρόχων (for-loops) που είναι εμφωλευμένοι ο ένας μέσα στον άλλο. Ο βρόχος του παραδείγματος 2 έχει βάθος n=1, είναι δηλαδή ένας μονοδιάστατος βρόχος, ενώ ο βρόχος του παραδείγματος 6 έχει βάθος n. Αν μεταξύ των εντολών επανάληψης (for) ενός εμφωλευμένου βρόχου δεν παρεμβάλλονται άλλες εντολές, (όπως π.χ. η εντολή H_1(i1,i2) στο παράδειγμα 7

6 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 179 τότε έχουμε έναν τέλεια εμφωλευμένο βρόχο (perfectly nested loop), ο οποίος έχει τη γενική μορφή του βρόχου του παραδείγματος 6. Παράδειγμα 6. Τέλεια εμφωλευμένος βρόχος βάθους n for ( i1=p1; i1<=q1; i1++ ) { for ( i2=p2; i2<=q2; i2++ ) { for ( i3=p3; i3<=q3; i3++ ) {... for ( in=pn; in<=qn; in++ ) { H(i1,i2,...,in) } //end for in... } //end for i3 } //end for i2 } //end for i1 Αν μεταξύ των διαδοχικών εντολών for παρεμβάλλονται άλλες εντολές, όπως π.χ. η εντολή H_1(i1,i2) στο παράδειγμα 7, τότε ο βρόχος δεν είναι τέλεια εμφωλευμένος. Παράδειγμα 7. Όχι τέλεια εμφωλευμένος βρόχος βάθους 2 for (i1=p1; i1<=q1; i1++) { H1(i1,i2); for (i2=p2; i2<=q2; i2++) { H2(i1,i2) } //end for i2 } //end for i1 Κατά αντιστοιχία με το μονοδιάστατο βρόχο και με άξονα το βρόχο του παραδείγματος 6 μπορούμε να ορίσουμε τις αντίστοιχες έννοιες: Δείκτης (index) ή Στιγμιότυπο ενός πολλαπλά εμφωλευμένου βρόχου βάθους n είναι μια συγκεκριμένη τιμή του n-διάστατου διανύσματος στήλη i = [i1, i2,..., in] T, του οποίου τα στοιχεία είναι οι δείκτες των επιμέρους μονοδιάστατων βρόχων. Αν ο βρόχος είναι μονοδιάστατος (n=1) τότε ο δείκτης του βρόχου είναι τετριμμένο διάνυσμα που αποτελείται από ένα μόνο στοιχείο (i = [i1]). Χώρος των δεικτών (index space) ή Χώρος των στιγμιότυπων (instance space): Κάθε συνιστώσα ik, k=1,...,n του διανυσματικού δείκτη i λαμβάνει τιμές μεταξύ των αντίστοιχων ορίων Pk, Qk. Οι τιμές των επί μέρους δεικτών ik μπορεί να είναι ή μπορεί να μην είναι ακέραιοι αριθμοί. Για παράδειγμα, αν το βήμα αύξησης του δείκτη ik είναι 0.2 και τα αντίστοιχα αρχικά και τελικά όρια είναι Pk=0 και Qk=1, τότε ο δείκτης θα πάρει τις τιμές 0, 0.2, 0.4, 0.6, 0.8, 1.0. Χώρος δεικτών είναι το

7 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 180 σύνολο των τιμών που μπορεί να πάρει το διάνυσμα i. Στο σημείο αυτό θα πρέπει να αναφερθεί ότι θα ασχοληθούμε με βρόχους των οποίων οι τιμές των δεικτών είναι ακέραιοι αριθμοί. Χώρος των επαναλήψεων: Όπως και στη μονοδιάστατη περίπτωση, για κάθε βρόχο k ενός πολλαπλά εμφωλευμένου βρόχου μπορούμε να ορίσουμε ένα μετρητή επανάληψης ik' ο οποίος παίρνει ακέραιες τιμές ξεκινώντας από το 0. Χώρος επαναλήψεων είναι το σύνολο των τιμών που μπορεί να πάρει το διάνυσμα επαναλήψεων i' = [i1', i2',..., in'] T. Να σημειώσουμε ότι κατά αντιστοιχία με το μονοδιάστατο βρόχο, ο χώρος των επαναλήψεων ταυτίζεται με το χώρο των δεικτών αν το βήμα αύξησης κάθε βρόχου είναι +1, και όλα τα κάτω όρια είναι 0. Όρια (loop limits): Τα όρια ενός πολλαπλά εμφωλευμένου βρόχου βάθους n είναι δύο διανύσματα P (αρχικό όριο) και Q (τελικό όριο), των οποίων τα στοιχεία αποτελούνται αντίστοιχα, από τα αρχικά και τελικά όρια των επιμέρους βρόχων, δηλαδή P = [P1, P2,..., Pn] T και Q = [Q1, Q2,..., Qn] T. Γενικά, τα όρια των επιμέρους βρόχων μπορεί να είναι είτε σταθεροί προκαθορισμένοι αριθμοί, όπως στο παράδειγμα 8, όπου έχουμε P = [0, 5] T, Q = [10, 100] T, είτε συναρτήσεις των δεικτών, όπως στο βρόχο του παραδείγματος 9, όπου έχουμε P = [2, i1] T, Q = [N, N] T. Παράδειγμα 8. Εμφωλευμένος βρόχος με σταθερά όρια. P1 = 0; P2 = 5; Q1 = 10; Q2 = 100; for (i1=p1; i1<=q1; i1++ ) { for (i2=p2; i2<=q2; i2++) { A[i1,i2]=A[i1-1,i2-2]+2; };//end i1 };//end i2 Παράδειγμα 9. Εμφωλευμένος βρόχος όπου τα όρια είναι συναρτήσεις των δεικτών. for (i1=2; i1<=n; i1++ ) { for (i2=i1; i2<=n; i2++ ) { H(i1,i2); } } Σώμα (loop body) ή Πυρήνας (core) ενός εμφωλευμένου βρόχου: κατά αντιστοιχία με το μονοδιάστατο βρόχο, είναι το σύνολο των εντολών που εκτελούνται στο βρόχο

8 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 181 του οποίου το σώμα δεν περιλαμβάνει άλλους βρόχους, δηλαδή στον πιο εσωτερικό βρόχο. Ιδιαίτερη σημασία έχει η περίπτωση όπου το σώμα του βρόχου αποτελείται από μία η περισσότερες εντολές ανάθεσης που πραγματοποιούν αναφορές σε θέσεις πινάκων, όπως στο παράδειγμα 8 και στα περισσότερα παραδείγματα που θα μελετήσουμε στο κεφάλαιο αυτό. Γενικά, σε ένα εμφωλευμένο βρόχο βάθους n το διάνυσμα δεικτών, i, έχει διάσταση n, όπως και το διάνυσμα των κάτων ορίων P και των άνω ορίων Q. Γεωμετρικά, ένα στιγμιότυπο μπορεί να αναπαρασταθεί ως ένα σημείο στο n-διάστατο χώρο, του οποίου συντεταγμένες είναι οι συνιστώσες του διανύσματος i. Στη συνέχεια παραθέτουμε τρία παραδείγματα. Στο παράδειγμα 10 τα όρια των βρόχων είναι σταθεροί αριθμοί. Ο χώρος των δεικτών (J 2 ) στην περίπτωση αυτή περιγράφεται από ένα ορθογώνιο παραλληλόγραμμο όπως απεικονίζεται στο Σχήμα 46A. Παράδειγμα 10. for (i1=2; i1<=10; i1++) { for (i2=3; i2<=5; i2++) { A[i1,i2]=A[i1-1,i2-2]+2; } //end i1 } //end i2 Στο παράδειγμα 11 απεικονίζεται ένας διπλά εμφωλευμένος βρόχος, του οποίου το αρχικό όριο P2 είναι γραμμική συνάρτηση του δείκτη i1. Στο Σχήμα 46Β απεικονίζεται ο χώρος των στιγμιότυπων, ο οποίος δεν είναι πλέον παραλληλόγραμμο αλλά ένα κυρτό πολύγωνο (τρίγωνο). Παράδειγμα 11. for (i1=2; i1<=10 ;i1++) { for (i2=i1; i2<=5; i2++) { A[i1,i2]=A[i1-1,i2-2]+2; } //end i1 } //end i2

9 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 182 Σχήμα 46. (Α) Ο χώρος δεικτών του βρόχου του παραδείγματος 10. (Β) ο χώρος δεικτών του παραδείγματος 11. Φυσικά, υπάρχουν και βρόχοι των οποίων τα όρια δεν είναι γραμμικές συναρτήσεις των δεικτών και έχουν μη κυρτό περίγραμμα όπως ο βρόχος του παραδείγματος 12 του οποίου ο χώρος των δεικτών απεικονίζεται στο Σχήμα 47. Η μελέτη τέτοιου είδους βρόχων είναι πέρα από τους στόχους του βιβλίου. Παράδειγμα 12. for (i1=1; i1<=10; i1++) { for (i2=min(3,max(5-i1,1)); i2<=max(10-3i1, floor((i1 + 6)/2)); i2++) { S1; S2;... Sn; } //end i2 } //end i1

10 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 183 Σχήμα 47. O χώρος δεικτών του βρόχου του παραδείγματος 12, του οποίου το περίγραμμα είναι μη κυρτό. 8.3 Λεξικογραφική διάταξη των στιγμιότυπων Στο σύνολο των στιγμιότυπων είναι χρήσιμο να ορίσουμε δυο τελεστές: (α) prec που σημαίνει προηγείται και (β) succ που σημαίνει ακολουθεί. Το στιγμιότυπο i θα λέμε ότι προηγείται (έπεται) του στιγμιοτύπου j αν κατά τη σειριακή εκτέλεση του βρόχου εκτελείται πριν (μετά) από αυτό. Στην περίπτωση του μονοδιάστατου βρόχου οι τελεστές prec και succ ταυτίζονται με τους τελεστές μικρότερο ( < ) και μεγαλύτερο ( > ) αντίστοιχα. Επίσης, τα διανύσματα i και j είναι τετριμμένα διανύσματα μιας διάστασης και ταυτίζονται με τις ακέραιες μεταβλητές i, j αντίστοιχα. Στην περίπτωση όμως βρόχων μεγαλύτερου βάθους τα στιγμιότυπα είναι μη τετριμμένα διανύσματα, οι έννοιες μικρότερο και μεγαλύτερο δεν είναι προφανείς και πρέπει να οριστούν. Κατά την εκτέλεση των στιγμιότυπων του βρόχου αυτό που μας ενδιαφέρει είναι ο καθορισμός ενός τρόπου μέσω του οποίου να γνωρίζουμε ποιο στιγμιότυπο προηγείται στην εκτέλεση και ποιο ακολουθεί. Αν όλα τα στιγμιότυπα είναι ανεξάρτητα μεταξύ τους τότε δεν μας ενδιαφέρει η σειρά της εκτέλεσης τους. Στην περίπτωση όμως που επιβάλλεται συγκεκριμένη σειρά εκτέλεσης π.χ. λόγω ύπαρξης εξαρτήσεων που θα

11 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 184 δούμε στο επόμενο κεφάλαιο τότε θα πρέπει τα στιγμιότυπα να εκτελεστούν με συγκεκριμένη σειρά έτσι ώστε ο παράλληλος αλγόριθμος που θα σχεδιαστεί για τον παραλληλισμό του βρόχου να είναι ισοδύναμος με το σειριακό. Πώς όμως μπορούμε να βρούμε τον ακριβή καθορισμό της διάταξης μεταξύ δύο διανυσμάτων στιγμιότυπων, i και j δηλαδή ποιο στιγμιότυπο από τα δύο προηγείται και ποιο ακολουθεί; Ας παρατηρήσουμε τον παρακάτω διπλό βρόχο for (i1=0; i1<=10; i1++) { for (i2=0; i2<=10; i2++) { } } Βλέπουμε ότι για μια δεδομένη τιμή του δείκτη i1 π.χ. i1=2 κινείται ο δείκτης i2 εντός των ορίων του (Σχήμα 48) οπότε εκτελούνται όλα τα στιγμιότυπα (2,0), (2,1), (2,2),..., (2,10). Κατόπιν αλλάζει η τιμή του δείκτη i1 και γίνεται i1=3 και ακολουθούν τα στιγμιότυπα (3,0), (3,1), (3,2),...,(3,10). Συνεπώς: μεταξύ λοιπόν δυο στιγμιότυπων έπεται εκείνο που έχει μεγαλύτερη τιμή στον πρώτο δείκτη i1, π.χ μεταξύ του (2,5) και (3,2) αυτό που έπεται είναι το (3,2), ενώ μεταξύ δυο στιγμιότυπων που έχουν ίδια τιμή ως προς το δείκτη i1 έπεται αυτό που έχει μεγαλύτερη τιμή ως προς το δείκτη i2. Για παράδειγμα, το στιγμιότυπο (2,6) έπεται του στιγμιότυπου (2,3). Υπάρχει, δηλαδή, μια λεξικογραφική διάταξη μεταξύ των στιγμιότυπων, όπως ακριβώς και με τις λέξεις: Αν για παράδειγμα θέλουμε να ταξινομήσουμε τις λέξεις Αύριο και Σήμερα θα ελέγξουμε κατά αρχήν το πρώτο γράμμα και θα πάρουμε την κατάταξη Αύριο, Σήμερα. Αν θέλουμε να κατατάξουμε τις λέξεις Αυγό και Αυγή, τότε η κατάταξη θα γίνει με βάση το τέταρτο γράμμα, αφού τα προηγούμενα τρία ταυτίζονται και θα έχουμε την κατάταξη Αυγή, Αυγό. Αυτό συμβαίνει και με τα στιγμιότυπα.

12 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 185 Σχήμα 48. Διάταξη της σειριακής εκτέλεσης των στιγμιότυπων ενός βρόχου βάθους n=2. Η διακεκομμένη γραμμή μπορεί να θεωρηθεί ως άξονας του χρόνου. Αν τεντώσουμε νοητά τη διακεκομμένη γραμμή ώστε να γίνει ευθεία μπορούμε να κατανοήσουμε γεωμετρικά τη λεξικογραφική διάταξη κατά την εκτέλεση μεταξύ των στιγμιότυπων. Αυτό που είναι λεξικογραφικά μικρότερο από το άλλο θα εκτελεστεί σε μικρότερη χρονική στιγμή. Γενικά, μπορούμε να ορίσουμε τη λεξικογραφική προήγηση μεταξύ δυο στιγμιότυπων i, j ενός n-διάστατου εμφωλευμένου βρόχου, δηλαδή τη σχέση i prec j, ως: i=[i1, i2,..., in] prec j=[j1, j2,, jn] i1<j1 ή i1=j1 και i2<j2 ή i1=j1 και i2=j2 και i{n-1}=j{n-1} και in<jn Εντελώς αντίστοιχα ορίζεται και το σχέη i succ j (το στιγμιότυπο i ακολουθεί το στιγμιότυπο j): i=[i1, i2,..., in] succ j=[j1, j2,, jn] i1>j1 ή i1=j1 και i2>j2 ή i1=j1 και i2=j2 και i{n-1}=j{n-1} και in>jn

13 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων Εξαρτήσεις ροής Εξαρτήσεις ροής σε απλούς βρόχους Ας θεωρήσουμε το μονοδιάστατο βρόχο του παραδείγματος 13. Παράδειγμα 13. Βρόχος με εξαρτήσεις ροής. int A[11]; for (i=2; i<=10; i+=1) { A[i]=A[i-2]+1; }; Ξεδιπλώνοντας το βρόχο (Σχήμα 49) διαπιστώνουμε ότι αυτός εκφράζει την σειριακή εκτέλεση ενός συνόλου εντολών S(2),... S(10), κάθε μια από τις οποίες αντιστοιχεί και σε ένα στιγμιότυπο. Ας θεωρήσουμε δύο στιγμιότυπα του βρόχου με δείκτες i, j αντίστοιχα Κατά το στιγμιότυπο i εκτελείται η εντολή: A[i] = A[i-2] + 1 Ενώ κατά το στιγμιότυπο j εκτελείται η εντολή: A[j] = A[j-2] + 1 Κάθε θέση του πίνακα Α αντιστοιχεί σε μια θέση μνήμης. Το στιγμιότυπο i εγγράφει στην θέση A[i] ενώ το στιγμιότυπο j κάνει ανάγνωση από τη θέση A[j-2]. Αν ισχύει i = j 2 για κάποια i, j {2,3,...,10} τότε τα δύο στιγμιότυπα γράφουν και διαβάζουν την ίδια θέση μνήμης. Από την παραπάνω εξίσωση προκύπτει i < j δηλαδή, το στιγμιότυπο i προηγείται του j κατά τη σειριακή εκτέλεση του βρόχου. Υπάρχει συνεπώς κίνδυνος Ανάγνωσης μετά από Εγγραφή (Read After Write RAW). Η ορθή εκτέλεση του προγράμματος από ένα παράλληλο σύστημα απαιτεί το στιγμιότυπο i να εκτελεστεί πριν από το j αλλιώς θα υπάρξει σφάλμα. Λέμε ότι έχουμε μια εξάρτηση ροής μεταξύ των στιγμιότυπων i και j. Για παράδειγμα, στο στιγμιότυπο S(5) γίνεται ανάγνωση της θέσης Α[3] η οποία όμως εγγράφεται κατά το στιγμιότυπο S(3). Στιγμιότυπα, τα οποία δεν συνδέονται με εξαρτήσεις μπορούν να εκτελεστούν παράλληλα. Στο σχήμα Σχήμα 49Α, φαίνονται οι εντολές που εκτελούνται και στο σχήμα Σχήμα 49Β, οι αντίστοιχες εξαρτήσεις μεταξύ των στιγμιότυπων του. μεταξύ των στιγμιότυπων i, j

14 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 187 Σχήμα 49. Οι εντολές που εκτελούνται στο βρόχο του παραδείγματος 13. (Α) Το ξεδίπλωμα του βρόχου. (Β) Οι εξαρτήσεις ροής μεταξύ των στιγμιότυπων. (C) Ο γράφος των εξαρτήσεων μεταξύ των στιγμιότυπων και (D) O χώρος των στιγμιότυπων Αν ονομάσουμε i, j τα διανύσματα δεικτών δύο στιγμιοτύπων που έχουν εξάρτηση ροής μεταξύ τους (το j κάνει ανάγνωση και το i κάνει εγγραφή), τότε η διαφορά d = j i καλείται διάνυσμα εξάρτησης. Στη συγκεκριμένη περίπτωση έχουμε πολλά ζεύγη στιγμιοτύπων που εξαρτώνται μεταξύ τους: Στιγμιότυπο όπου γίνεται εγγραφή Στιγμιότυπο όπου γίνεται ανάγωνση Διάνυσμα εξάρτησης

15 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 188 i = 2 j = 4 d = j i = 2 i = 3 j = 5 d = j i = 2 i = 8 j = 10 d = j i = 2 Παρατηρούμε ότι σε όλες τις εξαρτήσεις το διάνυσμα εξάρτησης είναι πάντα ίδιο και ίσο με d = 2. Στην περίπτωση αυτή το διάνυσμα d είναι τετριμμένο (έχει διάσταση 1) καθώς ο βρόχος έχει βάθος 1 και τα διανύρματα δεικτών i, j, έχουν επίσης διάσταση Εξαρτήσεις ροής σε πολλαπλά εμφωλευμένους βρόχους Τα παραπάνω γενικεύονται ευθέως σε εμφωλευμένους βρόχους μεγαλύτερου βάθους. Ας θεωρήσουμε το βρόχο του ακόλουθου παραδείγματος: Παράδειγμα 14. Εμφωλευμένος βρόχος με εξαρτήσεις ροής. for (i1=2; i1<=10; i1++) { for (i2=2; i2<=10; i2++) { A[i1,i2]=A[i1-1,i2-2]+2; } //end for i1 } //end for i2 Οι εξαρτήσεις ενός πολλαπλά εμφωλευμένου βρόχου υπολογίζονται με την ίδια μεθοδολογία που εφαρμόσαμε και στην περίπτωση του μονοδιάστατου βρόχου. Έστω δύο στιγμιότυπα i = [i1, i2], j = [i1, i2] Κατά το i εκτελείται η εντολή: A[i1,i2] = A[i1-1,i2-2]+2; ενώ κατά το j εκτελείται η εντολή: A[j1,j2] = A[j1-1,j2-2]+2; Όπως φαίνεται στο Σχήμα 50, αν ισχύει [i1, i2] = [j1 1, j2 2] ή [i1, i2] = [j1, j2] [1, 2] ή i = j [1, 2] τότε το στιγμιότυπο j να κάνει ανάγνωση από την ίδια θέση μνήμης στην οποία εγγράφει το στιγμιότυπο i. Για να συμβεί αυτό πρέπει να υπάρχουν ακέραιοι i1, i2, j1, j2 εντός των ορίων του βρόχου, (δηλαδή 2 i1, i2 10 και 2 j1, j2 10) τέτοιοι ώστε

16 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 189 i1 = j1 1 και i2 = j2 2. Από την παραπάνω εξίσωση προκύπτει i < j δηλαδή το στιγμιότυπο i προηγείται λεξικογρφικά του j. Θυμίζουμε τον ορισμό της λεξικογραφικής προήγησης: i < j i1 < j1 ή Σχήμα 50. Εξίσωση εξάρτησης ροής σε διπλά εμφωλευμένο βρόχο. i1 = j1 και i2 < j2 Συνεπώς υπάρχει πάλι κίνδυνος Ανάγνωσης μετά από εγγραφή (RAW) αφού το στιγμιότυπο που διαβάζει (j) πρέπει να έπεται του στιγμιοτύπου που γράφει (i). Όπως και πριν, το διάνυσμα d = [1, 2] = j i καλείται διάνυσμα εξάρτησης. Στο Σχήμα 51 φαίνονται οι εξαρτήσεις μεταξύ των στιγμιοτύπων καθώς και το διάνυσμα εξάρτησης.

17 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 190 Σχήμα 51. Ο χώρος των στιγμιότυπων του βρόχου του παραδείγματος 14 και το διάνυσμα εξάρτησης d=[1, 2]. 8.5 Αντιεξαρτήσεις Αντιεξαρτήσεις σε απλούς βρόχους Ας θεωρήσουμε τον παρακάτω μονοδιάστατο βρόχο Παράδειγμα 15. Βρόχος με αντιεξαρτήσεις. int A[11]; for (i=0; i<=7; i++) { A[i]=A[i+3]+1; }; Ας πάρουμε, όπως και πριν, δύο στιγμιότυπα i, j: Κατά το στιγμιότυπο i εκτελείται η εντολή: A[i]=A[i+3]+1; Ενώ κατά το στιγμιότυπο j εκτελείται η εντολή A[j]=A[j+3]+1;. Το στιγμιότυπο i κάνει εγγραφή στη θέση μνήμης A[i] ενώ το στιγμιότυπο j κάνει ανάγνωση από τη θέση μνήμης A[j+3]. Υπάρχει αναταγωνισμός μεταξύ ανάγνωσης και εγγραφής αν ισχύει

18 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 191 i = j + 3 για κάποιο ζευγάρι τιμών i, j εντός των ορίων του βρόχου (δηλαδή 0 i 7 και 0 j 7). Από το παραπάνω είναι προφανές ότι i > j δηλαδή το στιγμιότυπο i έπεται του j στην σειριακή εκτέλεση του βρόχου. Επειδή στη σειριακή εκτέλεση το i κάνει εγγραφή μετά από το j που κάνει ανάγνωση μιλάμε για κίνδυνο Εγγραφής μετά από Ανάγνωση (Write After Read WAR). Η ορθή εκτέλεση επιβάλλει την εκτέλεση του i μετά από το j σε ένα παράλληλο σύστημα, αλλιώς θα υπάρξει σφάλμα. Συνεπώς υπάρχει εξάρτηση μεταξύ των στιγμιοτύπων i και j η οποία καλείται αντιεξάρτηση. Στο Σχήμα 52, φαίνεται η αντιεξάρτηση μεταξύ των στιγμιότυπων i, j αν η εξίσωση αντιεξάρτησης: i = j+3 έχει ακέραιες λύσεις εντός του χώρου των δεικτών. j=j:.. i=i: A[j]=A[j+3]+1; A[i]=A[i+3]+1; Το διάνυσμα d* = i j = 3 = d Σχήμα 52. Γενική περίπτωση Αντιεξάρτησης. καλείται διάνυσμα απόστασης της αντιεξάρτησης (στην περίπτωση αυτή είναι ένα τετριμμένο διάνυσμα 1 διάστασης καθώς ο βρόχος έχει βάθος 1). Στο Σχήμα 53 απεικονίζεται το διάνυσμα απόστασης εξάρτησης μεταξύ όλων των στιγμιότυπων του βρόχου του παραδείγματος 15.

19 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 192 Σχήμα 53. Αντιεξάρτηση (παράδειγμα 15) (A) Το ξεδίπλωμα του βρόχου. (Β) Οι αντιεξαρτήσεις (διανύσματα απόστασης). (C) Ο Γράφος εξάρτησης των στιγμιότυπων και (D) Ο χώρος των στιγμιότυπων

20 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων Αντιεξαρτήσεις σε πολλαπλά εμφωλευμένους βρόχους Σε πολλαπλά εμφωλευμένους βρόχους γενικεύεται εύκολα η ανάλυση εξαρτήσεων που έχει ήδη παρουσιαστεί. Έστω ο παρακάτω βρόχος Παράδειγμα 16. Εμφωλευμένος βρόχος με αντιεξαρτήσεις. for (i1=2; i1<=10; i1++) { for (i2=2; i2<=10; i2++){ A[i1-1,i2] = A[i1,i2-2]+1; } //end for i1 } //end for i2 Θεωρούμε δύο στιγμιότυπα i = [i1, i2] και j = [j1, j2], που εκτελούν τις εντολές A[i1 1,i2] = A[i1,i2 2]+1; A[j1 1,j2] = A[j1,j2 2]+1; Κατά το i γίνεται εγγραφή στη θέση A[i1 1,i2] ενώ κατά το j γίνεται ανάγνωση από τη θέση A[j1,j2 2]. Τα δύο αυτά στιγμιότυπα προσπελαύνουν την ίδια θέση μνήμης αν [i1 1,i2] = [j1,j2 2] ή [i1, i2] + [ 1, 0] = [j1,j2] + [0, 2] ή i = j + [1, 2] Είναι εμφανές ότι το i είναι λεξικογραφικά μεγαλύτερο του j αφού i1 = j1+1 i1 > j1. Συνεπώς, κατά την σειριακή εκτέλεση του βρόχου το i έπεται του j. Έχουμε κίνδυνο εγγραφής μετά από ανάγνωση και συνεπώς αντιεξάρτηση μεταξύ των δύο στιγμιοτύπων. Το διάνυσμα απόστασης της αντιεξάρτησης είναι d* = i j = [1, 2] Για παράδειγμα, το στιγμιότυπο [i1, i2] = [3, 3] γράφει στη θέση A[2, 3] ενώ το στιγμιότυπο [j1, j2] = [2, 5] διαβάζει από τη θέση A[2, 3] Στη σειριακή εκτέλεση του βρόχου, το στιγμιότυπο [3,3] έπεται του στιγμιότυπου [2,5] (εγγραφή μετά από ανάγνωση) κι έτσι έχουμε μια αντιεξάρτηση μεταξύ των δύο στιγμιοτύπων. Στο Σχήμα 54 απεικονίζεται ο χώρος των στιγμιοτύπων και το διάνυσμα απόστασης της αντιεξάρτησης.

21 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 194 Σχήμα 54. Ο χώρος των στιγμιότυπων του παραδείγματος 16 και το διάνυσμα απόστασης αντιεξάρτησης d=[1, -2].

22 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων Εξαρτήσεις εξόδου Όπως είδαμε παραπάνω, οι εξαρτήσεις ροής αντιστοιχούν στον κίνδυνο Read-After- Write (RAW) ενώ οι αντι-εξαρτήσεις αντιστοιχούν στον κίνδυνο Write-After-Read (WAR). Στην περίπτωση των εξαρτήσεων εξόδου έχουμε του κινδύνου της Εγγραφής μετά από Εγγραφή (Write After Write WAW). Εξαρτήσεις εξόδου μπορούν να εμφανιστούν όταν το σώμα του εμφωλευμένου βρόχου περιέχει περισσότερες από μια εντολές, όπως για παράδειγμα ο παρακάτω βρόχος. Παράδειγμα 17 for (i=2; i<=10; i++){ A[i+2] = B[i]+4*C[i]; A[i] = B[i]+1; } Για τις εξαρτήσεις εξόδου εφαρμόζουμε ανάλογη μεθοδολογία με τις εξαρτήσεις ροής και τις αντιεξαρτήσεις. Θεωρούμε δυο στιγμιότυπα i, j όπου i < j (βλ. (Σχήμα 55). Σχήμα 55. Γενική περίπτωση εξάρτησης εξόδου. Έχουμε εξάρτηση εξόδου αν και τα δύο στιγμιότυπα γράφουν στην ίδια θέση μνήμης. Σε αυτή την περίπτωση η ορθή εκτέλεση του προγράμματος από ένα παράλληλο σύστημα απαιτεί το j να εκτελεστεί μετά το i ώστε η τελευταία τιμή που γράφεται να είναι η σωστή. Για να έχουμε εξάρτηση εξόδου πρέπει να υπάρχουν ακέραιοι i, j, εντός των ορίων των δεικτών του βρόχου (δηλαδή 2 i 10 και 2 j 10) έτσι ώστε: είτε είτε i+2 = j i = j+2. Οι περιπτώσεις i+2 = j+2 και i=j αποκλείονται αφού i j. Η πρώη εξίσωση δίνει i < j ενώ η δεύτερη i > j Αφού όμως κάναμε την υπόθεση ότι το i προηγείται του j κατά την σειριακή εκτέλεση του βρόχου, τότε μόνο η πρώτη εξίσωση μπορεί να ισχύει και άρα υπάρχει εξάρτηση

23 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 196 μεταξύ των στιγμιοτύπων i, j όπου j = i+2. Με άλλα λόγια υπάρχει εξάρτηση εξόδου στα ζεύγη [i, i+2], δηλαδή στα ζεύγη [2,4], [3,5], [4,6],... Ο παρακάτω πίνακας δείχνει τα στιγμιότυπα 2 έως 10 με τις αντίστοιχες εξαρτήσεις εξόδου. (οι εξαρτήσεις εξόδου συμβολίζονται με ένα βέλος που περιέχει ένα μικρό κύκλο)

24 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 197 Η διαφορά d ο = j i = 2 Στιγμιότυπα: Εντολές i=2 A[4] = B[2]+4*C[2]; A[2] = B[2]+1; i=3 A[5] = B[3]+4*C[3]; A[3] = B[3]+1; i=4 A[6] = B[4]+4*C[4]; A[4] = B[4]+1; i=5 A[7] = B[5]+4*C[5]; A[5] = B[5]+1; i=6 A[8] = B[6]+4*C[6]; A[6] = B[6]+1; i=7 A[9] = B[7]+4*C[7]; A[7] = B[7]+1; i=8 A[10] = B[8]+4*C[8]; A[8] = B[8]+1; i=9 A[11] = B[9]+4*C[9]; A[9] = B[9]+1; i=10 A[12] = B[10]+4*C[10]; A[10] = B[10]+1; καλείται διάνυσμα εξάρτησης εξόδου. Στη συγκεκριμένη περίπτωση είναι μιας διάστασης (τετριμμένο διάνυσμα) καθώς ο βρόχος είναι μονοδιάστατος. Ωστόσο αντίστοιχη ανάλυση όπως πριν μπορεί να γίνει και σε βρόχους πολλών διαστάσεων. 8.7 Παράδειγμα βρόχου με περισσότερες από μία εξαρτήσεις Είναι προφανές ότι το σώμα του βρόχου είναι δυνατό να αποτελείται από περισσότερες από μία εντολές ανάθεσης και να υπάρχουν περισσότερες από μία εξαρτήσεις όπως θα φανεί στο παρακάτω Παράδειγμα 18. int A[N]; for (int i=3; i<=ν; i++) { A[i] = A[i+2]+2*A[i-2]; A[i+4] = 2*A[i+2]+B[i-1]; B[i] = A[i-2]*B[i-3]+1; }

25 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 198 Ας θεωρήσουμε δύο στιγμιότυπα i και j με τις αντίστοιχες εντολές τους όπως φαίνεται στον παρακάτω πίνακα: Στιγμιότυπο i A[i] = A[i+2]+2*A[i-2]; A[i+4] = 2*A[i+2]+B[i-1]; B[i] = A[i-2]*B[i-3]+1; Στιγμιότυπο j A[j] = A[j+2]+2*A[j-2]; A[j+4] = 2*A[j+2]+B[j-1]; B[j] = A[j-2]*B[j-3]+1; Για να εντοπίσουμε τις διάφορες εξαρτήσεις (εξαρτήσεις ροής, αντι-εξαρτήσεις και εξαρτήσεις εξόδου) ακολουθούμε τα εξής βήματα: Βήμα 1: Βρίσκουμε τις θέσεις μνήμης όπου κάνει εγγραφή το στιγμιότυπο i και τις θέσεις μνήμης απ όπου κάνει ανάγνωση το στιγμιότυπο j, όπως φαίνεται στον παρακάτω πίνακα: Θέσεις μνήμης όπου εγγράφει το i A[i] A[i+4] B[i] Θέσεις μνήμης απ όπου διαβάζει το j A[j+2] A[j-2] B[j-1] B[j-3] Βήμα 2: Βρίσκουμε όλες τις εξαρτήσεις ροής (RAW) και αντι-εξαρτήσεις (WAR) βρίσκοντας όλους τους δυνατούς συνδυασμούς με τους οποίους οι θέσεις μνήμης εγγραφής του στιγμιοτύπου i είναι ίδιες με τις θέσεις μνήμης ανάγνωσης του στιγμιοτύπου j. Στο συγκεκριμένο παράδειγμα όλες οι εξαρτήσεις τύπου RAW και WAR είναι οι παρακάτω: Συνθήκη ανταγωνισμού Σχέση Εξάρτησης Θέση A[i] είναι ίδια με A[j+2] i = j + 2 i = j + 2 Θέση A[i] είναι ίδια με A[j 2] i = j 2 i = j 2 Θέση A[i+4] είναι ίδια με A[j+2] i + 4 = j + 2 i = j 2 Θέση A[i+4] είναι ίδια με A[j 2] i + 4 = j 2 i = j 6 Θέση B[i] είναι ίδια με B[j 1] i = j 1 i = j 1 Θέση B[i] είναι ίδια με B[j 3] i = j 3 i = j 3 Παρατηρούμε ότι η σχέση εξάρτησης i = j 2 εμφανίζεται 2 φορές. Αυτό σημαίνει ότι ζεύγος στιγμιοτύπων [i, j] = [j 2, j] θα εμπεριέχει εξάρτηση για 2 διαφορετικούς λόγους: 1. επειδή η θέση A[i] είναι ίδια με A[j 2]

26 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων επειδή η θέση A[i+4] είναι ίδια με A[j+2] Προφανώς εμείς θα μετρήσουμε την εξάρτηση μεταξύ των i και j μόνο μια φορά, άσχετα από το πόσοι λόγοι συντρέχουν γι αυτό. Βήμα 3: Χρησιμοποιώντας τα αποτελέσματα από το Βήμα 2, βρίσκουμε τις μοναδικές σχέσεις εξαρτήσεων (αφαιρούμε όσες επαναλαμβάνονται). Υπολογίζουμε το διάνυσμα εξάρτησης d = j i. Αν το διάνυσμα είναι θετικό τότε έχουμε εξάρτηση ροής διαφορετικά έχουμε αντιεξάρτηση. Σε περίπτωση πολυδάστατων βρόχων ελέγχουμε αντίστοιχα αν το d είναι λεξικογραφικά μεγαλύτερο από το μηδέν (εξάρτηση ροής) ή όχι (αντιεξάρτηση). Εξαρτώμενα στιγμιότυπα Σχέση Εξάρτησης Διάνυσμα εξάρτησης d = j i Διάνυσμα Απόστασης Εξάρτησης d* = i j Εξάρτηση Ροής ή Αντιεξάρτηση i, j i = j 6 6 Εξάρτηση ροής i, j i = j 3 3 Εξάρτηση ροής i, j i = j 2 2 Εξάρτηση ροής i, j i = j 1 1 Εξάρτηση ροής i, j i = j Αντιεξάρτηση Βήμα 4: Για τον υπολογισμό των εξαρτήσεων εξόδου υποθέτουμε ότι το στιγμιότυπο i προηγείται του στιγμιοτύπου j. Βρίσκουμε όλους τους δυνατούς συνδυασμούς όπου οι θέσεις μνήμης εγγραφής του i είναι ίδιες με τις θέσεις μνήμης εγγραφής του j, όπως στον παρακάτω πίνακα: Συνθήκη ανταγωνισμού 2 Θέση A[i] είναι ίδια με A[j+4] i = j + 4 i = j + 4 Θέση A[i+4] είναι ίδια με A[j] i + 4 = j i = j 4 Σχέση Εξάρτησης Επειδή υποθέσαμε ότι το στιγμιότυπο i προηγείται του στιγμιοτύπου j, δηλαδή i < j, ισχύει μόνο η δεύτερη σχέση εξάρτησης του παραπάνω πίνακα. Συνεπώς έχουμε μία μόνο σχέση εξάρτησης εξόδου i = j 4 και το διάνυσμα εξάστησης εξόδου είναι d ο = j i = 4. 2 Σημειώνουμε ότι δεν μας απασχολούν οι συνθήκες Θέση A[i] είναι ίδια με A[j], Θέση A[i+4] είναι ίδια με A[j+4], και Θέση B[i] είναι ίδια με B[j] γιατί υποθέσαμε i j.

27 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 200 Στο Σχήμα 56 φαίνονται όλες οι εξαρτήσεις για το παράδειγμα 18 ( = εξαρτήσεις ροής, = αντιεξαρτήσεις και = εξαρτήσεις εξόδου). S(3) S(4) S(5) S(6) S(7) S(8) S(9) S(10) S(11) Σχήμα 56. Τα στιγμιότυπα i=3 (κόμβος S(3)), i=4 (κόμβος S(4)),, i=11 (κόμβος S(11)) του παραδείγματος 18 και οι εξαρτήσεις τους. Για λόγους πρακτικούς δεν εμφανίζονται όλες οι ακμές εξάρτησης παρά μόνο αυτές που ξεκινούν ή καταλήγουν στο στιγμιότυπο Απεικόνιση Η εξαγωγή των εξαρτήσεων είναι το πρώτο βήμα για τον παραλληλισμό του βρόχου. Όπως είδαμε και στο Κεφάλαιο 7, το επόμενο βήμα είναι η απεικόνιση, δηλαδή ο διαμερισμός (partition) των στιγμιοτύπων σε διεργασίες που εκτελούνται σε ένα μόνο επεξεργαστή. Στο Σχήμα 57 δίνονται δύο σενάρια απεικόνισης του ίδιου γράφου σε τρεις επεξεργαστές: E0, E1, E2. E 0 E 1 E 2 E 0 E 1 E 2 (α) (β) Σχήμα 57. Απεικόνιση γράφου σε 3 επεξεργαστές: E0, E1, E2. (α) Μη γραμμική απεικόνιση (β) Γραμμική απεικόνιση.

28 ΔΙΚΤΥΟ Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 201 Ε0 Ε 0,0 Ε 0,1.... Ε 0,Ν Ε1 Ε 1,0 Ε 1,1.... Ε 1,Ν Ε2 Ε 2,0 Ε 2,1.... Ε 2,Ν ΕΝ Ε Ν,0 Ε Ν,1.... Ε Ν,Ν (α) (β) Σχήμα 58. (α) Διάταξη επεξεργαστών σε γραμμή. (β) Διάταξη επεξεργαστών σε 2- διάστατο πλέγμα. Γραμμική διάταξη επεξεργαστών Στην περίπτωση που οι επεξεργαστές Ε 0, Ε 1,..., Ε K, αποτελούν μια γραμμική διάταξη όπως στο Σχήμα 58α, η απεικόνιση είναι ουσιαστικά μια συνάρτηση f() που απεικονίζει το διάνυσμα δεικτών του στιγμιοτύπου i σε έναν αύξοντα αριθμό n επεξεργαστή. Έτσι, η σχέση n = f(i) σημαίνει ότι το στιγμιότυπο i θα εκτελεστεί στον επεξεργαστή E n. Όταν η συνάρτηση f είναι μη γραμμική, τότε η ομαδοποίηση των στιγμιοτύπων σε διεργασίες (διακεκομμένες περιοχές) είναι, εν γένει, ακανόνιστη όπως φαίνεται στο Σχήμα 57α. Στην πιο απλή περίπτωση η απεικόνιση γίνεται γραμμικά, δηλαδή η f είναι της μορφής: f(i) = p 1 i1 + p 2 i2 + + p N in + p 0 για κάποιους σταθερούς συντελεστές {p i }. Η περίπτωση αυτή δείχνεται στο Σχήμα 57β. Εδώ βλέπουμε ότι η ομαδοποίηση των στιγμιοτύπων δίνει ευθύγραμμες περιοχές (διακεκομμένα παραλληλόγραμμα). Γενικά η γραμμική απεικόνιση δίνει περιοχές που είναι είτε ευθείες, στις 2 διαστάσεις, είτε επίπεδα, στις 3 διαστάσεις, είτε υπερ-επίπεδα σε μεγαλύτερες διαστάσεις (τα υπερ-επίπεδα ωστόσο δεν μπορούν εύκολα να οπτικοποιηθούν). Διάταξη επεξεργαστών σε πλέγμα

29 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 202 Στην περίπτωση που οι επεξεγαστές αποτελούν ένα πλέγμα, τότε η απεικόνιση είναι σε μια συνάρτηση f(i) η οποία για κάθε στιγμιότυπο i δίνει ένα διάνυσμα δεικτών n = [n 1,, n K ] που καθορίζει έναν συγκεκριμένο επεξεργαστή στο πλέγμα. Για παράδειγμα στο 2-διάστατο πλέγμα του Σχήμα 58β, η συνάρτηση πρέπει να επιστρέψει ένα διάνυσμα 2- διαστάσεων n = [n 1, n 2 ] = f(i) που σημαίνει ότι το στιγμιότυπο i θα εκτελεστεί στον επεξεργαστή E n1,n 2. Όπως και στην προηγούμενη περίπτωση, έτσι και εδώ, γραμμική απεικόνιση σημαίνει ότι η f είναι γραμμική, δηλαδή έχει την παρακάτω μορφή: f 1 (i) = p 1,1 i1 + p 1,2 i2 + + p 1,N in + p 1,0 f 2 (i) = p 2,1 i1 + p 2,2 i2 + + p 2,N in + p 2,0 για κάποιους συντελεστές {p i,j }. Περιορισμοί στην απεικόνιση και κατά συνέπεια στη συνάρτηση f (ή f) δεν υπάρχουν. Θεωρητικά θα μπορούσε η f να είναι τέτοια ώστε όλα τα στιγμιότυπα να αντιστοιχηθούν σε ένα μόνο επεξεργαστή. Προφανώς, ωστόσο, μια τέτοια απεικόνιση θα ήταν η χειρότερη δυνατή γιατί θα καταργούσε τον παράλληλισμό. Γενικά, ισχύουν οι τρεις βασικές αρχές που περιγράψαμε στο κεφάλαιο 7.2.2, δηλαδή η εξισορρόπηση του φόρτου εργασίας, η ελαχιστοποίηση της επικοινωνίας μεταξύ των διεργασιών, και η μείωση του χρόνου που απαιτείται για τη διαχείριση της απεικόνισης. 8.9 Χρονοδρομολόγηση Όπως είδαμε και στο Κεφάλαιο 7, μετά την απεικόνιση, το επόμενο βήμα είναι ο χρονοδιαμερισμός των στιγμιοτύπων σε υποσύνολα όπου τα στοιχεία του κάθε υποσυνόλου είναι ανεξάρτητα μεταξύ τους και συνεπώς μπορούν να εκτελεστούν ταυτόχρονα. Η ανεξαρτησία μεταξύ στιγμιοτύπων σημαίνει ότι δεν υπάρχει κανενός τύπου εξάρτηση μεταξύ τους, δηλαδή ούτε εξάρτηση ροής ούτε αντιεξάρτηση, ούτε εξάρτηση εξόδου. Επί πλέον, δύο στιγμιότυπα Α, Β, που ανήκουν στο ίδιο υποσύνολο δεν πρέπει να εξαρτώνται μεταξύ τους ούτε εμμέσως, δηλαδή δεν πρέπει να υπάρχει μονοπάτι στιγμιοτύπων Α Α 1 Α 2 Α Ν Β που να οδηγεί από το A στο Β και κάθε στιγμιότυπο να εξαρτάται από το προηγούμενο. Χρονοδρομολόγηση είναι ο ορισμός συγκεκριμένων χρόνων εκτέλεσης για κάθε στιγμιότυπο. Αν το στιγμιότυπο περιγράφεται από το διάνυσμα δεικτών i = [i1,..., in] του εμφωλευμένου βρόχου, τότε η χρονοδρομολόγηση δεν είναι τίποτ άλλο από την απεικόνιση i t, δηλαδή την αντιστοίχιση του i σε κάποιο δείκτη χρόνου t. Η χρονοδρομολόγηση γίνεται σε δύο βήματα: (α) πρώτα γίνεται διαμερισμός των στιγμιοτύπων σε υποσύνολα T 1, T 2,, T K (β) κατόπιν γίνεται ανάθεση συγκεκριμένου χρόνου εκτέλεσης t j σε κάθε υποσύνολο T j

30 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 203 Ο βασικός περιορισμός οποιουδήποτε χρονοδιαγράμματος είναι ο σεβασμός των εξαρτήσεων μεταξύ των στιγμιοτύπων: Αν υπάρχει εξάρτηση i j μεταξύ του στιγμιοτύπου i και του στιγμιοτύπου j τότε πρέπει t i < t j, δηλαδή πρέπει το στιγμιότυπο j να εκτελεστεί μετά από το i. Η πιο απλή συνάρτηση απεικόνισης i t είναι η γραμμική απεικόνιση και αυτήν θα μελετήσουμε παρακάτω. Οι μή γραμμικές απεικονίσεις είναι αρκετά πιο πολύπλοκες και δεν θα απασχολήσουν στο βιβλίο αυτό. Στο Σχήμα 59α δίνεται ένα παράδειγμα γράφου εξάρτησης που χωρίζεται με μή-γραμμικό τρόπο σε τρία υποσύνολα (διακεκομμένες περιοχές) ενώ στο Σχήμα 59β ο ίδιος γράφος χωρίζεται σε 6 υποσύνολα με γραμμικό τρόπο. Παρατηρήστε ότι και στις δύο περιπτώσεις οι κόμβοι (στιγμιότυπα) που βρίσκονται μέσα σε κάποιο υποσύνολο είναι ανεξάρτητοι μεταξύ τους συνεπώς μπορούν να εκτελεστούν παράλληλα. Δίπλα σε κάθε υποσύνολο δίνεται και ο χρόνος εκτέλεσής του (t). Εδώ έχει γίνει σιωπηρά η υπόθεση ότι όλοι οι κόμβοι έχουν την ίδια διάρκεια εκτέλεσης, κάτι που διευκολυνει ιδιαίτερα την χρονοδρομολόγηση αν και δεν είναι πάντα αλήθεια στην πράξη. t=0 t=1 t=2 t=0 t=1 t=2 (α) t=3 t=4 t=5 (β) Σχήμα 59. Χρονοδρομολόγηση γράφου που αντιστοιχεί σε ένα εμφωλευμένο 2 διαστάσεων. (α) Μη γραμμική χρονοδρομολόγηση (β) Γραμμική χρονοδρομολόγηση Γραμμική χρονοδρομολόγηση Όταν υπάρχει γραμμική σχέση μεταξύ i και t, δηλαδή όταν t = c 1 i1 + c 2 i2 + + c N in + c 0 = c i + c 0 για κάποιους συντελεστές c 1, c 2, c Ν, και c 0, τότε λέμε ότι έχουμε γραμμική χρονοδρομολόγηση. Η πράξη c i συμβολίζει το εσωτερικό γινόμενο των διανυσμάτων c = [c 1, c 2, c Ν ] και i = [i1,..., in]. Η επιλογή των συντελεστών {c i }

31 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 204 επιτυγχάνει ταυτόχρονα χρονο-διαμερισμό των στιγμιοτύπων σε υποσύνολα και ανάθεση χρόνου εκτέλεσης για κάθε στιγμιότυπο, δηλαδή κάνει πλήρη χρονοδρομολόγηση. Τα υποσύνολα στα οποία διαχωρίζεται ο γράφος έχουν γραμμικό σχήμα, δηλαδή είναι είτε ευθείες γραμμές στις 2 διαστάσεις είτε επίπεδα στις 3 διαστάσεις (ή υπερ-επίπεδα σε περισσότερες διαστάσεις, αν και δεν μπορούμε να τα οπτικοποιήσουμε). Ειδικά στην γραμμική χρονοδρομολόγηση τα επίπεδα αυτά λέγονται ισόχρονα επίπεδα διότι όλοι οι κόμβοι στο ίδιο επίπεδο έχουν ίσο χρόνο εκτέλεσης t. Το διάνυσμα c καλείται διάνυσμα χρονοδιαγράμματος και έχει την ιδιότητα ότι είναι κάθετο στα ισόχρονα επίπεδα. Ο συντελεστής c 0 καθορίζει σε ποιο ισόχρονο επίπεδο θα αντιστοιχεί χρόνος εκτέλεσης t = 0. Ο βασικός περιορισμός του χρονοδιαγράμματος, ότι δηλαδή πρέπει να σέβεται τις εξαρτήσεις μεταξύ των στιγμιοτύπων, μεταφράζεται στην εξής μαθηματική σχέση: Αν υπάρχει εξάρτηση i j μεταξύ δύο στιγμιοτύπων i και j τότε το εσωτερικό γινόμενο μεταξύ c και (j i) πρέπει να είναι θετικό: c (j i) > 0. Αυτό πρέπει να ισχύει για όλα τα ζευγάρια i και j με εξάρτηση οποιουδήποτε είδους (είτε εξάρτηση ροής είτε αντι-εξάρτηση είτε εξάρτηση εξόδου). Η γραμμική χρονοδρομoλόγηση θα γίνει ποιο εύκολα κατανοητή με δύο παραδείγματα. Παράδειγμα 19. Ένα γραμμικό χρονοδιάγραμμα. Ας θυμηθούμε το γράφο του Σχήμα 51.

32 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 205 Σχήμα 60. Γραμμικό χρονοδιάγραμμα για τον γράφο του Σχήμα 51 χρησιμοποιώντας το διάνυσμα χρονοδιαγράμματος c = [1, 1]. Οι διακεκομμένες γραμμές είναι τα ισόχρονα επίπεδα. i t=8 t=7 t=6 t=5 t=4 t=3 t=2 t=1 t=0 t=9 t=10 t=11 t=12 t=13 t=14 t=15 t=16 c = [1,1] i

33 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 206 Στο Σχήμα φαίνεται το χρονοδιάγραμμα που προκύπτει αν επιλέξουμε διάνυσμα χρονοδιαγράμματος c = [1, 1] και c 0 = 4. Με αυτές τις επιλογές, για κάθε στιγμιότυπο i = [i1, i2] ο χρόνος εκτέλεσης είναι: t = i1 + i2 4. Έτσι για παράδειγμα, το στιγμιότυπο [2, 2] εκτελείται στο χρόνο t = = 0, το στιγμιότυπο [2, 3] εκτελείται στο χρόνο t = = 1, το στιγμιότυπο [3, 2] εκτελείται στο χρόνο t = = 1, το στιγμιότυπο [2, 4] εκτελείται στο χρόνο t = = 2, το στιγμιότυπο [3, 3] εκτελείται στο χρόνο t = = 2, το στιγμιότυπο [4, 2] εκτελείται στο χρόνο t = = 2, κλπ. Τα ισόχρονα επίπεδα (διακεκομμένες γραμμές) είναι κάθετα στο διάνυσμα c, όπως γίνεται και εμφανές από το Σχήμα 60. Ο γράφος είναι ομοιόμορφος, δηλαδή για όλα τα ζεύγη εξαρτώμενων στιγμιοτύπων i, j έχουμε την ίδια διαφορά j i = [1, 2]. Συνεπώς, το χρονοδιάγραμμα σέβεται όλες τις εξαρτήσεις καθώς: c (j i) = [1,1] [1,2] = = 2 > 0. Όπως παρατηρούμε δημιουργούνται 17 ισόχρονα επίπεδα, (t = 0, 1,, 16) και συνεπώς ο συνολικός χρόνος παράλληλης εκτέλεσης του αλγορίθμου είναι 17 περίοδοι χρόνου Τ, όπου ο χρόνος T είναι αρκετά μεγάλος ώστε να εκτελείται μέσα σ αυτόν ένα πλήρες στιγμιότυπο συν τον απαιτούμενο χρόνο επικοινωνίας μεταξύ των διεργασιών ώστε να ανταλλάξουν δεδομένα. Αν, πχ, ένα στιγμιότυπο απαιτεί 2 προσθέσεις, έναν πολλαπλασιασμό και μια επικοινωνία με μια διπλανή διεργασία και οι χρόνοι εκτέλεσης των πράξεων αυτών είναι, πχ, 3 ns για την πρόσθεση, 20 ns για τον πολλαπλασιασμό, και 20ns για την επικοινωνία, τότε η περίοδος χρόνου θα πρέπει να είναι T > 2 [3 ns] + 1 [20 ns] + 1 [20 ns] = 46 ns. Σε αυτή την περίπτωση ο συνολικός χρόνος παράλληλης εκτέλεσης του αλγορίθμου είναι 17 Τ > ns = 782 ns. Παράδειγμα 20. Εναλλακτικό γραμμικό χρονοδιάγραμμα. Στο γράφο του προηγούμενου παραδείγματος μπορούμε να επιλέξουμε εναλλακτικά διανύσματα χρονοδιαγράμματος c. Στο Σχήμα 61 εμφανίζεται το χρονοδιάγραμμα c = [2, 1], c 0 = 6 οπότε για κάθε στιγμιότυπο i = [i1, i2] ο χρόνος εκτέλεσης είναι: Οπότε t = 2 i1 + i2 6. το στιγμιότυπο [2, 2] εκτελείται στο χρόνο t = 2* = 0,

34 t=8 t=9 t=10 t=11 t=12 t=13 t=14 t=15 t=16 t=17 t=18 t=19 t=20 t=21 t=22 t=24 t=23 Κεφάλαιο 8: Παράλληλη εκτέλεση βρόχων 207 το στιγμιότυπο [2, 3] εκτελείται στο χρόνο t = 2* = 1, το στιγμιότυπο [3, 2] εκτελείται στο χρόνο t = 2* = 2, το στιγμιότυπο [2, 4] εκτελείται στο χρόνο t = 2* = 2, το στιγμιότυπο [3, 3] εκτελείται στο χρόνο t = 2* = 3, το στιγμιότυπο [4, 2] εκτελείται στο χρόνο t = 2* = 4, κλπ. Το χρονοδιάγραμμα σέβεται τις εξαρτήσεις καθώς c (j i) = [2,1] [1,2] = = 4 > 0. Βλέπουμε ότι με αυτό το χρονοδιάγραμμα δημιουργούνται 25 ισόχρονα επίπεδα (t=0, 1,, 24) οπότε η παράλληλη εκτέλεση του αλγορίθμου απαιτεί χρόνο 25 T, σε αντίθεση με τα 17 T του προγούμενου παραδείγματος. Το χρονοδιάγραμμα αυτό, συνεπώς, έχει χειρότερη επίδοση σε σχέση με το προηγούμενο. Η επιλογή του βελτιστου γραμμικού χρονοδιαγράμματος για ένα συγκεκριμένο γράφο εξάρτησης ξεφεύγει από τους στόχους αυτού του βιβλίου και δεν θα μας απασχολήσει περισσότερο. i t=7 t=6 t=5 t=4 t=3 t=2 t=1 t=0 c = [2,1] i Σχήμα 61. Εναλλακτικό χρονοδιάγραμμα για τον γράφο του Σχήμα 51 με c = [2, 1].

9. Συστολικές Συστοιχίες Επεξεργαστών

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

Διαβάστε περισσότερα

Θέματα Μεταγλωττιστών

Θέματα Μεταγλωττιστών Γιώργος Δημητρίου Ενότητα 10 η : Βελτιστοποιήσεις Τοπικότητας και Παραλληλισμού: Εξαρτήσεις και Μετασχηματισμοί Βρόχων Επεξεργασία Πινάκων Παραλληλισμός επιπέδου βρόχου Λόγω παραλληλισμού δεδομένων Επιτυγχάνεται

Διαβάστε περισσότερα

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

2.0 ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ

2.0 ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ .0 ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΓΡΑΜΜΙΚΑ ΣΥΣΤΗΜΑΤΑ Έστω διανύσματα που ανήκουν στο χώρο δ i = ( a i, ai,, ai) i =,,, και έστω γραμμικός συνδυασμός των i : xδ + x δ + + x δ = b που ισούται με το διάνυσμα b,

Διαβάστε περισσότερα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα

Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα Γραμμική Άλγεβρα και Μαθηματικός Λογισμός για Οικονομικά και Επιχειρησιακά Προβλήματα Ενότητα: Διανυσματικοί Χώροι και Υπόχωροι: Βάσεις και Διάσταση Ανδριανός Ε Τσεκρέκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Διαβάστε περισσότερα

Ψευδοκώδικας. November 7, 2011

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

Διαβάστε περισσότερα

Μαθηματική Εισαγωγή Συναρτήσεις

Μαθηματική Εισαγωγή Συναρτήσεις Φυσικός Ραδιοηλεκτρολόγος (MSc) ο Γενικό Λύκειο Καστοριάς A. Μαθηματική Εισαγωγή Πράξεις με αριθμούς σε εκθετική μορφή Επίλυση βασικών μορφών εξισώσεων Συναρτήσεις Στοιχεία τριγωνομετρίας Διανύσματα Καστοριά,

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΜΜΙΚΗΣ ΑΛΓΕΒΡΑΣ. ρ Χρήστου Νικολαϊδη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΜΜΙΚΗΣ ΑΛΓΕΒΡΑΣ. ρ Χρήστου Νικολαϊδη ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΜΜΙΚΗΣ ΑΛΓΕΒΡΑΣ ρ Χρήστου Νικολαϊδη Δεκέμβριος Περιεχόμενα Κεφάλαιο : σελ. Τι είναι ένας πίνακας. Απλές πράξεις πινάκων. Πολλαπλασιασμός πινάκων.

Διαβάστε περισσότερα

Γραμμικός Προγραμματισμός Μέθοδος Simplex

Γραμμικός Προγραμματισμός Μέθοδος Simplex ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Επιχειρησιακή Έρευνα Γραμμικός Προγραμματισμός Μέθοδος Simplex Η παρουσίαση προετοιμάστηκε από τον Ν.Α. Παναγιώτου Περιεχόμενα Παρουσίασης 1. Πρότυπη Μορφή ΓΠ 2. Πινακοποίηση

Διαβάστε περισσότερα

Μαθηματική Εισαγωγή Συναρτήσεις

Μαθηματική Εισαγωγή Συναρτήσεις Φυσικός Ραδιοηλεκτρολόγος (MSc) ο Γενικό Λύκειο Καστοριάς Καστοριά, Ιούλιος 14 A. Μαθηματική Εισαγωγή Πράξεις με αριθμούς σε εκθετική μορφή Επίλυση βασικών μορφών εξισώσεων Συναρτήσεις Στοιχεία τριγωνομετρίας

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 4. Ακέραια Πολύεδρα

ΚΕΦΑΛΑΙΟ 4. Ακέραια Πολύεδρα ΚΕΦΑΛΑΙΟ 4 Ακέραια Πολύεδρα 1 Ορισμός 4.1 (Convex Hull) Έστω ένα σύνολο S C R n. Ένα σημείο x του R n είναι κυρτός συνδυασμός (convex combination) σημείων του S, αν υπάρχει ένα πεπερασμένο σύνολο σημείων

Διαβάστε περισσότερα

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος Θέμα 1 Δίνονται τα παρακάτω τμήματα αλγορίθμου Α. βαλίτσα Αληθής εισιτήριο Αληθής ταξίδι βαλίτσα και εισιτήριο Τι τιμή θα έχει η λογική μεταβλητή

Διαβάστε περισσότερα

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

Διαβάστε περισσότερα

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση)

Τι είναι βαθμωτό μέγεθος? Ένα μέγεθος που περιγράφεται μόνο με έναν αριθμό (π.χ. πίεση) TETY Εφαρμοσμένα Μαθηματικά Ενότητα ΙΙ: Γραμμική Άλγεβρα Ύλη: Διανυσματικοί χώροι και διανύσματα, μετασχηματισμοί διανυσμάτων, τελεστές και πίνακες, ιδιοδιανύσματα και ιδιοτιμές πινάκων, επίλυση γραμμικών

Διαβάστε περισσότερα

= 7. Στο σημείο αυτό θα υπενθυμίσουμε κάποιες βασικές ιδιότητες του μετασχηματισμού Laplace, δηλαδή τις

= 7. Στο σημείο αυτό θα υπενθυμίσουμε κάποιες βασικές ιδιότητες του μετασχηματισμού Laplace, δηλαδή τις 1. Εισαγωγή Δίνεται η συνάρτηση μεταφοράς = = 1 + 6 + 11 + 6 = + 6 + 11 + 6 =. 2 Στο σημείο αυτό θα υπενθυμίσουμε κάποιες βασικές ιδιότητες του μετασχηματισμού Laplace, δηλαδή τις L = 0 # και L $ % &'

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3 ο ΣΥΝΑΡΤΗΣΕΙΣ, ΤΡΙΓΩΝΟΜΕΤΡΙΑ( FUNCTIONS,TRIGONOMETRY)

ΚΕΦΑΛΑΙΟ 3 ο ΣΥΝΑΡΤΗΣΕΙΣ, ΤΡΙΓΩΝΟΜΕΤΡΙΑ( FUNCTIONS,TRIGONOMETRY) ΚΕΦΑΛΑΙΟ 3 ο ΣΥΝΑΡΤΗΣΕΙΣ, ΤΡΙΓΩΝΟΜΕΤΡΙΑ( FUNCTIONS,TRIGONOMETRY) 3.1 ΘΕΩΡΙΑ-ΤΥΠΟΛΟΓΙΟ-ΠΑΡΑΔΕΙΓΜΑΤΑ ΣΥΝΑΡΤΗΣΕΙΣ Συνάρτηση, ή απεικόνιση όπως ονομάζεται διαφορετικά, είναι μια αντιστοίχιση μεταξύ δύο συνόλων,

Διαβάστε περισσότερα

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

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

Διαβάστε περισσότερα

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

Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ. ΤΡΙΤΗ ΔΙΑΛΕΞΗ Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.): Σύνταξη τύπος όνομαα; τύπος όνομαβ{όνομαα}; όνομαβ

Διαβάστε περισσότερα

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 5.1 Επίδοση αλγορίθμων Μέχρι τώρα έχουμε γνωρίσει διάφορους αλγόριθμους (αναζήτησης, ταξινόμησης, κ.α.). Στο σημείο αυτό θα παρουσιάσουμε ένα τρόπο εκτίμησης της επίδοσης (performance) η της αποδοτικότητας

Διαβάστε περισσότερα

Κεφάλαιο 4 Διανυσματικοί Χώροι

Κεφάλαιο 4 Διανυσματικοί Χώροι Κεφάλαιο Διανυσματικοί Χώροι Διανυσματικοί χώροι - Βασικοί ορισμοί και ιδιότητες Θεωρούμε τρία διαφορετικά σύνολα: Διανυσματικοί Χώροι α) Το σύνολο διανυσμάτων (πινάκων με μία στήλη) με στοιχεία το οποίο

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (Εξ. Ιουνίου - 02/07/08) ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (Εξ. Ιουνίου - 02/07/08) ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ Ονοματεπώνυμο:......... Α.Μ....... Ετος... ΑΙΘΟΥΣΑ:....... I. (περί τις 55μ. = ++5++. Σωστό ή Λάθος: ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (Εξ. Ιουνίου - //8 ΕΠΙΛΕΓΜΕΝΕΣ ΑΠΑΝΤΗΣΕΙΣ (αʹ Αν AB = BA όπου A, B τετραγωνικά και

Διαβάστε περισσότερα

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

Διαβάστε περισσότερα

Θέση και Προσανατολισμός

Θέση και Προσανατολισμός Κεφάλαιο 2 Θέση και Προσανατολισμός 2-1 Εισαγωγή Προκειμένου να μπορεί ένα ρομπότ να εκτελέσει κάποιο έργο, πρέπει να διαθέτει τρόπο να περιγράφει τα εξής: Τη θέση και προσανατολισμό του τελικού στοιχείου

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 1. Σταύρος Παπαϊωάννου

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 1. Σταύρος Παπαϊωάννου ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ Μαθηματικά Σταύρος Παπαϊωάννου Ιούνιος 05 Τίτλος Μαθήματος Περιεχόμενα Χρηματοδότηση.. Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης. Σκοποί Μαθήματος

Διαβάστε περισσότερα

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

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ ΜΕΡΟΣ ΙΙ ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ 36 ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΔΙΑΚΡΙΤΩΝ ΕΝΑΛΛΑΚΤΙΚΩΝ ΣΕ ΠΡΟΒΛΗΜΑΤΑ ΣΧΕΔΙΑΣΜΟΥ ΚΑΙ ΣΥΝΘΕΣΗΣ ΔΙΕΡΓΑΣΙΩΝ Πολλές από τις αποφάσεις

Διαβάστε περισσότερα

Κεφάλαιο 2: Διανυσματικός λογισμός συστήματα αναφοράς

Κεφάλαιο 2: Διανυσματικός λογισμός συστήματα αναφοράς Κεφάλαιο 2: Διανυσματικός λογισμός συστήματα αναφοράς 2.1 Η έννοια του διανύσματος Ο τρόπος που παριστάνομε τα διανυσματικά μεγέθη είναι με τη μαθηματική έννοια του διανύσματος. Διάνυσμα δεν είναι τίποτε

Διαβάστε περισσότερα

Εφαρμοσμένα Μαθηματικά ΙΙ

Εφαρμοσμένα Μαθηματικά ΙΙ Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας Εφαρμοσμένα Μαθηματικά ΙΙ Διανυσματικοί Χώροι Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Διανυσματικός Χώρος επί του F Αλγεβρική δομή που αποτελείται

Διαβάστε περισσότερα

ΜΑΘΗΜΑΤΑ ΜΑΘΗΜΑΤΙΚΑ ΘΕΤΙΚΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ

ΜΑΘΗΜΑΤΑ ΜΑΘΗΜΑΤΙΚΑ ΘΕΤΙΚΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ ΜΑΘΗΜΑΤΑ ΜΑΘΗΜΑΤΙΚΑ ΘΕΤΙΚΟΥ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ ΚΕΦΑΛΑΙΟ 1 ο : ΔΙΑΝΥΣΜΑΤΑ 1 ΜΑΘΗΜΑ 1 ο +2 ο ΕΝΝΟΙΑ ΔΙΑΝΥΣΜΑΤΟΣ Διάνυσμα ορίζεται ένα προσανατολισμένο ευθύγραμμο τμήμα, δηλαδή ένα ευθύγραμμο τμήμα

Διαβάστε περισσότερα

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (ΗΥ-119)

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (ΗΥ-119) ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΙΩΑΝΝΗΣ Α. ΤΣΑΓΡΑΚΗΣ ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (ΗΥ-119) ΜΕΡΟΣ 5: ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΥΠΟΧΩΡΟΙ ΓΡΑΜΜΙΚΗ ΑΝΕΞΑΡΤΗΣΙΑ ΒΑΣΕΙΣ & ΔΙΑΣΤΑΣΗ Δ.Χ. ΣΗΜΕΙΩΣΕΙΣ

Διαβάστε περισσότερα

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 8 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ 1) Πότε χρησιμοποιείται η δομή επανάληψης

Διαβάστε περισσότερα

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών

Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Ισότητα, Αλγεβρικές και Αναλυτικές Ιδιότητες Πραγματικών Ακολουθιών Συμβολισμοί Σε αναλογία με τους ορισμούς συμβολίζουμε μια ακολουθία: 1 είτε μέσω του διανυσματικού ορισμού, παραθέτοντας αναγκαστικά

Διαβάστε περισσότερα

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: ΟΡΙΖΟΥΣΕΣ

ΚΕΦΑΛΑΙΟ 2: ΟΡΙΖΟΥΣΕΣ ΚΕΦΑΛΑΙΟ ΚΕΦΑΛΑΙΟ :. ΕΙΣΑΓΩΓΗ Σε κάθε τετραγωνικό πίνακα ) τάξης n θα αντιστοιχίσουμε έναν πραγματικό ( ij αριθμό, τον οποίο θα ονομάσουμε ορίζουσα του πίνακα. Η ορίζουσα θα συμβολίζεται det ή Α ή n n

Διαβάστε περισσότερα

Κεφάλαιο 4 Διανυσματικοί Χώροι

Κεφάλαιο 4 Διανυσματικοί Χώροι Κεφάλαιο Διανυσματικοί χώροι - Βασικοί ορισμοί και ιδιότητες Θεωρούμε τρία διαφορετικά σύνολα: α) Το σύνολο διανυσμάτων (πινάκων με μία στήλη) με στοιχεία το οποίο συμβολίζουμε με Σε αυτό το σύνολο γνωρίζουμε

Διαβάστε περισσότερα

Kεφάλαιο 4. Συστήματα διαφορικών εξισώσεων. F : : F = F r, όπου r xy

Kεφάλαιο 4. Συστήματα διαφορικών εξισώσεων. F : : F = F r, όπου r xy 4 Εισαγωγή Kεφάλαιο 4 Συστήματα διαφορικών εξισώσεων Εστω διανυσματικό πεδίο F : : F = Fr, όπου r x, και είναι η ταχύτητα στο σημείο πχ ενός ρευστού στο επίπεδο Εστω ότι ψάχνουμε τις τροχιές κίνησης των

Διαβάστε περισσότερα

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ

Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ Ε π ι μ έ λ ε ι α Κ Ο Λ Λ Α Σ Α Ν Τ Ω Ν Η Σ 1 Συναρτήσεις Όταν αναφερόμαστε σε μια συνάρτηση, ουσιαστικά αναφερόμαστε σε μια σχέση ή εξάρτηση. Στα μαθηματικά που θα μας απασχολήσουν, με απλά λόγια, η σχέση

Διαβάστε περισσότερα

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων Πληροφορικής 2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών 3. Ο αλγόριθμος

Διαβάστε περισσότερα

(a + b) + c = a + (b + c), (ab)c = a(bc) a + b = b + a, ab = ba. a(b + c) = ab + ac

(a + b) + c = a + (b + c), (ab)c = a(bc) a + b = b + a, ab = ba. a(b + c) = ab + ac Σημειώσεις μαθήματος Μ1212 Γραμμική Άλγεβρα ΙΙ Χρήστος Κουρουνιώτης ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ 2014 Κεφάλαιο 1 Διανυσματικοί Χώροι Στο εισαγωγικό μάθημα Γραμμικής Άλγεβρας ξεκινήσαμε μελετώντας

Διαβάστε περισσότερα

Εφαρμοσμένα Μαθηματικά ΙΙ

Εφαρμοσμένα Μαθηματικά ΙΙ Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας Εφαρμοσμένα Μαθηματικά ΙΙ Διανυσματικοί Χώροι Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Διανυσματικός Χώρος επί του F Αλγεβρική δομή που αποτελείται

Διαβάστε περισσότερα

1 Επανάληψη εννοιών από τον Απειροστικό Λογισμό

1 Επανάληψη εννοιών από τον Απειροστικό Λογισμό 1 Επανάληψη εννοιών από τον Απειροστικό Λογισμό 1.1 Όρια ακολουθιών Λέμε ότι η ακολουθία { n } συγκλίνει με όριο R αν για κάθε ϵ > 0 υπάρχει ακέραιος N = N(ϵ) τέτοιος ώστε (1.1) n < ϵ για κάθε n > N, και

Διαβάστε περισσότερα

5. (Λειτουργικά) Δομικά Διαγράμματα

5. (Λειτουργικά) Δομικά Διαγράμματα 5. (Λειτουργικά) Δομικά Διαγράμματα Γενικά, ένα λειτουργικό δομικό διάγραμμα έχει συγκεκριμένη δομή που περιλαμβάνει: Τις δομικές μονάδες (λειτουργικά τμήματα ή βαθμίδες) που συμβολίζουν συγκεκριμένες

Διαβάστε περισσότερα

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014 ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014 Περιεχόμενα 1 Εισαγωγή 2 2 Μεγιστικός τελέστης στην μπάλα 2 2.1 Βασικό θεώρημα........................ 2 2.2 Γενική περίπτωση μπάλας.................. 6 2.2.1 Στο

Διαβάστε περισσότερα

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών Οι παρούσες σημειώσεις αποτελούν βοήθημα στο μάθημα Αριθμητικές Μέθοδοι του 5 ου εξαμήνου του ΤΜΜ ημήτρης Βαλουγεώργης Καθηγητής Εργαστήριο Φυσικών

Διαβάστε περισσότερα

4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη.

4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη. 4.4 Μετατροπή από μία μορφή δομής επανάληψης σε μία άλλη. Η μετατροπή μιας εντολής επανάληψης σε μία άλλη ή στις άλλες δύο εντολές επανάληψης, αποτελεί ένα θέμα που αρκετές φορές έχει εξεταστεί σε πανελλαδικό

Διαβάστε περισσότερα

Παραδείγματα (2) Διανυσματικοί Χώροι

Παραδείγματα (2) Διανυσματικοί Χώροι Παραδείγματα () Διανυσματικοί Χώροι Παράδειγμα 7 Ελέγξτε αν τα ακόλουθα σύνολα διανυσμάτων είναι γραμμικά ανεξάρτητα ή όχι: α) v=(,4,6), v=(,,), v=(7,,) b) v=(,4), v=(,), v=(4,) ) v=(,,), v=(5,,), v=(5,,)

Διαβάστε περισσότερα

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής:

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής: Αυτό που πρέπει να θυμόμαστε, για να μη στεναχωριόμαστε, είναι πως τόσο στις εξισώσεις, όσο και στις ανισώσεις 1ου βαθμού, που θέλουμε να λύσουμε, ακολουθούμε ακριβώς τα ίδια βήματα! Εκεί που πρεπει να

Διαβάστε περισσότερα

Διανύσµατα στο επίπεδο

Διανύσµατα στο επίπεδο Διανύσµατα στο επίπεδο Ένα διάνυσµα v έχει αρχικό και τελικό σηµείο. Χαρακτηρίζεται από: διεύθυνση (ευθεία επί της οποίας κείται φορά (προς ποια κατεύθυνση της ευθείας δείχνει µέτρο (το µήκος του, v ή

Διαβάστε περισσότερα

Φυσικά μεγέθη. Φυσική α λυκείου ΕΙΣΑΓΩΓΗ. Όλα τα φυσικά μεγέθη τα χωρίζουμε σε δύο κατηγορίες : Α. τα μονόμετρα. Β.

Φυσικά μεγέθη. Φυσική α λυκείου ΕΙΣΑΓΩΓΗ. Όλα τα φυσικά μεγέθη τα χωρίζουμε σε δύο κατηγορίες : Α. τα μονόμετρα. Β. ΕΙΣΑΓΩΓΗ Φυσικά μεγέθη Όλα τα φυσικά μεγέθη τα χωρίζουμε σε δύο κατηγορίες : Α. τα μονόμετρα Β. τα διανυσματικά Μονόμετρα ονομάζουμε τα μεγέθη εκείνα τα οποία για να τα γνωρίζουμε χρειάζεται να ξέρουμε

Διαβάστε περισσότερα

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ; Εντολή επανάληψης Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή Πρόβλημα Πώς θα υπολογίσουμε το άθροισμα των ακέραιων 1 5000; Ισοδύναμοι υπολογισμοί του Ισοδύναμοι υπολογισμοί του Ισοδύναμοι υπολογισμοί

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 3: Πίνακες, βρόχοι, συναρτήσεις 1 Ιουνίου 2017 Το σημερινό εργαστήριο

Διαβάστε περισσότερα

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής

Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Κεφάλαιο 3: Εισαγωγή στους αλγορίθμους - διαγράμματα ροής Αλγόριθμος (algorithm) λέγεται μία πεπερασμένη διαδικασία καλά ορισμένων βημάτων που ακολουθείται για τη λύση ενός προβλήματος. Το διάγραμμα ροής

Διαβάστε περισσότερα

ΤΕΤΥ Εφαρμοσμένα Μαθηματικά 1. Τελεστές και πίνακες. 1. Τελεστές και πίνακες Γενικά. Τι είναι συνάρτηση? Απεικόνιση ενός αριθμού σε έναν άλλο.

ΤΕΤΥ Εφαρμοσμένα Μαθηματικά 1. Τελεστές και πίνακες. 1. Τελεστές και πίνακες Γενικά. Τι είναι συνάρτηση? Απεικόνιση ενός αριθμού σε έναν άλλο. ΤΕΤΥ Εφαρμοσμένα Μαθηματικά 1 Τελεστές και πίνακες 1. Τελεστές και πίνακες Γενικά Τι είναι συνάρτηση? Απεικόνιση ενός αριθμού σε έναν άλλο. Ανάλογα, τελεστής είναι η απεικόνιση ενός διανύσματος σε ένα

Διαβάστε περισσότερα

d dx ΠΑΡΑΓΩΓΟΣ ΣΥΝΑΡΤΗΣΗΣ

d dx ΠΑΡΑΓΩΓΟΣ ΣΥΝΑΡΤΗΣΗΣ ΠΑΡΑΓΩΓΟΣ ΣΥΝΑΡΤΗΣΗΣ α) Η παράγωγος μιας συνάρτησης = f() σε ένα σημείο 0 εκφράζει το ρυθμό μεταβολής της συνάρτησης (ή τον παράγωγο αριθμό) στο σημείο 0. β) Γραφικά, η παράγωγος της συνάρτησης στο σημείο

Διαβάστε περισσότερα

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

ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΦΥΣΙΚΗ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Β ΛΥΚΕΙΟΥ Καμπυλόγραμμες Κινήσεις Επιμέλεια: Αγκανάκης Α. Παναγιώτης, Φυσικός http://phyiccore.wordpre.com/ Βασικές Έννοιες Μέχρι στιγμής έχουμε μάθει να μελετάμε απλές κινήσεις,

Διαβάστε περισσότερα

ισδιάστατοι μετασχηματισμοί ΚΕΦΑΛΑΙΟ 4: ισδιάστατοι γεωμετρικοί μετασχηματισμοί

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

Διαβάστε περισσότερα

[1] είναι ταυτοτικά ίση με το μηδέν. Στην περίπτωση που το στήριγμα μιας συνάρτησης ελέγχου φ ( x)

[1] είναι ταυτοτικά ίση με το μηδέν. Στην περίπτωση που το στήριγμα μιας συνάρτησης ελέγχου φ ( x) [] 9 ΣΥΝΑΡΤΗΣΙΑΚΟΙ ΧΩΡΟΙ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER Η «συνάρτηση» δέλτα του irac Η «συνάρτηση» δέλτα ορίζεται μέσω της σχέσης φ (0) αν 0 δ[ φ ] = φ δ dx = (9) 0 αν 0 όπου η φ είναι μια συνάρτηση που ανήκει

Διαβάστε περισσότερα

Παραδείγματα Διανυσματικοί Χώροι Ι. Λυχναρόπουλος

Παραδείγματα Διανυσματικοί Χώροι Ι. Λυχναρόπουλος Παραδείγματα Διανυσματικοί Χώροι Ι. Λυχναρόπουλος Παράδειγμα Έστω το σύνολο V το σύνολο όλων των θετικών πραγματικών αριθμών εφοδιασμένο με την ακόλουθη πράξη της πρόσθεσης: y y με, y V και του πολλαπλασιασμού

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 07-08 Αριθμητική Παραγώγιση Εισαγωγή Ορισμός 7. Αν y f x είναι μια συνάρτηση ορισμένη σε ένα διάστημα

Διαβάστε περισσότερα

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER 4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER Σκοπός του κεφαλαίου είναι να παρουσιάσει μερικές εφαρμογές του Μετασχηματισμού Fourier (ΜF). Ειδικότερα στο κεφάλαιο αυτό θα περιγραφούν έμμεσοι τρόποι

Διαβάστε περισσότερα

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι:

I. ΑΛΓΟΡΙΘΜΟΣ II. ΠΡΑΞΕΙΣ - ΣΥΝΑΡΤΗΣΕΙΣ III. ΕΠΑΝΑΛΗΨΕΙΣ. 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι: ΑΕσΠΠ 1 / 8 I. ΑΛΓΟΡΙΘΜΟΣ 1. Τα πιο συνηθισμένα σενάρια παραβίασης αλγοριθμικών κριτηρίων είναι: i. Είσοδος : χρήση μιας μεταβλητής που δεν έχει πάρει προηγουμένως τιμή. ii. Έξοδος : ο αλγόριθμος δεν εμφανίζει

Διαβάστε περισσότερα

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων Κεφάλαιο 2 Διανύσματα και Συστήματα Συντεταγμένων Διανύσματα Διανυσματικά μεγέθη Φυσικά μεγέθη που έχουν τόσο αριθμητικές ιδιότητες όσο και ιδιότητες κατεύθυνσης. Σε αυτό το κεφάλαιο, θα ασχοληθούμε με

Διαβάστε περισσότερα

4.3. Γραµµικοί ταξινοµητές

4.3. Γραµµικοί ταξινοµητές Γραµµικοί ταξινοµητές Γραµµικός ταξινοµητής είναι ένα σύστηµα ταξινόµησης που χρησιµοποιεί γραµµικές διακριτικές συναρτήσεις Οι ταξινοµητές αυτοί αναπαρίστανται συχνά µε οµάδες κόµβων εντός των οποίων

Διαβάστε περισσότερα

Ενδεικτικές Ερωτήσεις Θεωρίας

Ενδεικτικές Ερωτήσεις Θεωρίας Ενδεικτικές Ερωτήσεις Θεωρίας Κεφάλαιο 2 1. Τι καλούμε αλγόριθμο; 2. Ποια κριτήρια πρέπει οπωσδήποτε να ικανοποιεί ένας αλγόριθμος; 3. Πώς ονομάζεται μια διαδικασία που δεν περατώνεται μετά από συγκεκριμένο

Διαβάστε περισσότερα

,..., v n. W πεπερασμένα παραγόμενοι και dimv. Τα ακόλουθα είναι ισοδύναμα f είναι ισομορφιμός. f είναι 1-1. f είναι επί.

,..., v n. W πεπερασμένα παραγόμενοι και dimv. Τα ακόλουθα είναι ισοδύναμα f είναι ισομορφιμός. f είναι 1-1. f είναι επί. Γραμμική Άλγεβρα Ι, 07-8 Ασκήσεις7: Γραμμικές Απεικονίσεις Βασικά σημεία Ορισμός και παραδείγματα γραμμικών απεικονίσεων Σύνθεση γραμμικών απεικονίσεων, ισομορφισμοί Κάθε γραμμική απεικόνιση f : V W, όπου

Διαβάστε περισσότερα

Ταξινόμηση καμπυλών και επιφανειών με τη βοήθεια των τετραγωνικών μορφών.

Ταξινόμηση καμπυλών και επιφανειών με τη βοήθεια των τετραγωνικών μορφών. Ταξινόμηση καμπυλών και επιφανειών με τη βοήθεια των τετραγωνικών μορφών (βλ ενότητες 8 και 8 από το βιβλίο Εισαγωγή στη Γραμμική Άλγεβρα, Ι Χατζάρας, Θ Γραμμένος, 0) (Δείτε τα παραδείγματα 8 (, ) και

Διαβάστε περισσότερα

Έστω ένας πίνακας με όνομα Α δέκα θέσεων : 1 η 2 η 3 η 4 η 5 η 6 η 7 η 8 η 9 η 10 η

Έστω ένας πίνακας με όνομα Α δέκα θέσεων : 1 η 2 η 3 η 4 η 5 η 6 η 7 η 8 η 9 η 10 η Μονοδιάστατοι Πίνακες Τι είναι ο πίνακας γενικά : Πίνακας είναι μια Στατική Δομή Δεδομένων. Δηλαδή συνεχόμενες θέσεις μνήμης, όπου το πλήθος των θέσεων είναι συγκεκριμένο. Στις θέσεις αυτές καταχωρούμε

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3 Ο 3.2 Η ΕΝΝΟΙΑ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΚΑΙ Η. (Σ) όπου α, β, α, β, είναι οι

ΚΕΦΑΛΑΙΟ 3 Ο 3.2 Η ΕΝΝΟΙΑ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΚΑΙ Η. (Σ) όπου α, β, α, β, είναι οι ΚΕΦΑΛΑΙΟ 3 Ο ΣΥΣΤΗΜΑΤΑ ΓΡΑΜΜΙΚΩΝ ΕΞΙΣΩΣΕΩΝ 3. Η ΕΝΝΟΙΑ ΤΟΥ ΓΡΑΜΜΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΚΑΙ Η ΓΡΑΦΙΚΗ ΕΠΙΛΥΣΗ ΤΟΥ. Ποια είναι η μορφή ενός συστήματος δύο γραμμικών εξισώσεων, δύο αγνώστων; Να δοθεί παράδειγμα.

Διαβάστε περισσότερα

Κεφάλαιο 1 Συστήματα γραμμικών εξισώσεων

Κεφάλαιο 1 Συστήματα γραμμικών εξισώσεων Κεφάλαιο Συστήματα γραμμικών εξισώσεων Παραδείγματα από εφαρμογές Γραμμική Άλγεβρα Παράδειγμα : Σε ένα δίκτυο (αγωγών ή σωλήνων ή δρόμων) ισχύει ο κανόνας των κόμβων όπου το άθροισμα των εισερχόμενων ροών

Διαβάστε περισσότερα

Η ΚΙΝΗΣΗ ΣΩΜΑΤΙΟ Ή ΥΛΙΚΟ ΣΗΜΕΙΟ Ή ΣΗΜΕΙΑΚΟ ΑΝΤΙΚΕΙΜΕΝΟ

Η ΚΙΝΗΣΗ ΣΩΜΑΤΙΟ Ή ΥΛΙΚΟ ΣΗΜΕΙΟ Ή ΣΗΜΕΙΑΚΟ ΑΝΤΙΚΕΙΜΕΝΟ «Μπορούμε να παρομοιάσουμε τις έννοιες που δεν έχουν καμιά θεμελίωση στη φύση, με τα δάση εκείνα του Βορρά όπου τα δένδρα δεν έχουν καθόλου ρίζες. Αρκεί ένα φύσημα του αγέρα, ένα ασήμαντο γεγονός για να

Διαβάστε περισσότερα

Συστήματα συντεταγμένων

Συστήματα συντεταγμένων Συστήματα συντεταγμένων Χρησιμοποιούνται για την περιγραφή της θέσης ενός σημείου στον χώρο. Κοινά συστήματα συντεταγμένων: Καρτεσιανό (x, y, z) Πολικό (r, θ) Καρτεσιανό σύστημα συντεταγμένων Οι άξονες

Διαβάστε περισσότερα

ΕΠΑΝΑΛΗΨΗ Α ΓΥΜΝΑΣΙΟΥ

ΕΠΑΝΑΛΗΨΗ Α ΓΥΜΝΑΣΙΟΥ ΕΠΑΝΑΛΗΨΗ Α ΓΥΜΝΑΣΙΟΥ ΘΕΩΡΙΑ ΑΛΓΕΒΡΑ ΚΕΦΑΛΑΙΟ Α.1. 1) Ποιοι φυσικοί αριθμοί λέγονται άρτιοι και ποιοι περιττοί; ( σ. 11 ) 2) Από τι καθορίζεται η αξία ενός ψηφίου σ έναν φυσικό αριθμό; ( σ. 11 ) 3) Τι

Διαβάστε περισσότερα

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX ΚΕΦΑΛΑΙΟ 3 ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX 3.1 Εισαγωγή Ο αλγόριθμος Simplex θεωρείται πλέον ως ένας κλασικός αλγόριθμος για την επίλυση γραμμικών προβλημάτων. Η πρακτική αποτελεσματικότητά του έχει

Διαβάστε περισσότερα

ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Α ΛΥΚΕΙΟΥ

ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Α ΛΥΚΕΙΟΥ ΦΥΣΙΚΗ ΓΕΝΙΚΗΣ ΠΑΙΔΕΙΑΣ Α ΛΥΚΕΙΟΥ Ευθύγραμμη Ομαλή Κίνηση Επιμέλεια: ΑΓΚΑΝΑΚΗΣ.ΠΑΝΑΓΙΩΤΗΣ, Φυσικός https://physicscorses.wordpress.com/ Βασικές Έννοιες Ένα σώμα καθώς κινείται περνάει από διάφορα σημεία.

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 2017-2018 Παρεμβολή και Παρεκβολή Εισαγωγή Ορισμός 6.1 Αν έχουμε στη διάθεσή μας τιμές μιας συνάρτησης

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ 12) ΕΡΓΑΣΙΑ 1 η Ημερομηνία Αποστολής στον Φοιτητή: 17 Οκτωβρίου 2011

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ 12) ΕΡΓΑΣΙΑ 1 η Ημερομηνία Αποστολής στον Φοιτητή: 17 Οκτωβρίου 2011 ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ ) ΕΡΓΑΣΙΑ η Ημερομηνία Αποστολής στον Φοιτητή: 7 Οκτωβρίου 0 Ημερομηνία παράδοσης της Εργασίας: 5 Νοεμβρίου 0 Οι ασκήσεις

Διαβάστε περισσότερα

Κεφάλαιο 4: Επιλογή σημείου παραγωγής

Κεφάλαιο 4: Επιλογή σημείου παραγωγής Κεφάλαιο 4: Επιλογή σημείου παραγωγής Κ4.1 Μέθοδος ανάλυσης νεκρού σημείου για την επιλογή διαδικασίας παραγωγής ή σημείου παραγωγής Επιλογή διαδικασίας παραγωγής Η μέθοδος ανάλυσης νεκρού για την επιλογή

Διαβάστε περισσότερα

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη; ΚΕΦΑΛΑΙΟ 2 ο ΚΙΝΗΣΗ 2.1 Περιγραφή της Κίνησης 1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη; Κινηματική είναι ο κλάδος της Φυσικής που έχει ως αντικείμενο τη μελέτη της κίνησης. Στην Κινηματική

Διαβάστε περισσότερα

Φίλη μαθήτρια, φίλε μαθητή,

Φίλη μαθήτρια, φίλε μαθητή, Φίλη μαθήτρια φίλε μαθητή Η εργασία αυτή έγινε με σκοπό να συμβάλει στην κατανόηση στην εμπέδωση και στην εμβάθυνση των μαθηματικών εννοιών που αναπτύσσονται στην Άλγεβρα της Β Λυκείου. Η ύλη είναι γραμμένη

Διαβάστε περισσότερα

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ 2.1 Περιγραφή της Κίνησης 1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη; Κινηματική είναι ο κλάδος της Φυσικής που έχει ως αντικείμενο τη μελέτη της κίνησης.

Διαβάστε περισσότερα

Ε Μέχρι 18 Μαΐου 2015.

Ε Μέχρι 18 Μαΐου 2015. Ε Μέχρι 18 Μαΐου 2015. 1 Αντικείμενα: δακτύλιοι Fraleigh, 4.1. Ορισμός έννοιας «δακτυλίου». Χαρακτηρισμοί δακτυλίων και στοιχείων αυτών: Δακτύλιος R Στοιχεία δακτυλίου R / (= δεν έχει μηδενοδιαιρέτες άρα

Διαβάστε περισσότερα

ΦΥΕ 14 Διανύσματα. 1 Περιγραφή διανυσμάτων στο χώρο Γεωμετρική περιγραφή: Τα διανύσματα περιγράφονται σαν προσανατολισμένα ευθύγραμμα

ΦΥΕ 14 Διανύσματα. 1 Περιγραφή διανυσμάτων στο χώρο Γεωμετρική περιγραφή: Τα διανύσματα περιγράφονται σαν προσανατολισμένα ευθύγραμμα ΦΥΕ 4 Διανύσματα Περιγραφή διανυσμάτων στο χώρο Γεωμετρική περιγραφή: Τα διανύσματα περιγράφονται σαν προσανατολισμένα ευθύγραμμα τμήματα Δύο διανύσματα θα θεωρούμε ότι είναι ίσα, εάν έχουν το ίδιο μήκος

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ. Μαθηματικά 2. Σταύρος Παπαϊωάννου ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΕΝΤΡΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΣΧΟΛΗ ΤΜΗΜΑ Μαθηματικά Σταύρος Παπαϊωάννου Ιούνιος Τίτλος Μαθήματος Περιεχόμενα Χρηματοδότηση. Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης. Σκοποί Μαθήματος

Διαβάστε περισσότερα

Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ

Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ Διαχείριση Εφοδιαστικής Αλυσίδας ΙΙ 1 η Διάλεξη: Αναδρομή στον Μαθηματικό Προγραμματισμό 2019, Πολυτεχνική Σχολή Εργαστήριο Συστημάτων Σχεδιασμού, Παραγωγής και Λειτουργιών Περιεχόμενα 1. Γραμμικός Προγραμματισμός

Διαβάστε περισσότερα

D = / Επιλέξτε, π.χ, το ακόλουθο απλό παράδειγμα: =[IA 1 ].

D = / Επιλέξτε, π.χ, το ακόλουθο απλό παράδειγμα: =[IA 1 ]. 4. Φυλλάδιο Ασκήσεων IV σύντομες λύσεις, ενδεικτικές απαντήσεις πολλαπλής επιλογής 4.. Άσκηση. Χρησιμοποιήστε τη διαδικασία Gauss-Jordan γιά να βρείτε τους αντιστρόφους των παρακάτω πινάκων, αν υπάρχουν.

Διαβάστε περισσότερα

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

Διαβάστε περισσότερα

Παραδείγματα (1 ο σετ) Διανυσματικοί Χώροι

Παραδείγματα (1 ο σετ) Διανυσματικοί Χώροι Παραδείγματα ( ο σετ) Διανυσματικοί Χώροι Παράδειγμα Έστω το σύνολο V το σύνολο όλων των θετικών πραγματικών αριθμών εφοδιασμένο με την ακόλουθη πράξη της πρόσθεσης: y y με y, V και του πολλαπλασιασμού:

Διαβάστε περισσότερα

1 x m 2. degn = m 1 + m m n. a(m 1 m 2...m k )x m 1

1 x m 2. degn = m 1 + m m n. a(m 1 m 2...m k )x m 1 1 Πολυώνυμα και συσχετικός χώρος Ορισμός 3.1 Ενα μονώνυμο N στις μεταβλητές x 1, x 2,..., x n είναι ένα γινόμενο της μορφής x m 1 2...x m n n, όπου όλοι οι εκθέτες είναι φυσικοί αριθμοί. Ο βαθμός του μονωνύμου

Διαβάστε περισσότερα

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 M7 Δομές δεδομένων: Πίνακες Δρ. Γεώργιος Παπαλάμπρου Επικ. Καθηγητής ΕΜΠ Εργαστήριο Ναυτικής Μηχανολογίας george.papalambrou@lme.ntua.gr ΕΜΠ/ΣΝΜΜ

Διαβάστε περισσότερα

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων

Κεφάλαιο 2. Διανύσματα και Συστήματα Συντεταγμένων Κεφάλαιο 2 Διανύσματα και Συστήματα Συντεταγμένων Διανύσματα Διανυσματικά μεγέθη Φυσικά μεγέθη που έχουν τόσο αριθμητικές ιδιότητες όσο και ιδιότητες κατεύθυνσης. Σε αυτό το κεφάλαιο, θα ασχοληθούμε με

Διαβάστε περισσότερα

Ας δούμε λίγο την θεωρία με την οποία ασχοληθήκαμε μέχρι τώρα.

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

Διαβάστε περισσότερα

6 Συνεκτικοί τοπολογικοί χώροι

6 Συνεκτικοί τοπολογικοί χώροι 36 6 Συνεκτικοί τοπολογικοί χώροι Έστω R διάστημα και f : R συνεχής συνάρτηση τότε, όπως γνωρίζουμε από τον Απειροστικό Λογισμό, η f έχει την ιδιότητα της ενδιάμεσου τιμής. Η ιδιότητα αυτή δεν εξαρτάται

Διαβάστε περισσότερα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

Διαβάστε περισσότερα

1.4 ΣΥΝΤΕΤΑΓΜΕΝΕΣ ΣΤΟ ΕΠΙΠΕΔΟ

1.4 ΣΥΝΤΕΤΑΓΜΕΝΕΣ ΣΤΟ ΕΠΙΠΕΔΟ 34 4 ΣΥΝΤΕΤΑΓΜΕΝΕΣ ΣΤΟ ΕΠΙΠΕΔΟ Άξονας Πάνω σε μια ευθεία επιλέγουμε δύο σημεία Ο και Ι, έτσι ώστε το διάνυσμα OI να έχει μέτρο και να βρίσκεται στην ημιευθεία O Λέμε τότε ότι έχουμε έναν άξονα με αρχή

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

n, C n, διανύσματα στο χώρο Εισαγωγή

n, C n, διανύσματα στο χώρο Εισαγωγή Θα περιοριστούμε σε διανύσματα των οποίων τα στοιχεία προέρχονται από τον χώρο και τον C, χωρίς καμία δυσκολία όμως μπορούν να αναχθούν σε οποιοδήποτε χώρο K Το πρώτο διάνυσμα: Τέρματα που έχουν πέτυχει

Διαβάστε περισσότερα

1 Η εναλλάσσουσα ομάδα

1 Η εναλλάσσουσα ομάδα Η εναλλάσσουσα ομάδα Η εναλλάσσουσα ομάδα Όπως είδαμε η συνάρτηση g : S { } είναι ένας επιμορφισμός ομάδων. Ο πυρήνας Ke g {σ S / g σ } του επιμορφισμού συμβολίζεται με A περιέχει όλες τις άρτιες μεταθέσεις

Διαβάστε περισσότερα

Αριθμητική Ανάλυση και Εφαρμογές

Αριθμητική Ανάλυση και Εφαρμογές Αριθμητική Ανάλυση και Εφαρμογές Διδάσκων: Δημήτριος Ι. Φωτιάδης Τμήμα Μηχανικών Επιστήμης Υλικών Ιωάννινα 2017-2018 Συστήματα Γραμμικών Εξισώσεων Εισαγωγή Σύστημα γραμμικών εξισώσεων a x a x a x b 11

Διαβάστε περισσότερα