Ottimizzazione

Sk_Anonymous
Chi ha provato a risolvere un problema di ottimizzazione, tamite l' uso di matlab, con vincoli differenziali la cui funzione da ottimizzare dipende dal tempo?Che funzione (fmincon,quadprog eccc....) è stata utilizzata?

Risposte
Sk_Anonymous
Ciao Marvin grazie mille per l'interessamento e l' esempio, mi ha aiutato molto a capire l' immediatezza del software, purtroppo, non sono riuscito a trovare con "Lingo" una function che risolva problemi di ottimizzazione dinamica.Proverò a cercare tramite matlab, che conosco un pò meglio, una function che soddisfi le richieste.
Grazie.
Luke

Marvin1
Problema di mix produttivo - PLI
Una linea di produzione utilizza due centri di lavorazione in successione, e può produrre tre prodotti A B e C.
Il ricavo unitario per i tre prodotti è rispettivamente euro 20, euro 30 ed euro 25.
I prodotti richiedono due tipi (R1 ed R2) di materiali grezzi, che costano rispettivamente 6 euro/kg e 8 euro/kg.
Il prodotto A richiede 1kg di R1 e 0.5kg di R2.
Il prodotto B richiede 2kg di R1 e 1kg di R2.
Il prodotto C richiede 0.75kg di R1 e 0.5kg di R2.
Ogni centro di lavoro ha la disponibilità di 2 turni per complessive 80 ore la settimana. Sul primo centro di lavoro i tre prodotti richiedono rispettivamente 5, 8 e 10 ore di lavoro, mentre sul secondo centro di lavoro gli imegni sono rispettivamente di 8h, 6h e 2h.
Le richieste del mercato sono al massimo di 10 prodotti di tipo A, 20 di B e 10 di C.
Si richiede di trovare la programmazione settimanale della produzione che massimizza i profitti.
Il modello di programmazione lineare è:

Max 20A + 30B + 25C - 6R1 - 8R2
Subject to
5A + 8B + 10C <= 80
8A + 6B + 2C <= 80
R1 = 1A + 2B + 0.75C
R2 = 0.5A + 1B + 0.5C
A <= 10
B <= 20
C <= 10
0 <= A, 0 <= B, 0 <= C
end

==>come vedi la sintassi è semplice,necessita di due comandi "MAX o MIN" per la funzione obiettivo da MAX (risp MIN)
SUBJECT TO seguito dai vincoli del tuo modello
END fine del modello

(spero che la tua versione sia simile alla mia vecchia)una volta compilato il modello click sull'icona con il bersaglio e la freccetta e ti chiederà se stampare a video l'analisi di sensitività,tu dai si.
nella schermata che ti si apre vedrai valore della F ob e tutti i dati relativi alla variabili (in base,fuori base,dual price etc..)
spero che ti sia di aiuto...

Marvin

Marvin1
Ciao Luke
sinceramente non so se Lindo riesca a risolvere i problemi di cui tu mi hai parlato,io lo so usare proprio a livello base.
ora ti posto un esempio di programmmazione "base-base"..
(in alternativa tu non hai un esempio di codice?)

Sk_Anonymous
Ciao Marvin,
sono riuscito ad istallare Lingo 9.0.
Non so bene come usare questo programma.Risolve problemi di ottimizzazione del genere che ti ho presentato?

Marvin1
Ciao Luke
mi spiace che tu non sia riuscito a trovare il programma,ora da un'occhiata io se sulla pagina della mia docente c'è un hotlink a una versione aggiornata del software.
Purtroppo io non mai tratto problemi di ottimizzazione con vincoli differenziali,come ti avevo detto le mie nozioni di programmazione sono basilari e trattano solamente vincoli lineari.
Per reperire il materiale che ti interessa non saprei dove indirizzarti,ad ogni modo posso consigliarti di guardare

http://www.dig.polimi.it/people/Fumero. ... index.html

alla sezione "laboratori" c'è un file con molti problemi di plc,spero che ti possano essere d'aiuto in un qualche modo.
In alternativa se trovi qlc tu,non esitare a postarlo..possiamo vederlo assieme.

Ciao!
Marvin

Sk_Anonymous
Ciao Marvin grazie per l' interessamento, purtroppo la pagina web che mi hai segnalato è stata rimossa e dalla home page del sito http://www.lindo.com
non sono riuscito a trovare il programma da scaricare.
Comunque il problema che devo affrontare è un ottimizzazione di traiettoria tramite metodi diretti come ad esempio direct collocation method oppure multiple shooting method.Puoi segnalarmi un link dove posso trovare informazioni dettagliate con esempi e applicazioni di questi metodi? o magari se tu ne sai qualcosa potrei direttamente chiedere a te informazioni.Grazie
Ciao.
Luke

Marvin1
Ciao Luke,ecco il link:

http://www.lindo.com/lnd61.exe

Appena lo scarichi fammi sapere che posso postarti un esempio banale di PLC.
Io l'avevo usato in un esame di Ricerca Operativa che,dato un guadagno da massimizzare
dovevo stabilire il numero di oggetti da produrre in modo da soddisfare dei requisiti
di tempo di produzione (sempre in funzione del guadagno da massimizzare,ovviamente)

Ciao.
Marvin

Sk_Anonymous
Ciao Marvin grazie mille te ne sarei veramente grato

Marvin1
Ciao Luke,non ti sarò molto di aiuto...
Io posso solo dirti che ho dato un esame di PLC (Programmazione Lineare Intera) che consiste nell'ottimizzazione di un modello LINEARE CONTINUO (cioè con vincoli solamente di 1° grado).
C'è un programma che svolge questo tipo di problema usando un algoritmo che si chiama "Simplesso",non so se lo conosci.
Cmq il programma in questione si chiama Lindo,se ti interessa posso darti il link (è freeware) e magari darti qualche nozione.(per quel pochissimo che lo so usare!)

Ciao.
Marvin

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.