La macchina reattiva

Una macchina reattiva è un agente razionale programmato per reagire immediatamente agli stimoli esterni ( input ) con un'azione o una risposta ( output ).

Come progettare una semplice macchina reattiva

Nella forma più semplice, si tratta di agenti privi di uno stato interno che elaborano la risposta a un problema, prendendo in considerazione soltanto gli stimoli esterni in un dato momento ( sistemi S-R ).

Esempio. Negli anni '50 Grey Walter costruì una macchina automatica ( Speculatrix ) in grado di dirigersi automaticamente verso le zone illuminate, utilizzando un motore per muoversi e alcune fotocellule come sensori.

Le macchine reattive considerano lo spazio come una griglia a due dimensioni, suddivisa in celle, righe e colonne. Un po' come una battaglia navale.

L'ambiente è delimitato da confini che riducono lo spazio reale a uno spazio discreto di dimensioni limitate. Può trattarsi di un limite invalicabile ( es. muro ) oppure semplicemente dell'orizzonte di conoscenza dalla macchina reattiva ( es. fog of war ).

Cos'è la fog of war? Si tratta di un gergo militare del XIX secolo. Chi si perde in un bosco ha come punto di riferimento la propria posizione e quello che vede intorno a sé. Non conosce cosa si trova oltre la nebbia ( fog ) dello spazio visivo.

La macchina reattiva conosce la propria posizione nella mappa, sa di trovarsi nel punto ( X, Y ).

la griglia su due dimensioni

Può spostarsi nella mappa soltanto nelle celle confinanti alla propria, nelle otto direzione dei punti cardinali ( N, NE, E, SE, S, SW, O, NW ) ossia sopra, sotto, a lato e in diagonale.

La funzione decisionale dell'agente razionale

Al progettista spetta il compito di trovare una funzione logico-matematica tale da restituire una decisione a partire da una serie di input sensoriali.

Ad esempio, la macchina reattiva potrebbe prendere una decisione a partire dallo stato delle celle intorno a sé, assegnando a ciascuna il valore 0 se libera, 1 se occupata.

esempio di griglia dei valori

Il tutto compone un vettore di otto valori { x0, x1, ... , x7 } a partire dalla cella in alto e proseguendo in ordine orario.

la griglia a due dimensioni

La situazione ( stato ) precedente è rappresentata dal vettore { 1,0,1,0,1,1,0,0 }.

Questo rappresenta lo stimolo della macchina reattiva.

A partire dalla situazione di stato la macchina reattiva prende una decisione e la esegue. Questa azione è detta reazione.

la funzione decisionale in una macchina reattiva

Per prendere la decisione la macchina utilizza il vettore dello stato in una funzione di produzione ( o funzione decisionale ).

la funzione dell'agente reattivo

Il risultato della funzione ( y ) indica all'agente razionale in quale cella spostarsi ( azione ) nello spazio bidimensionale.

home



Per scrivere un commento

knowledge base