agenti “intelligenti” per il commercio elettronico HAL 9000 ‘Internet Revolution, HAL’s “Birthday”, and Commercial Co-Option’, http://www.palantir.net/2001/meanings/essay00.html Perché “intelligenti”? “Quanto” intelligenti? Cosa sono gli agenti intelligenti? sistemi software in computer e/o reti che assistono gli utenti nell’esecuzione di attività legate all’uso delle tecnologie computer-based (Maes, 2001) Applicazione/sistema “computer-based” (trasmissione/comunicazione, CAD, commercio elettronico, etc.) cooperazione utente Agente intelligente un diverso approccio all’uso delle tecnologie computer-based (cfr. Kay, 1984) dalla “direct manipulation” …. - strumenti per l’uso diretto delle tecnologie computer-based - contesto statico, delimitato, strutturato (organizzato) - funzionamento dipende direttamente dall’utente … all’ indirect management - contesto non strutturato, aperto, dinamico - compiti “delegati” a software sulla base di obiettivi o preferenze indicate dall’utente - molte attività/eventi avvengono inconsapevolmente per l’utente Cosa sono gli agenti intelligenti? SOFTWARE DI “INTELLIGENZA ARTIFICIALE” CHE: • • • • assistono gli utenti nel loro lavoro, o svolgono compiti per conto dell’utente sulla base dei suoi obiettivi, preferenze, criteri comportamentali o decisionali (Feldman and Yu, 1999) – monitoraggio di eventi, situazioni, scenari – raccolta di informazione/conoscenza – decisioni sono autonomi – possono intraprendere azioni autonome “nell’interesse dell’utente” in relazione agli obiettivi loro assegnati sono in grado di adattarsi al contesto (Woolridge and Jennings, 1995) – possono apprendere – possono reagire al cambiamento del contesto – possono “interagire socialmente” possono cooperare e “interagire socialmente” – con operatori umani – con altri agenti software Software: “semplice programma” o “agente”? Gli agenti SONO programmi software, ma non tutti i programmi software sono agenti PROGRAMMA • • AGENTE • • • Statico Direct manipulation (utente avvia ogni azione) Interazione precodificata Funzionamento fisso e prevedibile (segue le istruzioni date) Funziona solo a richiesta e poi si arresta • residente in una macchina fissa • • • • • • dinamico Indirect management (autonomia) Interazione dinamica e autonoma può modificare il proprio funzionamento (regole possono cambiare) sempre in funzione (anche in modo trasparente per l’utente) può “trasferirsi” in altre macchine Agenti vs. Sistemi Esperti • • • • • AGENTI per l’utente “medio” per attività “comuni” per vari compiti/problemi autonomi adattivi • • • • • SISTEMI ESPERTI per l’utente “esperto” per attività “specialistiche” per un (tipo di) problema solo attivi su richiesta a struttura fissa • tecniche abilitanti Rule-Based Reasoning • “if condition A is satisfied, then do action B else do action C” – esempio: filtri email – problemi: comportamento “statico” • Knowledge-Based Reasoning • riproduzione di vaste basi di conoscenza per meccanismi inferenziali • possibilità di estendere la base di conoscenza (agenti apprendono come “risultato dell’esperienza”) – problema: “knowledge engineer” • Analisi statistica • identificazione correlazione statistica tra eventi; decisioni conseguenti – esempi: “Open Sesame” (azioni ripetute); “Magic Cap” (indirizzi email) • Analisi fuzzy • logica basata su informazione imprecisa o incompleta • Reti neurali • funzionamento in due fasi: 1. apprendimento; 2. Esecuzione • esempi: riconoscimento semantico di testi • Evolutionary computing • algoritmi genetici; modelli di selezione biologica • Agenti in rete • mobile agents: agenti in grado di migrare da un server alll’altro (v. lucido) • multiagent systems: sistemi di agenti che interagiscono (es. agenti negoziatori in aste) Perché agenti intelligenti in Internet? caratteristiche di Internet dimensione (effetto “overload”) complessità (contesto non strutturato) dinamicità del contesto elevata interazione struttura aperta caratteristiche degli utenti sempre più utenti; sempre meno esperti Internet e commercio elettronico come contesti “virtuali” (contrapposti al mondo fisico) Agenti nel Web: esempi di campi applicativi (potenzialmente utili) Agenti di interfaccia (interface agent) per task ripetitivi customizzazione automatica (software, bookmark, indirizzi email, ecc.) gestione sicurezza e accessi in rete Agenti di segreteria Gestione comunicazione e contatti schedulatori profilatura del personale Intermediari informativi Individuazione nuovi siti e nuove informazioni utili Analisi, confronto, classificazione di documenti e risorse informative Business intelligence (monitoraggio trend economici; analisi della concorrenza) Data mining Formazione a distanza E-commerce ESEMPI DI FUNZIONALITA’ TIPICHE - Ricerca potenziata (più estesa, più articolata) - Ricerca personalizzata (profilatura, ecc.) - Ricerca nel “deeb web” - gestione avanzata dei risultati delle ricerche; estrazione di informazioni dalle pagine trovate -Monitoraggio delle modifiche alle pagine web -Avviso automatico di nuovi risultati delle ricerche Agenti intelligenti per il commercio elettronico “mediazione” di agenti intelligenti (?) • • • • • • identificazione ed esplicitazione dei bisogni (need identification) identificazione del prodotto da acquistare - valutazioni comparative (product brokering) identificazione del fornitore (merchant brokering) negoziazione (negotiation) acquisto; acquisizione della consegna (purchase and delivery) servizi post-vendita; valutazione del prodotto (product service and evaluation) notification agent recommendation agent comparison shopping agent negotiation agent Fasi nell’acquisto di un bene (fonte: Maes, 1999) ESEMPIO: amazon (fonte: Maes, 1999) Tecniche: filtraggio sulla base di profili, vincoli, o interattivo Esempi: personalogic Esempi: bargainfinder; priceline Esempi: Kasbah (MIT); eMediator (Washington Univ.) auctionbot (Univ. of Michigan) Limitazioni e problemi aperti: elementi per una discussione • uso ancora molto limitato • automazione o flessibilità? (cfr. Gebauer and Scharl, 1999) • il problema del contesto “standard” • delega, “fiducia”, reputazione • vantaggi per chi? • Es. riduzione differenziali competitivi? • intrasparenza dei mercati, comportamenti opportunistici e uso di agenti L’approccio opposto: strutturare meglio il Web IL PROGETTO “SEMANTIC WEB” L’IDEA • Modificare il web in modo da renderlo maggiormente idoneo a un’interazione uomomacchina – “Riscrivere” le pagine web inserendo “marcatori” idonei per identificarne i contenuti (standard XML e derivati) – Classificare i dati secondo “categorie di informazioni” (costruzione di ontologie) – Progettare motori di ricerca “evoluti” in grado di operare in questo contesto I PROBLEMI • La riscrittura del Web • La necessità di usare strumenti strutturati e complessi • La costruzione di ontologie (documenti che forniscono il significato e le relazioni tra i termini) – Operazione che solleva problemi teorici e pratici – Operazione costosa – Il risultato deve essere largamente condiviso (es.: ontologia per gli studenti di ingegneria)