12. 지능형 에이전트

Download Report

Transcript 12. 지능형 에이전트

12. 지능형 에이전트
지능형 에이전트
 복잡한 동적인 환경에서 목표 달성을 시도하는 시스템
 외부환경,
센서, 행위자들 사이에서 상호 작용
 소프트웨어 에이전트(software agent) 또는 지능형 에이전트
(intelligent agent)로 불림
가상공간 환경에서
 특정의 사용자를 돕기 위해서
 반복적인 작업들을 자동화 시켜주는 컴퓨터 프로그램

 미래의

소프트웨어 산업을 주도할 것
2000년대 초 시장규모가 4.5조원에 이르렀음
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 개요
 등장 배경
 반도체
기술의 발달로 저가, 고성능의 개인용 컴퓨터 보급
 네트워크의 급속한 확산  인터넷 사용인구 확대
 동영상과 음성을 지원하는 멀티미디어 기술과 서비스 확산
 인터넷, 인트라넷 상의 정보량 폭주  정보범람(information overload)
검색 엔진 개발 활발  과다한 정보 검색에는 한계
 인공지능은 웹서비스를 사용자들이 쉽게 접근할 수 있도록 하는 기법을 개발
하기 위한 새로운 분야 연구  에이전트

 에이전트: 복잡한 유동적인 실세계 환경에서 목표를 달성하려고 센서를 통하여
외부환경을 인지하고 행위자(actuator)를 사용하여 환경에 영향을 미치는 상호작
용의 개체




자율적응 에이전트(autonomous adaptive agent)
소프트웨어 에이전트
지능형 에이전트
인터페이스 에이전트
환경
센서
인지
에이전트
행동
행위자
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 전통적 에이전트 설계 방법
 일반


사용자 프로그램의 에이전트화
Oval 시스템: 사용자가 에이전트 행동을 기술하는 규칙을 프로그래밍
사용자가 직접 프로그래밍 함으로 신뢰할 수 있으나, 프로그래밍은 부담
 응용문제와



사용자에 대한 지식을 가진 지식공학자가 에이전트 구축
UCEgo 시스템: UNIX 사용 시 실수를 교정하도록 대안 제시
사용자의 프로그래밍 부담은 없다
사용자 개인의 선호도를 만족시키지 못함  신뢰도 떨어짐
 기계학습을 이용한 접근법 제안
 기계학습을



사용한 접근법
시스템을 적응적으로 변화시켜 동일한 성질의 작업을 효과적으로 수행
사용자의 요구조건, 기능 모두 만족시킴
개별적 차이를 강조한 환경에 유리
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 기계학습
 동일한 성격의 작업을 더욱 효과적으로 수행할 수 있도록 시스템을 적응적으로 변화


1960년대 게임이론에서 출발
1980년대 이후 활발히 연구

기계학습 패러다임
•
•
•
•

귀납적 학습(inductive learning)
연역적 학습(deductive learning)
유전 알고리즘(genetic algorithm : GA)
연결주의 학습(connectionism learning)
정보검색 및 정보여과에 응용

•
불확실성에서 기술된 확률적 방법론 (Bayesian 분류기를 학습알고리즘으로 사용)
기계학습 방법들을 이용한 정보 검색 방법
 멀티에이전트 시스템(multi-agent system : MAS)
 출현배경


하나의 에이전트로는 해결하지 못하는 복잡한 문제를 풀기 위하여 여러 에이전트간의 협동이 필요.
문제해결



복잡한 문제를 단순한 문제로 분산
단일 에이전트들이 분산된 문제 해결
이들 결과를 조합
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 일상에서
이미 사용중인 에이전트
MS Office의 워드나 파워포인트의 도우미인 의인화된 캐릭터.
 엑셀의 차트 마법사인 Wizard
 Magnet : 스케줄링 및 사용자를 위한 유사 작업들을 자동 분류
 Open Sesame : 키보드와 마우스 사용의 반복적인 유형을 관찰함으
로써 이를 감시 해주는 학습 에이전트
 Beyond Mail : 신규 전자우편에 자동으로 반응하는 법을 배우는 에
이전트
 IBM사의 Globenet : 주기적으로 인터넷으로 보내져서 IBM 제품에
관한 최근의 뉴스들을 검색하여 고개의 문의사항을 취급하는 직원을
보조하는 탁상용 도우미

 에이전트
연구추세
80년대: 분산 AI 연구자들 중심 – 탐색, 학습, 계획 등
 90년대 초: 단독형 에이전트(인공지능 학자)
 90년대 중반 이후: 인터넷과 결합한 에이전트(멀티 에이전트 등)

인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 정의와 성질
 정의
 다양하게
정의되고 있음
Negroponte(MIT 미디어 연구소 소장) : 에이전트는 사용자의 위임
된 권한을 갖는 개인 소프트웨어 도우미
 T.Selker(IBM 연구소) : 에이전트란 사람이 시간이 있으면 스스로 할
수 있는 일을 하는 방법을 아는 소프트웨어
 General Magic사 : 네트워크를 이동하도록 발송되는 Telescript 프
로그램
 기타: 목표를 달성하기 위해 적당한 방법으로 행동하여 환경으로부
터 수집된 정보를 활용하여 주어진 임무를 수행하는 소프트웨어

 환경의 변화에 자신을 적응 시켜야 함
사용자
인공지능: 개념 및 응용(3판)
에이전트
도용태 김일곤 김종완 박창현 공저
컴퓨터 환경
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 에이전트의 다양한 정의들의 공통사항
 특정한
목적을 위해 사용자를 대신해서 작업을 수행하는 자율적
인 프로세스(autonomous process)
 독자적으로 존재하지 않고 어떤 환경의 일부이거나 그 안에서 동
작하는 시스템

환경 : 운영체제, 네트워크, MUD 게임환경
 지식베이스와
추론 기능을 가지며 사용자, 자원(resource), 다른
에이전트와 정보교환과 통신을 통해 문제해결을 도모
 스스로 환경의 변화를 인지하고 그에 대응하는 행동을 취하며, 경
험을 바탕으로 학습하는 기능을 가짐
 수동적으로 주어진 작업만을 수행하는 것이 아니고, 자신의 목적
을 가지고 그 목적 달성을 추구하는 능동적 자세를 가진다.
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트(Agent)의 일반적 성질
 보통의 소프트웨어와 차별을 주는 특성
 자율성(autonomy)
: 사람이나 다른 사물의 직접적인 간섭 없이
스스로 판단하여 동작
 사회성(social ability) : 에이전트 통신 언어를 사용하여 사람과
다른 에이전트들과 상호 작용
 반응성(reactivity) : 실세계, GUI를 경유한 사용자, 다른 에이전
트들의 집합, 인터넷 같은 환경을 인지  그 안에서 일어나는 변
화에 시간상 적절히 반응
 능동성(proactivity) : 단순히 환경에 반응하여 행동하는 것이 아
니라 주도권을 가지고 목표 지향적으로 행동
 시간 연속성(temporal continuity) : 전면에서 실행하고 이면에
서 잠시 휴식하는 연속적으로 수행하는 일종의 데몬(demon)

주어진 입력을 처리하여 결과를 보여주고 종료하는 것이 아님
 목표
지향성(goal-orientedness) : 복잡한 고수준 작업처리를 위
해 작은 세부 작업으로의 분할, 처리순서의 결정 등을 책임짐
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 사람 속성을 가지는 강한 의미의 에이전트의 속성
 이동성(mobility)
: 작업을 현재의 컴퓨터에서 처리하지 않고 다
른 컴퓨터로 이동하여 수행함  네트워크 부하를 감소
 합리성(rationality) : 목표를 달성하기 위해서 행동(목표 달성을
방해하는 방향으로는 행동하지 않음)
 적응성(adaptability) : 사용자의 습관과 작업 방식, 취향에 따라
스스로를 적응시킴
 협동성(collaboration) : 복잡한 작업을 수행하기 위해 다른 에이
전트, 자원, 사람과 협력적으로 작업처리
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 에이전트 설계를 위한 정의
 에이전트를
설계/제작하기 위해서 융통성 있게 자율적으로 행동
할 수 있는 환경에 있는 컴퓨터 시스템
 이 정의에 포함된 핵심 개념 3가지
상황성(situatedness) : 환경내에서 센서로부터 입력을 받고, 특정
방법으로 환경을 변화시키는 행동을 수행함(cf. MYCIN과 대비)
 자율성(autonomy) : 사람이나 다른 에이전트의 직접적인 간섭 없이
자신의 움직임과 내부 상황을 조절할 수 있는 지각능력을 가짐

예) 소프트웨어 데몬

유연성(flexibility): 설계 목적에 부응하기 위한 특성  유연성이 고
려될 때 다음의 특징을 가짐
– 반응적(responsive) : 환경을 인식하고, 그 환경 안에서 발생하는 변화
에 대해 적절한 방법으로 반응함
– 능동적(pro-active) : 환경에 대한 반응이 기회주의적 목표 지향적인 행
동을 취할 수 있어야 하며, 적절한 곳에서 행동을 시작
– 사회적(social) : 문제를 해결하기 위해서 인간과 다른 에이전트들과 상
호 작용함  도움을 주거나 받을 수 있음
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트의 역사
 지능형 에이전트 주요 관련 학문
 인공지능,
객체지향 시스템, 인간과 컴퓨터 상호작용(Human
Computer Interaction : HCI)
 인공지능 : 최종적으로 지능 가공물을 만드는 것에 관한
것이고, 이런 가공물이 어떠한 환경 속에서 지각하고 행
동할 수 있다면 그것을 에이전트라 할 수 있다.
초 인공지능과 관련된 연구 활동 분야 -> 계획(planning)
 계획연구 : “무엇을 할 것인가” 를 스스로 알아내는 것
주로 행동을 위해 요구 되어진 계획 알고리즘에 관심 집중
 1980년대까지 소규모 연구
 인공지능 연구자들이 기본적으로 다양하게 다른 지적 활동에 중
점을 두는 경향이 있었기 때문
 70년대
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트의 역사
 인공지능에서의 에이전트 모델
Simon의 물리적 기호 시스템 가설에 근거한
심사 숙고형 에이전트(deliberative agent) -> 대부분이 여기에
속한다.
 Newell과

특성 : 믿음(belief), 욕망(desire), 의도(intention)
Intentions
Plans
Goals
Beliefs
Knowledge
Desires
BDI structure
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트의 역사
 R.
Books의 반응형 에이전트(reactive agent)
다양한 행동들의 상호작용으로부터 나타나는 지능적인 행동의 관점
을 강조
 기호주의 표현이나 추론을 사용하지 않는 에이전트 제어 구조인 포
함구조(subsumption archi)를 개발
 MIT’s Cog

 상호작용
에이전트(interacting agent)
다수의 에이전트들간의 조정(coordination)과 협력(cooperation)
 DAI or MAS
 FIRA’s Robocup

인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트의 역사
에이전트와
객체지향 시스템과 비교
유사점
행동을 수행할 수 있는 어떤 상태를 캡슐화(encapsulation), 메소드화하는 계산적인 개체
로 정의
메시지 전달방식으로 통신
차이점
에이전트와 객체들의 자율성의 정도
객체는 프로그램 상태 전반에 걸쳐서 제어가 가능하지만, 그것의 행위에 대해서는 제어가
불가능
표. 객체지향 프로그래밍(OOP) 대 에이전트지향 프로그래밍(AOP)
OOP
AOP
기본 구성단위
기본 구성단위 상태정의
파라미터
객체
무제약
에이전트
믿음,위임,능력,선택 등
계산과정
메시지 전송과 응답
메시지 전송과 응답
메시지의 형태
방법들의 제약조건
무제약
없음
통지,요청,제안,거절 등
정직성,일관성 등
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트의 역사
 인간과 컴퓨터의 상호작용
 직접조작


사용자가 어떤 작업의 수행을 요구했을 때 오직 요구 받은 작업만 수행하
는 컴퓨터 프로그램
간접조작

사용자가 특정한 일을 시키지 않아도 에이전트가 사용자의 행동을 일정기간 동안 관
찰하고 그 결과를 기반으로 사용자를 대신하여 작업을 수행.
사용자가 정보를 다루는 형태에 따른 에이전트 역할 이해(직접/간접 조작)
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 지능형 에이전트의 기능과 역할에 따른 분류
 학습
에이전트
 인터페이스 에이전트
 데스크탑 에이전트
 인터넷 에이전트
 모빌 에이전트
 전자 상거래 에이전트
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 학습 에이전트 (learning agent)
 정의
사용자가 웹 상에서의 수행하는 행동을 관찰하고 어떤 내용에 관심을 가지고
있는지를 판단하여 사용자에게 알맞은 내용을 전달하도록 하는 것


학습과정
 사용자에게 제공될 자료들에 대한 정보가 제공될 내용과 함께 자체 데이터 베이
스에 저장되어 있어야 한다.
 구축된 내용 데이터베이스와 관찰된 사용자 웹 사용 습관을 기초로 데이터 마이
닝.
 사용자의 취향과 관심을 결정.
 사용자에게 적합한 내용을 제공.
학습 에이전트 사용의 어려운 점
 현재 사이트의 내용을 학습 에이전트를 사용할 수 있는 환경으로 재조정이 필요
 브라우저의 쿠키를 활용하거나 회원 등록을 통해 사용자를 확인 해야 하는 과정
이 필수적
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 협력적 여과와 학습 에이전트 의 비교
 협력적 여과 (collaborative filtering)
사용자가 자발적으로 제공한 정보를 사용하여 사용자를 비슷한 선호도를 가진
집단으로 나누어 그 집단 내에서 서로에게 추천하는 것



일정 수 이상의 사용자 필요.
사용자 선호도에 관한 내용을 입력하는 즉시 사용자들에게 맞는 내용을 전달.
학습 에이전트


사용자가 적은 경우에도 적절한 내용 전달.
사용자의 웹에서의 행위를 일정 시간이상 관찰한 이후에야 정보 제공.
 학습 에이전트의 기계학습에 따른 분류
 규칙기반 학습 에이전트
 결정트리(decision tree) 학습 에이전트
 신경회로망 학습 에이전트
 강화 학습(reinforcement learning) 에이전트
 진화학습(evolutionary learning) 에이전트
 통계적 학습 에이전트
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 인터넷 뉴스를 개인별로 학습시켜 주는 웹 학습 에이전트 사용 예
 신경회로망과 지능형 에이전트 기술을 사용한 유즈넷(Usenet) 뉴스그룹 여과 학습 에이전
트.

특징 : 신경망 기술을 여과 알고리즘으로 사용,정보 여과기능,개선된 사용자 인터페이스
향상된 검색어 처리 능력, 한글/영문 키워드 검색기능.
정보 여과 학습 에이전트 실행 예
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 인터페이스 에이전트 (interface agent)
 사용자 인터페이스 에이전트(user interface agent) 정의
사용자의 원하는 작업을 찾아내서 이들을 네트워크나 응용 프로그램 안 어디에서든지 실
행할 수 있도록 이동시켜준다.
 Ex)
 마이크로소프트사의 Bob 에이전트에서 작은 개와 작동
 로터스사의 cc:Mail 안에서 메일 조작을 설명하기 위해 사용하는 형태
 지니, 의인화된 표현

사용자 인터페이스
 능동적 : 점차 늘어 가고 있다.
 수동적 : 일반적으로 쓰인다.
이유 : 인터페이스 문법이나 규칙을 지켜야 하기때문에 프로세스들에게 더 적은 모호성

요구사항


사용자 요구의 자연적 모호성을 명확하게 해석하여 모호하지 않은 문장으로 즉시 프
로세스에게 전송
결과를 사용자에 의해 요구되고 이해되어지는 형태로 변환
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
사용자 인터페이스 에이전트 개념

인터페이스 에이전트의 예
 CMU에서 개발한 WebMate
 WWW을 탐색하는 사용자를 도와주는 에이전트




사용자 프로파일로부터 기호를 추론하고 현재 페이지에 이어지는 페이지를 오프라인으로 탐색
HTTP 헤더를 여과하여 브라우저와 웹 서버간의 트랜잭션을 기록.
쿠키 정보를 여과하여 사용자의 사생활 보호.
GIF 파일의 애니매이션을 막아서 탐색 속도를 높여준다.
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 데스크탑 에이전트 (desktop agent)
 데스크탑

에이전트(desktop agent) 정의
PC나 워크스테이션의 운영체제에 상주하면서 국부적으로 실행되는 소
프트웨어 에이전트.
분류


운영체제 에이전트
사용자와 운영체제의 본질적인 상호작용을 필요로 하는 사용자 작업들을 수행.
예제 (윈도우 시스템 에이전트를 이용한 디스크 검사)
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
응용 프로그램 에이전트
사용자에 의해 부여된 작업을 자동적으로 응용 프로그램 내에서 수행
 예제 (엑셀 차트 마법사)

응용 프로그램 환경 에이전트
사용자를 대신해서 응용 프로그램 환경에서 작업을 수행
 예제 : Office Wizard (사용자에 의해 부과된 작업을 응용 프로그램 환경에서
자동적으로 수행한다.)

인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 인터넷 에이전트 (internet agent)

정의
서버에 상주하면서 사용자와 직접적인 상호작용 없이 사용자를 대신해서 작업
을 수행하도록 인터넷상에서 분산된 온라인 정보를 접근하는 프로그램

기능에 따른 분류
 웹 검색 에이전트(web search agent)
사용자를 대신해서 탐색 결과를 제공하기위해 웹 공간을 순회하는 로봇 에
이전트를 채용
 정보여과 에이전트(information filtering agent)
사용자의 개인적 취향에 따라 인터넷상에 있는 정보를 여과
 고지 에이전트(notification agent)
개인적으로 중요한 사건이 발생하면 이를 사용자에게 알린다
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류

웹 검색 에이전트(web search agent)

대표적 검색 엔진
Yahoo, Lycos, Infoseek, Alta Vista, 심마니, empas
• 사용자가 키워드 중심의 질의어를 검색 엔진으로 전송
• 질의어에 부합되는 URL들의 리스트가 반환

검색엔진의 성능평가
• 정확도(precision)
반환된 전체 문서에 대한 질의와 연관된 문서의 비율
• 조회율(recall)
전체 문서 수에 대한 질의어에 의해 반환된 전체 연관 문서들의 비율
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
웹
브라우저
질의
질의
서버
응답
사용자
색인
데이터
베이스
인터넷
웹
로봇
검색엔진
검색엔진의 구조도
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류



예제) 인터넷 정보검색 에이전트
워싱턴주립대학에서 개발한 Softbot
Softbot은 소프트웨어 툴을 사용해서 사용자를 대신해서 정보검색, 전자우편 전송, 파일
출력 등의 서비스 수행
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 모빌 에이전트 (mobile agent)



정의
클라이언트 컴퓨터로부터 원격 실행을 위해 다양한 서버들로 자기자신을 이동
시킬 수 있는 소프트웨어 에이전트
특징
 온라인 작업을 줄여서 네트워크 부하를 감소
 위치에 무관한 통신은 분산 시스템 기술을 향상
 단점 : 보안 취약
모빌 에이전트 기술의 주요 요소
 에이전트들이 프로그램 되는 언어
 인터프리터
 엔진들이 다른 컴퓨터 상에 상주하도록 허용하는 통신 프로토콜 필요
 인증(authentication), 보안(security), 사생활보호(privacy),
책임(responsibility)
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 클라이언트/서버모델과 모빌 에이전트 모델 비교
 클라이언트/서버 모델
 데이터를 프로그램 소스에 적재.
 모빌 에이전트
 개발자에게 프로그램을 데이터 소스에 적재할 수 있는 융통성을 제공
클라이언트/서버 모델과 모빌 에이전트 모델의 비교
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류

모빌 에이전트의 예


IBM 도쿄 연구소에서 개발한 모빌 에이전트 개발툴 Aglet.
• Aglet은 인터넷상에서 한 호스트에서 다른 호스트로 이동할 수 있는 자바 객체.
• Aglet은 자신의 데이터뿐만 아니라 프로그램도 함께 이동한다.
• ASDK(Aglets Software Development KIT)
 자바로 모빌 인터넷 에이전트를 프로그래밍하기 위한 개발 환경.
ASDK의 Tahiti 프로그램의 실행 예
Transfer “hello”
to “atp://biho:1050”
Message “THANKS!!”
is returned by
“atp:biho:1050”
IBM Aglet을 활용하여 메시지 전송을 실행한 예
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
지능형 에이전트의 분류
 전자 상거래 에이전트 (electronic
 전자



commerce agent)
상거래 에이전트 역할
사용자를 대신해서 쇼핑을 가서 제품 사양을 얻어 오며 사양에 만족하는 구매 추천 목
록을 반환
상품이나 서비스 판매를 제공함으로써 판매자들을 대신한 점원의 역할
고객 상담

Ex) 가격 비교 검색 엔진
 BargainFinder
 Jango

대표적 예
 사용자가 원하는 상품에 대해서 최저가의 판매자를 탐색하여 추천하는 서비스
 가격
비교 에이전트
 Anderson Consulting사에서 개발한 BargainFinder
 Excite's Jango

문제점: 가격 이외의 조건에서 우위를 점하는 사이트의 반발 및 접속 제한고객 상담
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
멀티에이전트 시스템 (MAS)
 멀티 에이전트 시스템
 멀티 에이전트 시스템의 개요
 분산 인공지능(Distributed Artificial Intelligence : DAI)


분산 문제해결(Distributed Problem Solving : DPS)


복잡한 문제를 여러 개의 작은 부 문제로 분할한 후, 개별 문제의 해를 구하고 이들을
결합시켜 최종적으로 문제를 푸는 메커니즘
분리된 에이전트에 의해 해결되는 부 문제들이 상호 의존적이면서 중첩된 경우에 해
들 사이의 비일관성(inconsistency)를 해결하면서 최종 해를 구하는 방식
협력 분산형 문제해결(Cooperative Distributed Problem Solving : CDPS)

•
임기응변적으로 대응하면서 문제 해결을 지원하기 위해 에이전트들은 상황이 변함에
따라 다른 에이전트들과 대화와 협력하기 위한 행위나 전략을 취하면서 문제를 해결
상호 협력형 분산문제해결 기법
 FA/C(functionally-accurate cooperative) 패러다임
부 문제들간에 상호종속성(interdependency)이 문제를 효율적으로
해결하도록 에이전트들을 자극하여 국부 정보를 증대시켜 전체 문제해결
활동에 필요한 정보를 주고받도록 한다.
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트

멀티 에이전트 시스템의 특징



각 에이전트는 불확실한 정보 또는 문제 풀이 능력을 가지므로 제한된 견해를 갖는다.
전체 시스템의 포괄적인 제어 기능이 없다.
데이터는 분산되어 있고, 계산은 비동기식으로 이루어진다.
 멀티 에이전트는 자신이 존재하는 시스템이나 자신의 보다 나은 목표 달성을 위해
상호작용하고 에이전트들 사이의 상호 작용들이 서로 조화되도록 대화한다.
 대화(communication) : 에이전트들이 그들의 행동이나 행위를 조정
 조정(coordination)

 공유 환경에서 활동하는 에이전트들이 갖는 중요한 성질로서 에이전트들을 중재
하는 기능
조정의 정도 :
 에이전트들이 자원 경쟁을 줄이고, 교착상태를 피하며, 안전성을 유지함으로써
이질적인 활동을 피하는 정도이다.

협력(cooperation) : 비적대적인 에이전트들간의 조정

타협 (negotiation) : 경쟁적이거나 이기적인 에이전트들 사이의 조정
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
조정(Coordination)
협력(Cooperation)
타협(Negotiation)
계획(Planning)
그림 12.14 멀티에이전트 시스템에서 조정 기법 분류
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트


멀티 에이전트 조정기법에는 일련의 메시지를 교환하는 상호작용 프로토콜이 필수
적
상호작용 프로토콜(interaction protocol)의 종류

조정 프로토콜(coordination protocol)



협력 프로토콜(cooperation protocol)




분할된 작업을 분배할 때 사용, 비즈니스 세계의 메커니즘을 모델링한 프로토콜
예) 멀티에이전트를 이용한 전자상거래
흑판 시스템(blackboard system)



작업을 분할하고 이를 에이전트들에게 분배할 때 사용
예) 능력이 떨어지는 에이전트와 복잡한 문제를 해결하는 경우
계약망 프로토콜(contract net protocol)


제한된 자원을 갖는 환경에서 에이전트들은 그들 자신의 관심사를 증대시키거나 그룹의 목표를 달
성하기 위해 서로의 활동을 조정해야 할 때 사용
예) 다른 에이전트에게 시간적으로 적절한 정보를 제공, 에이전트 행동의 동기화
흑판은 에이전트들 사이에 사건, 자료, 작업 등을 공유하는 하나의 매개체
예) 멀티에이전트 시스템의 고유 개념인 DPS에서 사용된 개념
타협 프로토콜(negotiation protocol)



다른 목표를 갖는 에이전트들 사이에 빈번하게 일어나는 상호 작용이 요구될 때 사용
타협 : 두 개 이상의 에이전트들에 의해 결합 판단이 이루어지는 과정
예) 목적이 서로 상반되는 관계에 적용
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트

계약망 프로토콜(contract net protocol)의 진행과정
계약망 프로토콜을 사용한 작업 처리 과정
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
멀티에이전트 시스템 응용


멀티 에이전트 시스템 응용
적용분야

복잡한 문제를 해결하기 위해 에이전트 설계, 자원할당, 작업 분할 및 업무 분담 같은 기능
이 필요한 모든 분야

에이전트 그룹의 계획들 사이의 충돌문제를 해결하기 위한 응용
- 항공 교통 제어(air traffic control) 분야를 위한 협력 전략

공정 제어기 분야




ARCHON
멀티에이전트 시스템을 개발하기 위한 소프트웨어 플랫폼
전기 전송 관리나 발전소의 입자 가속 제어 등에 적용된 가장 초기에 현장 배치된 멀티에이전트 시
스템
에이전트 팀 협력

군사훈련, 로보컵 축구, 인터넷상의 다자간 오락 등등
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
 정보시장(information marketplace)에서 멀티 에이전트 개념을 활용하
는 실례


BIG(resource-Bounded Information Gathering) : UMASS’s MAS lab.
작업 스케줄링, 계획, 문서처리, 그리고 해석적 문제해결 등 인공지능의 다양한 기술들을
통합하여 인간 정보 수집자의 역할을 수행할 수 있는 정보 수집 에이전트.
생성
Task Assessor
User Interface
입력
Blackboard
TAEMS
Task Structure
입력
Server Information
Database
입출력
입출력
질의
목표
결과
전송
Decision maker
입력
RESUN Information
Gathering Planner
Design-to-Criteria
Scheduler
생성
Task Schedule
입력
Execution Subsystem
& Monitoring
Document
Document
classifiers
실행결과
Web Retrieval
Interface
Text Processing
Tools
BIG 에이전트 구조 및 실행 시나리오
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications
12. 지능형 에이전트
에이전트 응용
 에이전트 응용


에이전트 기술의 적용 분야
• 제조업, 공정 제어, 정보통신, 항공 운항 관제, 교통 및 운송관리.
• 비교적 작은 틈새에서 작동되는 시스템.
• 정보검색 및 여과, 정보 수집 및 통합 등 정보관리
• 전자 상거래와 비즈니스 프로세스 제어를 포함.
• 컴퓨터 게임, 인간과 컴퓨터간의 대화식 극장.
• 3차원 가상 현실 분야.
• 건강 산업(환자 감시와 건강 보조 분야).
에이전트 상용화의 한계
• 지능형 에이전트 시스템을 설계하고 구축하려면 전문적인 소프트웨어 기
술자가 많이 필요.
• 에이전트 기술을 광범위하게 채용하기위한 기술적 문제
멀티 에이전트 시스템 응용 제품을 정확히 특징짓고 그들의 구조들을
조립할 수 있는 체계적인 방법을 사용할 수 있는 설계자 부족
유용한 에이전트 시스템 개발 도구가 부족
인공지능: 개념 및 응용(3판)
도용태 김일곤 김종완 박창현 공저
Artificial Intelligence: Concepts and Applications