import Section from "../components/Elements/Section"; import Panel from "../components/Elements/Panel"; import Example from "../components/Elements/Example"; import Timer from "../components/Elements/Timer"; import Todo from "../components/Elements/Todo"; import ILatex from "../components/Rendering/ILatex"; import TablePanel from "../components/Elements/TablePanel"; import BLatex from "../components/Rendering/BLatex"; import PLatex from "../components/Rendering/PLatex"; import Tick from "../components/PageSpecific/ApprendimentoSistemiArtificiali/Tick"; const r = String.raw; export default function(props) { return (
Se sei uno studente dell'Unimore, puoi accedere all'archivio del corso su Google Drive.
NetLogo è un software di modellazione sistemi multiagente, da noi usato per le lezioni di laboratorio.
Si può scaricare o usare da browser.
Il suo codice sorgente è disponibile su GitHub, e ha una pagina di documentazione.
Sistemi naturali o artificiali che si basano su leggi reversibili e deterministiche.
In natura, alcuni leggi possono sembrare irreversibili a livello macroscopico, ma sono in realtà reversibili a livello microscopico.
Urne di Ehrenfest: due urne con N palline; estraggo una pallina da una urna casuale ad ogni passo e la sposto nell'altra; con tante palline il sistema appare irreversibile.
Stati in cui si può trovare un sistema dinamico.
Tutte insieme formano lo (iper)spazio delle fasi.
Lo stato finale di un sistema dinamico.
Tutte le fasi tendono a uno specifico attrattore.
I sistemi dinamici elaborano informazione attraversando fasi e raggiungendo un attrattore.
Sistemi dinamici i cui cambiamenti sono descritti da funzioni lineari.
Situazioni iniziali di un sistema lineare.
Possono essere:
Nell'insieme dei
Infine, in sistemi dissipativi può anche comparire:
Funzione che rappresenta lo stato attuale del sistema.
Gli attrattori coincidono con i suoi punti di minimo, detti punti fissi.
Il suo complementare è la funzione energia.
Sono sistemi con le seguenti caratteristiche:
Hanno anche caratteristiche di livello più alto derivate dalle quattro precedenti:
Gli agenti solitamente hanno anche:
Lo sviluppo negli agenti di nuove capacità per cui non erano stati programmati.
Classificazione in base a come prende le decisioni un agente:
Classificazione in base a come sono definiti gli obiettivi di un agente:
Classificazione in base a quanto conosce dell'ambiente un agente:
Influenza esercitata dal sistema sugli agenti per guidarli verso il loro obiettivo.
Può essere:
Comportamento emergente che si manifesta nei sistemi multiagente con tantissimi agenti.
Indica la capacità di risoluzione di problemi complessi attraverso la collaborazione di più agenti semplici.
Meccanismi simili a quelli evolutivi umani che permettono ai tratti degli agenti di convergere verso un valore.
Inizialmente definita come numero di discendenti fertili, solitamente indica quanto è probabile che i tratti di un individuo siano passati alla generazione successiva.
Sequenza di valori che definisce uno o più tratti di un individuo.
Un insieme di individui aventi tutti gli stessi cromosomi.
Fenomeno che causa una piccola variazione casuale nei cromosomi dei figli.
Previene la convergenza prematura in un sistema.
Meccanismo di costruzione dei cromosomi in un figlio: i cromosomi dei genitori vengono tagliati nello stesso punto scelto a caso, e per costruire quelli del figlio viene presa una parte dal padre e l'altra parte dalla madre.
Può portare al miglioramento di un individuo e allo sviluppo di nuovi tratti, ma solo nelle parti di cromosoma che sono diverse tra i due genitori.
Sequenza di valori all'interno di un cromosoma, che può includere anche sezioni in cui il valore è irrilevante.
Gli algoritmi genetici permettono di trovare gli schemi con la fitness più alta in assoluto in un tempo relativamente breve: il sistema generalmente favorisce gli schemi corti con fitness alta.
Situazione in cui si è raggiunta una soluzione non-ottimale a causa dell'assenza di novità nel sistema.
Si può impedire con vari metodi: con la mutazione, introducendo requisiti di località per l'accoppiamento, scegliendo diversamente i genitori, etc...
Programmi che dati tanti esempi sono in grado di classificare un elemento in una o più categorie.
Sono formati da classificatori, liste di messaggi, detettori e effettori.
Strutture logiche che elaborano i messaggi.
Valutano una espressione logica (condizione) sui messaggi in arrivo, e se questa risulta essere vera, emettono un nuovo messaggio in risposta (azione).
Unità di informazione di un sistema a classificatori: sono generati da detettori e classificatori, e consumati da classificatori ed effettori.
Sensori che percepiscono lo stato dell'ambiente esterno e lo riportano sotto forma di messaggi.
Motori che rispondono ai messaggi effettuando una qualche azione nell'ambiente.
Un punteggio associato ad ogni classificatore.
Più un classificatore viene attivato, più la sua forza crescerà.
Il numero di condizioni che devono essere soddisfatte perchè il classificatore si attivi.
Prodotto di specificità e forza di un classificatore.
Rappresenta quanto è probabile che venga utilizzato un dato classificatore nel caso che le condizioni di più di uno vengano soddisfatte.
Se l'input non soddisfa nessun classificatore esistente, se ne crea uno nuovo con una azione casuale.
Se i classificatori emettono in output un messaggio non valido, si crea un nuovo classificatore che trasforma quel messaggio in un output valido.
Concetto secondo il quale non è importante l'architettura fisica di un intelligenza, ma solo la sua capacità di elaborare simboli.
Agenti che possono collegarsi tra loro tramite sinapsi (dirette) e ricevere ed emettere impulsi lungo di esse.
Gli impulsi ricevuti vengono temporaneamente memorizzati dal neurone attraverso valori che decadono nel tempo.
Se la somma dei valori di tutti gli impulsi ricevuti è maggiore di una certa soglia, allora il neurone emetterà un impulso.
Un modello semplificato di rete neurale in cui vengono considerati solo tempi discreti (
È stato sviluppato da Warren McCulloch (un neurofisiologo) e Walter Pitts (un matematico).
I neuroni si attivano in un dato
Le sinapsi hanno una intensità: è un moltiplicatore che viene applicato a tutti gli impulsi transitanti la sinapsi.
Un neurone con una sinapsi entrante con intensità
Un neurone con due o più sinapsi entranti con intensità
Un neurone con due o più sinapsi entranti con intensità
Un'estensione del modello booleano per permettere l'apprendimento automatico delle configurazioni giuste di neuroni.
È stato sviluppato da John Hopfield (uno scienziato).
In ogni
Tutti i neuroni del modello sono intercollegati tra loro da sinapsi.
I neuroni non possono essere collegati a loro stessi.
Questo porta il costo computazionale del modello ad essere
Una funzione dell'intero sistema che rappresenta il totale degli stati di tutti i neuroni e tutte le connessioni.
Un metodo per realizzare l'apprendimento nel modello di Hopfield.
Si incrementa l'intensità delle sinapsi che connettono neuroni nello stesso stato, e invece si decrementa l'intensità di quelle che connettono neuroni in stati opposti.
Considerando i neuroni spenti e quelli accesi come
Applicando l'apprendimento hebbiano al modello di Hopfield si ottengono sinapsi simmetriche.
Se è valida questa proprietà, si può dimostrare che l'energia del sistema è sempre decrescente, e che quindi che tenderà a un punto fisso!
Il numero di neuroni attivati in entrambi i pattern.
Più pattern vengono imparati da un modello, più è facile che essi interferiscano tra loro.
In caso di pattern completamente scorrelati tra loro, il limite di pattern imparabili è circa:
Per minimizzare l'interferenza tra pattern, è possibile insegnare al modello un archetipo: si insegna più volte il pattern originale applicandoci una minima quantità di interferenza casuale.
Un modello di rete neurale che supporta l'apprendimento e che presenta più strati di neuroni.
Ha costi computazionali molto più bassi del modello di Hopfield.
Una rete neurale che viene incapsulata all'interno di un singolo neurone.
La sua emissione è determinata dalla sua funzione di emissione
Un percettrone la cui funzione di emissione è:
Si parte da intensità casuali delle sinapsi.
Si prova a classificare degli esempi pre-classificati: se un esempio viene classificato nel modo sbagliato, si alterano le intensità delle sinapsi in direzione della sua classificazione corretta.
Un modello a percettroni in cui non si presentano cicli.
Alcuni dei neuroni che vi sono all'interno saranno dunque dei neuroni sorgente e dei neuroni pozzo.