Ανοίξτε εναλλακτική πηγή για την λειτουργία fmincon MATLAB είναι;

ψήφοι
28

Είναι μια εναλλακτική λύση ανοιχτού κώδικα για να MATLAB εκεί fminconλειτουργία για την περιορισμένη γραμμική βελτιστοποίηση; Είμαι ξαναγράφοντας ένα πρόγραμμα MATLAB για να χρησιμοποιήσετε την Python / NumPy / SciPy και αυτή είναι η μόνη λειτουργία που δεν έχουν βρει ισοδύναμο με. Μια λύση NumPy με βάση θα ήταν το ιδανικό, αλλά κάθε γλώσσα θα κάνουμε.

Δημοσιεύθηκε 08/09/2008 στις 14:19
πηγή χρήστη
Σε άλλες γλώσσες...                            


8 απαντήσεις

ψήφοι
1

Υπάρχει ένα πρόγραμμα που ονομάζεται Scilab που είναι ένας κλώνος MATLAB.

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

Απαντήθηκε 08/09/2008 στις 14:21
πηγή χρήστη

ψήφοι
4

GNU Octave είναι ένα άλλο MATLAB κλώνος που θα μπορούσαν να έχουν ό, τι χρειάζεστε.

Απαντήθηκε 08/09/2008 στις 14:22
πηγή χρήστη

ψήφοι
0

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

Απαντήθηκε 08/09/2008 στις 15:02
πηγή χρήστη

ψήφοι
13

Το πακέτο Python ανοιχτού κώδικα, SciPy , έχει ένα αρκετά μεγάλο σύνολο από ρουτίνες βελτιστοποίησης συμπεριλαμβανομένων ορισμένων για την πολυμεταβλητή προβλήματα με περιορισμούς (το οποίο είναι αυτό fmincon κάνει πιστεύω). Αφού έχετε εγκαταστήσει SciPy πληκτρολογήστε τα ακόλουθα στη γραμμή εντολών Python

βοήθεια (scipy.optimize)

Το έγγραφο που προέκυψε είναι εκτενής και περιλαμβάνει τα ακόλουθα οποία πιστεύω ότι θα μπορούσε να είναι χρήσιμη για εσάς.

   Constrained Optimizers (multivariate)

   fmin_l_bfgs_b -- Zhu, Byrd, and Nocedal's L-BFGS-B constrained optimizer
                      (if you use this please quote their papers -- see help)

   fmin_tnc      -- Truncated Newton Code originally written by Stephen Nash and
                      adapted to C by Jean-Sebastien Roy.

   fmin_cobyla   -- Constrained Optimization BY Linear Approximation
Απαντήθηκε 16/09/2008 στις 08:45
πηγή χρήστη

ψήφοι
26

Είναι το πρόβλημά σας κυρτό; Γραμμικός? Μη γραμμική; Συμφωνώ ότι SciPy.optimize κατά πάσα πιθανότητα θα κάνει τη δουλειά, αλλά είναι fmincon ένα είδος μπαζούκα για την επίλυση προβλημάτων βελτιστοποίησης, και θα είστε σε καλύτερη θέση αν μπορείτε να περιοριστεί σε μία από τις παρακάτω κατηγορίες (σε αύξηση του επιπέδου δυσκολίας για την επίλυση αποτελεσματικά)

Γραμμική πρόγραμμα (LP) Τετραγωνικού Πρόγραμμα (Ε.Π.) Κυρτή quadratically-Περιορισμένης Τετραγωνικού Πρόγραμμα (QCQP) Δεύτερο Παραγγελία Πρόγραμμα Cone (SOCP) ημιορισμένη Πρόγραμμα (SDP) Μη-Γραμμική κυρτή Πρόβλημα για μη κυρτό πρόβλημα

Υπάρχουν επίσης συνδυαστική προβλήματα, όπως η Μικτή-Integer Linear Προγράμματα (MILP), αλλά δεν αναφέρει κανένα είδος των περιορισμών πληρότητα, αρκεί να πούμε ότι εμπίπτουν σε μια διαφορετική κατηγορία των προβλημάτων.

Το πακέτο CVXOpt θα είναι πολύ χρήσιμη σε σας εάν το πρόβλημά σας είναι κυρτή.

Εάν το πρόβλημά σας δεν είναι κυρτό, θα πρέπει να επιλέξετε μεταξύ εξεύρεση μιας τοπικής λύση ή την παγκόσμια λύση. «Είδος» Πολλοί κυρτό λύτες εργασία σε μη κυρτό τομέα. Βρίσκοντας μια καλή προσέγγιση για την παγκόσμια λύση θα απαιτήσει κάποια μορφή προσομοιωμένη ανόπτηση ή Γενετικός Αλγόριθμος. Βρίσκοντας την παγκόσμια λύση θα απαιτήσει μια απαρίθμηση όλων των τοπικών λύσεων ή μια συνδυαστική στρατηγική, όπως Branch και Δεσμώτης.

Απαντήθηκε 13/10/2008 στις 04:51
πηγή χρήστη

ψήφοι
1

Ρίξτε μια ματιά σε http://www.aemdesign.com/downloadfsqp.htm .

Εκεί θα βρείτε τον κωδικό C, η οποία παρέχει την ίδια λειτουργικότητα fmincon. (Ωστόσο, χρησιμοποιώντας ένα διαφορετικό αλγόριθμο. Μπορείτε να διαβάσετε το εγχειρίδιο, αν σας ενδιαφέρει στις λεπτομέρειες.)

Είναι ανοιχτού κώδικα, αλλά όχι κάτω από GPL.

Απαντήθηκε 14/01/2009 στις 17:38
πηγή χρήστη

ψήφοι
3

Για αριθμητική βελτιστοποίηση στην Python μπορείτε να ρίξετε μια ματιά στο OpenOpt λύτες:

http://openopt.org/NLP

http://openopt.org/Problems

Απαντήθηκε 19/04/2009 στις 07:10
πηγή χρήστη

ψήφοι
16

Python λογισμικό βελτιστοποίησης:

Απαντήθηκε 06/12/2009 στις 17:51
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more