POLITECNICO DI BARI - Prof.ssa Maria Pia FANTI - Esercitatore Ing. Giorgio IACOBELLIS

sabato 13 dicembre 2008

Lezione in aula CAD

Durante la lezione di Martedì pomeriggio in aula CAD, VOI dovrete cercare di realizzare una rete di Petri in ARENA. Per venirvi in contro e darvi la possibilità di prepararla prima a casa, o quantomeno iniziare ad abbozzarla, vi allego la rete che dovrete realizzare.





giovedì 6 marzo 2008

Raccomandazioni

Io uso Office 2003, quindi cercate di non inviarmi formati strani come
.docx o .xlsx, perchè non li posso aprire!

Scelta scenari

Come sapete, siete liberi di settare a piacere la durata delle
transizioni, ma una volta fissati...basta.
Nella pratica non potete utilizzare lo stratagemma di scegliere i tempi
di lavorazione fatti a posta per risolvere i vostri deadlocks.
quindi se avete dei deadlocks dovete usare una GMEC e non variare i
tempi delle transizioni.

mercoledì 5 marzo 2008

Attenzione!

Per facilitare la fase di correzione, vi prego di non inviarmi i file pdf, perchè mi diventa difficile inserire note e commmenti !
Ricordate di inviare i file tutti insieme in una cartella zippata e non 10 file sparsi!
Altra raccomandazione è di inviare anche i file utilizzati per conservare dati di varia natura come .txt e file .xls!
Per tutti coloro che sanno di non aver rispettato questi suggerimenti, provvedete quanto prima, non aspettate che sia io ad inviarvi una mail con le richieste di questo o quel file!
Infine per tutti quelli che stanno correggendo il proprio lavoro in base alle mie note, prendete tempo, pensateci e fate un buon lavoro, non sforzatevi di rispondere il prima possibile e magari non rispondere alle mie richieste, altrimenti mi costringete a leggere il lavoro ogni volta!

venerdì 29 febbraio 2008

REGOLE 2

In questa sessione siete davvero tanti ed io farò di tutto per correggere i vostri lavori bene e darvi anche la possibilità di rivedere "qualche" imperfezione. Ma voi mi dovete venire in contro!
Ribadisco, dovete seguire lo schema del post inviato qualche tempo fa e dovete essere chiari quando definite il throughput e l'utilizzazione, cioè....dato che sembra non ancora chiaro....mi dovete dire per il throughput quale transizione o place state osservando e come lo state calcolando, idem per l'utilizzazione, voglio il nome del  place o della transizone osservata/i !
Non dimenticate di descrivere una per una le funzioni che avete creato ed in particolare il loro scopo, ed inserite nella relazione anche il codice commentato!!
Tutti i lavori che non soddisferanno tali richieste verranno valutati non più di 0.5!


Re: PROGETTO MODELLISTICA

Domanda
........ io stamttina (28/02) ho sostenuto l'esame e la verbalizzazione di suddetto esame sara intorno al 10/03.Quale è il termine per l 'invio a lei del progetto in matlab+relazione? 5 o 6 marzo va bene?
Risposta
Come è chiaramente scirtto nel blog, il termine ultimo di consegna è 7gg prima della data di verbelizzazione, quindi in questo caso sarà il 3 marzo.
Questo per darmi il tempo di correggere e darvi il tempo di correggere i vostri lavori. Se tu consegni dopo il 3, semplicemente potrei non fare in tempo a correggere  il tuo lavoro o, nella migliore delle ipotesi, non potresti far più nulla per correggere il tuo lavoro.
Inoltre questa volta mi sono arrivati tantissimi lavori da correggere.


lunedì 25 febbraio 2008

Re: modellistica

Domanda
Salve,vorrei porle alcune domande sul mio progetto in Matlab:
1)Ho calcolato l'utilizzazione dei posti corrispondenti alle risorse, così: ho sommato i tempi delle transizoni scattate, tutte le volte che il numero dei token del posto risorsa era maggiore di 0 e poi ho diviso per il tempo totale(86400).Va bene?
2)Nel mio tema, ci sono due macchina che lavorano.In particolare, la macchina 1svolge due operazione individuate da due posti diversi.Quindi quale dei due devo usare come posto risorsa per il calcolo dell'utilizzazione?E' indifferente?
3)Come devo utilizzare il comando plot per visualizzare il grafico del Th medio dei variscenari? lo devo fare anche per l'utilizzazione?
Risposta
1) si va bene.
2) in pratica nel tuo caso può eseguire 2 differenti compiti, quindi che stia eseguendo l'uno o l'altro o entrambi è sempre cmq occupata giusto? se è così la condizione diventa p1 or p2 diverso da zero = macchina occupata!
3)come dal blog, devi definire gli scenari e poi il grafico lo devi fare asse x=id scenari ed asse y = valore da plottare (throughput o utilizzazione).

venerdì 22 febbraio 2008

SUGGERIMENTO

Per tutti quelli che negli scenari hanno a che fare con le capacità e le
utilizzazioni, in alcuni casi, facendo aumentare le capacità delle
risorse, potrebbe diventare poco utile misurare l'utilizzazione, mentre
potrebbe essere interessante vedere quante risorse sono mediamente occupate.
Mi spiego meglio, nel caso di un robot, nei vari scenari potrei vedere
cosa succede aumentando il numero di robot e dovrei vedere il throughput
salire fino ad un livello max oltre il quale il sistema no va. Ma cosa
succede all'utilizzazione del robot?
Mi diventa difficile dire per quanto tempo un robot era occupato o no,
posso misurare la percentuale di tempo per cui almeno un robot era
occupato! In una situazione del genere allora, è più utile vedere
mediamente quanti robot sono occupati (o liberi dipende dai places che
osservate) e cercare il numero minimo di robot per cui ho il throughput
massimo.

Re: modellistica

Domanda
Vorrei chiedere ulteriori spiegazioni...
1)Non so come definire Pre,Post ed M0 come int!
2)Come posso stimare le dimensioni della matrice delle marcature?
3)Come implemento il calcolo l'utilizzazione?
Risposta
1) se ho un vettore x di double posso fare un cast, x=int8(x);
2) fai una simulazione e vedi + o - quanti eventi ci sono e ne consideri il doppio, alla fine elimini le colonne avanzate.
3) per utilizzazione si intende il tempo in percentuale per cui una macchina o una risorsa in genere è occupata. quindi devi misurare il tempo per cui è occupata (place che rappresenta la tua risorsa >0 o place che rappresenta la sua capacità <della capacità totale) e dividerlo per il tempo di osservazione (durata della replica-transitorio).


giovedì 21 febbraio 2008

IMPORTANTE PER TUTTI

Domanda
Salve ing.Iacobellis, sono XXXXXXXXX ho consegnato ieri la relazione per il tema d'anno di modellistica e controllo con la prof. Fanti, siccome la verbalizzazione è domani, volevo sapere nel caso in cui non riesca a correggere la relazione( visto il mio ritardo di consegna) posso verbalizzare nel prossimo appello utile? o devo cmnq presentarmi domani?
Risposta
A dire il vero, dato che avete consegnato in ritardo, ho dato per scontato che le relazini  pervenute dopo la data indicata sul blog (14/02/07) fossero riferite al prossimo appello, cosi non le ho proprio guardate!
Per quanto riguarda la possibilità di verbalizzare al prossimo appello non so cosa dirti devi parlare con la Prof. Fanti.
Così ti consiglio di parlare domani con la prof.
I lavori di tutti coloro che non figurano nella tabella pubblicata il 18/02 non sono stati corretti!

mercoledì 20 febbraio 2008

Re: modellistica

Domanda
Vorrei chiederle un paio di suggerimenti per il mio lavoro in Matlab.
1)Ho terminato il programma, in cui ho considerato, per ognuno degli scenari (per ora ho considerato solo uno scenario...), 20 repliche di 24 ore l'una: il problema è che il Matlab mi ha restituito il Throughput medio dell'unico scenario finora considerato dopo ben 50 minuti!!!
E' normale? Devo considerare un numero inferiore di repliche? Un numero minore di ore per ogni replica?
2)Gli scanri alternativi posso impostarli  come meglio credo? Nel mio tema, ci sono 3 macchine che lavorano 1 solo pezzo per volta: posso far in modo che lavorino ad esempio 2 pezzi x volta?
Oppure cambiare la marcatura iniziale? O cos'altro?
Risposta
1) si, può capitare che il matlab ci metta così tanto, forse non hai molta ram nel pc che usi.
una soluzione potrebbe essere definire le matrici pre e post ed il vettore delle marcature come int8 e non double come di defoult, inoltre se aggiungi ogni volta un vettore colonna alla tua matrice delle marcature, questo rallenta molto il programma, potresti stimarne le dimensioni  e poi preallocare la memoria creando una matrice di zeri abbastanza grande.
2) si, sei tu che scegli gli scenari alternativi, cmq in genere potresti aumantare la capacità delle macchine, come suggerisci tu fino a raggiungere un valore per cui il throughput non aumenta più!
Ovviamente cambiare questi valori equivale a cambiare la marcatura iniziale!!
Non dimendicare di non chiudere la tua rete, ma di far entrare i pezzi nel sistema e poi di farli uscire!
Potresti far entrare più pezzi diminuendo il valor medio della distribuzione esponenziale che modella la tua transizione di ingresso.





 

Re: domanda progetto modellistica

Domanda
...sto svolgendo il progetto in matlab. Per calcolare l'utizzazione di una macchina, è corretto se quando scatta una transizione calcolo per
un singolo posto:
(tempo della transizione scattata - tempo della transizione scattata prima) x numero di token nel posto considerato
Risposta
cos'è il tempo della transizione scattata? intendi l'istante in cui scatta o la durata tra uno scatto e l'altro?
se in tendi l'istante e quindi la tua differenza è (tk+1 -  tk)  dove  k  è il k-esimo evento allora si può andare, ma devi stare attento perchè se ho 2 tokens stai moltiplicando per 2, ironia della sorte potresti ritrovarti con un tempo di utilizzazione maggiore della
durata della replica, e la cosa non è poi così naturale!
Quindi se la marcatura di un place è >0 devi moltiplicare per 1. Teoricamente potresti anche calcolarla così, ma per il progetto è meglio considerare l'utilizzazione come =0 o >0.
Ricorda che questo dipende dal place, in alcuni casi =0 potrebbe significare occupato e >0 libero, dipende dalla tua rete!
Ovviamente non devi calcolare l'utilizzazione per tutti i place ma solo per quelli che rappresentano una risorsa!

venerdì 15 febbraio 2008

Re: modellistica

DOMANDA
 ....dopo che faccio scattare una transizione, aggiorno il tempo e la marcatura, ma lei a lezione disse anche che devo sottrarre ai tempi delle transizioni abilitate il tempo trascorso. ma come faccio? devo creare un nuovo vettore "abil" dopo che la marcatura sarà cambiata, ma devo tener conto che ci possono essere transizioni che continuano ad essere abilitate: di queste transizioni non estraggo un nuovo valore,quindi?Cioè, nel nuovo vettore abil devo tener conto anche del vecchio vettore abil?
RISPOSTA
A dire il vero non ho capito la soluzione che proponi, cmq si ne devi tener conto, ma basta aggiornare il vettore dei tempi complessivo, modificando solo i valori delle transizioni abilitate che non sono scattate e lasciare gli altri così come sono.



mercoledì 13 febbraio 2008

Re: modellistica

DOMANDA
ho un problema col mio progetto (matlab) perché la traccia del mio
esercizio chiede di applicare delle transizioni temporizzate e alcune
istantanee. La mia domanda è : quelle istantanee posso considerarle come
se fossero transizioni temporizzate con distribuzione triangolare pari a
zero (0.0 0.0 0.0)?
RISPOSTA
come vi avevo detto a lezione, dovreste considerarle temporizzate con
distribuzione esponenziale (triangolare vabene cmq, ma anche un valore
fisso!) con valor medio molto picco ma diverso da zero, ad esempio 0.1.

Re: Relazione Modellistica e Controllo

DOMANDA
.... Visto che il termine per l'invio della relazione è vicino vorremmo sapere se l'invio alla prof.Fanti dobbiamo farlo subito o dobbiamo aspettare una sua conferma. Aspettiamo una sua risposta, grazie

RISPOSTA
Basta invarla a me, meglio se alla Prof. Fanti ed a me per conoscenza.
per la data di consegna, ovviamente se l'avete consegnata e sono io a proporvi di cambiare qualcosa
non ci sono problemi.
N.B. Ricordate di portare con voi il giorno della verbalizzazione una copia (per gruppo) cartacea da consegnare.
 

martedì 12 febbraio 2008

IMPORTANTE

Definiamo un pò di regole per quanto riguarda il tema da consegnare!!
Per prima cosa la forma, ricordate che la professoressa li deve sempre visionare, così
non dico che deve essere impeccabile, ma almeno presentabile!
il file che inviate deve essere nella forma "cognome/i_temaxx"
I contenuti indispensabili:
- una descrizione della rete;
- una tabella nella forma: |transizione | distribuzione | parametri!
- una tabella o se preferite dei paragrafi nella forma |id scenario | descrizione |
- dovete definire con chiarezza cosa intendete per throughput e cosa per utilizzazione con particolare riferimento alla rete
  cioè come li state ricavando dalla rete.
- grafici COMMENTATI dei risultati ottenuti
- tabella nella forma | scenario  | num di repliche | durata delle repliche |
- vi "consiglio" come durata delle repliche almeno 1000*la durata della transizione più lenta!
Ricordatevi di aggiungere anche il codice in matlab di tutte le funzioni create e per ognuna dovete dare una piccola, ma esauriente
spiegazione.
per chi lavora in arena descrivete a grandi linee il programma con un diagramma a blocchi (consigliato anche per chi lavora
in matlab)
Mi aspetto un totale di 10pg 15 al max!!
Buon lavoro a tutti

 

giovedì 17 gennaio 2008

Problemi ARENA

Salve, ho riscontrato un problema considerevole con la versione di prova 
di Arena. La mia rete infatti con può essere eseguita in quanto essa è 
troppo grande. Il programma mi avvisa che la versione non permette 
l'utilizzo di più di 150 istanze degli oggetti e non mi permette quindi 
di proseguire col lavoro (non posso in pratica salvare ed eseguire la 
simulazione). Come possiamo risolvere il problema?
RISPOSTA
Non vi preoccupate c'è una soluzione per tutto!
Purtroppo però dovete venire in laboratorio ed insieme cercheremo la soluzione
più idonea al vostro caso.
Ovviamente mandatemi una mail il giorno prima e prendiamo un appuntamento,
diversamente rischiate di non trovarmi e venire a vuoto.
Detto ciò, una delle soluzioni è che voi prepariate dei file con i pezzi de sistema
e poi veniate in laboratorio o in aula CAD e li assembliate in pochi minuti.
Il pezzo assemblato alla fine girerà anche a casa e potrete cambiare tutti valori
delle variabili (per cambiare gli scenari).
 
 
 
 

martedì 15 gennaio 2008

IMPORTANTE

Ricordo a tutti le REGOLE:
il lavoro va consegnato almeno una settimana prima di verbalizzare.
Dovete inviare una mail (vi consiglio con "ricevuta di ritorno") alla prof. Fanti
e per conoscenza a me
, con una piccola,ma dettagliata, relazione  ed il listato
o (file .doe per arena
) del lavoro fatto.
N.B. il listato ( il .doe) DEVE girare e dare gli stessi risultati presentati nella relazione.
Vi consiglio di inserire molti commenti nel codice e descrivere nella relazione passo passo
quello che avete fatto, per facilitarne la correzione.

giovedì 10 gennaio 2008

Dubbi progetto in ARENA

.............abbiamo un dubbio riguardante la realizzazione in Arena del
subsystem riferito al posto p1 (stesso discorso va fatto per p6). Il
posto, infatti, per far partire il token deve attendere che o t1 o t2
scatti. Quale potrebbe essere la soluzione per implementare uno schema
che ci permetta di lasciar andare il token in p2 se scatta t1 o in p3 se
scatta t2? potremmo utilizzare due blocchi hold in parallelo con due
blocchi leave a valle, 1 per ciascun percorso, ma poi, supposto che il
token vada in p2 per esempio, come è possibile disabilitare il percorso
che porterebbe il token anche in p3?

RISPOSTA
Si in effetti con 2 hold non risolvete granchè!
Potreste, utilizzando un hold, cambiare la condizione di uscita da wait
for signal a scan for condition e poi sostituire i blocchi signal
delle transizioni t1 e t2 con 2 blocchi assign.
In pratica dovreste avere una variabile, ad es. T12, che può assumere
valori pari a 0,1(è scattata t1),2(è scattata t2),
che di solito vale 0 e quando scatta una delle 2 transizioni, la
setta al valore corrispondente.
La condizione di uscita dal blocco hold sarebbe così (
T12==1.or.T12==2) subito a valle mettete un bel blocco
assign e trasferite il valore di T12 in un attributo e resettate T12 a
zero!
In seguito con un blocco decide potete instradate la vostra entità in
base al valore dell'attributo tra i 2 blocchi leave.
Spero di essere stato chiaro e di aiuto.

giovedì 3 gennaio 2008

CHIARIMENTI

Gent.mo Ing. Iacobellis,
avrei qualche domanda da porle sull'esercizio assegnatomi.
In particolare vorrei sapere:
- quale distribuzione devo utilizzare per i tempi di scatto delle
transizioni? Nel caso della distrib. tring. scelgo a mio piacimento il
parametro b (sottointendendo a= 0.9b, c=1.1b)?
- devo utilizzare solo la marcatura iniziale in figura?
- quali indici prestazionali devo far stampare a video dalla simulazione
(throughput, utilizzazione)?

RISPOSTA
Come vi ho detto a lezione, siete liberi di scegliere la distribuzione
che preferite, io vi ho dato
delle linee guida su come effettuare tale scelta, ma voi potete anche
stravolgerle a piacimento (inserendo
magari le motivazioni della scelta).
Stessa cosa vale sul come scegliere i valori per le triangolari.
La marcatura iniziale che trovi in figura ha come scopo,solo quello
farti comprendere il funzionamento del
sistema, ma sei libero di sceglierne una a tuo piacimento, anzi più di
una per realizzare i diversi scenari.
Per gli indici, si devi confrontare throughput ed utilizzazione al
variare degli scenari che intendi realizzare.
Ribadisco che siete liberi di modificare a vostro piacimento la rete
(senza semplificarla troppo) e quindi anche
la marcatura.