HÖ thèng multi agent vµ øng dông trong tÝnh to¸n ph©n t¸n
Ng« §¨ng quang
Bé m«n KÕt cÊu x©y dùng
TrÇn Ngäc Linh
Bé m«n tù ®éng hãa thiÕt kÕ cÇu ®êng
Trêng §¹i Giao th«ng VËn t¶i
Tãm t¾t: Software Agent ®îc coi lμ mét c«ng nghÖ cã hiÖu qu¶ trong tÝnh to¸n ph©n t¸n.
Tõ nh÷ng n¨m 1990 ®Õn nay, c«ng nghÖ liªn tôc ®îc ph¸t triÓn vμ ®· b¾t ®Çu ®îc øng dông
cã hiÖu qu¶ trong nhiÒu lÜnh vùc kh¸c nhau. Bμi b¸o tËp trung giíi thiÖu c¸c kh¸i niÖm chÝnh vÒ
software agent vμ hÖ thèng Multiagent còng nh kh¶ n¨ng øng dông cña chóng trong tÝnh to¸n
ph©n t¸n. C¸c vÝ dô ®îc nªu trong bμi b¸o lμ c¸c øng dông ®· ®îc mét sè t¸c gi¶ níc ngoμi
vμ chÝnh c¸c t¸c gi¶ thùc hiÖn.
Summary: Software Agent is one of the most efficient technologies in distributed
computing. Since the 1990s this technology is intensively developed and successfully applied
in many different fields. This paper presents some main concepts of software agent and multi-
agent system as well as their features for distributed computing. The examples given in the
paper are applications exercised by some foreign researchers and the authors themselves.
I. Tæng quan vÒ tÝnh to¸n ph©n t¸n
TÝnh to¸n ph©n t¸n lµ ph¬ng ph¸p tÝnh to¸n ph©n quyÒn vµ song song, sö dông hai hay
nhiÒu m¸y tÝnh ®îc nèi m¹ng víi nhau ®Ó thùc hiÖn mét nhiÖm vô chung [10]. Nh vËy, khi sö
dông ph¬ng ph¸p tÝnh to¸n ph©n t¸n, c¸c øng dông vµ logic nghiÖp vô sÏ ®îc ph©n bè trªn
nhiÒu nÒn t¶ng kh¸c nhau. Nãi c¸ch kh¸c, viÖc xö lý ®îc ph©n bè trªn mét hay nhiÒu m¸y mµ
ë ®ã mçi qu¸ tr×nh chØ thùc hiÖn mét phÇn cña øng dông theo mét tr×nh tù nhÊt ®Þnh. C¸c qu¸
tr×nh nµy cã thÓ kh«ng ®îc thùc hiÖn ®ång thêi [9].
CT 2
Cã mét sè lý do lµm cho viÖc tÝnh to¸n ph©n t¸n trong mét sè d¹ng øng dông lµ cÇn thiÕt.
Thø nhÊt vµ ®iÓn h×nh nhÊt lµ, viÖc sö dông c¸c nguån lùc ph©n t¸n sÏ cho phÐp t¨ng tèc qu¸
tr×nh tÝnh to¸n, xö lý mét vÊn ®Ò nhê tÝnh song song. TÊt nhiªn, sù t¨ng tèc nµy phô thuéc vµo
møc ®é song song cña vÊn ®Ò cÇn xö lý. TÝnh song song ë ®©y ®îc hiÓu lµ kh¶ n¨ng cã thÓ
chia ph¹m vi vÊn ®Ò thµnh c¸c phÇn nhá cã thÓ xö lý song song vµ ®éc lËp. M« h×nh tÝnh to¸n
ph©n t¸n sÏ lµm ®¬n gi¶n ho¸ viÖc gi¶i quyÕt c¸c vÊn ®Ò khi tri thøc chuyªn gia vµ nguån lùc ®Ó
gi¶i quyÕt chóng cã tÝnh ph©n t¸n. Trong thùc tÕ, cã rÊt nhiÒu vÊn ®Ò lín chØ cã thÓ gi¶i quyÕt
®îc b»ng viÖc sö dông kÕt hîp nhiÒu nguån lùc kh¸c nhau. C¸c nguån lùc nµy l¹i cã thÓ ph©n
t¸n c¶ vÒ mÆt ®Þa lý, thµnh phÇn, néi dung vµ ph¹m vi. Víi c¸c vÊn ®Ò d¹ng nµy, m« h×nh tÝnh
to¸n tËp trung lµ rÊt khã thùc hiÖn. NhiÒu trêng hîp, ph¬ng ph¸p tËp trung lµ kh«ng thÓ thùc
hiÖn ®îc do c¸c hÖ thèng vµ d÷ liÖu thuéc vÒ c¸c tæ chøc ®éc lËp vµ chóng ®îc yªu cÇu ph¶i
gi÷ riªng biÖt. Mét vÝ dô ®iÓn h×nh ë ®©y lµ viÖc thiÕt kÕ hay chÕ t¹o c¸c thiÕt bÞ m¸y mãc hoÆc
c«ng tr×nh x©y dùng. C¸c qu¸ tr×nh nµy ®ßi hái sù tham gia cña rÊt nhiÒu chuyªn gia hay c¬ së
s¶n xuÊt ë c¸c lÜnh vùc rÊt kh¸c nhau vµ phÇn nhiÒu c¸c c«ng viÖc mµ hä thùc hiÖn lµ cã tÝnh
®éc lËp t¬ng ®èi vµ song song víi nhau. Ngoµi ra, viÖc sö dông m« h×nh tÝnh to¸n ph©n t¸n
trong mét sè øng dông sÏ lµm gi¶m thiÓu sù chuyÓn giao d÷ liÖu kh«ng cÇn thiÕt gi÷a c¸c bé
phËn xö lý trong mét qu¸ tr×nh. C¸c th«ng tin ®îc sö dông cã thÓ ph©n t¸n vÒ mÆt ®Þa lý, cã thÓ
cã nhiÒu thµnh phÇn, cã thÓ cã néi dung vµ ph¹m vi rÊt lín. ë c¸c øng dông nµy, c¸c d÷ liÖu th«
sÏ ®îc sµng läc ë c¸c bé phËn xö lý ngo¹i vi vµ chØ c¸c d÷ liÖu cÇn thiÕt míi ®îc chuyÓn vÒ
bé phËn xö lý trung t©m [1].
II. Giíi thiÖu mét sè c«ng nghÖ tÝnh to¸n ph©n t¸n
2.1. COM DCOM
M« h×nh ®èi tîng thµnh phÇn ph©n t¸n DCOM (Distributed Component Object Model) cho
phÐp gäi c¸c ®èi tîng ë xa sö dông RPC (Remote Procedure Call). C¸c ®èi tîng DCOM
th«ng b¸o c¸c ph¬ng thøc cña chóng ®Õn víi c¸c øng dông th«ng qua nhiÒu giao diÖn. C¸c
giao diÖn nµy ®îc x©y dùng b»ng ng«n ng÷ ®Þnh nghÜa giao diÖn (Interface Definition
Language - IDL). Tr×nh biªn dÞch IDL sÏ t¹o ra c¸c thµnh phÇn (proxies/stubs) vµ bé khung
(skeletons) råi ®¨ng ký chóng trong registry cña hÖ thèng vµ ®ång thêi còng t¹o ra c¸c th viÖn
kiÓu. C¸c files nµy m« t¶ ®èi tîng ë xa vµ c¸c ®èi tîng nµy cã thÓ ®îc gäi b»ng c¸c giao
diÖn ®îc cung cÊp bëi c¬ chÕ COM. Ph¬ng thøc ®îc sö dông ë ®©y lµ lêi gäi thñ tôc tõ xa
(Object Remote Procedure Call - ORPC). ChuÈn nhÞ ph©n cña DCOM cho phÐp c¸c ®èi tîng
cã thÓ ®îc viÕt b»ng c¸c ng«n ng÷ kh¸c nhau. MÆc dï DCOM ®îc Microsoft ph¸t triÓn nhng
nã vÉn ®îc sö dông trong nhiÒu hÖ ®iÒu hµnh kh¸c MS Windows nh UNIX, Apple Macintosh
vµ VSM [6].
2.2. CORBA
CT 2
RÊt nhiÒu tæ chøc ®· sö dông kiÕn tróc m«i giíi yªu cÇu ®èi tîng phæ th«ng (Common
Object Request Broker Architecture - CORBA) cña OMG, mét tiªu chuÈn ®îc sö dông nh
c«ng cô ®Ó tÝch hîp c¸c øng dông ®a d¹ng, ph©n t¸n víi d÷ liÖu. Ng«n ng÷ ®Þnh nghÜa giao diÖn
cña CORBA cho phÐp ngêi ph¸t triÓn x¸c ®Þnh c¸c giao diÖn híng ®èi tîng, kh«ng p
thuéc ng«n ng÷ lËp tr×nh cho c¸c cÊu kiÖn cña øng dông vµ hÖ thèng. C¸c ®Þnh nghÜa IDL ®îc
lu tr÷ trong mét th viÖn giao diÖn, mét d¹ng nh sæ ®iÖn tho¹i cung cÊp c¸c giao diÖn vµ dÞch
vô. §Ó lËp tr×nh ph©n t¸n, th viÖn ®èi tîng ®îc dïng lµm trung t©m ®Ó kÕt nèi c¸c ®èi tîng
®îc bè trÝ ë c¸c hÖ thèng kh¸c nhau.
M«i giíi yªu cÇu ®èi tîng (Object Request Broker - ORB) cña CORBA thùc hiÖn mét kªnh
giao tiÕp, qua ®ã, c¸c øng dông cã thÓ truy cËp c¸c giao diÖn cña ®èi tîng ®Ó yªu cÇu d÷ liÖu
vµ dÞch vô. M«i trêng ®èi tîng phæ biÕn (Common Object Environment - COE) cña CORBA
cung cÊp c¸c dÞch vô ë cÊp ®é hÖ thèng nh qu¶n lý vßng ®êi cña c¸c ®èi tîng ®îc truy cËp
th«ng qua CORBA, th«ng b¸o sù kiÖn gi÷a c¸c ®èi tîng vµ kiÓm so¸t giao t¸c vµ kiÓm so¸t
trïng hîp [9].
2.3. RMI
RMI (Remote Method Invocation) cho phÐp x©y dùng c¸c øng dông tÝnh to¸n ph©n t¸n
b»ng Java. Theo c«ng nghÖ nµy, ph¬ng thøc cña c¸c ®èi tîng Java cã thÓ ®îc gäi tõ mét
øng dông n»m ë mét m¸y ¶o Java (Java™ virtual machines – JVM™) tõ xa. §Ó gäi mét ®èi
tîng tõ xa, øng dông Java ph¶i cã tham chiÕu ®Õn ®èi tîng ®ã. RMI cung cÊp mét sè ph¬ng
ph¸p ®Ó mét øng dông Java cã thÓ nhËn ®îc tham chiÕu cña ®èi tîng ë xa cÇn thiÕt. Víi RMI,
viÖc ph©n biÖt tr×nh chñ hay tr×nh kh¸ch chØ lµ t¬ng ®èi. Ch¬ng tr×nh cã chøa c¸c ®èi tîng cã
thÓ ®îc gäi tõ xa ®îc gäi lµ tr×nh chñ. Ch¬ng tr×nh nµy, cã thÓ ®ång thêi l¹i lµ tr×nh kh¸ch khi
nã gäi ®èi tîng tõ mét ch¬ng tr×nh kh¸c. RMI sö dông ph¬ng ph¸p tuÇn tù ho¸ (serialization)
®Ó s¾p xÕp d÷ liÖu mµ kh«ng ph¸ vì cÊu tróc kiÓu cña chóng. Giao thøc ®îc dïng ®Ó trao ®æi
d÷ liÖu lµ JRMP (Java Remote Method Protocol). RMI kh«ng sö dông c¸c ng«n ng÷ trõu tîng
nh IDL ®Ó m« t¶ ®èi tîng ë tr×nh chñ.
Nhîc ®iÓm chÝnh cña RMI lµ chØ ch¹y trªn m«i trêng cña Java v× thÕ yªu cÇu ë ®©y lµ c¶
m¸y chñ vµ m¸y kh¸ch ®Òu ph¶i ®îc cµi Java. Mét nhîc ®iÓm n÷a cña RMI lµ khi kÕt nèi víi
m¹ng diÖn réng Internet c¸c øng dông cña RMI bÞ chÆn l¹i bëi têng löa (Firewall) v× RMI kh«ng
sö dông cæng 80 lµ cæng cña dÞch vô HTTP (cæng mµ hÇu nh mäi têng löa ®Òu cho qua). V×
thÕ, ®Ó sö dông RMI trªn m¹ng diÖn réng cÇn ph¶i sö dông mét sè c¬ chÕ trung gian phøc t¹p
®Ó sö dông cæng 80 [6].
2.4. Webservice
Webservice lµ c¸c øng dông phÇn mÒm ho¹t ®éng dùa trªn nÒn c¸c giao thøc chuÈn cña
Internet vµ kh«ng phô thuéc vµo hÖ thèng còng nh ng«n ng÷ lËp tr×nh. VÒ b¶n chÊt,
webservice lµ c¸c thñ tôc hay hµm cã thÓ thùc hiÖn mét sè nhiÖm vô nhÊt ®Þnh mµ mét øng
dông cã thÓ gäi trªn Internet. Webservice cã thÓ chia sÎ d÷ liÖu gi÷a c¸c hÖ thèng vµ ng«n ng÷
lËp tr×nh. C¸c øng dông sö dông c¸c dÞch vô cña webservice kh«ng cÇn ph¶i biÕt chi tiÕt thùc
hiÖn cña c¸c dÞch vô nµy mµ chØ cÇn biÕt ®Þa chØ cña dÞch vô, kiÓu cña c¸c tham sè ®Çu vµo vµ
tham sè ®Çu ra. CT 2
Do webservice sö dông c¸c giao thøc chuÈn XML víi HTTP, SMTP hay FTP nªn nã cã thÓ
kh¾c phôc ®îc c¸c khã kh¨n cã liªn quan ®Õn “têng löa” cña c¸c c«ng nghÖ ph©n t¸n kh¸c
nh DCOM hay RMI. Mét hµm cña webservice cã thÓ ®îc gäi mét c¸ch dÔ dµng tõ c¸c øng
dông Web hay øng dông th«ng thêng nÕu c¸c øng dông nµy cã thÓ kÕt nèi b»ng c¸c giao thøc
Internet tiªu chuÈn.
Nh c¸c øng dông ph©n t¸n kh¸c, webservice còng cã thµnh phÇn “service broker” ®Ó t×m
kiÕm dÞch vô, “service provider” cung cÊp dÞch vô vµ “service requester” lµ øng dông yªu cÇu
dÞch vô. Ng«n ng÷ ®îc sö dông ®Ó m« t¶ webservice lµ WSDL (Web Service Description
Language), mét ng«n ng÷ dùa trªn XML. WSDL cung cÊp c¸c th«ng tin vÒ dÞch vô, ®Þa chØ còng
nh c¸ch cung cÊp dÞch vô cña webservice. C¸c dÞch vô webservice ®îc ®¨ng ký vµ qu¶n lý
nhê c¸c chuÈn ®îc ®Þnh nghÜa bëi UDDI (Universal Description, Discovery, and Integration).
Webservice sö dông SOAP (Simple Object Access Protocol) lµm giao thøc chuÈn ®Ó chuyÓn
giao d÷ liÖu gi÷a c¸c thµnh phÇn cña øng dông. §©y lµ giao thøc dùa trªn XML vµ ho¹t ®éng
kh«ng phô thuéc vµo m«i trêng.
HiÖn nay, c¸c tiªu chuÈn ®îc sö dông trong webservice vÉn ®ang ë trong giai ®o¹n ph¸t
triÓn vµ cha thËt ®Çy ®ñ. Khi so s¸nh víi c¸c c«ng nghÖ kh¸c nh CORBA, DCOM, tÝnh hiÖu
qu¶ cña c«ng nghÖ nµy kh«ng thËt cao do c¸c th«ng ®iÖp ®îc m« t¶ ë d¹ng v¨n b¶n vµ cÇn
ph¶i chuyÓn ®æi ë hai ®Çu [6].
III. HÖ thèng multi - Agent
C¸c c«ng nghÖ tÝnh to¸n ph©n t¸n kÓ trªn cã d¹ng ph©n t¸n ®èi tîng kiÓu kh¸ch - chñ
(client - server) víi ®Þa chØ cña c¸c ®èi tîng cung cÊp dÞch vô lµ cè ®Þnh. Bªn c¹nh c¸c lîi thÕ
vÒ tèc ®é tÝnh to¸n, tÝnh ®a d¹ng trong ho¹t ®éng, v.v… c¸c c«ng nghÖ d¹ng nµy còng cã nh÷ng
h¹n chÕ quan träng nh ®ßi hái tÝnh ®ång bé cao, tèc ®é ®êng truyÒn cao vµ ®é trÔ thÊp. Mét
sè c«ng nghÖ ®ßi hái d÷ liÖu ph¶i ®îc truyÒn qua mét sè cæng nhÊt ®Þnh vµ do ®ã, kh«ng thÝch
hîp víi m¹ng diÖn réng hay Internet. Ngoµi ra, c¸c c«ng nghÖ nªu trªn Ýt thÝch hîp víi c¸c
thèng tÝnh to¸n trªn c¸c thiÕt bÞ di ®éng do c¸c thiÕt bÞ nµy cã kh¶ n¨ng tÝnh to¸n thÊp vµ ®êng
truyÒn d÷ liÖu h¹n chÕ. Software Agent lµ mét c«ng nghÖ tÝnh to¸n ph©n t¸n míi, cã thÓ kh¾c
phôc ®îc c¸c nhîc ®iÓm kÓ trªn.
3.1. Kh¸i niÖm vÒ Software Agent
TÝnh to¸n ph©n t¸n dùa trªn c«ng nghÖ Software Agent, sau ®©y gäi lµ Agent, lµ mét
ph¬ng ph¸p míi, ®îc ®¸nh gi¸ lµ cã hiÖu qu¶. Agent ®îc ph¸t triÓn dùa trªn ý tëng vÒ trÝ
tuÖ nh©n t¹o ph©n t¸n (Distributed Artificial Intelligence - DAI) vµ nhÊt lµ m« h×nh cña Hewitt tõ
nh÷ng n¨m 1970. Trong m« h×nh cña m×nh, Hewitt ®· ®Ò xuÊt mét kh¸i niÖm vÒ mét ®èi tîng
cã tÝnh tù chñ, t¬ng t¸c vµ ho¹t ®éng c¹nh tranh (concurrently-executing) tøc lµ mét t¸c tö
(actor). Tuy nhiªn, c«ng nghÖ nµy chØ ®îc ph¸t triÓn m¹nh mÏ sau khi Internet ®îc sö dông
réng r·i [7], [8].
Cho ®Õn nay vÉn cha cã mét ®Þnh nghÜa thèng nhÊt vÒ Agent. Tuy nhiªn, cã thÓ m« t¶
Agent nh lµ mét ®èi tîng phÇn mÒm ho¹t ®éng mét c¸ch t¬ng ®èi ®éc lËp, tù chñ vµ cã kh¶
n¨ng céng t¸c víi nhau trong mét m«i trêng ®Ó hoµn thµnh mét nhiÖm vô ®Þnh tríc [8]. §Æc
®iÓm c¬ b¶n cña Agent lµ cã kh¶ n¨ng ®ãng gãi m· lÖnh, d÷ liÖu vµ c¶ tr¹ng th¸i thi hµnh, n
vËy cã thÓ chuyÓn c«ng viÖc ®ang thùc hiÖn t¹i mét m¸y ®Õn mét m¸y kh¸c. Nh vËy, so víi c¸c
c«ng nghÖ tÝnh to¸n ph©n t¸n tríc ®©y, Agent tá ra lµ c«ng nghÖ tiªn tiÕn nhÊt.
CT 2
Mét sè ®Æc trng quan träng cña Agent lµ
TÝnh tù chñ. TÝnh tù chñ thÓ hiÖn kh¶ n¨ng tù kiÓm so¸t b¶n th©n cña Agent. Mçi Agent
®îc trang bÞ mét c¬ së kiÕn thøc vµ mét c¬ cÊu ®a ra c¸c quyÕt ®Þnh tõ c¬ së kiÕn thøc cña nã
vµ c¸c d÷ kiÖn mµ nã thu ®îc tõ bªn ngoµi. Sau khi ®îc giao nhiÖm vô, Agent tù ho¹t ®éng
mµ kh«ng cÇn ph¶i ®îc ®iÒu khiÓn tõ bªn ngoµi.
TÝnh di ®éng. Khi di chuyÓn trong m¹ng, c¸c Agent ®ãng gãi m· lÖnh, d÷ liÖu vµ tr¹ng th¸i
thùc hiÖn do ®ã, chóng cã thÓ thùc hiÖn mét nhiÖm vô ®îc giao trªn nhiÒu tr¹m m¸y tÝnh kh¸c
nhau.
TÝnh thÝch øng. Mét Agent cã kh¶ n¨ng nhËn thøc ®îc vÒ m«i trêng cña m×nh vµ cã
nh÷ng ®¸p thÝch hîp víi sù thay ®æi m«i trêng ®Ó tho¶ m·n c¸c môc tiªu ®îc giao.
TÝnh chñ ®éng. C¸c Agent cã kh¶ n¨ng thÓ hiÖn c¸c øng xö híng môc tiªu b»ng viÖc
hoµn thµnh c¸c kÕ ho¹ch ®Ó tho¶ m·n c¸c môc tiªu thiÕt kÕ.
TÝnh x· héi. C¸c Agent cã kh¶ n¨ng t¬ng t¸c víi nhau vµ c¶ víi con ngêi ®Ó tho¶ m·n
c¸c môc tiªu thiÕt kÕ.
3.2. Kh¸i niÖm vÒ hÖ thèng multi - Agent
C¸c Agent ho¹t ®éng vµ tån t¹i trong mét sè m«i trêng, bao gåm c¶ m«i trêng tÝnh to¸n
vµ m«i trêng vËt lý. MÆc dï cã nh÷ng trêng hîp mét Agent cã thÓ ho¹t ®éng cã hiÖu qu¶ mét
m×nh nhng, trong hÖ thèng c¸c m¹ng m¸y tÝnh, c¸c tÝnh huèng nh vËy rÊt hiÕm gÆp. Thêng
gÆp lµ trêng hîp c¸c Agent t¬ng t¸c víi nhau. HÖ thèng hay m«i trêng mµ, c¸c Agent t¬ng
t¸c ®îc víi nhau gäi lµ hÖ thèng multi-Agent. §©y lµ mét m«i trêng m¹ng g¾n kÕt mét c¸ch tù
do c¸c Agent ®Ó gi¶i quyÕt mét vÊn ®Ò mµ tõng Agent riªng biÖt kh«ng gi¶i quyÕt ®îc. ViÖc sö
dông hÖ thèng multi-Agent cho phÐp mét vÊn ®Ò cã thÓ ®îc gi¶i quyÕt mét c¸ch ph©n t¸n trªn
nhiÒu hÖ thèng phÇn mÒm vµ phÇn cøng kh¸c nhau. HiÖn nay, hÖ thèng multi-Agent ®îc coi
c¸ch tèt nhÊt ®Ó m« t¶ vµ thiÕt kÕ c¸c hÖ thèng tÝnh to¸n ph©n t¸n.
Trong mét hÖ thèng multi - Agent, c¸c software Agent ph¶i cã hai kh¶ n¨ng c¬ b¶n lµ t×m
kiÕm “®èi t¸c”, tøc lµ c¸c Agent kh¸c, vµ hîp t¸c víi chóng ®Ó thùc hiÖn c«ng viÖc [8].
ViÖc hç trî c¸c Agent trong viÖc t×m kiÕm ®èi t¸c ®îc thùc hiÖn bëi c¸c Agent trung gian
(middle Agent). C¸c Agent th«ng thêng sö dông Agent trung gian ®Ó khai b¸o kh¶ n¨ng cña
m×nh hay t×m c¸c Agent kh¸c cung cÊp dÞch vô mµ chóng cÇn. Mét lîi thÕ cña Agent trung gian
lµ chóng cho phÐp c¸c hÖ thèng multi-Agent cã thÓ ho¹t ®éng mét c¸ch æn ®Þnh khi ®èi mÆt víi
nh÷ng vÊn ®Ò nh sù xuÊt hiÖn, biÕn mÊt hay chuyÓn ®éng cña c¸c Agent. D¹ng Agent trung
gian phæ biÕn cã d¹ng “trang vµng” (yellow page). D¹ng Agent nµy hç trî c¸c Agent th«ng
thêng trong viÖc t×m kiÕm dÞch vô cña c¸c Agent kh¸c dùa trªn nh÷ng kh¶ n¨ng ®· ®îc ®¨ng
nhËp.
T¬ng t¸c lµ mét trong nh÷ng ®Æc trng quan träng nhÊt cña mét Agent. C¸c Agent thêng
xuyªn t¬ng t¸c víi nhau ®Ó chia sÎ th«ng tin vµ thùc hiÖn nhiÖm vô chung. §Ó t¬ng t¸c, c¸c
Agent ph¶i sö dông chung c¸c ng«n ng÷ vµ giao thøc trao ®æi, c¸c cÊu tróc chung vÒ néi dung
th«ng tin vµ cïng chia sÎ ng÷ nghÜa.
CT 2
Ng«n ng÷ trao ®æi gi÷a c¸c Agent ACL (Agent Communication Language) chñ yÕu lµ ng«n
ng÷ khai b¸o ®îc ph¸t triÓn dùa trªn lý thuyÕt hµnh vi ng«n ng÷ (illocutionary acts) nh yªu
cÇu, mÖnh lÖnh. Ng«n ng÷ khai b¸o ®îc sö dông phæ biÕn nhÊt hiÖn nay lµ KQML [8]. CÊu tróc
ng÷ nghÜa cña th«ng ®iÖp gi÷a c¸c Agent ®îc ®Þnh nghÜa bëi b¶n thÓ (ontology). Ontology lµ
c¸c cÊu tróc ®Ó m« t¶ kh¸i niÖm vµ quan hÖ gi÷a chóng trong ph¹m vi vÊn ®Ò. Ontology mµ c¸c
Agent sö dông ®Ó m« t¶ ph¹m vi vÊn ®Ò ph¶i cã cÊu tróc gièng nhau. Mét khi c¸c Agent trao ®æi
c¸c ontology chung, chóng sÏ sö dông c¸c ontology nµy ®Ó hiÓu nhau vµ thùc hiÖn c¸c hµnh vi
x¸c ®Þnh.
3.3. LÜnh vùc ¸p dông
C¸c hÖ thèng multi - Agent thÝch hîp cho c¸c øng dông cã nh÷ng ®Æc trng sau:
Cã tÝnh ph©n t¸n cè h÷u: d÷ liÖu vµ th«ng tin cña chóng ®îc xö lý ë c¸c vÞ trÝ ®Þa lý kh¸c
nhau, ë c¸c thêi gian kh¸c nhau, ®îc tæ chøc thµnh c¸c nhãm mµ viÖc truy cËp chóng cÇn c¸c
ng÷ nghÜa vµ ng«n ng÷ kh¸c nhau (sù ph©n t¸n vÒ ng÷ nghÜa) hay ®îc tæ chøc thµnh c¸c nhãm
mµ viÖc truy cËp chóng cÇn c¸c kh¶ n¨ng vÒ nhËn biÕt, tri thøc kh¸c nhau (sù ph©n t¸n vÒ chøc
n¨ng).