Algoritmi di Ottimizzazione: Parte B gli Algoritmi Genetici

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Algoritmi di Ottimizzazione: Parte B gli Algoritmi Genetici"

Transcript

1 Identificazione e Controllo Intelligente Algoritmi di Ottimizzazione: Parte B gli Algoritmi Genetici David Naso A.A Identificazione e Controllo Intelligente 1 Algoritmi Evolutivi Nell ultimo trentennio, le teorie sull evoluzione naturale delle specie e l ereditarietà dei geni, hanno richiamato l attenzione di alcuni matematici ed ingegneri come fonte di ispirazione per nuove tecniche di ottimizzazione stocastica. Queste nuove tecniche condividono anche il meccanismo di funzionamento, riassumibile in una breve sequenza di operazioni: 1. la generazione di un insieme iniziale di soluzioni (la popolazione); 2. La selezione delle soluzioni con più alto valore di fitness ; 3. l alterazione delle soluzioni prescelte con meccanismi che emulano le leggi della genetica naturale; 4. La creazione di una nuova popolazione, che contiene le migliori soluzioni e quelle alterate. 5. L iterazione dei passi 1-4. Identificazione e Controllo Intelligente 2 1

2 Algoritmi Evolutivi Programmazione Genetica (Genetic Programming, GP) sperimentata da J. R. Koza al Massachusetts Institute of Technology in questo caso gli individui di una popolazione che competono per la sopravvivenza sono costituiti da programmi, talvolta in grado di auto-modificarsi Programmazione Evolutiva (Evolutionary Programming, EP) fu ideata e sperimentata da Lawrence J. Fogel nel 1960 nell ambito di uno studio su automi a stati finiti per esperimenti di intelligenza artificiale. Identificazione e Controllo Intelligente 3 Algoritmi Evolutivi Algoritmi Genetici (Genetic Algorithms, GA), senza dubbio i più famosi algoritmi evolutivi, furono sviluppati all Università del Michigan da John Holland ed alcuni suoi studenti nel corso di un progetto di ricerca finalizzato all analisi ed emulazione artificiale dei meccanismi di evoluzione naturale. Strategie Evolutive (Evolutionary Strategies, ES) furono ideate da due studenti dell Università Tecnica di Berlino nel 1963, Ingo Rechenberg e Hans-Paul Schwefel, per lo studio di sagome aerodinamiche in una galleria del vento. Identificazione e Controllo Intelligente 4 2

3 Algoritmi Evolutivi Il termine comune per indicare tutti queste tecniche di ottimizzazione basate sulla sopravvivenza degli individui più forti è Algoritmi (o Programmi) Evolutivi (Evolutionary Algorithms, EA). Gli EA sono in alcuni aspetti simili ad altre tecniche di ricerca derivativefree (metodo del Simplesso, Random Search), spesso utilizzate anche nell ambito di problemi di ottimizzazione combinatoria come i metodi di Tabu Search, Simulated Annealing. Esistono ad oggi molte tecniche di ricerca ispirate ad altri fenomeni o comunità di organismi biologici che rientrano negli EA come ad ad esempio le immune networks, la ant colony optimization. Identificazione e Controllo Intelligente 6 Vantaggi per applicare un EA non è necessario imporre né ipotizzare che la funzione obbiettivo soddisfi i prerequisiti tipici delle tecniche di ottimizzazione convessa basate sul calcolo dei gradienti. In altre parole, è possibile applicare un GA a problemi di cui si conosce ben poco sulla forma della funzione obiettivo, cosa che rende questi algoritmi estremamente versatili. la scrittura di un EA è particolarmente semplice, perlomeno rispetto a molte altre tecniche di ottimizzazione stocastica di paragonabile efficacia. Gli EA sono implicitamente paralleli: ad ogni generazione, si indaga in parallelo su punti diversi. All inizio dell esecuzione, ogni soluzione nella popolazione è estremamente diversa dalle altre, e quindi l algoritmo parte esplorando in parallelo svariate zone. In particolare, l operatore di selezione è progettato in modo tale da dirigere l esplorazione nell intorno di quelle soluzioni più promettenti. Identificazione e Controllo Intelligente 7 3

4 Role of GAs in Global Problems GA largely motivated for global search/optimization problems Global problem generally very difficult GAs (and related) have long history of success in global problems Some global problems essentially impossible to solve Much solid research and applications with GAs But also more misrepresentations and dubious claims Much hype with many methods (genetic algorithm [GA] software advertisements): can handle the most complex problems, including problems unsolvable by any other method. uses GAs to solve any optimization problem! No clear indication of problem class(es) for which GAs are superior to other methods Identificazione e Controllo Intelligente 8 Struttura di un EA begin t 0 initialize P(t) (population at time t) evaluate P(t) while (not terminate condition) do begin t t+1 select P(t) from P(t-1) alter P(t) evaluate P(t) end end Identificazione e Controllo Intelligente 9 4

5 Tipi di EA e campi di applicazione In base allo spazio delle soluzioni Ottimizzazione numerica vincolata e non Ottimizzazione combinatoria Problemi ibridi In base alla funzione obiettivo Singolo obiettivo Problema multi-modale Problema ad obiettivi multipli Identificazione e Controllo Intelligente 10 Gli Algoritmi Genetici Sono la forma di EA più largamente utilizzata. La principale peculiarità dei GA è la presenza di un operatore matematico che combina due soluzioni (dette genitori) al fine di trovare due nuove soluzioni che ereditino parte delle caratteristiche di entrambi i genitori. Questa operazione è detta crossover. Vi è poi una seconda strategia per trovare nuove soluzioni, detta mutazione. La mutazione altera casualmente una o più caratteristiche della soluzione che la subisce. Identificazione e Controllo Intelligente 11 5

6 Struttura di un GA Define Initial Population Pop(i) Fitness Function Increment Generation Assess Fitness Children Best Individuals Mutation Reproduction Crossover Genetic Algorithm Identificazione e Controllo Intelligente 12 Realizzare un GA I passi basilari per la costruzione di un algoritmo genetico sono i seguenti: scelta della codifica genetica di ogni individuo della popolazione determinazione di una funzione obiettivo per la valutazione degli individui definizione di una popolazione iniziale Definizione di una funzione di selezione degli individui destinati alla ricombinazione Definizione degli operatori di ricombinazione genetica (come si generano nuove soluzioni). Identificazione e Controllo Intelligente 13 6

7 Codifica di una soluzione La popolazione di un GA è composta da un insieme di soluzioni. Ciascuna soluzione è detta individuo, ed è univocamente descritta da una stringa di simboli in un predefinito alfabeto. La stringa che specifica un individuo si chiama cromosoma e ciascuno dei simboli che al compone è detto gene. In termini pratici, ogni gene specifica o contribuisce a specificare il valore di uno dei parametri che costituiscono la generica soluzione. Se, per esempio, consideriamo il problema di ricerca della migliore stima dei coefficienti di un polinomio (P(s)=a 0 s n +a 1 s n-1 + +a n ) che descriva i poli di un processo dinamico, si può pensare di codificare la generica soluzione di un problema con un vettore di n+1 parametri (geni) reali, ciascuno direttamente legato ad un coefficiente del polinomio. a 0 a 1 a 2 a 3 a 4 Bounded Double Prec. Real Identificazione e Controllo Intelligente 14 Codifica Un altra alternativa potrebbe essere data da geni che rappresentano direttamente le radici del polinomio cercato, ma ciò richiederebbe di specificare se le radici sono complesse, ed in tal caso rappresentare sia la parte reale che quella immaginaria di ogni radice, garantendo la presenza di coppie complesse e coniugate. Molto frequentemente i parametri che descrivono una soluzione sono soggetti a vincoli che possono far preferire una codifica rispetto ad un altra (ad esempio poli nel cerchio di raggio unitario). La scelta di come rappresentare un individuo nella stringa assume un ruolo decisivo anche per la velocità di esecuzione dell algoritmo, e per la qualità della soluzione finale raggiunta. Ogni possibile rappresentazione presenta dei vantaggi e svantaggi: alcune possono rendere difficoltoso o inefficace (o addirittura impossibile) l uso di alcuni operatori genetici, o più o meno oneroso il calcolo della fitness di ogni individuo. Identificazione e Controllo Intelligente 15 7

8 Codifica binaria La rappresentazione binaria ha il vantaggio di rendere più semplice la definizione degli operatori genetici, ed inoltre si presta meglio ad alcune analisi di carattere teorico sulle garanzie di convergenza dell algoritmo (note come Schemata Theory ). Per contro, essa rallenta l esecuzione dell algoritmo a causa delle continue conversioni binario-decimale e viceversa determina una maggiore lunghezza dei cromosomi (se si scegliesse di rappresentare su 16 bit (65k quanti) ciascun parametro reale, un cromosoma con 20 parametri sarebbe codificato con: 16 x 20 bit = 320 bit). Con una codifica binaria dei parametri reali, è necessario scegliere preliminarmente la risoluzione della strategia di codifica, la quale determina il numero di bit necessari a rappresentare le soluzioni. Identificazione e Controllo Intelligente 16 Codifica binaria l metodo più semplice per codificare in binario un parametro reale è suddividere l intervallo di variazione del parametro [Pmin,Pmax] nell insieme discreto [0, 2 L ] (con L lunghezza massima della stringa di bit) in modo tale da ottenere la seguente risoluzione β: β= (Pmax-Pmin)/(2 L -1) Naturalmente usando un numero maggiore di bit L si ottiene una maggiore precisione, ma anche cromosomi più lunghi. I codici di conversione di gran lunga più usati sono il BCD (Binary-Coded Digit) o i codici Gray, in molte fonti indicati come del tutto equivalenti in termini di prestazioni. La codifica di un vettore di n parametri reali si può ottenere semplicemente concatenando n stringhe di lunghezza l. Identificazione e Controllo Intelligente 17 8

9 Codifica reale La codifica reale invece offre una maggiore compattezza e leggibilità del cromosoma, la possibilità di esplorare più ampi intervalli di variabilità dei parametri e una precisione che dipende dalla macchina su cui si lavora (generalmente migliore di quella binaria). si dovranno utilizzare operatori genetici diversi da quelli binari che impongano ai nuovi individui generati di appartenere ai relativi range. La codifica reale ha inoltre la proprietà che due punti vicini nello spazio della rappresentazione sono vicini anche nello spazio del problema e viceversa. Questo non è generalmente vero per l approccio binario, ma si può ovviare al problema utilizzando la codifica di Gray. Identificazione e Controllo Intelligente 18 Esempio P(s)=a 0 s n +a 1 s n-1 + +a n a 0 a 1 a 2 a 3 a 4 Real bounded Re(p 1 ) Im(p 1 ) Re(p 1 ) Im(p 1 ) Real bounded Binary Identificazione e Controllo Intelligente 19 9

10 Hybrid encoding: unstructured controllers e(k) z z1 z p 1 z z z p 2 2 ( z z )( z z ) 3 3 ( z p )( z p ) 3 3 u(k) F1 F2 F3 F4 F5 Chromosome of a single controller : F1 F2 F3 F4 F5 K Z 1 P 1 Z 2 P 2 Z 3 Structure Binary Flags Real or complex Parameters La soluzione finale si ottiene come cascata dei blocchi attivi (quelli con il flag su on ). Identificazione e Controllo Intelligente 20 Popolazione iniziale In assenza di informazioni preliminari, la popolazione iniziale di un GA è generata in modo casuale. La dimensione della popolazione è uno dei principali parametri di configurazione dell algoritmo. Se si sceglie una popolazione piccola, l algoritmo è in grado di eseguire le sue iterazioni più velocemente, ma presenta una minore capacità esplorativa, cosa che può determinare una convergenza prematura in una soluzione molto lontana dall ottimo effettivo. Se si sceglie invece una dimensione della popolazione troppo ampia, si rende l algoritmo eccessivamente ed inutilmente lento. La scelta appropriata della dimensione della popolazione dipende anche dalla lunghezza dei cromosomi che descrivono una soluzione. All aumentare del numero di geni di una soluzione corrisponde un aumento della minima dimensione della popolazione in grado di garantire risultati soddisfacenti. Identificazione e Controllo Intelligente 21 10

11 Scelta e calcolo della fitness Per definire quanto sia buona la qualità di un individuo della popolazione si definisce una funzione obiettivo che specifica numericamente la fitness dell individuo: un valore migliore della fitness indica una migliore soluzione del problema considerato. In questo modo la funzione obiettivo emula lo stesso ruolo della naturale capacità di sopravvivenza degli organismi biologici, legata alla loro forza. I GA non richiedono particolari ipotesi sulla forma o altre caratteristiche della funzione obiettivo, che può quindi essere non lineare nei parametri ottimizzati, multi-modale e discontinua. Al contrario, è necessario rendere il più possibile efficienti i meccanismi necessari alla valutazione della fitness, perché un GA richiede in genere (centinaia di) migliaia di chiamate alla funzione obiettivo per convergere alla soluzione finale. Identificazione e Controllo Intelligente 22 Scelta e calcolo della fitness Un tipico esempio di fitness può essere, nell esempio già citato di stima dei coefficienti di un modello dinamico, la somma degli scarti quadratici tra la risposta misurata del sistema dinamico y i e quella del modello y i stimata, corrispondenti alla medesima sollecitazione di ingresso: n fitness = ( y y ) i= 1 i istimata 2 Identificazione e Controllo Intelligente 23 11

12 Meccanismi di selezione Nella versione dei GA più frequentemente utilizzata, la selezione degli individui che partecipano alla riproduzione è di tipo probabilistico. Il meccanismo di scelta più frequentemente utilizzato assegna a ciascun individuo della popolazione una probabilità di sopravvivenza proporzionale alla sua fitness. Ciò implica che, in media, gli individui più forti si riproducano più frequentemente. Il principale inconveniente della riproduzione probabilistica è che essa comporta il rischio di un fenomeno denominato convergenza prematura. p =0.5 1 p =0.17 Esempio: In una popolazione costituita da tre individui 2 caratterizzati dalle seguenti fitness: f 1 =0.9, f 2 =0.3, f 3 =0.6 p 3=0.33 si ha: p 1 =f 1 /1.8 = 0.5, p 2 = f 2 /1.8 = 0.17, p 3 = 0.6/1.8 = Identificazione e Controllo Intelligente 24 Altri criteri di selezione Tra le soluzioni più adottate per risolvere questo problema citiamo le strategie di fitness scaling (la fitness di ogni individuo viene scalata in modo lineare o per elevazione a potenza secondo coefficienti predefiniti), di ranking (gli individui della popolazione sono ordinati per fitness decrescente ed a ciascuno di essi è assegnata una probabilità di riproduzione in base alla posizione nella graduatoria e non in base al valore specifico della fitness) ed infine di tournament selection (si estraggono casualmente n coppie di individui nella popolazione e li si confronta fra di loro, e selezionando per la riproduzione i vincitori di ciascun confronto come individui ). Identificazione e Controllo Intelligente 25 12

13 Ulteriori criteri Esistono poi numerose varianti dei criteri di selezione citati, ideate con varie finalità. L elitist GA conserva il miglior individuo della popolazione prima che qualsiasi operazione di selezione e riproduzione avvenga; e lo ricopia nella popolazione discendente. In questo modo si evita il rischio di perdere il migliore individuo finora trovato, tipico dei meccanismi di selezione probabilistica. La tecnica del crowding factor seleziona gli individui che partecipano alla riproduzione non solo sulla base della fitness, ma anche di quanto ciascuna soluzione sia in media vicina ad altre soluzioni nella popolazione (crowding factor). Lo scopo di questa tecnica e favorire l esplorazione di nuove aree dello spazio delle soluzioni, evitando che le soluzioni si avvicinino troppo l una all altra. Identificazione e Controllo Intelligente 26 Crossover e mutazione Negli algoritmi genetici l operatore a cui è demandato il compito che in natura è svolto dalla riproduzione sessuata è sicuramente il crossover. Tale operatore deve generare nuove soluzioni a partire da quelle prescelte dall operatore di selezione. In natura un discendente è raramente un esatto clone di un genitore: esso ha due genitori ed eredita geni da entrambi. Il crossover opera appunto su due individui e trae da loro preziose informazioni combinandole per trovare dei discendenti con una fitness migliore. Parametro caratteristico del crossover è la sua probabilità di applicazione agli individui della popolazione. Identificazione e Controllo Intelligente 27 13

14 Encoding-crossover-mutation Binary encoding Chromosome (11, 6, 9) Crossover Gene Mutation Crossover point Mutation bit Identificazione e Controllo Intelligente 28 Crossover operators Simple crossover x = (x 1,,x k, x k+1,,x n ) y = (y 1, y k, y k+1,,y n ) scelta a caso una posizione k tra 1 ed n-1, si generano i due discendenti: x = (x 1,,x k, y k+1,,y n ) y = (y 1, y k, x k+1,,x n ) Arithmetic crossover Se x e y sono i genitori, scegliendo un numero casuale a tra 0 e 1, si ottengono i due discendenti x e y dalla seguente combinazione lineare: x = ax+(1-a)y y = ay+(1-a)x Identificazione e Controllo Intelligente 29 14

15 Crossover Heuristic Crossover La versione più comune di questo crossover genera solo un nuovo individuo, che viene affiancato al genitore a fitness maggiore. Se x e y sono i genitori e x è quello con la maggiore fitness, i due discendenti z 1 e z 2 si generano nel modo seguente: z 1 = x z 2 = x+a(x-y) con a numero scelto a caso tra 0 e 1. Identificazione e Controllo Intelligente 30 Mutation operators Uniform mutation - random selected element v k replaced by v k in the range [v min k and v max k ] Multiple uniform mutation - uniform mutation of n randomly selected elements, n {1,2,,N} t 1 Gaussian mutation - all elements are mutated: s + = ( v + f,, v + f,, v + f ) v 1 1 k k n n s + = ( v + f,, v + f,, v + f ) t 1 v 1 1 k k n n where f k, k=1,2,,n is a random number drawn from a Gaussian distribution Identificazione e Controllo Intelligente 31 15

16 Riassunto Terminologia Fitness function Population Encoding Individual Chromosome Gene Generation Selection Elitism Crossover Mutation Identificazione e Controllo Intelligente 32 The Basic Structure of the GA /* Single Criterion EA */ /* Algorithm Startup */ i = 1; Pop(1) = random_pop fitness_eval(pop(1)) i = 2; /* main loop of the EA */ For each individual in the population Simulate the system specified in the chromosome subject to the reference input. Compute the fitness (deviation of the simulated output from true reference output) WHILE terminating_condition == false p_best = findbest(pop(i-1)) /*elitist preservation of the best-known individual*/ Pop(i) = select(pop(i-1),sel_ops); Pop(i) = crossover(pop(i),p_cro); Pop(i) = mutation(pop(i),p_mut); fitness_eval(pop(i)) Pop(i)=Pop(i) p_best i=i+1; END WHILE Identificazione e Controllo Intelligente 33 16

17 (A) Single Run - Fitness (B) Single Run - Fitness std. dev x x Comportamento tipico Best Fitness Avg Fitness (C) Multiple Runs - Fitness 4 x Identificazione e Controllo Intelligente Number of generations Genetic Algorithms Example: Find the max. of the peaks function z = f(x, y) = 3*(1-x)^2*exp(-(x^2) - (y+1)^2) - 10*(x/5 - x^3 - y^5)*exp(-x^2-y^2) -1/3*exp(-(x+1)^2 - y^2). Identificazione e Controllo Intelligente 35 17

18 Genetic Algorithms Derivatives of the peaks function dz/dx = -6*(1-x)*exp(-x^2-(y+1)^2) - 6*(1-x)^2*x*exp(-x^2-(y+1)^2) - 10*(1/5-3*x^2)*exp(-x^2-y^2) + 20*(1/5*x-x^3-y^5)*x*exp(-x^2-y^2) - 1/3*(- 2*x-2)*exp(-(x+1)^2-y^2) dz/dy = 3*(1-x)^2*(-2*y-2)*exp(-x^2-(y+1)^2) + 50*y^4*exp(-x^2-y^2) + 20*(1/5*x-x^3-y^5)*y*exp(-x^2-y^2) + 2/3*y*exp(-(x+1)^2-y^2) d(dz/dx)/dx = 36*x*exp(-x^2-(y+1)^2) - 18*x^2*exp(-x^2-(y+1)^2) - 24*x^3*exp(-x^2-(y+1)^2) + 12*x^4*exp(-x^2-(y+1)^2) + 72*x*exp(-x^2-y^2) - 148*x^3*exp(-x^2-y^2) - 20*y^5*exp(-x^2-y^2) + 40*x^5*exp(-x^2-y^2) + 40*x^2*exp(-x^2-y^2)*y^5-2/3*exp(-(x+1)^2-y^2) - 4/3*exp(-(x+1)^2- y^2)*x^2-8/3*exp(-(x+1)^2-y^2)*x d(dz/dy)/dy = -6*(1-x)^2*exp(-x^2-(y+1)^2) + 3*(1-x)^2*(-2*y-2)^2*exp(- x^2-(y+1)^2) + 200*y^3*exp(-x^2-y^2)-200*y^5*exp(-x^2-y^2) + 20*(1/5*xx^3-y^5)*exp(-x^2-y^2) - 40*(1/5*x-x^3-y^5)*y^2*exp(-x^2-y^2) + 2/3*exp(- (x+1)^2-y^2)-4/3*y^2*exp(-(x+1)^2-y^2) Identificazione e Controllo Intelligente 36 Genetic Algorithms GA process: Initial population 5th generation 10th generation Identificazione e Controllo Intelligente 37 18

19 Genetic Algorithms Performance profile Identificazione e Controllo Intelligente 38 Criteri di arresto Basati sul tempo di calcolo tempo a disposizione Numero di valutazioni della funzione obiettivo Basati sulle condizioni di convergenza Nessun incremento di prestazioni nelle ultime t iterazioni Fitness media della popolazione coincidente con fitness migliore Bassa diversità nella popolazione (individui praticamente tutti uguali). Identificazione e Controllo Intelligente 39 19

20 Quadro conclusivo Quando è opportuno usare un GA? Quando si deve risolvere un problema di ricerca dell ottimo in un dominio multidimensionale del quale non si hanno informazioni preliminari. Quando i parametri sono di tipo eterogeneo (binari, discreti, reali). Quando si vuole realizzare un algoritmo derivative-free in tempo rapido. Quando si vuole trovare una soluzione ottimale senza particolari restrizioni sul tempo di ricerca. Quando si è ragionevolmente certi che esistono più ottimi locali (se ce ne sono molti bisogna usare GA ad hoc) Quando può essere più efficiente il ricorso ad altre tecniche di ottimizzazione? Quando lo spazio di ricerca è a poche dimensioni (1, 2) in un rettangolo continuo. Quando sono necessarie garanzie di raggiungimento dell ottimo assoluto. Quando è disponibile analiticamente la forma della funzione obiettivo e la sua derivata prima. Quando si è certi che la funzione obiettivo non presenti minimi locali. Identificazione e Controllo Intelligente 40 Approfondimenti I principali campi di applicazione dei GA sui quali abbiamo recentemente condotto attività di ricerca sono: A. problemi combinatori GA per problemi di assegnamento, sequencing, scheduling nell ambito del controllo di sistemi manifatturieri automatizzati. Strategie di coordinamento per sistemi di controllo distribuito ad eventi (sistemi multi-agente). Ottimizzazione della gestione in tempo-reale di AGV. Problemi di logistica (scheduling della produzione in impianti distribuiti, gestione flotte di veicoli per il trasporto). B. Problemi di ottimizzazione numerica Identificazione di modelli non-lineari (Hammerstein, Wiener, reti neurofuzzy) per azionamenti e processi di laboratorio. Progetto automatico (hardware-in-the-loop) di sistemi di controllo lineari e non-lineari per azionamenti e manipolatori industriali. Identificazione e Controllo Intelligente 41 20

Computazione Naturale AA. 2011-2012

Computazione Naturale AA. 2011-2012 Computazione Naturale AA. 2011-2012 Prof. Mario Pavone CdL Magistrale in Informatica Dip. Matematica ed Informatica mpavone@dmi.unict.it http://www.dmi.unict.it/mpavone/ INDICE Obiettivi formativi Cos

Dettagli

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56122 PISA ALGORITMI GENETICI (GA) Sono usati per risolvere problemi di ricerca

Dettagli

Algoritmi Genetici. e programmazione genetica

Algoritmi Genetici. e programmazione genetica Algoritmi Genetici e programmazione genetica Algoritmi Genetici Algoritmi motivati dall analogia con l evoluzione biologica Lamarck: le specie trasmutano nel tempo Darwin e Wallace: variazioni consistenti

Dettagli

Riproduzione Crossover Mutazione

Riproduzione Crossover Mutazione Algoritmi Genetici Sono algoritmi di ricerca basati sui principi evolutivi della selezione naturale e della genetica, che implicano la sopravvivenza degli elementi migliori e lo scambio di informazioni

Dettagli

ALMA MATER STUDIORUM - UNIVERSITÀ DI BOLOGNA FORMULAZIONE AGLI ELEMENTI FINITI DI PROBLEMI DI IDENTIFICAZIONE PARAMETRICA

ALMA MATER STUDIORUM - UNIVERSITÀ DI BOLOGNA FORMULAZIONE AGLI ELEMENTI FINITI DI PROBLEMI DI IDENTIFICAZIONE PARAMETRICA ALMA MATER STUDIORUM - UNIVERSITÀ DI BOLOGNA FACOLTÀ DI INGEGNERIA CORSO DI LAUREA SPECIALISTICA IN INGEGNERIA CIVILE DISTART Scienza delle Costruzioni TESI DI LAUREA in Teoria delle Strutture FORMULAZIONE

Dettagli

Quadratic assignment Problem: The Hospital Layout

Quadratic assignment Problem: The Hospital Layout Università degli Studi di Modena e Reggio Emilia Corso di Laurea Magistrale in Ingegneria Gestionale Metodi di ottimizzazione per la logistica e la produzione Quadratic assignment Problem: The Hospital

Dettagli

Algoritmi euristici ed evolutivi per l ottimizzazione

Algoritmi euristici ed evolutivi per l ottimizzazione Algoritmi euristici ed evolutivi per l ottimizzazione Dipartimento di Matematica e Informatica Università degli Studi di Perugia Via Vanvitelli, Perugia 17 febbraio 2009 / GALN 2009 Sommario Introduzione

Dettagli

Algoritmi genetici Ing. Valerio Lacagnina

Algoritmi genetici Ing. Valerio Lacagnina Variazione genetica e selezione naturale Gli Algoritmi Genetici (AG), proposti nel 1975 da J.H. Holland, sono un modello computazionale idealizzato dall evoluzione naturale darwinista. Ogni individuo ha

Dettagli

3. Gli algoritmi di ottimizzazione.

3. Gli algoritmi di ottimizzazione. Marcello Salmeri - Progettazione Automatica di Circuiti e Sistemi Elettronici Capitolo 3-3. Gli algoritmi di ottimizzazione. I grafi. La teoria dei grafi è un comodo strumento per la definizione e la formalizzazione

Dettagli

EMERGENCE OF SELF ORGANIZATION AND SEARCH FOR OPTIMAL ENTERPRISE STRUCTURE: AI EVOLUTIONARY METHODS APPLIED TO AGENT BASED PROCESS SIMULATION

EMERGENCE OF SELF ORGANIZATION AND SEARCH FOR OPTIMAL ENTERPRISE STRUCTURE: AI EVOLUTIONARY METHODS APPLIED TO AGENT BASED PROCESS SIMULATION EMERGENCE OF SELF ORGANIZATION AND SEARCH FOR OPTIMAL ENTERPRISE STRUCTURE: AI EVOLUTIONARY METHODS APPLIED TO AGENT BASED PROCESS SIMULATION remond@di.unito.it Department of Computer Science University

Dettagli

Cristian Randieri. www.intellisystem.it

Cristian Randieri. www.intellisystem.it Cristian Randieri www.intellisystem.it Gli algoritmi genetici (GA = Genetic Algorithms) furono proposti inizialmente da J.H. Holland nel 1975. Da allora sono stati oggetto di molti studi e recentemente

Dettagli

Ant Colony Optimization (ACO) e Swarm Intelligence

Ant Colony Optimization (ACO) e Swarm Intelligence Università degli Studi di Milano Facoltà di scienze Matematiche, Fisiche e Naturali Ant Colony Optimization (ACO) e Swarm Intelligence Seminario per il corso di Sistemi Intelligenti Prof. N. Alberto BORGHESE

Dettagli

Ricerca Operativa A.A. 2007/2008

Ricerca Operativa A.A. 2007/2008 Ricerca Operativa A.A. 2007/2008 9. Cenni su euristiche e metaeuristiche per ottimizzazione combinatoria Motivazioni L applicazione di metodi esatti non è sempre possibile a causa della complessità del

Dettagli

Cerveri Pietro Dipartimento di Bioingegneria Politecnico di Milano. 25,27 Ottobre 2005. Evoluzione

Cerveri Pietro Dipartimento di Bioingegneria Politecnico di Milano. 25,27 Ottobre 2005. Evoluzione Computazione evoluzionistica: algoritmi genetici e strategie evolutive - Fondamenti ed esempi di applicazione nel campo della Computer-Vision, Biomeccanica ed Elaborazione di Immagini Biomediche" Cerveri

Dettagli

LA NUMERAZIONE BINARIA

LA NUMERAZIONE BINARIA LA NUMERAZIONE BINARIA 5 I SISTEMI DI NUMERAZIONE Fin dalla preistoria l uomo ha avuto la necessità di fare calcoli, utilizzando svariati tipi di dispositivi: manuali (mani, bastoncini, sassi, abaco),

Dettagli

Università degli Studi della Calabria FACOLTÀ DI INGEGNERIA

Università degli Studi della Calabria FACOLTÀ DI INGEGNERIA Università degli Studi della Calabria FACOLTÀ DI INGEGNERIA Corso di Diploma in Ingegneria Informatica TESI DI DIPLOMA UNA IMPLEMENTAZIONE DISTRIBUITA DELLA PROGRAMMAZIONE GENETICA IN AMBIENTE PEER-TO-PEER

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Sistemi di Numerazione Sistema decimale La

Dettagli

Stimare il WCET Metodo classico e applicazione di un algoritmo genetico

Stimare il WCET Metodo classico e applicazione di un algoritmo genetico Stimare il WCET Metodo classico e applicazione di un algoritmo genetico Sommario Introduzione Definizione di WCET Importanza del WCET Panoramica dei classici metodi per calcolare il WCET [1] Utilizzo di

Dettagli

Lezione 10. La classificazione dell Intelligenza Artificiale

Lezione 10. La classificazione dell Intelligenza Artificiale Lezione 10 Intelligenza Artificiale Cosa è l Intelligenza Artificiale Elaborazione del linguaggio naturale La visione artificiale L apprendimento nelle macchine La classificazione dell Intelligenza Artificiale

Dettagli

Evoluzione. Alcune pietre miliari

Evoluzione. Alcune pietre miliari Sistemi Intelligenti Algoritmi genetici Alberto Borghese Università degli Studi di Milano Laboratory of Applied Intelligent Systems (AIS-Lab) Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it

Dettagli

Intelligenza Computazionale

Intelligenza Computazionale Intelligenza Computazionale A.A. 2009/10 Docente: Francesco Masulli masulli@disi.unige.it L'Intelligenza Computazionale (o Soft Computing o Natural Computing): insieme di metodologie di elaborazione dell'informazione

Dettagli

Progetto e analisi di algoritmi

Progetto e analisi di algoritmi Progetto e analisi di algoritmi Roberto Cordone DTI - Università degli Studi di Milano Polo Didattico e di Ricerca di Crema Tel. 0373 / 898089 E-mail: cordone@dti.unimi.it Ricevimento: su appuntamento

Dettagli

DAL DIAGRAMMA AL CODICE

DAL DIAGRAMMA AL CODICE DAL DIAGRAMMA AL CODICE Un diagramma di flusso Appare, come un insieme di blocchi di forme diverse che contengono le istruzioni da eseguire, collegati fra loro da linee orientate che specificano la sequenza

Dettagli

I Modelli della Ricerca Operativa

I Modelli della Ricerca Operativa Capitolo 1 I Modelli della Ricerca Operativa 1.1 L approccio modellistico Il termine modello è di solito usato per indicare una costruzione artificiale realizzata per evidenziare proprietà specifiche di

Dettagli

Università degli Studi della Calabria

Università degli Studi della Calabria Università degli Studi della Calabria Dottorato di Ricerca in Psicologia della Programmazione e Intelligenza Artificiale XV Ciclo Tesi di Dottorato Automi Cellulari nella modellizzazione di fenomeni complessi

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori Informazione e computer Si può rappresentare l informazione attraverso varie forme: Numeri Testi Suoni Immagini 0001010010100101010 Computer Cerchiamo di capire come tutte queste informazioni possano essere

Dettagli

Vuoi ottimizzare? Fallo con Scilab!

Vuoi ottimizzare? Fallo con Scilab! 5 agosto Vuoi ottimizzare? Fallo con Scilab! 20 11 In questo tutorial vi facciamo vedere come Scilab possa essere considerato a tutti gli effetti un potente software di ottimizzazione multiobiettivo e

Dettagli

LA PROPRIETA INTELLETTUALE

LA PROPRIETA INTELLETTUALE LA PROPRIETA INTELLETTUALE Problemi Specifici nella Brevettazione 20 Gennaio 2010 Seminario Ufficio Brevetti ed Innovazione Tecnologica Camera di Commercio di Genova DR. Giorgio A. Karaghiosoff La protezione

Dettagli

ALGORITMI EURISTICI PER PROBLEMI DI TAGLIO BIDIMENSIONALE

ALGORITMI EURISTICI PER PROBLEMI DI TAGLIO BIDIMENSIONALE ALMA MATER STUDIORUM - UNIVERSITA DI BOLOGNA FACOLTA DI INGEGNERIA Corso di Laurea in INGEGNERIA INFORMATICA Insegnamento: OTTIMIZZAZIONE COMBINATORIA ALGORITMI EURISTICI PER PROBLEMI DI TAGLIO BIDIMENSIONALE

Dettagli

EQUAZIONI non LINEARI

EQUAZIONI non LINEARI EQUAZIONI non LINEARI Francesca Pelosi Dipartimento di Matematica, Università di Roma Tor Vergata CALCOLO NUMERICO e PROGRAMMAZIONE http://www.mat.uniroma2.it/ pelosi/ EQUAZIONI non LINEARI p.1/44 EQUAZIONI

Dettagli

ALGEBRA BOOLEANA FONDAMENTI DI INFORMATICA 1. Algebra di Boole. Definizione NOT, AND, OR

ALGEBRA BOOLEANA FONDAMENTI DI INFORMATICA 1. Algebra di Boole. Definizione NOT, AND, OR Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica, Chimica, Elettrica e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011 Docente: Gian

Dettagli

Lezione2 Ricerca di zeri. http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali. Fernando Palombo

Lezione2 Ricerca di zeri. http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali. Fernando Palombo Lezione2 Ricerca di zeri http://idefix.mi.infn.it/~palombo/didattica/lab-tnds/corsolab/lezionifrontali Fernando Palombo Aritmetica Finita nel Computer Nel computer l aritmetica è a precisione finita cioè

Dettagli

Generazione di numeri casuali. Daniela Picin

Generazione di numeri casuali. Daniela Picin Daniela Picin Testi di consultazione Gentle I.E. Random Number Generation and Monte Carlo Methods, 2nd ed. Springer Verlag, 2005 Raj Jain - The Art of Computer Systems Performance Analysis: Techniques

Dettagli

Cos è un Calcolatore?

Cos è un Calcolatore? Cos è un Calcolatore? Definizione A computer is a machine that manipulates data according to a (well-ordered) collection of instructions. 24/105 Riassumendo... Un problema è una qualsiasi situazione per

Dettagli

Ottimizzazione e modelli ad agenti

Ottimizzazione e modelli ad agenti e modelli ad Dipartimento di Economia Ca Foscari - Venezia Vittorio Veneto, 24 Maggio 2011 Metodi moderni per l ottimizzazione. 1 Esempi e definizione del problema. 2 Grandi problemi, grandi idee... 3

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Tipologie di macchine di Turing

Tipologie di macchine di Turing Tipologie di macchine di Turing - Macchina di Turing standard - Macchina di Turing con un nastro illimitato in una sola direzione - Macchina di Turing multinastro - Macchina di Turing non deterministica

Dettagli

Esercizi di Ricerca Operativa I

Esercizi di Ricerca Operativa I Esercizi di Ricerca Operativa I Dario Bauso, Raffaele Pesenti May 10, 2006 Domande Programmazione lineare intera 1. Gli algoritmi per la programmazione lineare continua possono essere usati per la soluzione

Dettagli

Contenuto e scopo presentazione. Vehicle Scheduling. Motivazioni VSP

Contenuto e scopo presentazione. Vehicle Scheduling. Motivazioni VSP Contenuto e scopo presentazione Vehicle Scheduling 08/03/2005 18.00 Contenuto vengono introdotti modelli e metodi per problemi di Vehicle Scheduling Problem (VSP) Scopo fornire strumenti di supporto alle

Dettagli

SYSTEMS BIOLOGY. Metodi di stima dei parametri. Marco S. Nobile 21 novembre 2014. Overview

SYSTEMS BIOLOGY. Metodi di stima dei parametri. Marco S. Nobile 21 novembre 2014. Overview BIOTECNOLOGIE MOLECOLARI E BIOINFORMATICA SYSTEMS BIOLOGY Metodi di stima dei parametri Marco S. Nobile 21 novembre 2014 Overview Ruolo e rilevanza dei parametri di un modello (reprise) Derivata e gradiente

Dettagli

OBIETTIVI SPECIFICI DI APPRENDIMENTO

OBIETTIVI SPECIFICI DI APPRENDIMENTO Disciplina:... Anno scolastico: 20.../20... Classe/i :... Docente:... DI APPRENDIMENTO SEZIONE 1 Premesse matematiche Nozioni fondamentali sui sistemi di numerazione Sistemi di numerazione in base diversa

Dettagli

Best-first search. Idea: use an evaluation function for each node. Implementation: Order the nodes in fringe in decreasing order of desirability

Best-first search. Idea: use an evaluation function for each node. Implementation: Order the nodes in fringe in decreasing order of desirability Ricerca euristica Review: Tree Search Best-first search Idea: use an evaluation function for each node estimate of "desirability" Expand most desirable unexpanded node Implementation: Order the nodes in

Dettagli

Reti sequenziali e strutturazione firmware

Reti sequenziali e strutturazione firmware Architettura degli Elaboratori, a.a. 25-6 Reti sequenziali e strutturazione firmware Alla parte di corso sulle reti sequenziali è apportata una sensibile semplificazione rispetto a quanto contenuto nel

Dettagli

Implementazione parallela di algoritmi genetici per la stima di HMM

Implementazione parallela di algoritmi genetici per la stima di HMM Università degli Studi di Trieste Implementazione parallela di algoritmi genetici per la stima di HMM Relatore Enzo Mumolo Candidato Nicola Timeus 14 marzo 2014 Motivazioni Pattern recognition mediante

Dettagli

Le leggi di Mendel esposte in modo ragionato e critico di Luciano Porta

Le leggi di Mendel esposte in modo ragionato e critico di Luciano Porta Le leggi di Mendel esposte in modo ragionato e critico di Luciano Porta Le tre leggi di Mendel, che descrivono la trasmissione dei caratteri ereditari da una generazione all altra, segnano l inizio della

Dettagli

Rappresentazione e Memorizzazione dei Dati

Rappresentazione e Memorizzazione dei Dati Rappresentazione e Memorizzazione dei Dati Giuseppe Nicosia CdL in Matematica (Laurea Triennale) Facoltà di Scienze MM.FF.NN. Università di Catania Bit e loro Memorizzazione Definizioni Algoritmo: una

Dettagli

ALGORITMI EVOLUTIVI: CONCETTI E APPLICAZIONI

ALGORITMI EVOLUTIVI: CONCETTI E APPLICAZIONI ALGORITMI EVOLUTIVI: CONCETTI E APPLICAZIONI Gli algoritmi evolutivi sono una famiglia di tecniche stocastiche per la risoluzione di problemi che fa parte della più ampia categoria dei "modelli a metafora

Dettagli

Lezione 2: Codifica binaria dell informazione. Codifica binaria

Lezione 2: Codifica binaria dell informazione. Codifica binaria Lezione 2: Codifica binaria dell informazione Codifica binaria Elaborazione di dati binari Materiale didattico Lucidi delle lezioni, disponibili al sito: http://wwwinfo.deis.unical.it/~irina Oppure sul

Dettagli

Università di Pisa - Corso di Laurea in Matematica Corso di Analisi Matematica 1 Informazioni

Università di Pisa - Corso di Laurea in Matematica Corso di Analisi Matematica 1 Informazioni Università di Pisa - Corso di Laurea in Matematica Corso di Analisi Matematica 1 Informazioni Supporto alla didattica Il corso avrà il supporto di un giovane collaboratore (raggiungibile sul web alla pagina

Dettagli

Evoluzione Grammaticale

Evoluzione Grammaticale bollini@vision.unipv.it Dipartimento di Informatica e Sistemistica Università di Pavia Via Ferrata, 1 27100 Pavia Programmazione genetica Algoritmo di base mutuato dagli algoritmi genetici Inizializzazione

Dettagli

Cenno sui metodi Monte Carlo

Cenno sui metodi Monte Carlo Cenno sui metodi Monte Carlo I metodi probabilistici hanno una lunga storia ma solo dopo il 1944 è iniziato un loro studio sistematico che ha portato a notevoli sviluppi. Attualmente è stato valutato che

Dettagli

DAL PROBLEMA AL PROGRAMMA

DAL PROBLEMA AL PROGRAMMA DAL PROBLEMA AL PROGRAMMA Scopo del modulo Conoscere alcuni concetti fondamentali dell informatica:algoritmo, l automa, linguaggio formale Essere in grado di cogliere l intreccio tra alcuni risultati della

Dettagli

ANALISI DEL RISCHIO NELLA VALUTAZIONE DEGLI INVESTIMENTI. Docente: Prof. Massimo Mariani

ANALISI DEL RISCHIO NELLA VALUTAZIONE DEGLI INVESTIMENTI. Docente: Prof. Massimo Mariani ANALISI DEL RISCHIO NELLA VALUTAZIONE DEGLI INVESTIMENTI Docente: Prof. Massimo Mariani 1 SOMMARIO Analisi del rischio; limiti del VAN in contesti di incertezza; tecniche di descrizione del rischio dei

Dettagli

AREA MATEMATICO-SCIENTIFICO-TECNOLOGICA MATEMATICA

AREA MATEMATICO-SCIENTIFICO-TECNOLOGICA MATEMATICA AREA MATEMATICO-SCIENTIFICO-TECNOLOGICA MATEMATICA TRAGUARDI PER LO SVILUPPO DELLE COMPETENZE AL TERMINE DELLA SCUOLA SECONDARIA DI PRIMO GRADO. L alunno ha rafforzato un atteggiamento positivo rispetto

Dettagli

Esperienze di Apprendimento Automatico per il corso di Intelligenza Artificiale

Esperienze di Apprendimento Automatico per il corso di Intelligenza Artificiale Esperienze di Apprendimento Automatico per il corso di lippi@dsi.unifi.it Dipartimento Sistemi e Informatica Università di Firenze Dipartimento Ingegneria dell Informazione Università di Siena Introduzione

Dettagli

Fondamenti di Informatica 7. Linguaggi di programmazione

Fondamenti di Informatica 7. Linguaggi di programmazione I linguaggi di alto livello Fondamenti di Informatica 7. Linguaggi di programmazione Introduzione alla programmazione Caratteristiche dei linguaggi di programmazione I linguaggi di programmazione di alto

Dettagli

PROGRAMMAZIONE DIDATTICA RIFERITA ALLA DISCIPLINA :MATEMATICA

PROGRAMMAZIONE DIDATTICA RIFERITA ALLA DISCIPLINA :MATEMATICA Istituto Istruzione Superiore A. Venturi Modena Liceo artistico - Istituto Professionale Grafica Via Rainusso, 66-41124 MODENA Sede di riferimento (Via de Servi, 21-41121 MODENA) tel. 059-222156 / 245330

Dettagli

PIANO DI LAVORO DEI DOCENTI

PIANO DI LAVORO DEI DOCENTI Pag. 1 di 6 Docente: Materia insegnamento: SISTEMI ELETTRONICI AUTOMATICI Dipartimento: ELETTRONICA Classe Anno scolastico: 1 Livello di partenza (test di ingresso, livelli rilevati) Sono richieste conoscenze

Dettagli

187. Casualità Matematica e Metodo Monte Carlo Nicola De Nitti nicoladenitti@gmail.com

187. Casualità Matematica e Metodo Monte Carlo Nicola De Nitti nicoladenitti@gmail.com 187. Casualità Matematica e Metodo Monte Carlo icola De itti nicoladenitti@gmail.com Premessa Il concetto di probabilità, impiegato a partire dal XVII secolo, è diventato con il passare del tempo fondamentale

Dettagli

2.5 Stabilità dei sistemi dinamici 20. - funzioni di trasferimento, nella variabile di Laplace s, razionali fratte del tipo:

2.5 Stabilità dei sistemi dinamici 20. - funzioni di trasferimento, nella variabile di Laplace s, razionali fratte del tipo: .5 Stabilità dei sistemi dinamici 9 Risulta: 3 ( s(s + 4).5 Stabilità dei sistemi dinamici Si è visto come un sistema fisico può essere descritto tramite equazioni differenziali o attraverso una funzione

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 05 La rappresentazione dell informazione Carla Limongelli Ottobre 2011 http://www.dia.uniroma3.it/~java/fondinf/ La rappresentazione

Dettagli

Introduzione. è uguale a 0, spostamento di dati da una parte della memoria del calcolatore ad un altra.

Introduzione. è uguale a 0, spostamento di dati da una parte della memoria del calcolatore ad un altra. Appunti di Calcolatori Elettronici Modello di macchina multilivello Introduzione... 1 Linguaggi, livelli e macchine virtuali... 3 La struttura a livelli delle macchine odierne... 4 Evoluzione delle macchine

Dettagli

F ORMATO EUROPEO INFORMAZIONI PERSONALI. Data di nascita 21 GENNAIO 1966 ESPERIENZA LAVORATIVA PER IL CURRICULUM VITAE

F ORMATO EUROPEO INFORMAZIONI PERSONALI. Data di nascita 21 GENNAIO 1966 ESPERIENZA LAVORATIVA PER IL CURRICULUM VITAE F ORMATO EUROPEO PER IL CURRICULUM VITAE INFORMAZIONI PERSONALI Nome ARMANDO STERNIERI Nazionalità Italiana Data di nascita 21 GENNAIO 1966 ESPERIENZA LAVORATIVA Principali mansioni e responsabilità Principali

Dettagli

Informazione analogica e digitale

Informazione analogica e digitale L informazione L informazione si può: rappresentare elaborare gestire trasmettere reperire L informatica offre la possibilità di effettuare queste operazioni in modo automatico. Informazione analogica

Dettagli

F O R M A T O E U R O P E O P E R

F O R M A T O E U R O P E O P E R F O R M A T O E U R O P E O P E R I L C U R R I C U L U M V I T A E INFORMAZIONI PERSONALI Nome Indirizzo ARMANDO STERNIERI VIA SIROTTI, 19 42121 REGGIO EMILIA- ITALIA Telefono 0522/455141 Fax 0522/451382

Dettagli

Corso SIRI 2014. Dott. Ing. Stefano Tonello

Corso SIRI 2014. Dott. Ing. Stefano Tonello Corso SIRI 2014 Dott. Ing. Stefano Tonello IT+Robotics Spin-off dell Università di Padova fondata nel 2005 IAS-LAB (Intelligent and Autonomous Systems Laboratory) Attiva nei campi della robotica e visione

Dettagli

Elementi di Statistica

Elementi di Statistica Elementi di Statistica Contenuti Contenuti di Statistica nel corso di Data Base Elementi di statistica descrittiva: media, moda, mediana, indici di dispersione Introduzione alle variabili casuali e alle

Dettagli

Politecnico di Milano. Reti Wireless. Seminari didattici. Dalla teoria alla soluzione. Ilario Filippini

Politecnico di Milano. Reti Wireless. Seminari didattici. Dalla teoria alla soluzione. Ilario Filippini Politecnico di Milano Reti Wireless Seminari didattici Dalla teoria alla soluzione Ilario Filippini 2 Approccio euristico 3 Obiettivo dell approccio euristico 4 Tipi di euristiche Dalla teoria alla soluzione

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

LABORATORIO DI ANALISI DEI SISTEMI

LABORATORIO DI ANALISI DEI SISTEMI LABORATORIO DI ANALISI DEI SISTEMI Si utilizzerà, come strumento di lavoro, un foglio elettronico, il più diffuso Excel o anche quello gratuito di OpenOffice (www.openoffice.org). Tale scelta, pur non

Dettagli

Un po di statistica. Christian Ferrari. Laboratorio di Matematica

Un po di statistica. Christian Ferrari. Laboratorio di Matematica Un po di statistica Christian Ferrari Laboratorio di Matematica 1 Introduzione La statistica è una parte della matematica applicata che si occupa della raccolta, dell analisi e dell interpretazione di

Dettagli

Architetture DSP. Capitolo 6

Architetture DSP. Capitolo 6 Capitolo 6 Architetture DSP Un convertitore analogico-digitale (ADC) trasforma un segnale a tempo continuo in una sequenza di bit; viceversa un convertitore digitale-analogico (DAC) trasforma una sequenza

Dettagli

CORSO INTEGRATO DI GENETICA

CORSO INTEGRATO DI GENETICA CORSO INTEGRATO DI GENETICA a.a.2011-2012 11.10.2011 Lezioni N. 7 e 8 Ereditarietà Mendeliana Segregazione alleli, indipendenza geni, associazione, ricombinazione Dott.ssa Elisabetta Trabetti UN GENE =

Dettagli

Elementi di informatica e web di Guido Fusco

Elementi di informatica e web di Guido Fusco Presentazione UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II Facoltà di Sociologia Corso di laurea in culture digitali e della comunicazione http://www.corso-informatica-web.com/ Obiettivi del corso 1 ELEMENTI

Dettagli

METODI ITERATIVI PER SISTEMI LINEARI

METODI ITERATIVI PER SISTEMI LINEARI METODI ITERATIVI PER SISTEMI LINEARI LUCIA GASTALDI 1. Metodi iterativi classici Sia A R n n una matrice non singolare e sia b R n. Consideriamo il sistema (1) Ax = b. Un metodo iterativo per la soluzione

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Corso di Laurea in Scienze dell'educazione, 2014-15 Lorenzo Bettini http://www.di.unito.it/~bettini Informazioni generali Ricevimento studenti su appuntamento Dipartimento di

Dettagli

G.A.M.P. Genetic Algorithm for Motion Planning

G.A.M.P. Genetic Algorithm for Motion Planning G.A.M.P. Genetic Algorithm for Motion Planning Nicola Carlon Matteo Finotto Francesco Fornasiero Giovanni Melis Marco Visonà Tesina per il corso di Intelligenza Artificiale, Prof.ssa Silvana Badaloni Università

Dettagli

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D)

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D) ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI () Calcolo delle corrispondenze Affrontiamo il problema centrale della visione stereo, cioè la ricerca automatica di punti corrispondenti tra immagini Chiamiamo

Dettagli

La programmazione con vincoli in breve. La programmazione con vincoli in breve

La programmazione con vincoli in breve. La programmazione con vincoli in breve Obbiettivi Introdurre la nozione di equivalenza di CSP. Dare una introduzione intuitiva dei metodi generali per la programmazione con vincoli. Introdurre il framework di base per la programmazione con

Dettagli

CODIFICA BINARIA. ... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità.

CODIFICA BINARIA. ... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità. I METODI DI NUMERAZIONE I numeri naturali... sono rappresentati ricorrendo a simboli che sintezzano il concetto di numerosità. Il numero dei simboli usati per valutare la numerosità costituisce la base

Dettagli

Alcune note sulle serie di potenze 1

Alcune note sulle serie di potenze 1 Alcune note sulle serie di potenze Contents G. Falqui Preliminari 2 Serie di potenze 3 3 Rappresentazione di funzioni mediante serie di potenze 7 3. Esempi notevoli........................... 9 3.2 Formula

Dettagli

Controlli Automatici T. Trasformata di Laplace e Funzione di trasferimento. Parte 3 Aggiornamento: Settembre 2010. Prof. L.

Controlli Automatici T. Trasformata di Laplace e Funzione di trasferimento. Parte 3 Aggiornamento: Settembre 2010. Prof. L. Parte 3 Aggiornamento: Settembre 2010 Parte 3, 1 Trasformata di Laplace e Funzione di trasferimento Prof. Lorenzo Marconi DEIS-Università di Bologna Tel. 051 2093788 Email: lmarconi@deis.unibo.it URL:

Dettagli

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO ELEMENTI FONDAMENTALI PER LO SVILUPPO DI SISTEMI INFORMATIVI ELABORAZIONE DI

Dettagli

Introduzione alla Simulazione Numerica

Introduzione alla Simulazione Numerica Introduzione alla Simulazione Numerica Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 1.0 - Novembre 2001 Simulazione numerica Tecnica che permette di eseguire esperimenti su un

Dettagli

Algoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano

Algoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano Algoritmi Euristici Corso di Laurea in Informatica e Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Mercoledì 08.30-10.30 Venerdì 08.30-10.30 Ricevimento:

Dettagli

DEFINIZIONE DEGLI INTERVENTI OTTIMALI DI RIQUALIFICAZIONE DI RETI DI DISTRIBUZIONE IDRICA ESISTENTI

DEFINIZIONE DEGLI INTERVENTI OTTIMALI DI RIQUALIFICAZIONE DI RETI DI DISTRIBUZIONE IDRICA ESISTENTI L. BORNATICI, C. CIAPONI, S. PAPIRI Definizione degli interventi ottimali di riqualificazione di reti di distribuzione idrica esistenti DEFINIZIONE DEGLI INTERVENTI OTTIMALI DI RIQUALIFICAZIONE DI RETI

Dettagli

Logica e codifica binaria dell informazione

Logica e codifica binaria dell informazione Politecnico di Milano Corsi di Laurea in Ingegneria Matematica e Ingegneria Fisica Dipartimento di Elettronica ed Informazione Logica e codifica binaria dell informazione Anno Accademico 2002 2003 L. Muttoni

Dettagli

Laboratory for innovation MUSP. Macchine utensili e sistemi di produzione. Laboratorio MUSP www.musp.it

Laboratory for innovation MUSP. Macchine utensili e sistemi di produzione. Laboratorio MUSP www.musp.it Laboratory for innovation MUSP Macchine utensili e sistemi di produzione www.musp.it Sommario La schedulazione della produzione Gli obiettivi nella schedulazione Le problematiche legate alla schedulazione

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Testing - Tecniche di Collaudo del Software Collaudabilità Un attributo di qualità del software E il grado di semplicità con cui il software può essere collaudato Si compone di

Dettagli

L'algebra di Boole falso vero livello logico alto livello logico basso Volts

L'algebra di Boole falso vero livello logico alto livello logico basso Volts L algebra di Boole L'algebra di Boole comprende una serie di regole per eseguire operazioni con variabili logiche. Le variabili logiche possono assumere solo due valori. I due possibili stati che possono

Dettagli

(accuratezza) ovvero (esattezza)

(accuratezza) ovvero (esattezza) Capitolo n 2 2.1 - Misure ed errori In un analisi chimica si misurano dei valori chimico-fisici di svariate grandezze; tuttavia ogni misura comporta sempre una incertezza, dovuta alla presenza non eliminabile

Dettagli

Capitolo 6 ELABORAZIONE DI IMMAGINI A COLORI

Capitolo 6 ELABORAZIONE DI IMMAGINI A COLORI Capitolo 6 ELABORAZIONE DI IMMAGINI A COLORI Il colore viene utilizzato nelle immagini digitali per due motivi principali: è un descrittore che semplifica l identificazione di un oggetto e la sua estrazione

Dettagli

Altri metodi di indicizzazione

Altri metodi di indicizzazione Organizzazione a indici su più livelli Altri metodi di indicizzazione Al crescere della dimensione del file l organizzazione sequenziale a indice diventa inefficiente: in lettura a causa del crescere del

Dettagli

TECNICHE DI COMPRESSIONE DATI

TECNICHE DI COMPRESSIONE DATI TECNICHE DI COMPRESSIONE DATI COMPRESSIONE DATI La compressione produce una rappresentazione più compatta delle informazioni è come se si usassero meno parole per dire la stessa cosa in modo diverso. Esistono

Dettagli

Ottimizzazione Combinatoria

Ottimizzazione Combinatoria Ottimizzazione Combinatoria Esercitazione AMPL A.A. 2009-2010 Esercitazione a cura di Silvia Canale contatto e-mail: canale@dis.uniroma1.it Università di Roma La Sapienza Dipartimento di Informatica e

Dettagli

Il sistema di crittografia NTRU

Il sistema di crittografia NTRU Il sistema di crittografia NTRU Stefano Vaccari 2148 061247 Relazione per il corso di Sistemi Informativi II Tecnologie per la Sicurezza Luglio 2003 1 Crittografia a chiave pubblica Tra i sistemi di protezione

Dettagli

la scienza della rappresentazione e della elaborazione dell informazione

la scienza della rappresentazione e della elaborazione dell informazione Sistema binario Sommario informatica rappresentare informazioni la differenza Analogico/Digitale i sistemi di numerazione posizionali il sistema binario Informatica Definizione la scienza della rappresentazione

Dettagli

Sistemi di Numerazione

Sistemi di Numerazione Fondamenti di Informatica per Meccanici Energetici - Biomedici 1 Sistemi di Numerazione Sistemi di Numerazione I sistemi di numerazione sono abitualmente posizionali. Gli elementi costitutivi di un sistema

Dettagli

Reti combinatorie: Codificatori

Reti combinatorie: Codificatori Reti combinatorie: Codificatori P. Marincola (Rev..2) Come si ricorderà, i decodificatori hanno essenzialmente il compito di convertire un codice binario a n bit in un codice -su-m, dovem =2 n. In molte

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Strategie per la progettazione di algoritmi: semplificazione e trasformazione algebrica, tecniche di Montecarlo

Dettagli