Soft Computing - Lezione di Controlli Automatici

1,610 views

Published on

Lezione di controlli automatici, Gennaio 2009 - Introduzione al Soft Computing

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,610
On SlideShare
0
From Embeds
0
Number of Embeds
21
Actions
Shares
0
Downloads
28
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Soft Computing - Lezione di Controlli Automatici

  1. 1. Matteo De Felice
  2. 2. EVOLUTIONARY COMPUTING Famiglia di tecniche stocastiche Spesso metodi bio-ispirati Metodi nati per i real-world problems
  3. 3. UN REAL-WORLD PROBLEM
  4. 4. METODOLOGIE BIO-INSPIRATE Ispirarsi al Natural Design: Ricorsione e feedback Auto-organizzazione e comportamenti emergenti Adattività e apprendimento
  5. 5. CORRISPONDENZE TRA NATURA/CALCOLO Individuo Soluzione del problema Popolazione Insieme di soluzioni Fitness Qualità di una soluzione Genotipo Rappresentazione di una sol. Crossover, Mutazione Operatori di ricerca Selezione Naturale Riuso delle buone soluzioni Evoluzione Ricerca di buone soluzioni
  6. 6. PROBLEMI DI QUESTE METODOLOGIE Soft-computing: imprecisione, incertezza e approssimazione Scarse garanzie di ottimalità e convergenza Eccesso di trial-and-error
  7. 7. VANTAGGI DI QUESTE METODOLOGIE Sviluppo molto veloce Sistemi spesso robusti e poco sensibili a rumori e disturbi
  8. 8. SCHEMA DI UN EA
  9. 9. SCHEMA DI UN EA La struttura è sempre la seguente: x[t + 1] = s(v(x[t])) Ma quale rappresentazione?
  10. 10. SOLUZIONE DI UN EA Mapping tra genotipo (rappresentazione genetica) e fenotipo (variabili del problema)
  11. 11. QUALI PROBLEMI PER GLI EA? Niente Mickey Mouse problems ma real-world problems: Vincoli non-lineari Condizioni non-stazionarie Osservazioni con rumore e variabili casuali Mancanza di sistemi esperti Feature selection Multi-modale e multi-dimensionalità
  12. 12. NIENTE PROBLEMI SEMPLICI Minimizzare funzioni convesse Risolvere un’istanza media di un problema di ottimizzazione combinatoria (es. TSP) Progettare un controllore PID
  13. 13. PROBLEMI DIFFICILI TSP con più di 10.000 nodi (VLSI) Problemi multi-obiettivo (es. progettazione di circuiti integrati estesi) Controllo di impianti industriali molto complessi Progettazione di controllori a rete neurale per robot autonomi e swarm robotics Protein folding
  14. 14. EPISTASI Definizione: Grado di interazione tra i diversi geni Ricerca casuale Algoritmo genetico (e simili) Ricerca classica
  15. 15. QUALI ALGORITMO USARE? Varietà di algoritmi: Evolution Strategies - ES (Rechenberg, 1971) Genetic Algorithms – GA (Holland, 1975) Particle Swarm Optimization – PSO (Kennedy- Eberhart, 1995) Genetic Programming - GP(Koza) Cellular Genetic Algorithm – CGA Multi-Objective Genetic Algorithm Artificial Immune Systems - AIS Ant Colony Optimization - ACO
  16. 16. ALGORITMI GENETICI (GA) Algoritmo di ricerca basato sul principio di selezione naturale Ricerca in parallelo Operatori di ricombinazione (crossover) e mutazione Soluzioni rappresentate con stringhe binarie o vettori reali Funzione di fitness legata alla capacità di sopravvivere dell’individuo
  17. 17. ALGORITMI GENETICI Inizializzo popolazione Valutazione e assegnazione fitness Riproduzione Crossover Mutazione
  18. 18. ALGORITMI GENETICI Non solo con una popolazione sola (panmittici) Movimento e interazioni basate su un grafo (algoritmi genetici cellulari) Metodi per creare “nicchie” evolutive e aumentare la diversità Ibridizzazioni
  19. 19. STRATEGIE EVOLUTIVE (ES) Nato per risolvere il problema di ottimizzazione della forma di una tubatura Da subito opera su vettori reali Operatore di ricerca: mutazione
  20. 20. (1+1)-ES Il più semplice fra tutti gli algoritmi ES Soluzione iniziale x e ampiezza σ Soluzione mutata: y = y + N(0,σ) Se f(y) < f(x) sostituisco x con y
  21. 21. STRATEGIE EVOLUTIVE (ES) Valore di σ fondamentale, si può calcolare in maniera ottima Valore di σ può essere adattivo Multi-Membered ES: (µ + λ)-ES ed anche (µ, λ)-ES
  22. 22. PARTICLE SWARM OPTIMIZATION (PSO) Soluzioni iniziali casuali Le particelle si muovono nell’(iper)spazio delle soluzioni con una velocità Swarm intelligence Esperienza individuale e collettiva
  23. 23. PARTICLE SWARM OPTIMIZATION (PSO) Ogni individuo è rappresentato da un vettore reale x e da una velocità v t1 t t t vi w vi c1 rand ( pbest xi ) c 2 rand ( gbest xi ) i
  24. 24. PROGRAMMAZIONE GENETICA (GP) Evolve “funzioni” Operatori particolari Problema di complessità (bloat)
  25. 25. APPROCCI TEORICI Studiare i meccanismi basilari Studio della complessità delle funzioni di fitness Convergenza Diversità delle soluzioni
  26. 26. NO FREE LUNCH THEOREM Esiste un algoritmo migliore di tutti gli altri? Qualunque due algoritmi [di ottimizzazione] sono equivalenti quando le loro performance sono mediate su tutti i possibili problemi (funzioni di fitness)
  27. 27. NO FREE LUNCH THEOREM Restringere ricerca dei parametri ad una classe di problemi Random Search teoricamente buona quanto gli altri algoritmi Cos’è un real-world problem? Operatori specifici per problemi specifici
  28. 28. EA IN AMBIENTI DINAMICI Funzione obiettivo variabile nel tempo Compromesso tra convergenza e (bio)diversità delle soluzioni
  29. 29. BIODIVERSITÀ Mantenere diversità significa: Punti di esplorazione “buoni” al variare 1) della funzione obiettivo Esplorazione più vasta e maggiore 2) conoscenza del dominio
  30. 30. ENSEMBLING Combinazione lineare dei predittori (Generalized Ensemble Method e Optimal Linear Combination) Fitness Sharing Negative-Correlation Learning
  31. 31. OTTIMIZZAZIONE MULTI-OBIETTIVO Teoria di Pareto Non più un ottimo ma un insieme di ottimi
  32. 32. E adesso cosa posso farci di utile? APPLICAZIONI AL CONTROLLO
  33. 33. UTILIZZI Molto usati nel campo dell’ingegneria del controllo: Progettazione di controllori Identificazione Analisi di stabilità e robustezza Fault detection
  34. 34. CONTROLLORI Utilizzo al fine di ottenere: I parametri del controllore La struttura del controllore
  35. 35. ALGORITMO GENETICO PER UN PID Genotipo: [Kp Kd Ki] Funzione di fitness: *2 ( yt yt ) t Parametri codificati in un genotipo binario di 24 bit
  36. 36. CONTROLLORE PER UNA TURBINA A GAS Turbine moderne molto instabili Molte richieste (tempo di salita veloce, assestamento rapido e poco overshoot)
  37. 37. CONTROLLORE PER UNA TURBINA A GAS Genotipo: Parametri del controllore Fitness: 9 diverse (efficienza, complessità) Sistema di fitness sharing Riduzione del numero di valutazioni
  38. 38. PROGETTAZIONE DI UN CIRCUITO Genotipo: parametri del circuito e area Funzioni di fitness: consumo, guadagno Radio Frequency Low Noise Amplifier Presenza di vincoli (constraints) Ottimi risultati rispetto a progettisti umani e software commerciali
  39. 39. ROBOTICA EVOLUTIVA Genotipo: rete neurale (ANN) Funzione di fitness: tempo che un robot impiega per raggiungere il suo obiettivo, numero di scontri con ostacoli Operatori di variazione: mutazione gaussiana sui pesi e bias
  40. 40. ROBOT BIOLOGICAMENTE ISPIRATI

×