L’agente è una qualunque entità in grado di percepire l’ambiente che lo circonda attraverso dei sensori e di eseguire delle azioni attraverso degli attuatori. Ad esempio, in un essere umano alcuni sensori sono gli occhi e le orecchie. Gli attuatori possono essere le mani, i piedi o più in generale i muscoli. Nel campo dell’Intelligenza artificiale un obiettivo fondamentale è la realizzazione degli agenti intelligenti (o agenti razionali). Nella fattispecie un agente si definisce intelligente se fa la cosa giusta al momento giusto. Per poter stabilire questo occorre fornire una qualche misura delle prestazioni. In particolare è importante definire il come e il quando eseguire la valutazione delle azioni. Perciò si rende necessario un modello di successo, stabilito a priori, con il quale confrontare i risultati ottenuti. Supponiamo, ad esempio, di avere diversi agenti che risolvono tutti una copia dello stesso puzzle. In questo caso una misura del successo potrebbe essere il numero di pezzi incastrati assieme (definizione del come). Se eseguiamo i test sulle prestazioni dopo pochi minuti, otteniamo risultati migliori per quegli agenti che iniziano veloci. Se però eseguissimo il test dopo un’ora, avremo che magari alcuni agenti, che erano partiti più lentamente, hanno completato una porzione maggiore del puzzle (definizione del quando). Possiamo quindi definire il comportamento di un agente razionale ideale come quello che: sulla base delle sue percezioni e di eventuali conoscenze predefinite, compie un’azione con lo scopo di massimizzare la misura della prestazioni. Questo include anche il compiere azioni per acquisire informazioni utili (cioè acquisire conoscenza). Vediamo ora più da vicino quella che è la struttura di un agente. In generale abbiamo: agente = software + architettura Dove l’architettura è solitamente composta dall’hardware che compone l’agente, cioè da ciò che fisicamente esegue i calcoli. Ad esempio un normale computer o un robot. L’algoritmo è il programma che “guida” le azioni dell’agente e che viene eseguito dall’architettura. Un modo per definire un agente nel suo complesso, è quello di descriverlo in funzione delle sue percezioni, azioni, obiettivi e del suo ambiente. Si parla della cosiddetta descrizione PAGE (Percepts, Actions, Goals, Environment). La descrizione PAGE dell’agente che compone un puzzle potrebbe essere la seguente: