Manuale per l’Utente
Codice sviluppato dagli studenti di TSPC:
Amabile Roberto 564/18, Donatantonio Riccardo 564/19, Farace Antonio 564/28,
Perfetto Alfonso 564/45
Versione originale: 28 settembre 2004
Revisione del 10 gennaio 2008
Menu
Generalità
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
Il SimpLab 1.0 è stato realizzato in ambiente Labview 7.0 express
ed è per questo utilizzabile unicamente da sistemi in grado di
supportare la versione utilizzata o versioni superiori.
F.O.
Vincoli
Run del SimpLab
Il programma consente di risolvere problemi di programmazione
lineare utilizzando l’algoritmo del Simplesso in due fasi.
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Nel Front Panel è possibile implementare problemi che presentino
un numero indefinito di variabili decisionali e con vincoli di qualsiasi
tipo a patto che il problema sia risolvibile mediante l’algoritmo del
Simplesso standard
Criteri generali di implementazione
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Il Front Panel del SimpLab è composto da una serie di caselle
nelle quali vanno inseriti vari valori corrispondenti ai coefficienti delle
Variabili.
N.B. Tutte le variabili sono indicate dalla lettera X.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Es.
z  3x1  6 x2
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Le celle nelle quali è stato introdotto un valore si colorano
di bianco quelle non utilizzate restano in grigio indicando che
quella cella non deve essere considerata nell’esecuzione del
programma.
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Una volta inserito un valore in una cella questo può essere
cambiato facilmente nello stesso modo con cui è stato inserito
Importante
I valori inseriti possono essere cambiati ma non annullati (cioè
quando una cella è diventata bianca non la si può più far tornare
grigia).
Per questo motivo quando si ha la necessità di implementare un
problema diverso da uno appena svolto o di annullare una cella
si deve seguire la seguente procedura:
1- Selezionare la voce Operate
2- selezionare la voce Reinitialize all to Default
In questo modo tutte le celle verranno annullate e si potrà
implementare un nuovo problema
Generalità
Il Pannello Iniziale
Impostazione
Pannello Iniziale
All’apertura del file SimpLab.vi verrà visualizzata una schermata con
tre voci differenti:
Implem. Probl.
F.O.
Vincoli
Run del SimpLab
cliccando sul riquadro si accederà alla
schermata relativa al programma
completo, previsto per affrontare il
problema in tutte le sue fasi
Output
F.O. e var. in base
Iterazioni
Controlli
selezionando questa voce si accederà
ad una sottosezione ove sarà possibile
importare da file un tableau già esistente
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
con questa opzione invece sarà possibile
compilare direttamente il tableau
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
La modalità “Implementa Problema”
Gli input necessari al programma per la risoluzione di un problema
di ottimizzazione sono:
-Tipo di problema
-Funzione obiettivo
-Vincoli
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Tipo di problema da risolvere
La scelta del tipo di problema da risolvere può essere fatta facilmente
cliccando con il cursore in modalità operate value sull’opportuno
Indicatore.
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
La scelta può avvenire tra due tipi di problemi:
- Min! se si vuole minimizzare la F.O.
- Max! se si vuole massimizzare la F.O.
NB: SimpLab risolve il caso z = cTx max ! come -z = (-c)T x min !
Generalità
Introduzione della F.O.
Impostazione
Pannello Iniziale
Implem. Probl.
La F.O. deve essere inserita nel riquadro apposito (mostrato in
basso) nel quale le celle corrispondono ai valori dei coefficienti
di costo.
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Importante:
Il programma di default dà la possibilità di inserire al massimo
6 coeff. di costo.
Questo numero può essere incrementato allungando le celle dal
lato sinistro (come indicato dalla freccia) utilizzando il cursore in
Modalità position/size/select selezionabile tramite il Tools palette
di Labview.
Per capire meglio come fare ad aggiungere variabili decisionali
cliccare sul pulsante Demo
Demo
Generalità
Introduzione dei vincoli
Impostazione
I vincoli possono essere introdotti in maniera simile alla F.O. nella
Pannello Iniziale apposita finestra (riportata in basso) indicando anche il tipo di
uguaglianza/disuguaglianza ( ≤ , = , ≥ ).
Implem. Probl.
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Demo
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Importante:
Anche in questo caso il programma di default dà la possibilità di inserire
al massimo un certo numero di vincoli.
Anche qui il numero può essere incrementato allungando le celle come
indicato dalla freccia utilizzando il cursore in
Modalità position/size/select selezionabile tramite il Tools palette
di Labview.
Generalità
Come eseguire il programma
Impostazione
Pannello Iniziale
Implem. Probl.
Quando tutti gli input del programma sono stati implementati
bisogna far partire il calcolo.
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Il calcolo parte cliccando il pulsante run situato sul margine
interno della finestra del programma oppure seguendo la seguente
procedura:
-Selezionare Operate
-Selezionare run
Nota
Per eseguire rapidamente il programma basta premere
simultaneamente ctrl e “R”
Generalità
Impostazione
Output del SimpLab
Pannello Iniziale
Implem. Probl.
Il programma consente di visualizzare i seguenti risultati:
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
-Valore della funzione obiettivo ottimizzata
-Visualizzazione dei tableau aggiornati passo passo
-Variabili in base e loro valore
-Indica l’eventuale presenza di errori durante l’aggiornamento
dei tableau e di particolari casi in cui la soluzione non è unica o
addirittura assente
F.O. e Variabili in base all’ottimo
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
Il programma di default restituisce il valore della funzione obiettivo
insieme alle variabili che si trovano in base nel momento in cui si è
raggiunta la condizione di ottimo
F.O.
Vincoli
Run del SimpLab
Es.
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Come detto le variabili decisionali vengono indicate tutte con
la lettera X seguita da un pedice che sta ad indicare l’ordine con
cui quella variabile è stata introdotta nella F.O. di partenza e/o
nei vincoli implementati nel programma.
Visualizzazione delle varie iterazioni
Generalità
Il pulsante Visualizza Tableau situato Front Panel consente di
visualizzare i tableau delle varie iterazioni dell’algoritmo specificando
Pannello Iniziale quella determinata iterazione a quale delle due fasi appartenga.
Impostazione
Implem. Probl.
F.O.
Vincoli
Run del SimpLab
Quando questo pulsante è in posizione On verrà visualizzato un
tableau come quello mostrato in figura
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Numero dell’iterazione visualizzata
Fase dell’algoritmo visualizzata:
• Fase 0: ricerca della sol. b.a.
• Fase 1: ottimizzazione della F.O.
Coefficienti di costo
(visualizzati col segno
cambiato in un
problema max !)
Risorse
(che dinamicamente divengono
le var. basiche e
la F.O.)
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Attenzione
Quando si sceglie di visualizzare le varie iterazioni può capitare che
le righe o le colonne visualizzate di default dal programma non
siano abbastanza da poter visualizzare interamente il tableau.
Per ovviare a questo basta aggiungere colonne o righe allo stesso
modo di come veniva fatto per i vincoli.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Visualizza demo aggiunta vincoli
Ripeti demo
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Vincoli
Problemi mal posti o soluzioni non uniche
Il SimpLab dispone di un pannello di controllo che permette all’utente
di capire quando il problema che sta trattando non può essere risolto,
per particolari motivi, con l’agoritmo del simplesso standard.
Il pannello, tramite l’accensione di una spia, ci permette di distinguere
vari casi in cui l’algoritmo non dà soluzione.
Run del SimpLab
Output
Es.
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
I casi possibili sono:
-Nessuna sol ammissibile: la prima fase del simplesso non si chiude
con un valore nullo della forma di inammissibilità
-Soluzioni infinite: il problema ammette infinite soluzioni
-Sol non limitata: il simplesso non riesce a trovare una soluzione
diversa da infinito
-Sol degenere: l’algoritmo non riesce a trovare una soluzione
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Salvare i risultati ottenuti
E’ possibile creare un file sul quale salvare il tableau ottenuto per
consentire di memorizzare il risultato ottenuto e/o per utilizzarlo in
altre verifiche (es. verifiche di post ottimalità ecc..)
Per salvare i dati ottenuti basta cliccare, prima di mandare in run il
programma, sull’apposito pulsante Salvare Risultati.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Una volta eseguito, il programma chiederà la destinazione del file
che si sta creando.
Quando il programma non riesce a trovare una soluzione, perché si
verificano casi come quelli visti nella slide precedente, il salvataggio
non potrà essere effettuato.
Importante
Il file così creato potrà essere aperto dal blocco note del pc e quindi
salvato come file .txt.
Questo a sua volta potrà essere aperto da un qualsiasi foglio di
calcolo.
Generalità
Modalità “IMPORTA TABLEAU” (1/2)
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Vincoli
Run del SimpLab
Output
Attraverso questa modalità, attivabile cliccando sul relativo riquadro
nel pannello iniziale, si accederà ad una sezione dove sarà possibile
acquisire un tableau già esistente da un file in formato txt (testo).
Questa opzione può servire nel momento in cui si dispone di un
tableau, per esempio ottenuto come risultato da una precedente
applicazione del programma.
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
N.B. Questa modalità importa solo il tableau ma è comunque
possibile inserire, negli appositi riquadri, le variabili che devono
entrare in base al primo ciclo.
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
Modalità “IMPORTA TABLEAU” (2/2)
Comparsa la schermata iniziale, le operazioni da compiere saranno:
1) Caricare il tableau da file; per far ciò cliccare su Operate e quindi
su Run; comparirà la seguente schermata:
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
si seleziona dunque il file
sorgente.
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
2) Si procede alla risoluzione del problema in maniera analoga
alla modalità principale (Implementa Problema).
Generalità
Modalità “IMPLEMENTA TABLEAU” (1/2)
Impostazione
Pannello Iniziale
Implem. Probl.
Attraverso questa modalità, attivabile cliccando sul relativo riquadro
nel pannello iniziale, si accederà ad una sezione dove sarà possibile
inserire un tableau.
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
Questa opzione si differenzia dalla modalità principale (Implementa
Problema), perché in quest’ultima la compilazione del tableau
avviene automaticamente una volta inseriti i vincoli e la funzione
obiettivo;
in questa sezione invece (Implementa Tableau), l’utente provvede
direttamente alla scrittura del tableau by-passando dunque le
operazioni di inserimento della funzione obiettivo e dei vincoli.
Generalità
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Modalità “IMPLEMENTA TABLEAU” (2/2)
Una volta visualizzata la schermata relativa alla modalità in esame,
le operazioni da effettuare saranno:
1)Compilare il tableau in maniera corretta secondo il metodo del
simplesso standard;
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
2)Se il numero di righe o di colonne del tableau risultano insufficienti
per il completo inserimento del tableau, aggiungere le righe o le
colonne necessarie come mostrato dalla diapositiva animata
(cliccare demo)
Demo
Salvataggio
Importa Tableau
Implem. Tableau
Versione flash
3)Completare le operazioni come in modalità “Implementa
Problema”
Generalità
La versione fast del SimpLab 1.0
Impostazione
Pannello Iniziale
Implem. Probl.
F.O.
Vincoli
Run del SimpLab
Output
F.O. e var. in base
Iterazioni
Controlli
Salvataggio
Importa Tableau
Implem. Tableau
Versione fast
La versione fast del SimpLab consente di utilizzare il SimpLab anche
su un PC sul quale non vi sia installato (o non sia possibile installare)
il Labview 7.0 express.
Il Front Panel di questa applicazione risulta pressoché identico a
quello della versione completa del programma.
Le modalità di implementazione sono esattamente le stesse viste per
il programma completo, ma la limitazione di questa applicazione sta
nel fatto che in questo non è possibile aumentare il numero di
variabili decisionali al di sopra di quelle date di default dal
programma.
Fine
Torna a pag
Aggiunta variabile
Aggiunta vincolo
Torna a pag
Aggiunta variabile
Aggiunta vincolo
Torna a pag
Aggiungi riga
Aggiungi colonna
Torna a pag
Scarica

IMPORTA TABLEAU