944 resultados para Algoritmi genetici, Progettazione, Metodi di ottimizzazione
Resumo:
Oggi, grazie al continuo progredire della tecnologia, in tutti i sistemi di produzione industriali si trova almeno un macchinario che permette di automatizzare determinate operazioni. Alcuni di questi macchinari hanno un sistema di visione industriale (machine vision), che permette loro di osservare ed analizzare ciò che li circonda, dotato di algoritmi in grado di operare alcune scelte in maniera automatica. D’altra parte, il continuo progresso tecnologico che caratterizza la realizzazione di sensori di visione, ottiche e, nell’insieme, di telecamere, consente una sempre più precisa e accurata acquisizione della scena inquadrata. Oggi, esigenze di mercato fanno si che sia diventato necessario che macchinari dotati dei moderni sistemi di visione permettano di fare misure morfometriche e dimensionali non a contatto. Ma le difficoltà annesse alla progettazione ed alla realizzazione su larga scala di sistemi di visione industriali che facciano misure dimensioni non a contatto, con sensori 2D, fanno sì che in tutto il mondo il numero di aziende che producono questo tipo di macchinari sia estremamente esiguo. A fronte di capacità di calcolo avanzate, questi macchinari necessitano dell’intervento di un operatore per selezionare quali parti dell’immagine acquisita siano d’interesse e, spesso, anche di indicare cosa misurare in esse. Questa tesi è stata sviluppata in sinergia con una di queste aziende, che produce alcuni macchinari per le misure automatiche di pezzi meccanici. Attualmente, nell’immagine del pezzo meccanico vengono manualmente indicate le forme su cui effettuare misure. Lo scopo di questo lavoro è quello di studiare e prototipare un algoritmo che fosse in grado di rilevare e interpretare forme geometriche note, analizzando l’immagine acquisita dalla scansione di un pezzo meccanico. Le difficoltà affrontate sono tipiche dei problemi del “mondo reale” e riguardano tutti i passaggi tipici dell’elaborazione di immagini, dalla “pulitura” dell’immagine acquisita, alla sua binarizzazione fino, ovviamente, alla parte di analisi del contorno ed identificazione di forme caratteristiche. Per raggiungere l’obiettivo, sono state utilizzate tecniche di elaborazione d’immagine che hanno permesso di interpretare nell'immagine scansionata dalla macchina tutte le forme note che ci siamo preposti di interpretare. L’algoritmo si è dimostrato molto robusto nell'interpretazione dei diametri e degli spallamenti trovando, infatti, in tutti i benchmark utilizzati tutte le forme di questo tipo, mentre è meno robusto nella determinazione di lati obliqui e archi di circonferenza a causa del loro campionamento non lineare.
Resumo:
I moderni sistemi embedded sono equipaggiati con risorse hardware che consentono l’esecuzione di applicazioni molto complesse come il decoding audio e video. La progettazione di simili sistemi deve soddisfare due esigenze opposte. Da un lato è necessario fornire un elevato potenziale computazionale, dall’altro bisogna rispettare dei vincoli stringenti riguardo il consumo di energia. Uno dei trend più diffusi per rispondere a queste esigenze opposte è quello di integrare su uno stesso chip un numero elevato di processori caratterizzati da un design semplificato e da bassi consumi. Tuttavia, per sfruttare effettivamente il potenziale computazionale offerto da una batteria di processoriè necessario rivisitare pesantemente le metodologie di sviluppo delle applicazioni. Con l’avvento dei sistemi multi-processore su singolo chip (MPSoC) il parallel programming si è diffuso largamente anche in ambito embedded. Tuttavia, i progressi nel campo della programmazione parallela non hanno mantenuto il passo con la capacità di integrare hardware parallelo su un singolo chip. Oltre all’introduzione di multipli processori, la necessità di ridurre i consumi degli MPSoC comporta altre soluzioni architetturali che hanno l’effetto diretto di complicare lo sviluppo delle applicazioni. Il design del sottosistema di memoria, in particolare, è un problema critico. Integrare sul chip dei banchi di memoria consente dei tempi d’accesso molto brevi e dei consumi molto contenuti. Sfortunatamente, la quantità di memoria on-chip che può essere integrata in un MPSoC è molto limitata. Per questo motivo è necessario aggiungere dei banchi di memoria off-chip, che hanno una capacità molto maggiore, come maggiori sono i consumi e i tempi d’accesso. La maggior parte degli MPSoC attualmente in commercio destina una parte del budget di area all’implementazione di memorie cache e/o scratchpad. Le scratchpad (SPM) sono spesso preferite alle cache nei sistemi MPSoC embedded, per motivi di maggiore predicibilità, minore occupazione d’area e – soprattutto – minori consumi. Per contro, mentre l’uso delle cache è completamente trasparente al programmatore, le SPM devono essere esplicitamente gestite dall’applicazione. Esporre l’organizzazione della gerarchia di memoria ll’applicazione consente di sfruttarne in maniera efficiente i vantaggi (ridotti tempi d’accesso e consumi). Per contro, per ottenere questi benefici è necessario scrivere le applicazioni in maniera tale che i dati vengano partizionati e allocati sulle varie memorie in maniera opportuna. L’onere di questo compito complesso ricade ovviamente sul programmatore. Questo scenario descrive bene l’esigenza di modelli di programmazione e strumenti di supporto che semplifichino lo sviluppo di applicazioni parallele. In questa tesi viene presentato un framework per lo sviluppo di software per MPSoC embedded basato su OpenMP. OpenMP è uno standard di fatto per la programmazione di multiprocessori con memoria shared, caratterizzato da un semplice approccio alla parallelizzazione tramite annotazioni (direttive per il compilatore). La sua interfaccia di programmazione consente di esprimere in maniera naturale e molto efficiente il parallelismo a livello di loop, molto diffuso tra le applicazioni embedded di tipo signal processing e multimedia. OpenMP costituisce un ottimo punto di partenza per la definizione di un modello di programmazione per MPSoC, soprattutto per la sua semplicità d’uso. D’altra parte, per sfruttare in maniera efficiente il potenziale computazionale di un MPSoC è necessario rivisitare profondamente l’implementazione del supporto OpenMP sia nel compilatore che nell’ambiente di supporto a runtime. Tutti i costrutti per gestire il parallelismo, la suddivisione del lavoro e la sincronizzazione inter-processore comportano un costo in termini di overhead che deve essere minimizzato per non comprometterre i vantaggi della parallelizzazione. Questo può essere ottenuto soltanto tramite una accurata analisi delle caratteristiche hardware e l’individuazione dei potenziali colli di bottiglia nell’architettura. Una implementazione del task management, della sincronizzazione a barriera e della condivisione dei dati che sfrutti efficientemente le risorse hardware consente di ottenere elevate performance e scalabilità. La condivisione dei dati, nel modello OpenMP, merita particolare attenzione. In un modello a memoria condivisa le strutture dati (array, matrici) accedute dal programma sono fisicamente allocate su una unica risorsa di memoria raggiungibile da tutti i processori. Al crescere del numero di processori in un sistema, l’accesso concorrente ad una singola risorsa di memoria costituisce un evidente collo di bottiglia. Per alleviare la pressione sulle memorie e sul sistema di connessione vengono da noi studiate e proposte delle tecniche di partizionamento delle strutture dati. Queste tecniche richiedono che una singola entità di tipo array venga trattata nel programma come l’insieme di tanti sotto-array, ciascuno dei quali può essere fisicamente allocato su una risorsa di memoria differente. Dal punto di vista del programma, indirizzare un array partizionato richiede che ad ogni accesso vengano eseguite delle istruzioni per ri-calcolare l’indirizzo fisico di destinazione. Questo è chiaramente un compito lungo, complesso e soggetto ad errori. Per questo motivo, le nostre tecniche di partizionamento sono state integrate nella l’interfaccia di programmazione di OpenMP, che è stata significativamente estesa. Specificamente, delle nuove direttive e clausole consentono al programmatore di annotare i dati di tipo array che si vuole partizionare e allocare in maniera distribuita sulla gerarchia di memoria. Sono stati inoltre sviluppati degli strumenti di supporto che consentono di raccogliere informazioni di profiling sul pattern di accesso agli array. Queste informazioni vengono sfruttate dal nostro compilatore per allocare le partizioni sulle varie risorse di memoria rispettando una relazione di affinità tra il task e i dati. Più precisamente, i passi di allocazione nel nostro compilatore assegnano una determinata partizione alla memoria scratchpad locale al processore che ospita il task che effettua il numero maggiore di accessi alla stessa.
Resumo:
Il Test di Risposta Termica (Thermal Response Test-TRT) (Mogenson,1983) è il test esistente con il più alto grado di accuratezza per la caratterizzazione del reservoir geotermico superficiale. Il test consiste in una simulazione in situ del funzionamento di un sistema a circuito chiuso di sfruttamento dell’energia geotermica, per un periodo limitato di tempo, attraverso l’iniezione o estrazione di calore a potenza costante all’interno del geo-scambiatore (Borehole Heat Exchanger-BHE). Dall’analisi della variazione delle temperature del fluido circolante, è possibile avere una stima delle proprietà termiche medie del volume del reservoir geotermico interessato dal test. Le grandezze principali per la caratterizzazione di un serbatoio geotermico sono la conduttività termica (λ), la capacità termica volumetrica (c), la temperatura indisturbata del suolo (Tg) e la resistenza termica del pozzo (Rb); la loro determinazione è necessaria per il corretto progettazione degli geo-scambiatori. I risultati del TRT sono tuttavia sensibili alle condizioni al contorno spazio-temporali quali ad es.: variazione della temperatura del terreno, movimento d’acqua di falda, condizioni metereologiche, eventi stagionali, ecc. Questo lavoro vuole: i) introdurre uno studio sui problemi di caratterizzazione del reservoir geotermico superficiale, in particolare analizzando l’effetto che il movimento d’acqua di falda ha sui parametri termici; ii) analizzare la sensitività dei risultati del test alle variabilità dei parametri caratteristici del funzionamento delle attrezzature. Parte del lavoro della mia tesi è stata svolta in azienda per un periodo di 4 mesi presso la “Groenholland Geo Energy systems” che ha sede ad Amsterdam in Olanda. Tre diversi esperimenti sono stati realizzati sullo stesso sito (stratigrafia nota del terreno: argilla, sabbia fine e sabbia grossa) usando una sonda profonda 30 metri e diversi pozzi per l’estrazione d’acqua e per monitorare gli effetti in prossimità del geo scambiatore. I risultati degli esperimenti sono stati molto diversi tra di loro, non solo in termini di dati registrati (temperature del fluido termovettore), ma in termini dei valori dei parametri ottenuti elaborando i dati. In particolare non è sufficiente adottare il modello classico della sorgente lineare infinita (Infinite Line Source Solution- ILS) (Ingersoll and Plass, 1948), il quale descrive il trasferimento di calore per conduzione in un mezzo omogeneo indefinito a temperatura costante. Infatti, lo scambio di calore avviene anche tramite convezione causata dal movimento d’acqua di falda, non identificabile mediante gli approcci classici tipo CUSUM test (Cumulative Sum test) (Brown e altri,1975) Lo studio della tesi vuole dare un quadro di riferimento per correlare la variabilità dei risultati con la variabilità delle condizioni al contorno. L’analisi integra le metodologie classiche (ILS) con un approccio geostatistico utile a comprendere i fenomeni e fluttuazioni che caratterizzano il test. Lo studio delle principali variabili e parametri del test, quali temperatura in ingresso e uscita del fluido termovettore, portata del fluido e potenza iniettata o estratta, è stato sviluppato mediante: il variogramma temporale, ovvero la semivarianza dell’accrescimento, che esprime il tipo di autocorrelazione temporale della variabile in esame; la covarianza incrociata temporale, ovvero la covarianza fra due variabili del sistema, che ne definisce quantitativamente il grado di correlazione in funzionamento del loro sfasamento temporale. L’approccio geostatistico proposto considera la temperatura del fluido Tf come una funzione aleatoria (FA) non stazionaria nel tempo (Chiles, 1999), il cui trend è formalmente definito, ma deve essere identificato numericamente. Si considera quindi un classico modello a residuo; in cui la FA è modellizzata come la somma di un termine deterministico, la media (il valore atteso) m(t),coincidente col modello descritto dalla teoria della sorgente lineare infinità, e di un termine aleatorio, la fluttuazione, Y(t). Le variabili portata e potenza sono invece considerate delle funzioni aleatorie stazionarie nel tempo, ovvero a media costante. Da questo studio di Tesi si sono raggiunte delle conclusioni molto importanti per lo studio del TRT: Confronto tra gli esperimenti in estrazione di calore, con e senza movimento d’acqua di falda: si studia l’effetto indotto dalla falda sul TRT. E’ possibile caratterizzare quantitativamente l’incremento della conducibilità termica equivalente legata a fenomeni convettivi dovuti al movimento d’acqua di falda. Inoltre, i variogrammi sperimentali evidenziano periodicità simili nei due casi e legate al funzionamento della pompa di calore e della componentistica associata ed alla circolazione del fluido termovettore all’interno della sonda. Tuttavia, la componente advettiva ha un effetto di smorzamento sulle piccole periodicità dei variogrammi, ma di aumento dell’ampiezza delle periodicità maggiori a causa del funzionamento della pompa di calore che deve fornire maggiore energia al sistema per bilanciare le dispersioni dovute al movimento d’acqua di falda. Confronto fra estrazione ed iniezione di calore, con movimento d’acqua di falda: si studia la significatività dei risultati nei due casi. L’analisi delle variografie evidenzia significative differenze nella struttura dei variogrammi sperimentali. In particolare, nel test con iniezione di calore i variogrammi sperimentali delle temperature hanno valori sistematicamente inferiori, circostanza che assicura una migliore precisione nella stima dei parametri termici. Quindi eseguire il TRT in iniezione di calore risulta più preciso. Dall’analisi dei variogrammi sperimentali delle singole variabili quali temperatura del fluido in ingresso e uscita all’interno del geoscambiatore è stato confermato il fenomeno di smorzamento delle oscillazioni da parte del terreno. Dall’analisi delle singole variabili del test (temperature, potenza, portata) è stata confermata l’indipendenza temporale fra portate e temperature. Ciò è evidenziato dalle diverse strutture dei variogrammi diretti e dalle covarianze incrociate prossime a zero. Mediante correlogrami è stato dimostrato la possibilità di calcolare il tempo impiegato dal fluido termovettore per circolare all’interno della sonda. L’analisi geostatistica ha permesso quindi di studiare in dettaglio la sensitività dei risultati del TRT alle diverse condizioni al contorno, quelle legate al reservoir e quelle legate al funzionamento delle attrezzature
Resumo:
Descrizione della progettazione, costruzione e validazione della modalità automatica di esposizione negli esami 2D, disponibili presso il dispositivo radiografico top di gamma dell'azienda Cefla SC.
Resumo:
Studio e progettazione di un gruppo turbocompressore ad altissimo rapporto di compressione. Saranno progettati la girante del compressore centrifugo, il diffusore, la voluta e la girante della turbina centripeta.
Resumo:
La comprensione delle proprietà e delle meccaniche di funzionamento dei sistemi complessi e dinamici che ci circondano è uno degli obiettivi principali delle discipline ingegneristiche e scientifiche. Lo sviluppo nel campo dell'Intelligenza Artificiale ha permesso la creazione di entità robotiche sempre più intelligenti, in grado di manifestare comportamenti notevoli e di raggiungere gli obiettivi prefissati: la progettazione di software di controllo ha velocemente ricevuto una crescente responsabilità. Questo elaborato si propone di inquadrare in generale la situazione della progettazione di software di controllo robotici, focalizzandosi in particolare sulle tecniche di progettazione automatica di programmi per robot: dopo aver inquadrato il background su cui si basa la progettazione automatica ed aver mostrato una panoramica dei principali metodi di progettazione diretta, vengono elencate e spiegate le tecniche più utilizzate ed interessanti della progettazione automatica di programmi per robot.
Resumo:
Progettazione ed ottimizzazione di parte di un sistema pico-idroelettrico ad acqua fluente (potenza < 5 kW) per sfruttare grandi corsi d’acqua.
Resumo:
Studio, analisi ed implementazione di algoritmi esistenti per la correzione di distorsioni in immagini, con introduzione delle semplificazioni necessarie per la sua realizzazione in dispositivi embedded. Introduzione di nuovi metodi di semplificazione. Calibrazione di una telecamera o un sistema di telecamere stereo con lenti wide angle o fisheye tramite opencv.
Resumo:
Negli ultimi anni si è assistito al considerevole aumento della disponibilità di dati GPS e della loro precisione, dovuto alla diffusione e all’evoluzione tecnologica di smartphone e di applicazioni di localizzazione. Il processo di map-matching consiste nell’integrare tali dati - solitamente una lista ordinata di punti, identificati tramite coordinate geografiche ricavate mediante un sistema di localizzazione, come il GPS - con le reti disponibili; nell’ambito dell’ingegneria dei trasporti, l’obiettivo è di identificare il percorso realmente scelto dall’utente per lo spostamento. Il presente lavoro si propone l’obiettivo di studiare alcune metodologie di map-matching per l’identificazione degli itinerari degli utenti, in particolare della mobilità ciclabile. Nel primo capitolo è esposto il funzionamento dei sistemi di posizionamento e in particolare del sistema GPS: ne sono discusse le caratteristiche, la suddivisione nei vari segmenti, gli errori di misurazione e la cartografia di riferimento. Nel secondo capitolo sono presentati i vari aspetti del procedimento di map-matching, le sue principali applicazioni e alcune possibili classificazioni degli algoritmi di map-matching sviluppati in letteratura. Nel terzo capitolo è esposto lo studio eseguito su diversi algoritmi di map-matching, che sono stati testati su un database di spostamenti di ciclisti nell’area urbana di Bologna, registrati tramite i loro smartphone sotto forma di punti GPS, e sulla relativa rete. Si analizzano altresì i risultati ottenuti in un secondo ambiente di testing, predisposto nell’area urbana di Catania, dove sono state registrate in modo analogo alcune tracce di prova, e utilizzata la relativa rete. La comparazione degli algoritmi è eseguita graficamente e attraverso degli indicatori. Vengono inoltre proposti e valutati due algoritmi che forniscono un aggiornamento di quelli analizzati, al fine di migliorarne le prestazioni in termini di accuratezza dei risultati e di costo computazionale.
Resumo:
Il lavoro è incentrato sull’applicazione ed integrazione di differenti tecniche di indagine geofisica in campo ambientale e ingegneristico/archeologico. Alcuni esempi sono stati descritti al fine di dimostrare l’utilità delle metodologie geofisiche nella risoluzione di svariate problematiche. Nello specifico l’attenzione è stata rivolta all’utilizzo delle tecniche del Ground Penetrating Radar e del Time Domain Reflectometry in misure condotte su un corpo sabbioso simulante una Zona Insatura. L’esperimento è stato realizzato all’interno di un’area test costruita presso l’azienda agricola dell’Università La Tuscia di Viterbo. Hanno partecipato al progetto le Università di Roma Tre, Roma La Sapienza, La Tuscia, con il supporto tecnico della Sensore&Software. Nello studio è stato condotto un approccio definito idrogeofisico al fine di ottenere informazioni da misure dei parametri fisici relativi alla Zona Insatura simulata nell’area test. Il confronto e l’integrazione delle due differenti tecniche di indagine ha offerto la possibilità di estendere la profondità di indagine all’interno del corpo sabbioso e di verificare l’utilità della tecnica GPR nello studio degli effetti legati alle variazioni del contenuto d’acqua nel suolo, oltre a determinare la posizione della superficie piezometrica per i differenti scenari di saturazione. Uno specifico studio è stato realizzato sul segnale radar al fine di stabilire i fattori di influenza sulla sua propagazione all’interno del suolo. Il comportamento dei parametri dielettrici nelle condizioni di drenaggio e di imbibizione del corpo sabbioso è stato riprodotto attraverso una modellizzazione delle proprietà dielettriche ed idrologiche sulla base della dimensione, forma e distribuzione dei granuli di roccia e pori, nonché sulla base della storia relativa alla distribuzione dei fluidi di saturazione all’interno del mezzo. La modellizzazione è stata operata sulle basi concettuali del Differential Effective Medium Approximation.