THMMY.gr

Μαθήματα Κύκλου Ηλεκτρονικής & Υπολογιστών => Τεχνικές Βελτιστοποίησης => Topic started by: MrRobot on April 03, 2018, 13:30:55 pm



Title: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 03, 2018, 13:30:55 pm
Η πρώτη άσκηση έχει αναρτηθεί στο Υλικό Μαθήματος στο ethmmy και μπορείτε να την δείτε εδω (http://alexander.ee.auth.gr:8083/eTHMMY/archive/59/downloadFile/7199/work%201.pdf). Ως προθεσμία έχει οριστεί η 18/4/2018.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 11, 2018, 13:03:09 pm
Όσον αφορά τον αλγόριθμο της διχοτόμου , μπορούμε να προσδιορίσουμε το εύρος των πιθανών τιμών της σταθεράς ε; Γιατί ο αλγόριθμος σε μένα, για κάποιες τιμές του ε ουσιαστικά δεν τερματίζει και κρασάρει.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: leukosaraphs! on April 11, 2018, 13:27:32 pm
πρεπει να προσεξεις οτι ισχυει l > 2ε ..

αρα οταν βαζεις τις τιμες, προσεξε να ικανοποιειται αυτος ο περιορισμος ;)


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 11, 2018, 13:31:05 pm
ωραίος..ουσιαστικά είναι αυτό που αναφέρει στην σελίδα 109 πάνω πάνω;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: leukosaraphs! on April 11, 2018, 14:03:04 pm
yeap!


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 11, 2018, 17:52:08 pm
Επίσης στο 2ο ερώτημα της διχοτόμου, πρέπει να δούμε πως μεταβάλλονται τα f(x1), f(x2) σε σχέση με το ε;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 11, 2018, 19:51:30 pm
Αυτό που έκανα εγώ, και είδα και σε παλιότερα τοπικ ήταν να κάνω plot τον αριθμο επαναλήψεων του αλγορίθμου συναρτήσει του ε


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 12, 2018, 13:01:58 pm
Αυτό που έκανα εγώ, και είδα και σε παλιότερα τοπικ ήταν να κάνω plot τον αριθμο επαναλήψεων του αλγορίθμου συναρτήσει του ε

για να πλοτάρουμε το ε με τον αριθμό επαναλήψεων, δεν πρέπει να έχουμε μια συναρτησιακή σχέση μεταξύ των δύο; Εννοώ πως συνδέονται οι 2 μεταβλητές μας; Κάτι χανω..


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: leukosaraphs! on April 12, 2018, 13:15:34 pm
καθε φορα που θετεις ενα ε, ο αλγοριθμος σου υπολογιζει εναν αριθμο επαναληψεων. Δηλαδη σε ενα Plot αυτο θα ηταν ενα σημειο (ε,n) ...
Απλα εσυ πρεπει να βρεις τροπο να plotαρεις περισσοτερα σημεια για να εχεις μια γραφικη παρασταση.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 12, 2018, 14:24:07 pm
Ουσιαστικά για κάθε επανάληψη του αλγορίθμου με διαφορετικό ε, πρέπει να κρατάω ενα ζευγος τιμών (ε,n). Και στο τέλος έχοντας επαρκή ζεύγη(ανάλογα με το πόσες διαφορετικές τιμές του ε έκανα την επανάληψη του αλγορίθμου) να κάνω την γραφική παράσταση;
Υπάρχει κάποια εντολή στο matlab που να μπορεί να πλοτάρει παράσταση δίνοντας μονο ζεύγη αριθμών;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: leukosaraphs! on April 12, 2018, 14:53:35 pm
η plot(x,y,Linespec) αν τις δωσεις ζευγη τοτε θα αποτυπωνει σημεια (περισσοτερες πληροφοριες εδω (https://www.mathworks.com/help/matlab/ref/plot.html) )
και νομιζω με το hold on μπορεις να κρατησεις ολα τα σημεια ταυτοχρονα!

αν τις δωσεις 2 πινακες, τοτε σου ενωνει τα αντιστοιχα σημεια των 2 πινακων!

Στην 2η περιπτωση μπορεις να ενωσεις τα σημεια και με μια γραμμη , ενω στην 1η περιπτωση μπορεις να αποτυπωσεις μονο σημεια.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 12, 2018, 15:25:04 pm
χίλια ευχαριστώ για το χελπ ..παίζει κάποιο ρόλο αν θα βγάλουμε το γράφημα με διακριτά σημεία ή με συνεχή γραμμή που θα τα ενώνει;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: leukosaraphs! on April 12, 2018, 15:35:45 pm
Δεν υπαρχει καποια οδηγια! Ή τουλαχιστον εγω δεν ειδα κατι στην εκφωνηση.

Η αληθεια ειναι οτι το matlab εχει εκπληκτικες δυνατοτητες στο plot και ειναι στο χερι σου, ποσα θες να κανεις για να παρουσιασεις πιο ομορφο το figure (πχ. αν εχει υποπνημα, αν εχει label στο x αξονα κοκ). Άρα σου προτεινω, αν εχεις μερακι και χρονο, να ψαχτεις για να γινει πιο ευπαρουσιαστο και να μην ειναι απλα 2 γραμμες ή οτιδηποτε το γραφημα σου. Αν παλι δεν προλαβαινεις, γιατι πχ εχεις διαβασμα για τους αλγοριθμους  :D (οπως εχω εγω :Ρ) δεν νομιζω να σου πει και τιποτα τρομερο.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 15, 2018, 12:19:03 pm
Στην αναφορά που θα στείλουμε πρέπει να στείλουμε και όλες γραφικές παραστάσεις που κάναμε ή αρκούν μόνο οι αλγόριθμοι με τους οποίους τις υλοποιήσαμε;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 15, 2018, 14:13:04 pm
Αυτος λέει ότι κρίνετε απαραίτητο, εγω πιστεύω ότι καλό είναι να βάλεις στην αναφορά και τις γραφικές παραστάσεις αλλά και κομμάτια των αλγορίθμων που υλοποίησες.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 15, 2018, 18:30:03 pm
Ευχαριστώ πολύ και κάτι ακόμα.. όσον αφορά τον fibonacci,  η υλοποίηση που θα κάνουμε με βάση την θεωρητική περιγραφή του βιβλίου δεν μπορεί να διαφέρει σημαντικα σε σχεση με τον αλγόριθμο που παρουσιάζει; έτσι δεν είναι;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 15, 2018, 18:51:57 pm
Δεν νομίζω ότι μπορείς να κάνεις κάτι τρομερά διαφορετικό, τουλάχιστον εγώ δεν σκέφτηκα κάτι.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση
Post by: snek on April 16, 2018, 13:34:08 pm
Στο σημείο της εκφώνησης που λέει να σχεδιάσουμε τα άκρα του διαστήματος συναρτήσει του κ , εννοεί πάλι στο ίδιο στυλ με το να σχεδιάσουμε το ε ή το l συναρτήσει των πόσων φορών υπολογίζουμε  την συνάρτηση στα χ1 , χ2 , όπως γράφετε και πιο πάνω , δηλαδή πάλι σημεία στο χώρο ( ή ευθείες )  ?


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 16, 2018, 23:03:35 pm
Εγώ έκανα plot τις διάφορες τιμές που παίρνουν τα Tex code συναρτήσει του k για δύο τιμές του λ.

Επίσης μόλις έσπασες ένα σερι δυο σελίδων απο mods στο τόπικ  :P


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: snek on April 17, 2018, 10:29:24 am
Αυτό που έκανα εγώ, και είδα και σε παλιότερα τοπικ ήταν να κάνω plot τον αριθμο επαναλήψεων του αλγορίθμου συναρτήσει του ε
O αριθμός των επαναλήψεων δεν είναι ο δείκτης βήματος Κ ? Το οποίο ζητάει να plotάρουμε συναρτήσει των άκρων των διαστημάτων πιο μετά , εγώ στο συγκεκριμένο ερώτημα με τη μεταβολή των υπολογισμών της αντικειμενικής συνάρτησης καθώς μεταβάλλουμε τη σταθερά ε , κατάλαβα ότι θέλει το πόσες φορές χρειάζεται να υπολογίσουμε την F στα χ1, χ2, γιατί αυτό το κάνει ζήτημα στο βιβλίο , πχ η διχοτόμος σε κάθε επανάληψη θέλει 2 υπολογισμούς της F , ενώ η χρυσού τομέα από την 2η επανάληψη , θέλει μία


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 17, 2018, 11:26:23 am
O αριθμός των επαναλήψεων δεν είναι ο δείκτης βήματος Κ ? Το οποίο ζητάει να plotάρουμε συναρτήσει των άκρων των διαστημάτων πιο μετά , εγώ στο συγκεκριμένο ερώτημα με τη μεταβολή των υπολογισμών της αντικειμενικής συνάρτησης καθώς μεταβάλλουμε τη σταθερά ε , κατάλαβα ότι θέλει το πόσες φορές χρειάζεται να υπολογίσουμε την F στα χ1, χ2, γιατί αυτό το κάνει ζήτημα στο βιβλίο , πχ η διχοτόμος σε κάθε επανάληψη θέλει 2 υπολογισμούς της F , ενώ η χρυσού τομέα από την 2η επανάληψη , θέλει μία

έτσι όπως τα λες είναι.. το k oυσιαστικα είναι το σύνολο των επαναλήψεων του βρόγχου σου ενώ το n εκφράζει τον συνολικό αριθμό υπολογισμών της f. Το n είναι και αυτό που μεταβάλλεται μεταξύ των αλγορίθμων που σχεδιάζουμεε ανάλογα με το πόσες φορές υπολογίζονται τα f(x1), f(x2).


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: snek on April 17, 2018, 13:47:28 pm
Ρε παιδιά , επειδή με έχει σπάσει τα @@ :P , ψάχνω και δεν το βρίσκω , πως μπορείς να κάνεις στο plot σου σε έναν άξονα πολύ καλή μεγένθυση , ουσιαστικά να βάλεις βήμα στο ylim (ή στο xlim) 0.00001 , που δεν βρήκα άμα γίνεται , δηλαδή θέλω να εμφανίσω 2 τιμές σε ένα διάγραμμα της τάξης του 2,5849583894 και 2,5849583899 άμα βάλω ένα ylim πες από 2 έως 3 της εμφανίζει σχεδόν σαν να ταυτίζονται , αν δεν βάλω ylim έχει ωραία βαθμολογημένα τους άξονες ( της τάξης που ανέφερα, δηλαδή το αναγνωρίζει) , αλλά έχει τις τιμές στα δύο άκρα και δεν φαίνεται ωραία, μπορώ δηλαδή να πειράξω κάπως το ylim για να ζουμάρει όσο θέλω ???


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 17, 2018, 14:24:17 pm
Δεν ξέρω αν υπάρχει καλύτερος τρόπος αλλά μπορείς να κάνεις το εξής: Θεωρώντας πως οι τιμές σου ονομάζονται y1, y2 μπορείς να ορίσεις την απόσταση μεταξύ τους ως ε = y1 - y2. Τότε μπορείς να χρησιμοποιήσεις την ylim([y1 - ε/2, y2 + ε/2]). Το συνολικό πλάτος θα είναι 2*ε και τα σημεία σου θα έχουν απόσταση ε  8))


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: kanou_tom on April 17, 2018, 19:43:00 pm
Την εργασία την στέλνουμε σε zip αρχείο το οποίο περιλαμβάνει αναφορά και τα αρχεία με τους αλγορίθμους;


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: snek on April 17, 2018, 21:23:34 pm
Δεν ξέρω αν υπάρχει καλύτερος τρόπος αλλά μπορείς να κάνεις το εξής: Θεωρώντας πως οι τιμές σου ονομάζονται y1, y2 μπορείς να ορίσεις την απόσταση μεταξύ τους ως ε = y1 - y2. Τότε μπορείς να χρησιμοποιήσεις την ylim([y1 - ε/2, y2 + ε/2]). Το συνολικό πλάτος θα είναι 2*ε και τα σημεία σου θα έχουν απόσταση ε  8))
Πολύ ωραίος θανξ , αν και ήθελε λίγο πιο μεγάλο εύρος , για να τα χωρέσω ( 5*ε) γιατί το διάστημα δεν κλείνει πάντα συμμετρικά.


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: snek on April 17, 2018, 23:07:08 pm
Και οι 3 συναρτήσεις μου πετάνε σχεδόν ολόιδιες τιμές στων αριθμό των υπολογισμών τους και στον δείκτη βημάτων ( διαφορετικές φυσικά από αλγόριθμο σε αλγόριθμο ) , αλλά μέσα στον ίδιο είναι σχεδόν ακριβώς ίδιες τιμές , έχω τσεκάρει πολλές φορές τον κώδικα , μήπως αυτό είναι ανησυχητικό ?


Title: Re: [Τεχνικές Βελτιστοποίησης] Εργαστηριακή Άσκηση 1
Post by: MrRobot on April 17, 2018, 23:22:52 pm
Και οι 3 συναρτήσεις μου πετάνε σχεδόν ολόιδιες τιμές στων αριθμό των υπολογισμών τους και στον δείκτη βημάτων ( διαφορετικές φυσικά από αλγόριθμο σε αλγόριθμο ) , αλλά μέσα στον ίδιο είναι σχεδόν ακριβώς ίδιες τιμές , έχω τσεκάρει πολλές φορές τον κώδικα , μήπως αυτό είναι ανησυχητικό ?

Δεν έχεις θέμα, το ποσες φορες εκτελειται ο καθε αλγοριθμος εξαρτάται από το αρχικό διάστημα και από την ακρίβεια που θέλεις.

Την εργασία την στέλνουμε σε zip αρχείο το οποίο περιλαμβάνει αναφορά και τα αρχεία με τους αλγορίθμους;

Παλιότερος που είχε το μάθημα έκανε αυτό. Εγώ επειδη την γραφω σε latex και δίνει την δυνατότητα θα βάλω κάποια κομμάτια κώδικα μέσα στο pdf