2. 문헌고찰 1. 서론 2.1. - kaistkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf ·...

12
Abstract 전자상거래의 다음 세대로서 에이전트 기반 거래의 기본틀을 제시한다. 이를 위해서 첫째, 전자상거래에서 수행가능한 계약유형에 관한 문법체계를 정의한다. 문법체계에 의해 존의 입찰이나 경매는 물론 새로운 유형의 약유형을 표현할 있다. 둘째, 에이전트 간의 통신을 위해서 에이전트 통신언어 계층, 전자 상거래 계층, 제품규격 계층 세개의 층으로 이루어진 메시지 표준을 제시한다. , 통신메시지와 계약유형을 처리할 있는 문제해결기와 통신제어기로 이루어진 지능형 에이전트의 기본구조 - UNIK-AGENT - 제시 하였다. 네째, UNIK-AGENT 의해 에이전트 상거래의 과정을 컴퓨터 구매과정에 대하여 예시하였다. 1. 서론 인터넷 기반 전자적시장 (Electronic Market) 서는 이전에 비해 훨씬 저렴해진 탐색 거래 비용에 덕분에 소규모 액수의 상품을 구매하려 고객도 전세계에 있는 여러 상인을 접촉할 있게 되었다. 그러나 이러한 편리성은 거래 량을 천문학적으로 증가하게 있기 때문 수동적 방식에 의한 거래는 비경제적이 수가 있다. 따라서 사람의 노력을 줄여주기 하여 상인 에이전트와 고객 에이전트를 이용한 상품 탐색, 선택 계약과정의 자동화에 대한 필요성이 대두된다. 에이전트간의 통신을 자동화하기 위해 우선 상품 판매와 구매의 프로토콜을 결정하는 계약 유형을 정의하여야 한다. 전자적시장에서는 존의 시장에서보다 좀더 다양하고 유연한 새로 계약유형의 정의가 가능하고, 계약유형의 성격을 결정하는 변수와 변수의 값에 의해 하나의 계약유형을 표현할 있다. 전자 상거 래에서 적용 가능한 새로운 계약유형은 3장에 다루기로 한다. 둘째, 선택된 계약유형에 고객과 상인을 지원할 있는 지능형 에이 전트를 설계할 필요가 있다. 연구에서는 UNIK-AGENT(Lee and Lee, 1997;1995)이라 불리우는 지능형 에이전트의 본구조를 제시하는데, 여기서 지능형 에인전트 통신기능과 메타수준의 문제해결기능이 가된 기존 전문가시스템의 확장으로 간주한다. 또한 고객 에이전트와 상인 에이전트 간의 신을 위해서 에이전트 통신언어 계층, 전자상 거래 계층, 제품 규격 계층 세개의 계층을 갖는 메시지 표준을 제안한다. 아울러 메시지 생성과 문제해결을 중심으로 입찰과 같은 경쟁 계약과정을 예시한다. 논문의 구성은 다음과 같다. 2절에서는 련문헌에 대한 고찰을 하고, 3 절에서는 전자상 거래에서의 새로운 계약유형을 정형화된 문법 으로 정의하며, 4 절에서는 UNIK-AGENT불리 우는 지능형 에이전트의 구조를 제시한다. 5 에서는 계약과정 중에 필요한 메시지의 형식과 유형을 세개의 계층에 의해 정의하며, 6 절에서 지능형 에이진트에 기반을 계약과정이 예시된다. 최종적으로 7절에서는 연구의 기여 중심으로 결론이 제시된다. 2. 문헌고찰 2.1. 전자상거래 전자상거래란 정보, 제품, 용역 등의 판매와 구매와 같은 상품 거래를 컴퓨터에 의해 수행 하는 것을 말한다. 좀더 광의로 해석하면, 컴퓨 터와 통신 네트웍을 이용하여 사업상의 거래를 주도 관리하고, 이를 수행하는 새로운 방식 일컫는다. 특히 여기서 컴퓨터는 인간의 사결정을 지원하는 과정에서 정보 제공의 차원 이상을 수행한다 (Kalakota and Whinston, 1995) 도매분야에서는 인터넷이 확산되기 이전에 전자상거래 유형 중에 하나인 컴퓨터에 거래 시스템 (Computer mediated trade system) 있었다. 미국의 목화거래시스템인 TELCOT (Lindsey, et.al., 1990), 싱가포르의 돼지거래시장 HAM (Neo, 1992), 일본의 중고차 거래시스템 AUCNET 영국의 가축및 곡물거래시스템 EASE 등이 대표적인 예이다. 이들 시스 템은 전통적인 시장 기능의 자동화 뿐아니라 시장의 구조도 바꿀 만큼 파급효과가 크다 (Lee, 1995). 학술연구로는 이호근과 Lee(1993)제약논 프로그래밍(Constraint Logic Programming: CLP) 이용한 지능형 전자 거래 메카니즘을 제안하였고, 다시 이를 멀티미디어와 결합하여 경매시장에 적용하였다(Lee, et.al, 1995). 그러나 지능형 에이전트에 의한 전자상거래에서의 경쟁계약과정에 관한 연구 이웅규 이재규 한국과학기술원 테크노경영대학원 E-mail:[email protected] [email protected]

Upload: others

Post on 11-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

Abstract

전자상거래의 다음 세대로서 에이전트 기반 상거래의 기본틀을 제시한다. 이를 위해서 첫째,전자상거래에서 수행가능한 계약유형에 관한

문법체계를 정의한다. 이 문법체계에 의해 기

존의 입찰이나 경매는 물론 새로운 유형의 계약유형을 표현할 수 있다. 둘째, 에이전트 간의

통신을 위해서 에이전트 통신언어 계층, 전자

상거래 계층, 및 제품규격 계층 등 세개의 계층으로 이루어진 메시지 표준을 제시한다. 세

째, 통신메시지와 계약유형을 처리할 수 있는

문제해결기와 통신제어기로 이루어진 지능형

에이전트의 기본구조 - UNIK-AGENT - 를 제시

하였다. 네째, UNIK-AGENT에 의해 에이전트 기반 상거래의 과정을 컴퓨터 구매과정에 대하여

예시하였다.

1. 서론

인터넷 기반 전자적시장 (Electronic Market)에서는 이전에 비해 훨씬 저렴해진 탐색 및 거래

비용에 덕분에 소규모 액수의 상품을 구매하려

는 고객도 전세계에 있는 여러 상인을 접촉할

수 있게 되었다. 그러나 이러한 편리성은 거래

량을 천문학적으로 증가하게 할 수 있기 때문

에 수동적 방식에 의한 거래는 비경제적이 될수가 있다. 따라서 사람의 노력을 줄여주기 위하여 상인 에이전트와 고객 에이전트를 이용한

상품 탐색, 선택 및 계약과정의 자동화에 대한

필요성이 대두된다.에이전트간의 통신을 자동화하기 위해 우선

상품 판매와 구매의 프로토콜을 결정하는 계약

유형을 정의하여야 한다. 전자적시장에서는 기존의 시장에서보다 좀더 다양하고 유연한 새로

운 계약유형의 정의가 가능하고, 계약유형의

성격을 결정하는 변수와 그 변수의 값에 의해

하나의 계약유형을 표현할 수 있다. 전자 상거

래에서 적용 가능한 새로운 계약유형은 3장에

서 다루기로 한다. 둘째, 선택된 계약유형에 따라 고객과 상인을 지원할 수 있는 지능형 에이

전트를 설계할 필요가 있다.본 연구에서는 UNIK-AGENT(Lee and Lee,

1997;1995)이라 불리우는 지능형 에이전트의 기본구조를 제시하는데, 여기서 지능형 에인전트

는 통신기능과 메타수준의 문제해결기능이 첨가된 기존 전문가시스템의 확장으로 간주한다.또한 고객 에이전트와 상인 에이전트 간의 통신을 위해서 에이전트 통신언어 계층, 전자상

거래 계층, 제품 규격 계층 등 세개의 계층을

갖는 메시지 표준을 제안한다. 아울러 메시지

생성과 문제해결을 중심으로 입찰과 같은 경쟁

계약과정을 예시한다.본 논문의 구성은 다음과 같다. 2절에서는 관

련문헌에 대한 고찰을 하고, 3절에서는 전자상

거래에서의 새로운 계약유형을 정형화된 문법

으로 정의하며, 4절에서는 UNIK-AGENT라 불리

우는 지능형 에이전트의 구조를 제시한다. 5절에서는 계약과정 중에 필요한 메시지의 형식과

유형을 세개의 계층에 의해 정의하며, 6절에서

는 지능형 에이진트에 기반을 둔 계약과정이

예시된다. 최종적으로 7절에서는 연구의 기여

를 중심으로 한 결론이 제시된다.

2. 문헌고찰

2.1. 전자상거래

전자상거래란 정보, 제품, 용역 등의 판매와

구매와 같은 상품 거래를 컴퓨터에 의해 수행

하는 것을 말한다. 좀더 광의로 해석하면, 컴퓨

터와 통신 네트웍을 이용하여 사업상의 거래를

주도 및 관리하고, 이를 수행하는 새로운 방식

을 일컫는다. 특히 여기서 컴퓨터는 인간의 의사결정을 지원하는 과정에서 정보 제공의 차원

이상을 수행한다 (Kalakota and Whinston, 1995)도매분야에서는 인터넷이 확산되기 이전에

도 전자상거래 유형 중에 하나인 컴퓨터에 의한 거래 시스템 (Computer mediated trade system)이 있었다. 미국의 목화거래시스템인 TELCOT(Lindsey, et.al., 1990), 싱가포르의 돼지거래시장

인 HAM (Neo, 1992), 일본의 중고차 거래시스템

인 AUCNET 및 영국의 가축및 곡물거래시스템

인 EASE 등이 그 대표적인 예이다. 이들 시스

템은 전통적인 시장 기능의 자동화 뿐아니라

시장의 구조도 바꿀 만큼 그 파급효과가 크다

(Lee, 1995).학술연구로는 이호근과 Lee(1993)가 제약논

리 프로그래밍(Constraint Logic Programming:CLP)를 이용한 지능형 전자 거래 메카니즘을

제안하였고, 다시 이를 멀티미디어와 결합하여

경매시장에 적용하였다(Lee, et.al, 1995). 그러나

지능형 에이전트에 의한 전자상거래에서의 경쟁계약과정에 관한 연구

이웅규 이재규

한국과학기술원 테크노경영대학원

E-mail:[email protected] [email protected]

Page 2: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

이들 연구에서는 에이전트의 관점에서 문제를

다룬 것이 아니라 주로 고객과 판매자를 연결

해주는 메카니즘에 주안점을 두고 있다.인터넷상에서의 전자상거래에 관한 연구로

는 호프만 등(1995)이 상업적 웹 사이트를 여섯

가지 형태로(온라인 스토어프론트, 인터넷 프리

센스, 내용, 몰, 인센티브 사이트, 검색 에이젼

트) 분류하고 전자상거래상에서의 새로운 마켓

모형의 필요성을 제기하고 있다 (Hoffma, et.al.1995).

2.2. 전자상거래에서의 지능형 에이전트

‘에이전트’ 혹은 ‘지능형 에이전트’에 대한

정의는 매우 다양하다 (Etxioni and Weld, 1995;Genesereth and Ketchoel, 1994;. Nissen, 1995)사실

에이전트의 개념에 대해서는 오랫동안 여러 학자들간의 논쟁의 대상이었고 (Franklin andGraesser, 1996; Nessen, 1995) 아직까지 합의된

정의가 없다. 본 논문에서는 지능형 에이전트

를 통신기능과 메타수준의 문제 해결기능이 첨부된 기존 전문가시스템의 확장으로 정의한다.

전자상거래에서의 지능형에이전트에 대한

필요성은 많이 언급되고 있음에도 불구하고 아직까지 학계나 실무에서 그리 많은 시스템이

소개되고 있지는 못하다.바겐파인더 (Bargain Finder)는 (Bargain Finder,

1995) 전자상거래에서 이용되고 있는 전형적인

지능형 에이전트로서 사이버 쇼핑에서 고객에

게 커다란 잇점을 줄 수 있는 비교쇼핑

(Comaprison Shopping)을 지원하고 있다

(Hoffman and Novak, 1995). 상품거래과정을 지원

하는 지능형 에이전트로는 수요에이전트

(Demand Agent)와 결정에이전트 (DecisionAgent)를 들 수 있다. 이들 두 에이전트는 각각

고객의 역할과 상인의 역할을 맡아서 상품의

탐색과 선택을 수행한다 (Personal Agent, 1996).그러나 아직 그 개념이 구현되어 있지는 못하

다.

2.3. 에이전트 통신 언어

에이전트간의 통신을 위해서는 에이전트가

메시지를 생성하고 접수된 메시지를 해석해야

한다. 이를 목적으로 메시지의 정형적이며 일

반적인 표현법인 에이전트 통신언어 (AgentCommunication Language: ACL)이 필요하다. ACL은 외부언어 (Outer Language)와 내부언어

(Inner Language)로 구성되어 있는데 (Geneserethand Ketchpel, 1994), 본 연구에서는 지식 질의

및 처리 언어 (Knowledge Query andManipulation Language: KQML) (Finin, et.al. 1993)

을 외부언어로, UNIK-OBJECT (객체지향 도구)를내부언어 (KAIST, 1994)로 채택하였다.

ACL은 기본적으로 응용분야에 독립적으로

만들어진 언어이다. 따라서 ACL을 전자상거래

분야에 적용하기 위해서는 전자상거래 적용가

능한 내부언어를 정의해야만 한다. 이 개념을

구현하기 위해, 세개의 메시지 계층을 적용한

다. 즉 그림-2과 같이 에이전트 통신언어 계층

(응용분야에 독립적인 외부언어), 전자상거래

계층 (전자상거래에 필요한 항목들), 그리고 제품규격 계층 (제품의 규격을 나타내는 계층)으로 되어 있다.

3. 전자상거래에서의 계약유형

계약과정은 고객에이전트와 상인에이전트간

의 통신을 결정하는데 매우 중요하기 때문에

본 절에서는 전통적인 경쟁계약 과정을 살펴보

고, 전자상거래에서 적용가능한 새로운 계약유

형을 설계한다.

3.1. 전통적 상거래에서의 경쟁계약과정

구매를 위한 전통적인 경쟁계약, 즉 입찰과

정은 다음과 같은 네 단계로 이루어져 있다.

1) 입찰공고: 입찰에 대한 참여는 가능한한

모든 입찰자에게 공고되어야 한다. 입찰

공고에는 필요한 제품규격, 수량, 입찰시

기 등이 포함된다.

2) 예정가의 결정: 낙찰자의 선정을 위한 기준으로 사용되는 예정가를 결정한다. 예정

가는 미리 공개되지 않는다.

3) 입찰: 입찰자는 같은 시각, 같은 장소에 모여서 자신의 입찰가를 비공개로 입찰한다.

4) 낙찰자의 결정: 입찰가를 공개하고 예정가

이하인 입찰가격중 최저가에 해당하는 입찰자를 낙찰자로 한다. 만일 예정가보다

낮은 가격을 입찰한 입찰자가 없을 때는

해당 입찰자가 나올 때까지 입찰을 반복

한다 (Kim, 1994; Park, 1990).이와 같은 입찰과정에서는 몇 가지의 변형

이 가능하다. 일반적으로 입찰자에 대한 신청

은 누구에게나 공개되어 있지만, 구매액이 상

대적으로 적거나, 해당 판매자의 수가 많지 않거나, 해당 상품이 특수한 것이어서 공급자가

적을 경우 특별히 입찰자를 미리 선정할 수 있다. 또 일반적인 입찰의 기준이 총액중심이지

만 지속적인 조달의 경우 단가중심의 입찰도

가능하다.경매는 또다른 유형의 경쟁계약으로서 하나

의 판매자와 다수의 구매자가 있을 때 적용된

Page 3: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

다. 영국식 경매에서는 현 입찰가가 모든 입찰

자에게 공개되고 입찰가는 더이상 높은 가격이

제안되지 않을 때까지 점차적으로 높아지고 최종적으로 가장 높은 가격을 제안한 가격이 낙찰가가 된다 (Kim, 1994). 반면 화란식 경매에서

는 입찰가 입찰가를 제안하는 대신 경매가 시작할 때 판매자가 최대 가격을 처음 제안하여

입찰자가 구매의사를 밝힐 때까지 가격을 낮춰

나가는 방식으로 하여 낙찰자를 결정한다 (Lee,et.al. 1995).

각 계약유형의 과정은 한번 공고되면 반드

시 지켜져야 하기 때문에 전자상거래에서의 계약유형 표현은 전체 계약과정을 표현해야 한

다.

3.2. 전자상거래에서의 계약유형

전자상거래에서는 계약에 들어가는 비용이

상대적으로 적기 때문에 기존 상거래에서는 없었던 새로운 계약유형을 만들 수 있다. 따라서

본 연구에서는 입찰이나 경매와 같은 전통적

계약유형 이외에 기존 상거래에서는 없었던 새로운 계약유형도 표현하고자 한다. 이를 위해

계약유형을 나타내는 변수와 그 값들을 제안하

고 이를 <부록-1>에서 보는 바와 같이 바쿠스

나우 형식 (Backus-Naur Form : BNF)으로 나타냈

다.여기서 기존의 입찰과 경매는 특별한 경우

이고 변수들의 조합을 달리함으로서 새로운 계약유형을 생성시킬 수 있음을 알 수 있다. 예를 들어 고객은 첫번 라운드에서는 입찰에 의해 최저가의 입찰을 낸 입찰자를 낙찰자로 선정할 수 있고 두번째 라운드에서는 경매에 의해 더 낮은 가격을 제안한 입찰자를 찾을 수

있다. 이러한 변형은 메시지생성과 문제해결에

영향을 주기 때문에 에이전트는 계약유형과 상황에 따라 민감하게 된다.

4. UNIK-AGENT의 구조

본절에서는 에이전트 기반 상거래 개발환경

(Agent Based Commerce DevelopmentEnvironment: ABCDE) 에 대한 설계를 한다. 이미 언급한 바대로 UNIK-AGENT는 ABCDE를전문가시스템의 확장으로서 구현한다.

4.1. UNIK-AGENT의 조감

전체적으로 UNIK-AGENT는 문제해결기와

통신제어기로 구성되어 있다. 그림-1에서 보는

바와 같이 단일한 문제해결엔진을 가지고 있는

기존의 전문가시스템과 달리, UNIK-AGENT는문제해결관리자가 있어서 적절한 문제해결방식

을 여러 해결엔진그룹으로부터 선택하는 기능

을 갖고 있다(Lee and Lee, 1997;1995).

Problem Solving Manager

Solution Engines

Data Base Knowledge Base

OtherAgents

AGENT

Problem Solver Communication Controller

Directory Consulting

Individual Messages

Message Queue Mgt.

Message Gate

Message ManagerMessage Base

Outgoing Msg

Incoming Msg

Directory

그림-1 UNIK-AGENT의 구조

4.2. 문제해결기

문제해결기는 특정 문제에 대한 적절한 해

결방법을 선택해 주는 문제해결관리자와 여러

추론 엔진이나 앨고리즘의 집합인 해결엔진그

룹으로 구성된다.문제해결관리자는 적절한 문제해결방법의

선정이외에도 전체계약과정을 제어하는 기능을

가지고 있다.

4.3. 통신제어기

통신제어기는 다음과 같은 다섯개의 계층으

로 구성되어 있다.메시지 관리계층: 메시지 상의 에이전트 통신언

어계층이 해석되고 메시지의 적절성을 점검한

다.디렉토리 컨설팅 계층: 외부로 나가는 메시지의

목적지에 대한 주소를 네트웍상의 디렉토리 에이전트에 컨설팅한다. 만일 내부 메모리가 여

유가 있고 리푸레쉬의 필요가 없는 경우에는

케쉬 (Cash) 메모리에 컨설팅을 하느데, 내부

캐쉬메모리와 외부 에이전트간의 일관성을 위해 에이전트 일관성 프로토콜이 필요하다 (Leeand Kim, 1996).

개별적 메시지 계층: 외부로 나가는 메시지에 대해서 만일 여러 곳으로 동시에 나가는 메시지

인 경우 개별적인 메시지로 브레이크 다운시키

는 역할을 한다.메시지 큐 관리 계층: 외부로 나가는 메시지들

과 내부로 들어 오는 메시지들의 큐를 관리하

는 계층이다.메시지 게이트 계층: 메시지를 TCP/IP의 프로토

콜로 포맷팅한다. 일반적으로 소켓에 의해 지

원된다.

5. 메시지 계층

Page 4: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

에이전트기반 상거래에서의 에이전트간 메

시지는 TCP/IP 의 상위 계층으로서 그림-2과같이 세 개의 계층으로 이루어져 있다.

KQML

Performative Performative Parameter

sender receiver content ontology languagereply-within-reply-to

SELECTED_PROPOSAL PROPOSAL REQUIREMENT BID_TIME CONTRACT_TYPE CONTRACT_ID TITLE

DELIVERY_METHOD PRODUCT DELIVERY_DATE PAYMENT_METHOD

ITEM_NAME QUANTITY SPECIFICATIONS PRICE

AMOUNT UNIT_PRICE

Part_of

is-a is-a

is-a is-a

Part_ofPart_of Part_of

Has-a Has-a

is-ais-ais-ais-ais-ais-ais-a

Has-aHas-a Has-a Has-a Has-a Has-a

Has-a

part-of part-of

AC

L L

ayer

Ele

ctro

nic

Co

mm

erce

Lay

erP

rod

uct

Sp

ecif

ic L

ayer

Personal Computer

Hard Disk Main Memory Processor Monitor Size CD_ROM Sound Card

Part_of Part_ofPart_of Part_of Part_of Part_of

Laser Beam Printer .........

Has-a Has-a Has-aHas-a

그림-2 메시지의 세개 계층

제일 상위 계층은 KQML의 퍼모티브

(Performative)와 그 매개변수로 이루어져 있으

며 이 계층은 응용분야, 즉 전자상거래와는 독립적인 계층이다. 이 계층을 에이전트 통신언

어 계층으로 부른다.중간계층은 전자상거래 계층으로서 KQML의

내용부분에 전자상거래에서 필요로 하는 여럭

가지 매개변수를 제공한다. 예를 들어 TITLE은 메시지 이름에 해당하고, CONTRACT_ID는

계약에 대한 고유 코드에 해당한다. 메시지는

TITLE과 CONTRACT_ID 그리고 다른 매개변수

의 조합에 의해 표현된다. 그림-2에서 보이는

바와 같이 REQUIREMENT, PROPOSAL, andSELECTED_PROPOSAL과 같은 매개변수는 하

부에 또다른 매개변수인 PRODUCT,DELVERY_METHOD, DELIVERY_DATE,PAYMENT_METHOD 등을 갖게 된다.REQUIREMENT는 고객이 자신의 요구사항을

나타내기 위해 필요한 것이고 PROPOSAL은 상인이 자신의 제안서를 내기 위해서

SELECTED_PROPOSAL 는 고객이 입찰의 최종

결과를 입찰자들에게 보내 주기 위해서 필요한

매개변수이다.

최하위 계층은 제품 규격 계층으로서 상품

의 규격을 좀더 상세히 나타내준다. 이 계층은

상품의 규격을 나타내는 여러 항목으로 구성되

며 그 항목은 제품마다 다르다. 본 연구에서는

퍼스널 컴퓨터를 그 예로 보여주고 있다.

6. 메시지 생성 및 문제해결과정

7본절에서는 메시지 생성과 문제해결과정을

전형적인 계약과정을 예시하여 기술하고자 한다. 예시를 위해 사용된 계약유형은 고객이 주도하는 입찰의 한 유형이다. 메시지 생성과 문제해결은 전방형 추론 엔진에 의해 추론되는

지식베이스 시스템에 의해 제어된다.

6.1. 고객에이전트에 의한 계약과정 시작

계약은 고객이 고객 에이전트에게 자신의

요구사항을 요청함으로써 시작된다. 이 스텝에

서는 다음과 같은 세가지 일이 문제해결관리자

에 의해 수행된다.

(1) 고객 고유의 계약고유코드를 생성한다.(2) 고객(인간)으로부터 계약유형을 입력받

느다. 이 계약유형에 관한 지식은 고객

Page 5: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

에이전트와 상인 에이전트의 문제해결

관리자의 활성화 규칙을 위해 사용된다.다음은 입력받은 계약유형의 예이다.

{{Contract_Type_960924 is-a: Contract_960924

number_of_bid_round: 1 competitor_price_referable: not_referable announced_estimated_price_limit: enforced number_of_proposals_for_each_bidder: 1 bid_price_change: not_allowed bid_price_open_time: at_predetermined_time buyer_bidder_prenomination: prenominated_by_customer human_involvement: enforced bidding_price_type: total_amount buyer_rule_for_selection_of_successful_bidder: min_price buyer_nego_between_price_&_spec:

not_allowed}}

(3) 고객으로부터 제품의 요구사항을 입력

받느다. 여기서 고객은 제품에 대한 완

전한 규격을 밝힐 필요는 없다. 예를 들어 다음과 같이 메인메모리, 하드디스크,프로세서에 대한 요구사항만을 입력할

수 있다.{{ProductSpecifications_960924 is-a: Contract_960924 Main_Memory: (>= 840MB) Hard_Disk: (>= 16MB) Processor: (>= Pentium90) }}

6.2. 고객에이전트에 의한 RFP 생성

고객에이전트에 있는 메시지 관리자는 제안

요구서 (Request for Proposal: RFP)를 고객의 요구에 따라 세개 계층에 의해 생성한다.

에이전트 통신언어 계층에서는 퍼포머티브

(evaluate) 가 선택되고 그 퍼포머티브의 적절한

매개변수들의 값이 채워진다. 완성된 RFP는 <부록-2.1>과 같다.

6.3. 상인에이전트의 초기화

고객에이전트로부터 RFP를 받으면 상인 에

이전트의 메시지관리자는 RFP를 문제해결관리

자로 넘겨주고 문제해결관리자는 다음과 같은

규칙에 의해 초기화를 한다.

Contract Process Initiation RuleIF ReceivedMessage.TITLE IS RFPTHEN (INITIALIZE ContractProcess)

6.4. 상인에이전트의 상품선택

6.4.1. 문제해결엔진의 선택 본 예에서의 계약유형에

서는 상품과 가격 간의 절충이 허용되지 않았

기 때문에 다음 규칙에 의해 Exact Matching이 선택된다. Exact Matching은 단지 고객의 요구에 정확히 맞는 제품을 찾아 주는 경우이다.

Exact Matching RuleIF buyer_nego_between_price_&_spec IS Not_AllowedTHEN Product_Selection.Solving_Method ISExact_Matching

만일 절충이 허욜될 경우 다음과 같은 규칙

에 의해 사례기반 추론에 의해 요구된 제품 규격과 유사한 제품이 검색될 것이다. 이 검색과

정은 추후 연구로 돌린다.

Case Based Reasoing RuleIF buyer_nego_between_price_&_spec IS AllowedTHEN Product_Selection.Solving_Method IS Case_Based_Reasoing

6.4.2. 제품의 선택 상인 에이전트는 필요한 상품을 검색을 위해 가격과 제품 규격을 동시에

고려할 필요가 있다. 이를 위해서는 제약과 규칙 만족 문제 (Constratints and Rules SatisfactionProblem) 접근방식이 효과적인 방법이 될 수 있다 (Lee and Kwon, 1995). 다음과 같은 규격을

갖는 상품이 선택될 수 있을 것이다.(Amount (= 2000))(Specifications IS-A: Cotract_960924 Main_Memory: (= 64MB) Hard_Disk: (= 1GB) Processor: (= PENTIUM100) Monitor_Size: (= 20INCH) CD_ROM: (= 8X) Sound_Card : (= 32K))

6.5. 상인에이전트에 의한 제안서 생성

<부록-2.2>에서 보는 바와 같은 제안서는 메시지 게이트를 통해 TCP/IP 계층으로 고객 에이전트에게 전송된다. 제안서는 제안된 제품에

대해 메시지를 생성하고 이 과정은 고객 에이

전트가 제안요구서를 만든 과정과 기본적으로

같다.

6.6.고객에이전트에 의한 제안서 해석

6.6.1. 제안서의 에이전트 통신언어 계층 해석 제안서의

퍼포머티브는 ‘reply’인데 이 퍼포머티브는 응답용이기 때문에 고객에이전트의 메시지 관리

자는 매개변수 가운데 하나인 'in-reply-to'의 값과 같은 메시지 아이디를 찾는다. 만일 맞는

아이디가 있는 경우에는 이 메시지는 적정한

Page 6: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

것이고 그렇지 않은 경우는 이 메시지를 무시

한다.6.6.2. 제안서의 여과 에이전트 통신언어 계층에서

정당한 메시지는 문제해결관리자로 넘겨져서

전자상거래 계층에서의 적절성을 다음과 같은

규칙에 의해 검증받는다.

Valid Proposals RuleIF Received_Message.Title IS ProposalAND Received_Message.Contract_id IS_ IN ContractsAND Received_Message.Time >= Bid.Begin_TimeAND Received_Message.Time <= Bid.End_TimeAND Received_Message.Sender IS_ IN Contract.BiddersTHEN CALL (ADD Received_Message Candidates)

적절하다고 검증된 제안서는 후보자 명부에

올라가게 된다. 그림-3은 다섯개의 후보를 보여

주고 있다.

6.7. 고객에이전트의 낙찰자 선정

입찰 마감시간이 지나면 후보자명부에서부

터 낙찰자를 선정한다. 그림-3에서 보는 바와

같이 본 예제에서는 R5가 최저가이지만 고객

요구사항을 어겼기 때문에 즉, 하드 디스크의

최저 요구사항인 840MB를 충족시키지 못하기

때문에 R3가 낙찰자로 선정된다.R1 Proposal(SPECIFICATIONS (MAIN_MEMORY (= 64MB))

(HARD_DISK (= 1GB))(PROCESSOR (= PENTIUM100))(MONITOR_SIZE (= 20inch))(CD_ROM (= 8X))(SOUND_CARD (= 32K))

(AMOUNT 2250)

R3 Proposal(SPECIFICATIONS

(MAIN_MEMORY (= 32MB))(HARD_DISK (= 1GB))(PROCESSOR (= PENTIUM100))(MONITOR_SIZE (= 17inch))(CD_ROM (= 8X))(SOUND_CARD (= 32K))

(AMOUNT 2000)

R5 Proposal(SPECIFICATIONS

(MAIN_MEMORY (= 32MB))(HARD_DISK (= 420MB))(PROCESSOR (= PENTIUM100))(MONITOR_SIZE (= 17inch))(CD_ROM (= 4X))(SOUND_CARD (= 16K))

(AMOUNT 1875))

R2 Proposal(SPECIFICATIONS

(MAIN_MEMORY (= 64MB))(HARD_DISK (= 840MB))(PROCESSOR (= PENTIUM90))(MONITOR_SIZE (= 20inch))(CD_ROM (= 8X))(SOUND_CARD (= 32K))

(AMOUNT 2125)

R4 Proposal(SPECIFICATIONS

(MAIN_MEMORY (= 64MB))(HARD_DISK (= 1GB))(PROCESSOR (= PENTIUM120))(MONITOR_SIZE (= 20inch))(CD_ROM (= 8X))(SOUND_CARD (= 32K))

(AMOUNT 2375)

그림-3 낙찰후보자 예

6.8. Stop or Next Round 결정

각 라운드의 마지막 스텝은 다음과 같은 규칙에 의해 과정을 끝낼 것인가 아니면 다음 라운드로 갈 것인가를 결정하는 것이다.

In case of a Single Alternative

IF (NUMBER Selected_Alternative) = 1AND Contract_Type.Number_of_Bid_Rounds = <CurrentRound>AND Contract_Type.Human_Involvement ISNot_Forced

THEN Selected_Alterenative IS Final_Alternative BID IS Success

IF (NUMBER SelectedAlternative) = 1AND Contract_Type.Number_of_Bid_Rounds > <Current Round>AND Contract_Type.Human_Involvement ISNot_ForcedTHEN BID IS Next_Round

IF (NUMBER Selected_Alternative) = 1AND Contract_Type.Human_Involvement IS ForcedTHEN (HUMAN_SELECTION Selected_Alternatives)

IF Human_Selection.Result IS SatisfiedTHEN Selected_Alternatives IS Final_Alternative BID IS Success

IF Human_Selection.Result IS UnsatisfiedAND Contract_Type.Number_of_Bid_Rounds = <CurrentRound>THEN BID IS Failed

IF Human_Selection.Result IS UnsatisfiedAND Contract_Type.Number_of_Bid_Rounds > <CurrentRound>THEN BID IS Next_Round

In Case of Nondominated Alternatives

IF (NUMBER Selected_Alternative) > 1THEN (HUMAN_SELECTION Selected_Alternatives)

In Case of No Alternative

IF (NUMBER Selected_Alternative) = 0AND ContractType.Number_of_Bid_Rounds = <CurrentRound>THEN BID IS Failed

IF (NUMBER Selected_Alternative) = 0AND Contract_Type.Number_of_Bid_Rounds > <CurrentRound>THEN BID IS Next_Round

본 예에서는 ‘human involvement’가‘enforced’이고 허용된 라운드 수가 1이기 때

문에 R3가 채택되고 고객에게 R3의 제안서를

보여주어서 이를 만족하면 이 입찰은 성공적인

것으로 하여 끝난다. 최종적으로 <부록 2.3>과같은 입찰결과를 각 입찰자에게 보냄으로써 입찰과정이 끝나게 된다.

7. Conclusions

메시지와 에이전트 구조에 대한 표준화는

전자상거래의 다음 세대인 에이전트 기반 상거

래를 위해서 매우 중요하다. 이러한 목적을 위

Page 7: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

해서 본연구는 다음과 같은 세 가지면에서 기여하고 있다.

첫째, 통신제어와 메타수준의 문제해결기능

을 가진 전문가시스템의 확장으로서의 지능형

에이전트 구조를 제안했으며 UNIK-AGENT의프로토타입을 설계하고 이를 Visual C++ 4.0,UNIK-OBJECT, and UNIK-FWD 를 이용하여

Window95에서 구현했다.둘째, 전자상거래에서 사용가능한 계약유형

을 정형적인 문법에 의해 정리하였다. 이 문법

에 의해 기존의 입찰이나 경매와 같은 계약유

형 뿐만 아니라 전자 상거래에서 유용하게 쓰일 수 있는 계약 유형도 표현할 수 있다.

세째, 에이전트 통신언어 계층, 전자상거래

계층 및 제품규격 계층으로 이루어진 메시지

표준을 제안하였다.네째, 메시지 생성 및 문제해결과정을 제안

하고 이를 예시하였다.

참고문헌

Bargain Finder, “Bargain Finder Agent Prototype”,http://bf.cstar.ac.com/bf/, 1995.

Etxioni, O., and Weld, D. ”Intelligent Agents on theInternet: Fact, Fiction, and Forecast”, IEEE Expert,Aug., 1995.

Franklin, S., and Graesser, A. “Is It an Agent, or justa Program?: A Taxanomy for Autonomous Agents ”,http://www.msci.memphis.edu/~franklin/AgentProg.html, 1996.

Finin, T., Weber, J., Wiederhold, G., Genesereth, M.,Fritzson, R., McGuire, J., Shapiro, S., and Beck, C.“Specification of the KQML Agent-Communication Language plus example agentpolicies and architecture ”, Draft, the DARPAKnowledge Sharing Initiative, External InterfacesWorking Group, 1993

Genesereth, M., and Ketchpel, P., “SoftwareAgents ”, Communications of the ACM, Vol. 37,No. 7, Jul., 1994.

Hoffman, D and Novak, T., “Building NewParadigms for Electronic Commerce”,http://www2000.ogsm.vanderbilt.edu/intelligent.agent/index.html, 1995.

Hoffman , D., Novak, T., and Chatterjee, P.,“Commercial Scenarios for the Web: Opportunitiesand Challenges,http://www.usc.edu/dept/annenberg/vol1/issue3/hoffman.html, 1995.

KAIST, UNIK User's Manual, IntelligentInformation System Lab., Department ofManagement Information System, Korea AdvancedInstitute of Science and Technology ,1994 (inKorean).

Kalakota, R. and Whinston, A., Frontiers ofElectronic Commerce, Addison Wesley, 1995.

Kim, S., A Handbook of Government Contract, 1994(in Korean).

Lee, H. G., “Computer Mediated Trade Systems:Electronic Brokerage and Electronic Auction”,Proceedings of Korea Expert Systems Society,Spring, 1995.

Lee, H. G., and Lee, R. M., “Intelligent ElectronicTrading for Commodity Exchanges: A ConstraintLogic Programming Approach”, Erasmus UniversityResearch Institute for Decision and InformationSystems (EURIDIS), Erasmus University Rotterdam,1993.

Lee, H. G., Wrigley, C., and Wagenaar, R.,“Electronic Market Place with MultimediaRepresentation: SEA of Flowers”, Proceedings onPan Pacific Conference on Information Systems,Singapore, 1995.

Lee, J. K., “Artificial Intelligence in ElectronicCommerce”, Tutorial, t h e 3rd World Congress onExpert Systems, Seoul, Korea, 1995

Lee, J. K., and Kim J., “Agent ConsistencyMaintenance Protocol”, Working Paper, KoreaAdvanced Institute of Science and Technology,1996.

Lee, J. K. and Kwon, S. B. , "ES*: An ExpertSystems Development Planner Using a Constraintand Rule-based Approach", Expert Systems withApplications, Vol. 9, No. 2, 1995

Lee, J. K. and Lee, W, "Intelligent Agent BasedContract Process in Electronic Commerce", 30-HICSS, 1997, Jan.

Page 8: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

Lee, J. K., and Lee, W. “Intelligent Agent BasedElectronic Marketing: UNIK-AGENT”, Proceedingsof Pacific Asian Conference on Expert Systems,China, 1995.

Lindsey, D., Cheney, P., Kasper, G. and Ives, R.,“TELCOT: An Application of InformationTechnology for Competitive Advantage in theCotton Industry ”, MIS Quarterly, Dec., 1990.

Nissen, M., “Intelligent Agents: A Technology andBusiness Application Analysis,”http://haas.berkeley.edu/~heilmann/agents/, 1995.

Neo, B. S., “The Implementation of an ElectronicMarket for Pig Trading in Singapore”, Journal ofStrategic Information Systems, Vol. 1, No. 5, Dec.,1992.

OpenMarket, “Merchant Solution Business WhitePaper”,http://www.openmarket.com/products/MerchantSolution/V1.0/mspaper4.htm., 1995.

[21] Park, W.., Modern Purchasing Management,Parkyoung Press, 1990 (in Korean)

[22] Personal Agents Inc., “Future of ElectronicCommerce”, http://www.yourcommand.com, 1996.

Page 9: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

<부록 1> 계약유형의 문법

<contract_type> := <buyer_centered_contract> | <seller_centered_contract>

<buyer_centered_contract>:=<number_of_bidding_rounds><competitor_price_referable><announcer_estimated_price_limit><number_of_proposals_for_each_bidder><bid_price_changable><bid_price_open_time><buyer_bidder_prenomination><human_involvement><bidding_price_type><buyer_rule_for_selection_of_successful_bidder><buyer_nego_between_price_&_spec>

<seller_centered_contract>:=<auction_type><number_of_bidding_rounds><competitor_price_referable><announcer_estimated_price_limit><number_of_proposals_for_each_bidder><bid_price_change><bid_price_open_time><seller_bidder_prenomination><bidding_price_type><seller_rule_for_selection_of_successful_bidder><buyer_nego_between_price_&_spec>

<auction_type> := English_auction | Dutch_auction

<number_of_bidding_rounds> := <a certain number> | unlimited.

<competitor_price_referable> := referable | not_refereable

<announcer_estimated_price_limit> := enforced | just_referred

<number_of_proposals_for_each_bidder> := <a certain number> | unlimited

<bid_price_change> := not_allowed | allowed_once | allowed_certain_times | allowed_unlimited

<bid_price_open_time> := at_a_predetermined_time | upon_received

<buyer_bidder_prenomination> := unlimited | prenominated_by_buyer | prenominated_by_criteria |prenominated_by_registration

<seller_bidder_prenomination> := unlimited | prenominated_by_seller | prenominated_by_criteria |prenominated_by_registration

<human_involvement> := enforeced | not_enforced

<bidding_price_type> := total_amount | unit_price

<buyer_rule_for_selection_of_successful_bidder>:= min_price | min_price_below_estimated_price | max_price_below_estimated_price | <proprietary_rule>

<buyer_nego_between_price_&_spec> := not_allowed | allowed_once | allowed_certain_number |allowed_unlimited

<seller_rule_for_selection_of_successful_bidder> := max_price | <proprietary_rule>

<seller_nego_between_price_&_spec> := not_allowed | allowed_once | allowed_certain_number |allowed_unlimited

Page 10: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

<부록 2.1> 제안요구서의 예

Page 11: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

<부록 2.2> 제안서의 예

Page 12: 2. 문헌고찰 1. 서론 2.1. - KAISTkoasas.kaist.ac.kr/bitstream/10203/19425/1/1997-092.pdf · 2017-04-11 · 을 외부언어로, unik-object (객체지향 도구)를 내부언어

<부록 2.3> 입찰결과의 예