ΛΟΓΙΣΜΙΚΟ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ MERLIN / MCL 3.0 ΠΕΡΙΒΑΛΛΟΝ ΕΛΑΧΙΣΤΟΠΟΙΗΣΗΣ.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Τι είναι ο προγραμματισμός
Advertisements

Προγραμματισμός PASCAL
Κεφάλαιο Τμηματικός προγραμματισμός
Υποθέτοντας ότι ο τελεστής ^ δεν είναι διαθέσιμος στην Γλώσσα Προγραμματισμού, να γραφτεί αλγόριθμος που να υπολογίζει την παράσταση xν, όπου xR, νZ.
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΥΠΟΡΟΥΤΙΝΕΣ
Στατική Συμβολική Παραγώγιση Λάμδα Εκφράσεων στην C++
31/1/2000epl-0321 Προγραμματισμός •Γιατι γραφουμε προγραμματα (προηγ. διαλεξη) •Πως γραφουμε προγραμματα –τι ειναι προγραμματισμος –μεθοδολογια –αφαιρετικοτητα.
H διαδικασία ανάπτυξης λογισμικού. Tι θα γνωρίσουμε •Τις φάσεις ανάπτυξης του λογισμικού. •Γιατί χρειάζεται να γίνει ανάλυση του προβλήματος. •Τι θα πρέπει.
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 2: Πίνακες και δυναμικά δεδομένα στη FORTRAN 90 Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ.
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
ΜΑΘ-3122/106 Προγραμματισμός
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 4: Δείκτες, συναρτήσεις και διαδικασίες Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ.
HY100 : ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΟΝΤΕΣ Αντώνιος Σαββίδης, Χρήστος.
Εισαγωγή στο MATLAB.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος ε
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος α
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 5: Επαναληπτικές και εξωτερικές συναρτήσεις και διαδικασίες Εαρινό εξάμηνο 2009.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Διάλεξη 3: Δείκτες Εαρινό εξάμηνο 2009 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ι. Σαρρής, τηλ.
Visual Turtle: Μιά “μοντέρνα” Logo.
Εργασία Η υλοποίηση του αλγορίθμου συγχώνευσης θα πρέπει να χρησιμοποιεί την ιδέα των ροών (streams). Θα πρέπει να υπάρχουν δύο διαφορετικά είδη.
Συστήματα Αρίθμησης  Δυαδικό  Δεκαδικό  Δεκαεξαδικό.
ΕΚΠΑΙΔΕΥΤΙΚΗ ΠΡΟΣΕΓΓΙΣΗ ΤΗΣ ΕΥΡΥΤΕΡΗΣ ΕΝΝΟΙΑΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΔΙΑΦΟΡΕΤΙΚΟ ΛΟΓΙΣΜΙΚΟ ΓΙΑ ΚΑΘΕ ΠΤΥΧΗ ΤΟΥ Κάππας Κων/νος Επιμορφωτής ΤΠΕ -
ΗΥ 150 – ΠρογραμματισμόςΞενοφών Ζαμ π ούλης ΗΥ-150 Προγραμματισμός Αλγόριθμοι και Προγράμματα.
ΛΟΓΙΣΜΙΚΟ Πρόγραμμα Είναι μία ακολουθία από εντολές, σε λογική σειρά, με σκοπό να κατευθύνουν τον Η.Υ. στην εκτέλεση των επιθυμητών εργασιών. ΛΟΓΙΣΜΙΚΟ.
Αριθμητικές Μέθοδοι Βελτιστοποίησης Θεωρία & Λογισμικό Τμήμα Πληροφορικής - Πανεπιστήμιο Ιωαννίνων Ι. Η. Λαγαρής.
Σχεδίαση αλγορίθμων (2ο μέρος)
ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB-SIMULINK
Αριθμητική Ανάλυση Μεταπτυχιακού 6η Ε Β Δ Ο Μ Α Δ Α Ακαδημαϊκό Έτος Τετάρτη 26, Νοεμβρίου 2008 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΤΟΜΕΑΣ ΥΠΟΛΟΓΙΣΤΙΚΩΝ.
Διάλεξη 9η: Εφαρμογή της μεθόδου Simplex στο γραμμικό προγραμματισμό κατά τη μεγιστοποίηση Μέθοδος Simplex 1.Όταν υπάρχουν μέχρι πέντε κλάδοι παραγωγής.
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ Ι. Σαρρής, τηλ. Διάλεξη 2: Αντικείμενα.
Μερικές Διαφορικές Εξισώσεις ΙΙ
ΒΕΣ 06: Προσαρμοστικά Συστήματα στις Τηλεπικοινωνίες © 2007 Nicolas Tsapatsoulis Προσαρμοστικοί Αλγόριθμοι Υλοποίησης Βέλτιστων Ψηφιακών Φίλτρων: Ο αναδρομικός.
Διαφάνειες παρουσίασης Πίνακες (συνέχεια) Αριθμητικοί υπολογισμοί Αναδρομή.
National Technical University of Athens (NTUA), GreeceInstitute of Structural Analysis & Seismic Research (ISASR) Προχωρημένες υπολογιστικές τεχνικές και.
Διδακτική της Πληροφορικής ΗΥ302 Εργασία :Παρουσίαση σχολικού βιβλίου Γ’ Λυκείου Τεχνολογικής Κατεύθυνσης «Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον»
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ - ΣΥΝΑΡΤΗΣΕΙΣ) Καλλονιάτης Χρήστος Επίκουρος Καθηγητής Τμήμα Πολιτισμικής Τεχνολογίας.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ. ΥΠΟΛΟΓΙΣΤΗΣ Μηχανή που μπορεί να φέρει σε πέρας πνευματικές εργασίες ρουτίνας με μεγάλη ταχύτητα.
HY100 : ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΟΝΤΕΣ Αντώνιος Σαββίδης, Χρήστος.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
Τι είναι η Επιχειρησιακή Έρευνα
Κεφάλαιο 10 – Υποπρογράμματα
Προγραμματισμός Γιατι γραφουμε προγραμματα (προηγ. διαλεξη)
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
1 ΤΜΗΜΑ ΜΠΕΣ Αλγόριθμοι Αναζήτησης Εργασία 1 Τυφλή Αναζήτηση.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ (ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ - ΔΙΕΡΓΑΣΙΕΣ)
Επιστημονικός Υπολογισμός Ι Πρώτο Εργαστήριο Εισαγωγή στο matlab 15 Οκτωβρίου 2010 Γιώργος Δρακόπουλος ΤΜΗΥΠ.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι 4-1 Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Αναδρομικές συναρτήσεις Ισοζυγισμός Παρενθέσεων.
ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language.
Οι εντολές επανάληψης Σε πολλά προβλήματα απαιτείται η επανάληψη ενός συνόλου ενεργειών προκειμένου να λυθεί το πρόβλημα. Θα αναφέρουμε δύο χαρακτηριστικά.
Συναρτήσεις - Διαδικασίες Ν. Π. Καραμπετάκης Τμήμα Μαθηματικών, Α.Π.Θ.
Υποπίνακες REAL A(10) A(1:9:2)=7 τότε θα έχουμε A(1)=A(3)=A(5)=A(7)=A(9)=7 A(3:)=7 τότε θα έχουμε A(3)=…=A(10)=7 A(:5)=7 τότε θα έχουμε A(1)=A(2)=A(3)=A(4)=A(5)=7.
2) Aν δανειστούμε ένα ποσό Α με επιτόκιο Τ=Ε% και υποχρεωθούμε να το ξεχρεώσουμε σε Ν χρόνια, τότε το ποσό της μηνιαίας δόσης Μ θα δίνεται από τον τύπο.
Ένα δείγμα προβλημάτων στα Αριθμητικά του Διόφαντου
Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Τμήμα Μαθηματικών “Θεωρητική Πληροφορική & Θεωρία Συστημάτων και Ελέγχου” Ανάπτυξη διαδραστικού περιβάλλοντος (GUI)
Αναδρομικές Συναρτήσεις Σύνταξη: RECURSIVE type FUNCTION name1 (variables) RESULT (name2) IMPLICIT NONE Τμήμα δηλώσεων Εκτελέσιμες εντολές END FUNCTION.
Προγραμματισμός & Εφαρμογές Η/Υ (Θ) Ενότητα 4: Εισαγωγή στο Προγραμματισμό με τη FORTRAN 2003 (μέρος 4 ο ) Δρ. Β.Χ. Μούσας, Αναπληρωτής Καθηγητής Τμήμα.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Παράδειγμα εφαρμογής του αλγορίθμου BP σε δίκτυο
Ε ΙΣΑΓΩΓΉ Σ ΤΟΥΣ Μ ΟΝΟΔΙΑΣΤΑΤΟΥΣ Π ΊΝΑΚΕΣ Αστρινάκη Μαρία.
ΑΣΤΡΙΝΆΚΗ ΜΑΡΊΑ Δυσδιάστατοι πίνακες. Γιατί πολυδιάστατους πίνακες; Αναλόγως με τις ανάγκες του προγράμματος, μπορεί να είναι πιο εύχρηστοι Προβλήματα.
Ασκήσεις WEKA Νευρωνικά δίκτυα.
Εφαρμογές Υπολογιστών
Η Γλώσσα Pascal Υποπρογράμματα
ΜΕΤΡΗΣΗ ΤΟΥ ΣΥΝΤΕΛΕΣΤΗ ΓΡΑΜΜΙΚΗΣ ΔΙΑΣΤΟΛΗΣ ΜΙΑΣ ΡΑΒΔΟΥ
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
Μη Γραμμικός Προγραμματισμός
Μεταγράφημα παρουσίασης:

ΛΟΓΙΣΜΙΚΟ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ MERLIN / MCL 3.0 ΠΕΡΙΒΑΛΛΟΝ ΕΛΑΧΙΣΤΟΠΟΙΗΣΗΣ

Merlin & ΜCL Merlin  Τι είναι το Merlin Πακέτο λογισμικού που προσφέρει ένα περιβάλλον κατάλληλο για επίλυση προβλημάτων ελαχιστοποίησης. MCL MCL  Τι είναι η MCL (Merlin Control Language) Γλώσσα ελέγχου του περιβάλλοντος κατάλληλη για τον προγραμματισμό "στρατηγικών" ελαχιστοποίησης.

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

Τρόπος αντιμετώπισης  Παροχή εύχρηστου συστήματος επικοινωνίας με τον χρήστη.  Υλοποίηση μιας πλειάδας στιβαρών αλγορίθμων βελτιστοποίησης.  Παροχή συστήματος βοήθειας χρήσης.  Ύπαρξη γλώσσας προγραμματισμού.

Αλγόριθμοι Μέθοδοι χωρίς χρήση παραγώγων  Simplex (Nelder and Mead )  Roll (Pattern Search ) Μέθοδοι με χρήση παραγώγων  Συζυγών κλίσεων (Τρεις αλγόριθμοι )  Μεταβλητής μετρικής (BFGS, DFP )  Levenberg-Marquardt

Tι απαιτείται από τον χρήστη Το λογισμικό έχει γραφτεί σε Fortran-77 Το λογισμικό έχει γραφτεί σε Fortran-77. Το Merlin χωρίζεται σε τρία μέρη  Ένα μικρό κυρίως πρόγραμμα.  Ένα σύνολο υποπρογραμμάτων που υλοποιούν το όλο περιβάλλον. Υποπρογράμματα που υλοποιούν την αντικειμενική συνάρτηση και προαιρετικά τις παραγώγους της.  Υποπρογράμματα που υλοποιούν την αντικειμενική συνάρτηση και προαιρετικά τις παραγώγους της.

O χρήστης πρέπει να κωδικοποιήσει σε ANSI Fortran - 77 τα προγράμματα:  Αντικειμενική συνάρτηση: (υποχρεωτικά)  Την κλίση: (προαιρετικά)  Τον Εσσιανό πίνακα: (προαιρετικά)

Όταν η συνάρτηση είναι άθροισμα τετραγώνων...  Εάν δηλαδή: Τότε αντί της συνάρτησης f(x) μπορεί να προγραμματιστούν μόνο οι όροι f k (x).  Προαιρετικά δε μπορεί να προγραμματιστεί και η Ιακωβιανή:

Ενα απλό παράδειγμα...  Ελαχιστοποίηση της:  Η κλίση:  Ο Εσσιανός πίνακας:

FUNCTION FUNMIN(X,N) DIMENSION X(N) FUNMIN= X(1)**2 + (X(2)-1)**4 END SUBROUTINE GRANAL(N,X,GRAD) DIMENSION X(N),GRAD(N) GRAD(1)= 2*X(1) GRAD(2)= 4*(X(2)-1))**3 END SUBROUTINE HANAL(H,LD,N,X) DIMENSION X(N),H(LD,N) H(1,1)= 2. H(2,1)= 0. H(2,2)= 12*(X(2)-1)**2 END Μόνο το κάτω μέρος του Εσσιανού πίνακα H(I,J), υπολογίζεται. Η κλίση αντιστοιχεί στο άνυσμα GRAD Η αντικειμενική συνάρτηση (γενικής μορφής).

Αθροισμα τετραγώνων...  Η συνάρτηση μπορεί να γραφτεί ως: Η Ιακωβιανή:

SUBROUTINE SUBSUM(M,N,X,F) DIMENSION X(N),F(M) F(1)= X(1) F(2)= (X(2)-1)**2 END SUBROUTINE JANAL(M,N,X,FJ,LD) DIMENSION X(N),FJ(LD,N) FJ(1,1)= 1. FJ(1,2)= 0. FJ(2,1)= 0. FJ(2,2)= 2*(X(2)-1) END Οι όροι f k (x), ένας προς ένας. Οι όροι J ki (x), ένας προς ένας.

Προσαρμογή δεδομένων. Ένα συχνά εμφανιζόμενο πρόβλημα. Δεδομένων των σημείων (x i,y i ), i=1,2,...,M προσαρμόστε μια αναλυτική μορφή N(x,p) (με παραμέτρους p i ) που αναπαριστά τα δεδομένα ικανοποιητικά. x y

Προσαρμογή δεδομένων με χρήση Τεχνητών Νευρωνικών δικτύων  Ενα σιγμοειδές Perceptron με ένα κρυφό επίπεδο έχει την μορφή: Όπου η σιγμοειδής συνάρτηση δίδεται από:

Η προσαρμογή επιτυγχάνεται ελαχιστοποιώντας την παράσταση: Η Ιακωβιανή έχει την μορφή:

Η κλίση γράφεται ως: Ο Εσσιανός πίνακας δε, ως εξής:

Υλοποίηση subroutine ann(p,nodes,x,per) implicit double precision (a-h,o-z) dimension p(3*nodes) per = 0 do 1 i=1,nodes arg = p(3*i-1)*x + p(3*i) per = per + p(3*i-2)/(1.+exp(-arg)) 1 continue end Νευρωνικό δίκτυο p (input) οι παράμετροι nodes (input) οι κόμβοι x (input) per (output) το δίκτυο subroutine gann(p,nodes,x,gper) implicit double precision (a-h,o-z) dimension p(3*nodes),gper(3*nodes) do 1 k=1,3*nodes,3 arg = p(k+1)*x+p(k+2) sig = 1./(1+exp(-arg)) gper(k)= sig gper(k+2)= p(k)*sig*(1-sig) gper(k+1)= x*gper(k+2) 1 continue end Η κλίση του δικτύου. p (input) οι παράμετροι nodes (input) οι κόμβοι x (input) gper (output) η κλίση Ο κώδικας για τον Εσσιανό πίνακα δεν έχει υλοποιηθεί και αφήνεται σαν άσκηση για τον αναγνώστη.

subroutine subsum ( m, n, p, f ) implicit double precision (a-h,o-z) save parameter(mx=8000) dimension p(n), f(m) common/xydata/x(mx),y(mx),mm data itric /0/ if(itric.eq.0) then itric = 1 if(m.gt.mx) stop mm=m if( (n/3)*3.ne. n) stop nodes = n/3 open(1,file='xy.data',status='old') do 10 i=1,m read(1,*)x(i),y(i) 10 continue close(1) endif do 1 i = 1,m call ann(p,nodes,x(i),per) f(i)= per-y(i) 1 continue end Υπολογισμός των επι μέρους όρων. Το υποπρόγραμμα: SUBROUTINE SUBSUM Τα σημεία x-y είναι στο αρχείο: xy.data Η διαδικασία αυτή εκτελείται μόνο την πρώτη φορά που καλείται η ρουτίνα SUBSUM

Υπολογισμός της Ιακωβιανής. Το υποπρόγραμμα: SUBROUTINE JANAL subroutine janal ( m, n, p, fj, ld ) implicit double precision (a-h,o-z) save parameter(mx=8000,nx=250) common/xydata/x(mx),y(mx),mm dimension p(n), fj(ld,n),gper(nx) nodes = n/3 do 1 i=1,m call gann(p,nodes,x(i),gper) do 2 j=1,n fj(i,j) = gper(j) 2 continue 1 continue end

Η κλίση της αντικειμενικής συνάρτησης. Το υποπρόγραμμα: SUBROUTINE GRANAL subroutine granal ( n, p, grad ) implicit double precision (a-h,o-z) save parameter(mx=8000,nx=250) common/xydata/x(mx),y(mx),mm dimension p(n),grad(n),ff(mx),g(nx) nodes = n/3 call subsum ( mm, n, p, ff ) do 10 i=1,n grad(i)=0 10 continue do 1 l=1,mm call gann(p,nodes,x(l),g) do 2 j=1,n grad(j)= grad(j) + 2*ff(l)*g(j) 2 continue 1 continue end