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

Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo

Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo Evoluzione In ogni popolazione si verificano delle mutazioni. Intelligenza Artificiale In un ambiente che varia, le mutazioni possono generare individui che meglio si adattano alle nuove condizioni. Questi

Dettagli

Breve introduzione al Calcolo Evoluzionistico

Breve introduzione al Calcolo Evoluzionistico Breve introduzione al Calcolo Evoluzionistico Stefano Cagnoni Dipartimento di Ingegneria dell Informazione, Università di Parma cagnoni@ce.unipr.it 1 Introduzione Il mondo fisico ed i fenomeni naturali

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

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

Intelligenza Artificiale. Introduzione al calcolo evolutivo

Intelligenza Artificiale. Introduzione al calcolo evolutivo Intelligenza Artificiale Introduzione al calcolo evolutivo Marco Piastra Calcolo evolutivo - 1 Calcolo evolutivo ed IA Universe Borg Vogons Earth etc Biotop Society Stones & Seas etc Art Science Politics

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

Intelligenza Artificiale Ing. Tiziano Papini

Intelligenza Artificiale Ing. Tiziano Papini Intelligenza Artificiale Ing. Tiziano Papini Email: papinit@dii.unisi.it Web: http://www.dii.unisi.it/~papinit Constraint Satisfaction metodi riparativi Intelligenza Artificiale - CSP Tiziano Papini -

Dettagli

Parte I. Prima Parte

Parte I. Prima Parte Parte I Prima Parte Capitolo 1 Introduzione generale 1.1 Il problema dell assegnazione Corsi-Borsisti Il problema dell assegnazione delle borse dei corsi ai vari studenti può essere riassunto nei punti

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

I GA sono metodi adattativi che possono essere usati per risolvere problemi di ricerca

I GA sono metodi adattativi che possono essere usati per risolvere problemi di ricerca Capitolo 1 Algoritmi Genetici I GA sono metodi adattativi che possono essere usati per risolvere problemi di ricerca e ottimizzazione. Sono basati sui processi genetici degli organismi biologici. Imitando

Dettagli

Ricerca informata. Scelta dell euristica

Ricerca informata. Scelta dell euristica Ricerca informata Scelta dell euristica SMA* (Simplified Memory-Bounded A*) SMA* espande sempre la foglia migliore finché la memoria è piena A questo punto deve cancellare un nodo in memoria SMA* cancella

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

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

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

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

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

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

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

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano Capitolo 4: Ottimizzazione non lineare non vincolata parte II E. Amaldi DEIB, Politecnico di Milano 4.3 Algoritmi iterativi e convergenza Programma non lineare (PNL): min f(x) s.v. g i (x) 0 1 i m x S

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

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

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

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

Ottimizzazione non Vincolata

Ottimizzazione non Vincolata Dipartimento di Informatica e Sitemistica Università di Roma Corso Dottorato Ingegneria dei Sistemi 15/02/2010, Roma Outline Ottimizzazione Non Vincolata Introduzione Ottimizzazione Non Vincolata Algoritmi

Dettagli

2) Codici univocamente decifrabili e codici a prefisso.

2) Codici univocamente decifrabili e codici a prefisso. Argomenti della Lezione ) Codici di sorgente 2) Codici univocamente decifrabili e codici a prefisso. 3) Disuguaglianza di Kraft 4) Primo Teorema di Shannon 5) Codifica di Huffman Codifica di sorgente Il

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

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

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

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

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

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

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT

Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Note del Corso di Modelli Biologici Discreti: Un paio di algoritmi DNA per risolvere SAT Giuditta Franco Corso di Laurea in Bioinformatica - AA 2012/2013 Uno dei più grossi risultati nell informatica degli

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

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

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

Corso di Gestione dei sistemi di trasporto. Cap. 10 Pianificazione e ottimizzazione di terminal container. S. Sacone, S.

Corso di Gestione dei sistemi di trasporto. Cap. 10 Pianificazione e ottimizzazione di terminal container. S. Sacone, S. Corso di Gestione dei sistemi di trasporto Cap. 10 Pianificazione e ottimizzazione di terminal container S. Sacone, S. Siri - DIST Introduzione Negli ultimi anni si è fatta sempre più pressante l esigenza

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

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

CORSO DI STATISTICA ED ELEMENTI DI INFORMATICA

CORSO DI STATISTICA ED ELEMENTI DI INFORMATICA ANNO ACCADEMICO 2013-2014 UNIVERSITA DEGLI STUDI DI TERAMO FACOLTA DI MEDICINA VETERINARIA CORSO DI STATISTICA ED ELEMENTI DI INFORMATICA CFU 5 DURATA DEL CORSO : ORE 35 DOCENTE PROF. DOMENICO DI DONATO

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

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 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

Dott.ssa Lorella Gabriele PhD in Psicologia della Programmazione e Intelligenza Artificiale Dipartimento di Fisica Università della Calabria

Dott.ssa Lorella Gabriele PhD in Psicologia della Programmazione e Intelligenza Artificiale Dipartimento di Fisica Università della Calabria Dott.ssa Lorella Gabriele PhD in Psicologia della Programmazione e Intelligenza Artificiale Dipartimento di Fisica Università della Calabria La robotica è una scienza che si occupa di studiare e sviluppare

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

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

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

MACHINE LEARNING e DATA MINING Introduzione. a.a.2015/16 Jessica Rosati jessica.rosati@poliba.it

MACHINE LEARNING e DATA MINING Introduzione. a.a.2015/16 Jessica Rosati jessica.rosati@poliba.it MACHINE LEARNING e DATA MINING Introduzione a.a.2015/16 Jessica Rosati jessica.rosati@poliba.it Apprendimento Automatico(i) Branca dell AI che si occupa di realizzare dispositivi artificiali capaci di

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

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

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

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

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

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

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

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

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

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

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

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

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

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

DoE - Design of Experiment

DoE - Design of Experiment 3 Tecniche di DoE DoE - Design of Experiment Sequenza di Prove Sperimentali da Effettuare per Studiare e Ottimizzare un Processo Un esperimento programmato è una prova o una serie di prove in cui vengono

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

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

Modellistica molecolare

Modellistica molecolare Modellistica molecolare Davide Cittaro e Marco Stefani Master bioinformatica 2003 Introduzione La genomica ha mostrato come la sequenza di aminoacidi di una proteina non sia sufficiente per determinare

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

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

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

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

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

CURRICOLO MATEMATICA

CURRICOLO MATEMATICA 1 CURRICOLO MATEMATICA Competenza 1 al termine della scuola dell Infanzia 2 NUMERI Raggruppare, ordinare, contare, misurare oggetti, grandezze ed eventi direttamente esperibili. Utilizzare calendari settimanali

Dettagli

Complessità computazionale

Complessità computazionale 1 Introduzione alla complessità computazionale Un problema spesso può essere risolto utilizzando algoritmi diversi Come scegliere il migliore? La bontà o efficienza di un algoritmo si misura in base alla

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

LabVIEW offre un ambiente di programmazione grafica

LabVIEW offre un ambiente di programmazione grafica 03 COME OTTIMIZZARE IN LABVIEW APPLICAZIONI DI TEST AUTOMATIZZATI PER PROCESSORI MULTICORE David Hall Vediamo come delle applicazioni scritte in LabVIEW possono essere ottimizzate sfruttando tecniche di

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

Laboratorio Complementi di Ricerca Operativa DEI, Politecnico di Milano. Stima di parametri

Laboratorio Complementi di Ricerca Operativa DEI, Politecnico di Milano. Stima di parametri Stima di parametri Il gestore di un sito turistico dove si pratica il bungee-jumping deve fornire alla sovrintendenza municipale un documento che riguarda la sicurezza del servizio fornito. Il documento

Dettagli

Introduzione alla scienza della comunicazione (E. T. Jaynes)

Introduzione alla scienza della comunicazione (E. T. Jaynes) Introduzione alla scienza della comunicazione (E T Jaynes) S Bonaccorsi Department of Mathematics University of Trento Corso di Mathematical model for the Physical, Natural and Social Sciences Outline

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

DIEGO POGGIOLI Soft Computing

DIEGO POGGIOLI Soft Computing Primer design using genetic algorithm DIEGO POGGIOLI Soft Computing Bologna, 18 Maggio 2007 PCR Polymerase Chain Reaction Tecnica di biologia molecolare, fu ideata nel 1983 da Kary B. Mullis, che consente

Dettagli

(ETC) MATRICOLE DISPARI

(ETC) MATRICOLE DISPARI Elementi di Teoria della Computazione (ETC) MATRICOLE DISPARI Docente: Prof. Luisa Gargano BENVENUTI! Finalità: Fornire gli elementi di base delle teorie che sono di fondamento all'informatica 1. Computabilità

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

Slide Cerbara parte1 5. Le distribuzioni teoriche

Slide Cerbara parte1 5. Le distribuzioni teoriche Slide Cerbara parte1 5 Le distribuzioni teoriche I fenomeni biologici, demografici, sociali ed economici, che sono il principale oggetto della statistica, non sono retti da leggi matematiche. Però dalle

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

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

Giochi ed equilibri di Nash. Marco Sciandrone Dipartimento di Ingegneria dell Informazione Università di Firenze E-mail: marco.sciandrone@unifi.

Giochi ed equilibri di Nash. Marco Sciandrone Dipartimento di Ingegneria dell Informazione Università di Firenze E-mail: marco.sciandrone@unifi. Giochi ed equilibri di Nash Marco Sciandrone Dipartimento di Ingegneria dell Informazione Università di Firenze E-mail: marco.sciandrone@unifi.it 1 1 Notazione e definizione di equilibrio di Nash Si supponga

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

Analisi matriciale delle reti di Petri (P/T) - sifoni e trappole -

Analisi matriciale delle reti di Petri (P/T) - sifoni e trappole - Analisi matriciale delle reti di Petri (P/T) - sifoni e trappole - - richiami preliminari sulle proprietà strutturali - Abbiamo visto che alcune caratteristiche dei sistemi dinamici (DES compresi) non

Dettagli

Ricerca Operativa Prima Parte

Ricerca Operativa Prima Parte 1 2 fasi Prima Parte 2 Testi didattici S. Martello, M.G. Speranza, Ricerca Operativa per l Economia e l Impresa, Ed. Esculapio, 2012. F.S. Hillier, G.J. Lieberman, Ricerca operativa - Fondamenti, 9/ed,

Dettagli

0. Piano cartesiano 1

0. Piano cartesiano 1 0. Piano cartesiano Per piano cartesiano si intende un piano dotato di due assi (che per ragioni pratiche possiamo scegliere ortogonali). Il punto in comune ai due assi è detto origine, e funziona da origine

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

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Il concetto di Algoritmo e di Calcolatore Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Cos

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

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

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

Modelli di Ottimizzazione

Modelli di Ottimizzazione Capitolo 2 Modelli di Ottimizzazione 2.1 Introduzione In questo capitolo ci occuperemo più nel dettaglio di quei particolari modelli matematici noti come Modelli di Ottimizzazione che rivestono un ruolo

Dettagli

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Linguaggi di Programmazione Michele Tomaiuolo Linguaggi macchina I

Dettagli

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,

Dettagli

Analisi 2. Argomenti. Raffaele D. Facendola

Analisi 2. Argomenti. Raffaele D. Facendola Analisi 2 Argomenti Successioni di funzioni Definizione Convergenza puntuale Proprietà della convergenza puntuale Convergenza uniforme Continuità e limitatezza Teorema della continuità del limite Teorema

Dettagli