Transcript Training

Introduction to Intelligent Software Agents 변영태 홍익대학교

A Physical Symbol System and Hypothesis

  “A physical symbol system consists of a set of entities, called symbols, which are physical patterns that can occur as components of another type of entity called an expression (or symbol structure). Thus, a symbol structure is composed of a number of instances of symbols related in some physical way. .... The system also contains a collection of processes that operate on structures to produce other structures... a machine that produces through time an evolving collection of symbol structures.....” A physical symbol system has the necessary and sufficient means for general intelligent action.

The Society of Mind [Minsky]

 “.. To explain the mind, we have to show how minds are built from mindless stuff, from parts that are much smaller and simpler than anything we’d consider smart… But what could those simpler particles be - the “agents” that compose our minds? This is the subject of our book…”

Agent History

• • • DAI(Distributed Artificial Intelligence):(cf. PAI or DPS) – modularity, reusability, easier maintenance, speed, independence, etc.

Macro issues – the interaction and communication between agents – the decomposition and distribution of tasks – coordination and cooperation – conflict resolution via negotiation Theories, architectures and languages • Broadening types of agents in a new strand

Agent Theory

    Concerned with the questions of what an agent is, and the use of mathematical formalisms for representing and reasoning about the properties of agents Weak notion (autonomy, social ability, reactivity,pro activeness) Strong notion (using concept or mentality and ) Essentially specifications ( how to conceptualize agents)

Agent Architecture

– Software engineering models of agents – (Deliberative, Reactive, Hybrid) 

Agent Language

– Software systems for programming and experimenting with agents.

Kinds of Agents-I

 The MuBot Agent “.. two orthogonal concepts.” – ability for autonomous execution.

– ability to perform domain oriented reasoning.

 The AIMA Agent “.. anything that can be viewed as perceiving its environments through sensors and acting upon that environment through effectors.”  The Maes Agent “..computational systems that inhabit some dynamic environment, sense and act autonomously in this environment, and by doing so realize a set of goals or tasks for which they are designed.”

Cont’d(2)  The KidSim Agent “.. as a persistent software entity dedicated to a specific purpose. ‘Persistent’ distinguishes agents from subroutines; agents have their own ideas about how to accomplish tasks, their own agendas. ‘Special purpose’ distinguishes them from entire multifunction applications; agents are typically much smaller.”  The Hayes-Roth Agent “.. three functions: perception of dynamic conditions in the environment; action to affect conditions in the environment; and reasoning to interpret perceptions, solve problems, draw inferences and determine actions.”

Cont’d(3)  The IBM Agent “.. software entities that carry out some set of operations on behalf of a user or another program with some of degree of independence or autonomy, and in doing so employ some knowledge or representation of the user’s goals or desires.”   The SodaBot Agent “.. programs that engage in dialogs [and] negotiate and coordinate transfer of information.” The Foner Agent “.. Agents collaborate with their users to improve the accomplishment of the user’s tasks. ..”

Cont’d(4)  The Brustoli Agent “Autonomous agents are systems capable of autonomous, purposeful action in the real world.”  The FAQ Agent “This FAQ will not attempt to provide an authoritative definition...”

All software agents are programs, but not vice versa.

           reactive (sensing and acting) veracity (telling the truth) autonomous ( exercises control over its own actions) commitment ( showing willingness -> doing that service) goal-oriented (pro-active) temporally continuous (a continuously running process) communicative (socially able) learning (adaptive) mobile (able to transport itself from one machine to another) flexible (actions are not scripted) character (personality and emotional state)

Kinds of Agents-II

 softbots (software robot)  knowbots (knowledge-based robots)  taskbots (task-based robots)  userbots  personal agents (personal assistants)  autonomous agents “.. senses the environment and acts on it, over time, in pursuit of its own agenda and so as to effect what it senses in the future”

cont’d(2)

 information or internet agents,  web-agents  planning agents  reasoning agents  hybrid agents  ...etc

A Typology(1)

• • • static or mobile agents deliberative or reactive agents collaborative learning, interface, collaborative, truly smart agents w.r.t. cooperation, learning, and autonomy

A Typology(2)

• • • • • • • • Collaborative agents Interface agents Mobile agents Information/Internet agents Reactive agents Hybrid agents Smart agents ..etc

Collaborative Agents

    cooperation + autonomy BDI (beliefs, desires and intentions) (+ obligations) several motivations – too large problems for a single agent – for the interconnecting and interoperation of multiple existing systems – for distributed problems – to enhance modularity, speed, reliability, flexibility and reusability at the Kn level eg. CMU’s Pleiades system(task agents and infoagents, KQML+e-mail), ADEPT, MII, ARCHON, etc.

Interface Agents

– Observing and imitating the user – Receiving positive and negative feedback from the user – Receiving explicit instructions from the user   – Asking other agents for advice learning and using learned knowledge, negotiate with other agents, extend to more interesting areas such as entertainments eg. scheduling meetings, assistance in web browsing, remembrance, news agents, matchmaking(buyer and seller), classifying ads service, etc.

  

Mobile Agents

– Reduce communication costs, Limited local resources, Easier coordination, Asynchronous computing, Free market trading service, Flexible distributed computing, etc. Eg, Telescript architecture – Telescript is an interpreted object-oriented and remote programming language – Telescript engine (telescript API and OS) sends off and accept mobile agents.

Java, Agent-Tcl, Safe-Tcl, etc.

Transportation, authentication, secrecy, security, cash, performance issue for too many mobile agents, interoperability, brokering/directory services, service communication

Information/Internet Agents

     Drowning in data, but starved of information Managing, manipulating or collating information from many distributed sources Searching and indexing Using a host of internet management tools such as Spiders( a Spider is an indexer able to search the WWW, depth-first, and store the topology of the WWW in a DBMS and the full index of URLs ) and search engines in order to gather the information Eg, softbot

Reactive Software Agents

   No internal symbolic model of environment The physical grounding hypothesis “ .. in order to build a system that is intelligent, it is necessary to have representations grounded in the physical world. ..” Complex patterns of behavior can emerge from their interactions when the ensemble of agents is viewed globally.

Hybrid Agents

  Union of the benefits of agents of several different philosophies Eg. InteRRap (deliberative + reactive), TouringMachines (dynamic + rational + mobile), Hayes Roth’s integrated architecture, PRS(procedural reasoning system), CIRCA

Heterogeneous Agent System

  An integrated set-up of at least two or more agents which belong to two or more different agent classes Eg. PACT

Knowledge Sharing Effort

 지식베이스의 공유와 재사용    Multiagent?( agreement, negotiation, persuasion, competition) ACL – Ontology ( 지식과 정보 공유 ) – KIF ( 교환되는 지식표현 형식 ) – KQML ( 교환을 위한 프로토콜 ) 4 groups – Interlingua ( 지식베이스의 다른 두 표현 언어 번역 ) – KRSS ( 동일계열 지식표현 시스템의 표준 ) – External Interface (KB 와 KQML) DB 사이의 하이레벨 통신언어 – SRKB ( 지식공유를 위한 공통된 개념 체계 - ontology)

Agent Architecture

Domain knowledge

Inference engine

Communication module

Multiagent Architecture

1. Direct communication

– Contract-net approach (requests for proposal, bids, contracts) – Specification approach (supplying other agents with its capabilities and needs) – Adv: no reliance on the existence, capabilities, or biases of any other programs Disadv: too much cost when too many agents exist, implementational complexity 

2. Assisted coordination

– a federated system (facilitators)

FIPA’s Agent Platform

– Agent management system (supervisory control like creation, deletion, suspension, resumption, authentication, migration, etc.) – Directory facilitator (agent existence, service, capabilities, protocols, etc... It’s like “yellow pages”) – Agent name server (an index of all agents resident on a platform, mapping between globally unique agent name and local transport addresses) – Agent communication channel (communication method connecting all agents in an AP and between AP’s, routing of messages)

Agent Language

   Specification language – 기능 , 목적 , 속성 , 지식 , 계획 , 믿음 ..

Scripting (programming) language – AOP (agent-oriented programming), PLACA (planning communication agents), Java, Telescript(language, engine, protocol), Tcl/Tk Agent shell – Jess, DYNACLIPS, AGENT_CLIPS, KAPICLIPS

Agentification of Old Programs

Transducer

Wrapper

Rewrite

Electronic Commerce

    1st generation(fax, bar code, file transfer, etc.) 2nd (internet-based) 3rd (partially agent-based, brokering systems like BargainBot, BargainFinder, WebShopper, etc.) 4th (completely agent-based, + personalization, negotiation, interoperability with another EC systems, etc., ICOMA, UNIK-agent, MARS)

Examples

• • • • • • • WebCrawler, AltaVista, Yahoo, Lycos, Infoseek, etc.

다찾니 (UNI Finder; www.mochanni.com) 심마니 ( 한글과컴퓨터 ; simmany.hnc.net), 애니서치 ( 삼성 ; www.anysearch.com), 정보탐정 ( 한국통신 ; www.idetect.com) 웹글라인더 (Insight Net; www.infoglider.com) 까치네 ( 대구대 ), 코시크 ( 충남대 ), 와카노 ( 계명대 )

정보에이전트 기본구조

문제와 타스크 생성 및 트리거 모듈 WWW 정보 베이스 및 행동결정지식 학습모듈 평가모듈 Agent 의 현상태 정보 행동결정 모듈 접속모듈 외부세계 ( 다른 Agent 및 Web)