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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

10 - Programmare con gli Array

10 - Programmare con gli Array 10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Tecniche di Simulazione: Introduzione. N. Del Buono:

Tecniche di Simulazione: Introduzione. N. Del Buono: Tecniche di Simulazione: Introduzione N. Del Buono: 2 Che cosa è la simulazione La SIMULAZIONE dovrebbe essere considerata una forma di COGNIZIONE (COGNIZIONE qualunque azione o processo per acquisire

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

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

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

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

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

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l Ambiente e il Territorio

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l Ambiente e il Territorio Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l Ambiente e il Territorio Rappresentazione dell Informazione

Dettagli

Regressione non lineare con un modello neurale feedforward

Regressione non lineare con un modello neurale feedforward Reti Neurali Artificiali per lo studio del mercato Università degli studi di Brescia - Dipartimento di metodi quantitativi Marco Sandri (sandri.marco@gmail.com) Regressione non lineare con un modello neurale

Dettagli

TECNICHE DI SIMULAZIONE

TECNICHE DI SIMULAZIONE TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione

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

Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012

Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012 Implementazione del gioco del Bantumi Corso di Intelligenza Artificiale 2012 Nicola Febbrari Università degli Studi di Verona Facoltà MM.FF.NN. nicola.febbrari@studenti.univr.it 22 gennaio 2013 1 Introduzione

Dettagli

16.3.1 Alberi binari di ricerca

16.3.1 Alberi binari di ricerca 442 CAPITOLO 16. STRUTTURE DI DATI DINAMICHE root 7 5 11 2 8 13 10 Figura 16.11 Esempio di albero binario: ogni nodo contiene il dato da immagazzinare e tre puntatori che definiscono le sue relazioni di

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

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

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

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

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

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

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

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

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Dr Maria Federico Programmazione dinamica Solitamente usata per risolvere problemi di ottimizzazione il problema ammette

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

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

Management Sanitario. Modulo di Ricerca Operativa

Management Sanitario. Modulo di Ricerca Operativa Management Sanitario per il corso di Laurea Magistrale SCIENZE RIABILITATIVE DELLE PROFESSIONI SANITARIE Modulo di Ricerca Operativa Prof. Laura Palagi http://www.dis.uniroma1.it/ palagi Dipartimento di

Dettagli

Come ragiona il computer. Problemi e algoritmi

Come ragiona il computer. Problemi e algoritmi Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Problema Strategia

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

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

SCUOLA SECONDARIA DI I GRADO

SCUOLA SECONDARIA DI I GRADO Operare in situazioni reali e/o disciplinari con tecniche e procedure di calcolo L alunno si muove con sicurezza nel calcolo anche con i numeri razionali, ne padroneggia le diverse e stima la grandezza

Dettagli

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 10 Correttezza A. Miola Novembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Correttezza 1 Contenuti Introduzione alla correttezza

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

Programmi. Algoritmi scritti in un linguaggio di programmazione

Programmi. Algoritmi scritti in un linguaggio di programmazione Programmi Algoritmi scritti in un linguaggio di programmazione Sistema operativo:programma supervisore che coordina tutte le operazioni del calcolatore Programmi applicativi esistenti Sistemi di videoscrittura

Dettagli

Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria

Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria Introduzione all Informatica 1 Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria Programma del corso Programma di

Dettagli

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata

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

Codifiche a lunghezza variabile

Codifiche a lunghezza variabile Sistemi Multimediali Codifiche a lunghezza variabile Marco Gribaudo marcog@di.unito.it, gribaudo@elet.polimi.it Assegnazione del codice Come visto in precedenza, per poter memorizzare o trasmettere un

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

Indicando con x i minuti di conversazione effettuati in un mese, con la spesa totale nel mese e con il costo medio al minuto:

Indicando con x i minuti di conversazione effettuati in un mese, con la spesa totale nel mese e con il costo medio al minuto: PROBLEMA 1. Il piano tariffario proposto da un operatore telefonico prevede, per le telefonate all estero, un canone fisso di 10 euro al mese, più 10 centesimi per ogni minuto di conversazione. Indicando

Dettagli

Algoritmi di scheduling

Algoritmi di scheduling Capitolo 2 Algoritmi di scheduling 2.1 Sistemi Real Time In un sistema in tempo reale (real time) il tempo gioca un ruolo essenziale. Le applicazioni di tali sistemi sono molteplici e di larga diffusione.

Dettagli

Premesse alla statistica

Premesse alla statistica Premesse alla statistica Versione 22.10.08 Premesse alla statistica 1 Insiemi e successioni I dati di origine sperimentale si presentano spesso non come singoli valori, ma come insiemi di valori. Richiamiamo

Dettagli

RETI DI CALCOLATORI. Crittografia. La crittografia

RETI DI CALCOLATORI. Crittografia. La crittografia RETI DI CALCOLATORI Crittografia La crittografia La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice ed è il fondamento su cui si basano i meccanismi di autenticazione,

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

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

Introduzione. Il principio di localizzazione... 2 Organizzazioni delle memorie cache... 4 Gestione delle scritture in una cache...

Introduzione. Il principio di localizzazione... 2 Organizzazioni delle memorie cache... 4 Gestione delle scritture in una cache... Appunti di Calcolatori Elettronici Concetti generali sulla memoria cache Introduzione... 1 Il principio di localizzazione... 2 Organizzazioni delle memorie cache... 4 Gestione delle scritture in una cache...

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 4 Reti neurali per la classificazione Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com

Dettagli

Albero dei guasti DOTT. ING. KONSTANTINOS MILONOPOULOS 1

Albero dei guasti DOTT. ING. KONSTANTINOS MILONOPOULOS 1 Albero dei guasti E uno strumento di analisi dei guasti che si affianca all FMECA. L FMECA e un analisi di tipo bottom-up, perche si parte da un componente e si risale agli effetti di un suo guasto L Albero

Dettagli

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura

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

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico Processo di risoluzione di un problema ingegneristico 1. Capire l essenza del problema. 2. Raccogliere le informazioni disponibili. Alcune potrebbero essere disponibili in un secondo momento. 3. Determinare

Dettagli

Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari

Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro 6 Giugno 2007 Felice Iavernaro (Univ.

Dettagli

online La situazione operativa. In ambito aziendale i processi decisionali richiedono assunzioni di responsabilità a vari LABORATORIO 1

online La situazione operativa. In ambito aziendale i processi decisionali richiedono assunzioni di responsabilità a vari LABORATORIO 1 LABORATORIO 1 Scelta tra preventivi per l acquisto di un impianto di Luca CAGLIERO Materie: Informatica, Matematica, Economia aziendale (Triennio IT) L attività da svolgere in laboratorio, di carattere

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

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

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

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

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 modellazione delle strutture

La modellazione delle strutture La modellazione delle strutture 1 Programma 31-1-2012 Introduzione e brevi richiami al metodo degli elementi finiti 7-2-2012 La modellazione della geometria 14-2-2012 21-2-2012 28-2-2012 6-3-2012 13-32012

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

Test statistici di verifica di ipotesi

Test statistici di verifica di ipotesi Test e verifica di ipotesi Test e verifica di ipotesi Il test delle ipotesi consente di verificare se, e quanto, una determinata ipotesi (di carattere biologico, medico, economico,...) è supportata dall

Dettagli

Calcolatori: Algebra Booleana e Reti Logiche

Calcolatori: Algebra Booleana e Reti Logiche Calcolatori: Algebra Booleana e Reti Logiche 1 Algebra Booleana e Variabili Logiche I fondamenti dell Algebra Booleana (o Algebra di Boole) furono delineati dal matematico George Boole, in un lavoro pubblicato

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

Elementi di Informatica

Elementi di Informatica Università degli Studi di Udine Facoltà di Ingegneria CORSO DI LAUREA IN SCIENZE dell ARCHITETTURA Elementi di Informatica Algoritmi, e Programmi D. Gubiani 29 marzo 2010 D. Gubiani Algoritmi, e Programmi

Dettagli

Generalità sull energia eolica

Generalità sull energia eolica Generalità sull energia eolica Una turbina eolica converte l energia cinetica della massa d aria in movimento ad una data velocità in energia meccanica di rotazione. Per la produzione di energia elettrica

Dettagli

CAPITOLO III CONFRONTI TRA DISTRIBUZIONI

CAPITOLO III CONFRONTI TRA DISTRIBUZIONI CAPITOLO III CONFRONTI TRA DISTRIBUZIONI 3.1 CONFRONTI TRA DISTRIBUZIONI OSSERVATE E DISTRIBUZIONI TEORICHE OD ATTESE. Nella teoria statistica e nella pratica sperimentale, è frequente la necessità di

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

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

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

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

2 + (σ2 - ρσ 1 ) 2 > 0 [da -1 ρ 1] b = (σ 2. 2 - ρσ1 σ 2 ) = (σ 1

2 + (σ2 - ρσ 1 ) 2 > 0 [da -1 ρ 1] b = (σ 2. 2 - ρσ1 σ 2 ) = (σ 1 1 PORTAFOGLIO Portafoglio Markowitz (2 titoli) (rischiosi) due titoli rendimento/varianza ( μ 1, σ 1 ), ( μ 2, σ 2 ) Si suppone μ 1 > μ 2, σ 1 > σ 2 portafoglio con pesi w 1, w 2 w 1 = w, w 2 = 1- w 1

Dettagli

GESTIONE DELLE TECNOLOGIE AMBIENTALI PER SCARICHI INDUSTRIALI ED EMISSIONI NOCIVE LEZIONE 3. Angelo Bonomi

GESTIONE DELLE TECNOLOGIE AMBIENTALI PER SCARICHI INDUSTRIALI ED EMISSIONI NOCIVE LEZIONE 3. Angelo Bonomi GESTIONE DELLE TECNOLOGIE AMBIENTALI PER SCARICHI INDUSTRIALI ED EMISSIONI NOCIVE LEZIONE 3 Angelo Bonomi COSA E LA TECNOLOGIA Con il nome di tecnologia si indicano cose con vari significati come una tecnologia

Dettagli

Coordinate Cartesiane nel Piano

Coordinate Cartesiane nel Piano Coordinate Cartesiane nel Piano O = (0,0) origine degli assi ascissa, y ordinata sistemi monometrici: stessa unità di misura sui due assi, y sistemi dimetrici: unità di misura diverse sui due assi (spesso

Dettagli

Procedure di calcolo implicite ed esplicite

Procedure di calcolo implicite ed esplicite Procedure di calcolo implicite ed esplicite Il problema della modellazione dell impatto tra corpi solidi a medie e alte velocità. La simulazione dell impatto tra corpi solidi in caso di urti a media velocità,

Dettagli

Statistica descrittiva: prime informazioni dai dati sperimentali

Statistica descrittiva: prime informazioni dai dati sperimentali SECONDO APPUNTAMENTO CON LA SPERIMENTAZIONE IN AGRICOLTURA Statistica descrittiva: prime informazioni dai dati sperimentali La statistica descrittiva rappresenta la base di partenza per le applicazioni

Dettagli

I punteggi zeta e la distribuzione normale

I punteggi zeta e la distribuzione normale QUINTA UNITA I punteggi zeta e la distribuzione normale I punteggi ottenuti attraverso una misurazione risultano di difficile interpretazione se presi in stessi. Affinché acquistino significato è necessario

Dettagli