ÁP DỤNG LÝ THUYẾT KIỂU ĐẶC TẢ HÌNH THỨC
HỆ THỐNG ĐA TÁC TỬ ĐỆ QUI
APPLYING THEORY OF TYPES TO FORMAL SPECIFICATION OF
RECURSIVE MULTI-AGENT SYSTEMS
HOÀNG THỊ THANH HÀ
Trường Đại học Kinh tế, Đại học Đà Nẵng
TÓM TT
Một hệ thống phức tạp được xem như tập các hthống con. Các hệ thống con này cùng tn
tại và tương tác ln nhau. Gần đây, hệ thống đa tác tử - là mt dạng của hệ thống phức tạp
rất được phát triển. Trong bài báo này, chúng tôi tập trung vào nghiên cứu hệ thống đa tác tử
đệ quy. Đây là hình thích hợp để đặc tc hệ thống phức tạp mang tính đệ quy. Hiện
nay, hthống đa tác tử đệ quy chỉ được đặc tả bởi những ngôn ngữ phi hình thức. Bài báo
này đưa ra đề xuất sử dụng lý thuyết kiểu đặc tả hình thức hệ thống trên.
ABSTRACT
Today, software systems are more and more complex. Such systems are composed of many
sub-systems, in which each sub-system exists in interaction with other sub-systems. Recently,
multi-agent systems (MAS), one of theses kinds of systems, have been studied thoroughly. In
this paper, we concentrate on studying the recursive MAS which are well adapted to describe
complex systems. Until now, recursive MAS have only been described by non-formal
languages. This paper proposes using the theory of mentioned types to specify recursive MAS.
1. Đặt vấn đề
Một hthống phức tạp thđược xem như một tập hợp c phần tử. Các phn tử
này một mặt hỗ trợ cho nhau đhoàn thành nhiệm v chung, mặt khác chúng lại phụ thuộc
vào các hthống con của đhoàn thành nhiệm vriêng. Để đặc tả các hthống trên, s
dng hthống đa tác tử (Multi-Agent System - MAS) có nhiều ưu thế. Các phần tcủa hệ
thống được xem như c tác tử, tập hợp các phần tử của hthống được xem như một MAS.
Không ch dừng lại là tập hợp các phần tử, các hệ thống phc tạp phi xem xét xuyên qua tất
ccác hoạt động của các phn tử cấu thành bằng cách phân rã các phần tmức đchi tiết
hơn. Hay một phần tử ở mức n phân rã thành mt tập hợp các phần tử con ở mức n-1. Như vy
sphân rã hthng mang tính đệ quy. thế, nhiều nghiên cứu đã đưa khái niệm đquy vào
trong MAS.
Cho đến nay, MAS đquy vẫn ch được đặc tả bằng các ngôn ngữ phi hình thức. Mục
đích của bài báo này là đề xuất việc sử dụng một ngôn nghình thc đđặc tả MAS đệ quy.
Từ đó, chúng ta thể phân tích, thiết kế, mô phỏng, kiểm thử tính đúng đắn của của hệ thng
phức tạp mà hệ thống đó được đặc tả bởi MAS đệ quy.
Phần tiếp theo của bài báo, chúng tôi slược khái niệm MAS và các tiếp cận đặc tả
của chúng. Sau đó hình MAS đquy sẽ được giới thiệu. Từ đó đxuất áp dụng lý thuyết
kiu để đặc tả MAS đ quy sđược trình y. Mt ứng dụng cụ thđược trình bày để minh
ha cho giải pháp. Cuối cùng bài báo kết thúc bởi kết luận.
2. Hthống đa tác t và các tiếp cận đc tả hình thức
Khái niệm tác tử
Sra đời của khái niệm tác tử gắn liền với sự xuất hiện của các khái niệm: thực thể sinh
hc, -bốt tự tr, sự -đun hóa trong công nghệ phần mềm. Vì đây là một lĩnh vực mới nên
vẫn chưa có sự thống nhất về khái niệm tác tử.Theo [5], [7] khái niệm về tác tử có thể hiểu: đó
là mt thực thể vật hoặc ảo, tồn ti và phát triển trong môi trường sống mà nómột thành
phần trong i trường đó. Các tác tử khả năng hoạt động độc lập, khả ng hc hỏi và
phát triển cũng như tự phân hủy trong môi trường sống. Các tác tử tương tác lẫn nhau và
tương tác vii trường sống cũng như chu sự tác động của môi trưng.
Hệ thống đa tác t
Qua khái niệm tác tử, hình nh MAS thể được liên ởng như một xã hội của những
động vật bc thấp (ví dụ đàn kiến) mà các phần ttrong đó có nhng nét đặc trưng như: có
mối quan h(phụ thuộc, chi phối, ngang hàng), có tương tác trao đổi thông tin và học hỏi lẫn
nhau, tác động vào môi trường ngược lại. Theo Ferber [5], một MAS được cấu thành bởi:
môi trường sống; tập các đối tượng th động chịu sự tác động của c tác tử lên nó; tp các tác
tlà các phần tử ch động; tập các mi quan hệ giữa các phần tử với nhau; tập các thao tác
giữa các phn tử với nhau.
Với nhng đặc trưng của MAS, đã có nhiu hình phân tích thiết kế như Gaia [9], mô
hình y tập trung vào việc phân tích các nhiệm vcủa các c tử. Hoặc hình AALADIN
[4] thì dựa trên stổ chức của c tác tử. Trong bài báo này, mô hình phân tích nguyên âm
[13] được sử dụng. hình này xem một MAS 4 phần: tập các tác tử A (Agents), môi
trường E (Environment), tập các tương tác I (Interactions), s tổ chức h thống O
(Organization)
Quy tc 1: MAS = A +E + I +O
Quy tc 2: Chc năng của MAS = chức năng của các tác tử + chức năng phát sinh
Quy tắc 3: Trong đquy, một MAS thể xem như là mt tác t(ở mức cao hơn)
ngưc lại một tác tử có thể xem như một MAS (ở mức thấp hơn). Một tác tử mức thấp
nhất, mức 0 (không thể phân rã được) là một tác tử tồn tại thc sự gi là tác tnguyên tử, các
tác tử ở mức khác 0 gọi là các tác tử phức hợp. Như vậy ta có: A = A nguyên tử | A phức hợp
Các tiếp cn đặc tả hình thức hệ thống đa tác tử đệ quy
Đặc tả hình thức là sdụng các khái niệm toán học đtả hệ thống, đặc biệt ý
nghĩa trong lĩnh vực tin học. Đặc tả hình thc dựa trên những sở toán học để đặt ra các
nguyên tc, cách biểu din, suy diễn. Đối với MAS, đã nhiều ngôn ngữ hình thc được sử
dng như: ngôn ngữ Z, ngôn ngữ hướng đối tượng Z [12], mạng Petri [3], DESIRE [2], logic
BDI (Belief, Desire, Intention) [8], -calcul [10]. Mỗi ngôn ngữ thích ứng với một số mô hình
của MAS, tuy nhiên với hình MAS đquy mà chúng tôi chn lựa thì các ngôn ngtrên
chưa đáp ứng được.
3. Hthống đa tác t đệ quy
3.1. Mô hình nguyên âm AEIO
Khái niệm đệ quy s dụng trong mô hình MAS đệ quy được xây dựng dựa trên quy tắc 3
trong [13]. Trong hình y, sphân rã một cách đquy dạng y, chỉ những tác tử
nguyên t (mức 0) mới tồn tại thc sự, còn nhng tác tử phc hợp (ở mức khác 0) là
những tác tảo đưc xây dựng bng cách gom nhóm một số tác tử ở mức cao hơn. Tất cả các
tác tử phức hp ở cùng mt mức hợp thành mt MAS mức đó.
Trước khi tìm hiểu MAS đệ quy, chúng ta đi phân tích hình AEIO theo 4 thành phần:
A và E: gis rằng U là vũ tr được tạo bởi tập các tác tử A và các đối tượng tạo nên môi
trường E, ta có: U = A E
I: bao gồm tất cả các tương tác trong hệ thống. Theo [6] thì có 3 loại tương tác:
- Tương c tiếp nhận (perception interaction): tương tác của môi trường lên các
tác t
- Tương tác tác động (action interaction): là tương tác của tác tử lêni trường
- Tương tác nhận thức (interaction cognitive): là tương tác giữa các tác tử vi nhau.
Nếu cho rằng c tương tác các hàm trong trụ, và hàm y trvề c n hiệu s
(signal) thì hàm I được biểu din : I: A x U S vi S là tập c tín hiệu s
Chúng ta thể đặc tả 3 loại tương tác trên:
- Tương tác tiếp nhận: I (Ai,e) = percept (e, Ai)
- Tương tác c đng: I(Ai, e) = action (Ai,e)
- Tương tác nhn thức: I(Ai,Aj) = message(Ai, Aj)
O: là s tổ chức trong hệ thống hay chính là tậpc mối quan hệ giữa các tác tử với nhau.
3 loại quan hệ [1]: biết (knowledge), giao tiếp (communication), lệ thuộc
(subordination). O mt tập các quan h2 ngôi, ứng vi mỗi quan hệ thì tập các tác t
được ch thành các nhóm theo quan hệ của chúng. Ta có: O = {A A}.
3.2. Mô hình nguyên âm AEIO đquy
Đệ quy E đệ quy E:= e nguyên t | {đệ quy E}
E có thể là một e nguyên t hoặc là mt tập hợp các E đệ quy khác. Nếu gọi En, En-1 lần
lượt là môi trường ở mức n và n-1 P là tính chất đệ quy thì: En ={P(En-1)}
Đệ quy A đệ quy A := A nguyên t | {đệ quy A}
A thlà một A nguyên thoặc là một tập hợp các A đquy khác. Nhưng theo đnh
nghĩa mỗi MAS mức n-1 mt tác tử mức n. Vì thế, tính đquy P của A còn phthuộc
vào cả môi trường nên: An = P({An-1},{En-1})
Đệ quy I đệ quy I := I nguyên tố | {đ quy I}
Tính chất đệ quy P s được xác minh qua 3 loại hàm I. mức 0 thì: I0 : A0 x U0 S0 vi
S0 là tập các tín hiệu mức 0.
- Tương tác tiếp nhận: I0 (Ai0, e) = percept (e0, Ai0)
- Tương tác c đng: I0 (Ai0, e0) = action (Ai0, e0)
- Tương tác nhn thức: I0 (Ai0, Aj0 ) = message I(Ai0, Aj0 )
Ở mức n:
- Tương tác tiếp nhận: In (Ain, en) = {percept (ekn-1, Akn-1)}
- Tương tác c đng: In (Ain, en) = {action (Akn-1, ekn-1,)}
- Tương tác nhn thức: In (Ain, Ajn) = {message(Apn-1, Aqn-1)}
Đệ quy O đệ quy O := O nguyên tố | {đệ quy O}
mức 0 thì rõ ràng O nguyên t chính là mối quan hệ giữa các tác tử vi nhau, ở đây
ch phân tích trong trường hp mức của O khác 0. Bởi vì các mi quan hệ tạo nên các nhóm
nên khi phân từ mức n xuống mức n-1, hàm O có dạng như sau:
On = Ain Ajn = Gr(Aqn-1) Gr (Apn-1) với Gr là nhóm do Ain phan rã thành.
4. Áp dụng lý thuyết kiểu đc tả h thống đa tác tử đệ quy
4.1. Lý thuyết kiểu
thuyết kiểu là mt đối tượng hấp dẫn cho các nhà tin học, toán hc, sinh hc từ
nhiều năm nay. Đối với lĩnh vực tin hc, lý thuyết kiu là mt công cụ hiệu quả để đc tả hình
thức các hthống, đặc biệt là các hthống đquy. thuyết kiểu được xây dựng dựa trên 3
thành phn chính: toán -gic, - calcul toán hc suy diễn. Theo [11] muốn định nghĩa một
kiuo đó, chúng ta thường đưa ra 4 luật:
Luật khi tạo F (Formation): giải thích kiểu này là gì
Luật giới thiệu I (Introduction): gii thiệu các phần tử của kiểu
Luật gin ước E (Elimination): từ các githiết, giới thiệu giản ước các phần tử của kiểu
Luật tính toán C (Calculation): quy định các cách giản ước biểu thức cho đơn giản.
Vi dụ: kiểu bool được định nghĩa: True, False là 2 giá trị của kiểu
- Luật F: )( Fbool
typeisbool
- Luật I: )(
:1
Ibool
boolTrue )(
:2
Ibool
boolFalse
- Luật E: )(
:
]/[:]/[:: Ebool
booldelsecthentrif
xFalseCdxTrueCcbooltr
- Luật C: ddelsecthenFalseif
cdelsecthenTrueif
(bool C)
Với hiệu phân số, thành phần trên gạch ngang là gi thiết, còn dưới gạch ngang là
kết luận dựa trên nhng giả thiết đã cho, C[t/x] một biểu thức chứa x, biến x được thay bởi
giá tr t, c: bool có nghĩa là c có kiểu bool.
4.2. Áp dụng lý thuyết kiểu đc t MAS đệ quy theo mô hình AEIO
Định nghĩa kiểu E:
- Luật F: )( FE
typeaisE
- Luật I: )(
:))::((
][:)::(
)(
:2
1
1
0
IE
EleF
Ele
IE
Ee nGroupE
n
Trong đó (e::l): [En-1] một danh sách kiểu E mức n-1 phần tử đu danh ch là e,
tiếp theo là một dãy các phn tl, FGroupE (l) hàm nhóm các phần tử kiểu E trong danh
sách l thành một phần tử kiểu E mức cao hơn.
- Luật E: )(
]/[:
])/[]/[]).([:(:]/[:: 0EE
xeCfceF
xlFCxlCElfxeCcEe
DecompE
GroupE
Trong đó ])/[]/[]).([:( xlFCxlCEl GroupE
: với mọi danh sách l kiểu E, tbiểu thức
C[l/c] kéo theo C[FGroupE l/x], FDecompE (e c f) là hàm phân rã e vi điều kiện c f.
- Luật C:
fclFFfceFffcleFF
cfceF
GroupEDecompEDecompEGroupEDecompE
DecompE
)(()())::((
0
(E C)
Định nghĩa kiểu A:
- Lut F: )( FA
typeaisA
- Lut I: )(
:))::((
][:)::(
)(
:2
1
1
0
IA
AlaF
Ala
IA
Aa nGroupA
n
- Lut E: )(
]/[:
])/[]/[]).([:(:]/[:: 0EA
xaCfcaF
xlFCxlCElfxaCcAe
DecompA
GroupA
- Lut C:
fclFFfceFffcleFF
cfceF
GroupEDecompEDecompEGroupEDecompE
DecompE
)(()())::((
0
(A C)
Định nghĩa hàm I:
I không phi là một kiểu, I là một hàm2 tham s, trả về tín hiệu s: I : A x U S
Áp dng lý thuyết kiểu để đnh nghĩa đquy hàm I như sau:
lFaIuaIluFaI
suaI
GroupUnmnmGroupUn
n
)::( 1
0
Định nghĩa hàm O:
O được xem là mt hàm mà tham sca nó là một tác tử a, hàm trvtập các tác tử có
quan hệ với tác tử a: O : A An. Áp dụng lý thuyết kiểu để định nghĩa đệ quy hàm O như
sau:
lFOaOlaFO
aaO
GroupAnnGroupA
n
11
0
)::(
5. Ứng dung: Đặc tả hệ thống tìm kiếm trên bản đ địa lý bng lý thuyết kiểu
5.1. Mô hình hóa hệ thống tìm kiếm thông tin trên bn đồ bằng mô hình AEIO
Bản đồ là như tập hp các đối tượng địa lý có mối quan hệ vi nhau. c đối ợng có
th điểm, đoạn thng, hoặc mt bằng. Bài toán đặt ra là làm thế nào đ phóng to hoặc thu
nhỏ bản đồ hoc một vùng trên bản đồ để phù hp vi việc in ấn và tìm kiếm địa điểm, đường
đi… Khi phóng to một vùng, tức là chi tiết hóa các đối tượng trong vùng đó đ dễ dàng tìm
kiếm thì các đối tượng xung quanh phải bị thu nhỏ lại, đôi khi nó chỉ còn lại là một đối tượng
đại diện cho nhóm thôi. Vì thế cần phải có cái nhìn ở mức thấp hơn (phóng to) và mức cao
hơn (thu nhỏ) các đi tượng. Với yêu cu như thế, chúng tôi áp dụng mô hình MAS đệ quy
AEIO cho bài toán.
E: tập hp các đối tượng địa lý tạo nên môi trường: nhà hoặc đưng ph
- Mức 0: môi trường cấu thành bi tập các đối tượng địa lý (Object Geograpic- ObGeo)
như các tòa nvà con đường
- Mức n: mỗi đối tượng ở mức này là tập hợp các đốiợng mức thấp hơn (Object
Geographic Set - ObGeoSet. Ví d ở mức 1, mt đối tượng có thể là «khu phố» là tập
các tòa nhà và con đườngmức 0. Ở mức 2, mt đối tượng có thể là mt
phường/xã
A: tập các tác tử quản lý các đối tượng có mi quan hệ với nhau (gn nhau với một khoảng
cách nhất định)
- Mức 0: mỗi tác tử tương ứng với một hoặc một nhóm các đối tượng. thể là đường
ph (Agent Route- AgR) hoặc tòa nhà (Agent Building-AgB)