Tải bản đầy đủ (.doc) (12 trang)

Tài liệu Thương lượng tự động trong thương mại điện tử pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (270 KB, 12 trang )

Lĩnh vực Công nghệ thông tin
Thơng lợng tự động trong thơng mại điện tử
TS.Trần Đình Quế, SV. Nguyễn Mạnh Hùng
Khoa Công nghệ thông tin 1
Tóm tắt:
! "#$"%&'(
()*+,!-./'0.123'&4%'0
3'256,"(.$7/'
81/51,(093:3;
.<0-$=3>'(:?@('@"
:;0?:;&6'*-.,#:?3-0A
0-B2', $
Từ khoá: "#&"*&,(&51/.$
1. Mở đầu
Thơng mại điện tử đợc hiểu là các hoạt động giao dịch thơng mại đợc thực hiện với sự
trợ giúp của công nghệ thông tin và công nghệ truyền thông. Tuy nhiên, đây là một định
nghĩa mang tính tổng quát. Trong thực tế, có thể hiểu thơng mại điện tử là các giao dịch th-
ơng mại đợc thực hiện trên môi trờng Internet. Thơng mại điện tử thế hệ thứ nhất đợc biết
đến thông qua các giao dịch trực tuyến [5] trên mạng Internet (không tự động) trong đó ngời
bán giới thiệu tất cả các mặt hàng của mình trên một website nhất định và ngời mua có thể
truy cập các website này để xem xét, lựa chọn mặt hàng theo nhu cầu của mình. Nếu muốn
mua một mặt hàng nào đó, ngời mua có thể tiến hành trả giá một cách trực tiếp trên website
và việc thanh toán có thể bằng thẻ tín dụng qua mạng Internet hoặc tại nhà khi ngời mua đợc
bàn giao sản phẩm. Hình thức này có hai hạn chế [8]: thứ nhất là tốn thời gian của khách
hàng; thứ hai là trong trờng hợp khách hàng không có hiểu biết đầy đủ về mặt hàng cần mua
thì không thể tự mình tìm kiếm và mua hàng trực tuyến.
Trong những năm gần đây, hình thức thơng lợng tự động đã đợc quan tâm nghiên cứu
mạnh mẽ ([1], [4-9]) và đợc coi là một cuộc cách mạng trong thơng mại điện tử thế hệ thứ
hai so với thế hệ thứ nhất. Theo cách tiếp cận này, các thành phần phần mềm thông minh (gọi
là agent) thay mặt ngời sử dụng tìm kiếm hàng hoá, lựa chọn đối tác và tiến hành thơng lợng
một cách chủ động theo yêu cầu ban đầu của khách hàng. Các agent thơng lợng tự động dựa


trên hai yếu tố: các giao thức và các chiến lợc. Các giao thức đảm bảo cho các agent hoạt
động tự chủ theo các luật thơng lợng, trong khi đó các chiến lợc hỗ trợ việc thơng lợng thành
công và tìm kiếm hàng hoá phù hợp với ngời dùng trong thời gian hạn định nào đó.
Tuỳ theo các dạng tơng tác, các mô hình thơng lợng đợc chia thành ba phạm trù chính:
Phạm trù thứ nhất bao gồm các mô hình đa phơng-đơn phơng hay đa phơng-đa phơng trong
đó nhiều agent thơng lợng với một hay nhiều agent khác. Các mô hình này đợc sử dụng rộng
rãi cho một số website nh eBay (). Phạm trù thứ hai bao gồm các mô
hình đơn phơng-đơn phơng theo đó từng cặp agent thơng lợng trực tiếp với nhau. Các mô
hình này sử dụng các phơng háp heuristic để xử lý thông tin không chắc chắn (xem ví dụ
[4]). Phạm trù thứ ba bao gồm các mô hình dựa trên lập luận/thuyết phục theo đó các agent
sử dụng những kiểu lập luận khác nhau nh đe doạ, khuyến mãi để thuyết phục đối thủ chấp
nhận việc mua bán [6]. Trong các phạm trù này, lĩnh vực thơng lợng có thể là đơn thuộc tính
(nh giá) hay đa thuộc tính (nh giá, chất lợng, kiểu hàng, bảo hành, ).
Bài báo này tập trung xem xét mô hình thơng lợng song phơng với nhiều thuộc tính và
đa chủng hàng hoá. Việc thơng lợng đợc tiến hành với chiến lợc ớc lợng dựa trên mô hình
ràng buộc mờ để quyết định chọn lựa hàng hoá theo sở thích của ngời dùng. Phần còn lại của
Học viện Công nghệ BCVT
Hội nghị Khoa học lần thứ 5
bài báo đợc cấu trúc nh sau: Phần 2 giới thiệu mô hình chiến lợc của các bên tham gia trong
một phiên thơng lợng tự động; Phần 3 giới thiệu một áp dụng cho hệ dịch vụ đặt chỗ du lịch;
Phần 4 là kết luận.
2. Mô hình hoá thơng lợng tự động
Thơng lợng là một tiến trình đựơc tạo ra bởi hai hay nhiều bên tham gia, mỗi bên tham
gia tiến hành đề nghị các yêu cầu và trả lời các yêu cầu cho đối tác nhằm đi đến một thoả
thuận chung thoả mãn tất cả các bên [4]. Thơng lợng tự động đợc hiểu là quá trình thơng l-
ợng đợc diễn ra giữa các agent đại diện cho các bên tham gia, chúng tiến hành đặt yêu cầu và
trả lời các yêu cầu một cách tự động mà không cần tới sự trợ giúp của con ngời.
Khi nói đến thơng lợng tự động, ngời ta quan tâm đến hai khía cạnh ([5], [6]): thứ nhất
là giao thức thơng lợng đợc sử dụng (tơng tự nh luật thơng lợng, bắt buộc các bên phải tuân
theo); thứ hai là chiến lợc nào đợc sử dụng để thơng lợng tự động có hiệu quả. Phần tiếp theo

sẽ trình bày hai vấn đề này trên mô hình thơng lợng song phơng.
2.1 Giao thức thơng lợng
Giao thức thơng lợng qui định các luật giao tiếp giữa các bên tham gia thơng lợng [5].
Chẳng hạn với giao thức thơng lợng kiểu đấu giá (Auction), ngời mua chỉ đợc quyền trả giá
cao hơn giá hiện tại của hàng hoá đã đợc trả. Đối với các giao thức thơng lợng kiểu song ph-
ơng (Bilateral) hay đa phơng (Multilateral) thì ngời mua có thể đề nghị ngời bán có những
nhợng bộ về giá cả hay chất lợng hàng hoá thông qua các thuộc tính Các giao thức th ơng l-
ợng có thể đợc phân chia thành các lớp nh Hình 1. Riêng giao thức đấu giá có nhiều kiểu
khác nhau [5]: kiểu của ngời Anh (English) có giá khởi điểm thấp, ngời mua trả giá cao dần
lên; kiểu của ngời Hà lan (Dutch) có giá khởi đầu rất cao và đợc hạ dần xuống trong quá
trình thơng lợng; kiểu giá ban đầu (First bid) chỉ diễn ra trong một buổi và chấm dứt khi ngời
tổ chức đã gõ triện để kết thúc; kiểu Vickrey tơng tự nh kiểu giá ban đầu nhng ngời thắng
cuộc có thể trả giá cao nhất hoặc cao thứ nhì trong cuộc đấu giá.
Một áp dụng đợc giới thiệu trong Mục 3 sử dụng giao thức thơng lợng song phơng.
Trong đó, hai bên tham gia thơng lợng đều có thể có các yêu cầu đề nghị đối tác phải đáp
ứng và có những nhợng bộ để đáp ứng lại yêu cầu của đối tác. Chiến lợc đa ra các yêu cầu và
các nhợng bộ sao cho nhanh chóng tìm đợc thoả thuận chung đồng thời đạt đợc lợi ích cao
nhất đối với mỗi bên sẽ đợc thảo luận trong mục tiếp theo.
2.2 Chiến lợc thơng lợng
Mô hình thơng lợng song phơng quan tâm tới chiến lợc thơng lợng của cả bên bán lẫn
bên mua. Mục này sẽ giới thiệu các mô hình chiến lợc thơng lợng cho mỗi bên tham gia dựa
trên mô hình bài toán ràng buộc mờ.
Học viện Công nghệ BCVT
Hình 1:C 'DD
Lĩnh vực Công nghệ thông tin
E$E$FG*/'
Mỗi agent bán hàng nắm giữ một tập các tri thức bao gồm: tập G = {g
1
, ,g
m

} là
các đơn vị hàng hoá mà nó có thể cung cấp, mỗi đơn vị hàng hoá g
i
có một tậpn
i
thuộc tính
{
n
iii
aaa , ,
21
}, các thuộc tính này đều có thể thơng lợng đợc và mỗi mặt hàngg
i
có một giá
trị lợi ích u
i
đợc coi là lợi nhuận thu đợc nếu bán đợc mặt hàng này. Tập R = {
r
1
,
r
2
, ,r
k
}các ràng buộc đối với ngời mua của mỗi mặt hàng, các ràng buộc này là tuỳ
chọn đối với mỗi mặt hàng nên có giá trị Boolean. Tập C = {
c
1
,c
2

, ,c
t
} các khuyến
mại đối với các mặt hàng, các phần tử của tập này cũng có giá trị Boolean do hình thức
khuyến mại có thể có hoặc không đối với mỗi mặt hàng. Tập O = {
o
1
,o
2
, ,o
l
} các
khách hàng đang thơng lợng với nó, mỗi khách hàng

bao gồm địa chỉ, các yêu cầu và các
hàng hoá đã giới thiệu cho khách hàng tơng ứng. Khi đó, tiến trình thơng lợng của agent bán
đối với mỗi khách hàng có thể có các trạng thái đợc minh hoạ nh Hình 2.
Khởi đầu: Bắt đầu cuộc thơng lợng, Agent bán chuyển vào trạng thái chờ đợi các kết
nối từ ngời mua ngay sau khi đã hoàn tất các thủ tục cần thiết để đăng kí vào hệ thống.
Chờ đợi: Trạng thái này chờ đợi các phản ứng từ phía khách hàng. Tuỳ vào nội dung các
thông điệp từ khách hàng mà agent bán chuyển vào những trạng thái cần thiết.
Cập nhật: trạng thái này bắt đầu khi agent bán nhận đợc thông điệp find từ khách
hàng. Khi đó, nó cập nhật các yêu cầu của khách hàng vào biến o
i
tơng ứng (có thể là
yêu cầu thêm hoặc nhợng bộ) và chuyển sang trạng thái 123.
Tìm kiếm: trạng thái này đợc bắt đầu khi agent bán nhận đợc thông điệp refind hoặc
chuyển từ trạng thái =H(H. Tại đây, agent bán tìm kiếm mặt hàng thoả mãn các yêu
cầu của khách hàng trong biến khách hàng


tơng ứng, nếu có nhiều hơn một mặt hàng
thoả mãn, nó chọn mặt hàng nào có giá trị lợi nhuận u
i
cao nhất và chuyển sang trạng
thái I/. Nếu không tìm thấy mặt hàng nào thoả mãn, nó chuyển sang trạng thái
J3 .
Ràng buộc: Nếu tìm thấy mặt hàng thoả mãn yêu cầu của khách hàng, agent bán vào
trạng thái này để kiểm tra xem mặt hàng vừa tìm đợc có ràng buộc nào đối với ngời mua
hay không (chẳng hạn ngời mua phải là vị thành niên, là nam hoặc nữ, độc thân hoặc có
gia đình ), các ràng buộc này nằm trong tập R. Sau khi bổ sung các ràng buộc vào mặt
hàng, agent bán sẽ gửi thông điệp check kèm theo mặt hàng này để hỏi xem ngời mua
có chấp nhận đợc mặt hàng này không.
Khuyến mại: Nếu không tìm thấy mặt hàng náo thoả mãn khách hàng, agent bán sẽ
chuyển vào trạng thái khuyến mại. Tại đây, nó kiểm tra xem đã có mặt hàng nào đợc giới
thiệu cho khách hàng hay cha (tìm trong tập O phần tử

tơng ứng). Nếu cha có, nó sẽ
Học viện Công nghệ BCVT
Hình 2KLM 'DD*/'
Hội nghị Khoa học lần thứ 5
gửi thông điệp relax đề nghị ngời mua giảm bớt một mức độ của thuộc tính vừa yêu
cầu. Nếu đã có, nó lại kiểm tra tiếp xem mặt hàng đó đã đợc giới thiệu kèm khuyến mãi
trớc đây hay cha. Nếu đã giới thiệu thì bây giờ nó không còn gì mới nên phải gửi thông
điệp relax nh trên. Nếu cha giới thiệu, nó sẽ giới thiệu mặt hàng này kèm theo hình
thức khuyến mãi với thông điệp check yêu cầu khách hàng xem có chấp nhận đợc hay
không.
Quá trình trên có thể lặp lại nhiều lần với các thay đổi từ phía khách hàng và chỉ kết thúc khi
agent bán nhận đợc thông điệp deal báo chấp nhận của khách hàng hoặc thông điệp fail
báo kết thúc thất bại khi khách hàng không thể giảm yêu cầu của mình thêm nữa. Trong tr-
ờng hợp kết thúc thành công, agent bán phải cập nhật lại số lợng mặt hàng tơng ứng trong tập

G và lu thông tin ngời mua lại cho công tác thống kê sau này. Nếu kết thúc thất bại, nó chỉ
loại bỏ thông tin về khách hàng từ phần tử

tơng ứng.
E$E$EG*
Mô hình chúng ta quan tâm là thơng lợng kiểu song phơng nên một agent mua chỉ đợc
thơng lợng với một agent bán (nhng một agent bán có thể thơng lợng đồng thới với nhiều
agent mua). Do đó, mỗi agent mua cần có các tri thức nh sau: tập P = {p
1
, ,p
n
} các
ràng buộc tơng ứng với các thuộc tính của hàng hoá, các ràng buộc này có thể là ràng buộc
đối với một thuộc tính hoặc có thể là ràng buộc đối với nhiều thuộc tính, và mỗi ràng buộcp
i
có một độ u tiên thoả mãn u
i
khác nhau; nếu một thuộc tính có nhiều giá trị thì mỗi giá trị
cũng có độ u tiên về mức độ thoả mãn
j
i
pp
khác nhau. Một giá trị

gọi là ngỡng chấp
nhận đối với khách hàng, nghĩa là mặt hàng chỉ đợc chấp nhận khi độ thoả mãn tính đợc
không vợt quá ngỡng này. Tất cả các thông tin này đợc thu thập thông qua một giao diện trực
tiếp với khách hàng. Các trạng thái thơng lợng của agent mua đợc minh hoạ nh hình 3.
Lựa chọn: đợc coi nh trạng thái khởi đầu cho thơng lợng. Tại đây, agent mua khởi động
một phiên thơng lợng bằng cách chọn một trong các ràng buộcp

i
có độ u tiên thoả mãn
u
i
lớn nhất. Sau đó, nó gửi các ràng buộc này đến agent bán với thông điệp find với
mong muốn agent bán tìm kiếm mặt hàng thoả mãn ràng buộc p
i
này.
Kiểm tra: sau khi nhận đợc thông điệp check từ agent bán, agent mua sẽ chuyển vào
trạng thái này để kiểm tra xem mặt hàng nhận đợc có thoả mãn các ràng buộc còn lại
trong tập P hay không. Việc kiểm tra này chỉ đơn thuần xem giá trị các thuộc tính của mặt
Học viện Công nghệ BCVT
Hình 3KLM 'DD*
Lĩnh vực Công nghệ thông tin
hàng có nằm trong tập giá trị ràng buộc của các thuộc tính tơng ứng hay không. Nếu có ít
nhất một ràng buộc bị vi phạm, nó chuyển sang trạng thái I/. Nếu không có ràng
buộc nào bị vi phạm, nó chuyển sang trạng thái N"$
Duyệt: mặt hàng nhận đợc không vi phạm các ràng buộc của khách hàng, nhng không thể
chắc chắn rằng mặt hàng đó đợc khách hàng chấp nhận. Để kiểm tra khả năng này, agent
mua sử dụng các kỹ thuật mờ để tính toán độ thoả mãn của mặt hàng tơng ứng đối với yêu
cầu của khách hàng theo các bớc nh sau.
- Tính độ phù hợp tơng đơng b
i
của từng ràng buộc p
i
dựa trên độ u tiên tơng đối u
i
và độ phù hợp a
i
: b

i
= G(u
i
, a
i
). Trong đó, u
i
=
max
u
u
i
, u
max
= max{u
i
} và a
i
đợc ớc lợng mờ từ giá trị thuộc tính của mặt
hàng so với giới hạn ràng buộc của thuộc tính tơng ứng. Hàm G: [0, 1]
ì
[0, 1]

[0, 1] đợc gọi là hàm
chuyển đổi độ phù hợp tơng đơng nếu nó thoả mãn các điều kiện [8]:
1. G(u
1
, a)

G(u

2
, a) nếu u
1


u
2
;
2. G(u, a
1
)

G(u, a
2
) nếu a
1


a
2
;
3. G(1, a) = a;
4. G(0, a) = 1.
Trong áp dụng trình bày ở Phần 3, hàm chuyển đổi độ quan trọng đợc sử dụng là hàm
1)1(),( += uaauG
.
- Tính độ phù hợp tổng thể

của mặt hàng so với các ràng buộc (
i

:

= min{/

}, với b
i
là các giá trị
phù hợp tơng đơng trên từng thuộc tính đã xác định ở bớc trên. Khi đó,

đợc gọi là độ thoả mãn ràng
buộc tổng thể của mặt hàng. Để tính đợc độ chấp nhận mặt hàng của agent mua, cần phải tính các giá trị
thoả mãn ràng buộc đối với bên bán và độ thoả mãn khuyến mãi.
- Tính độ thoả mãn ràng buộc đối với agent bán: vì bên bán có thể có một số ràng buộc đối với ng ời
mua. Khi đó, độ phù hợp

của ngời mua đợc ớc lợng từ khả năng của ngời mua so với ràng buộc của
ngời bán (xem chi tiết [8]). Tơng tự, có thể ớc lợng đợc độ thoả mãn khuyến mãi

của ngời dùng đối
với mặt hàng.
- Tính độ chấp nhận : của agent mua đối với mặt hàng từ các giá trị

,,
đã xác định đợc trong
các bớc trên: : = F(

,,
). Hàm F: [0, 1]
ì
[0, 1]

ì
[0, 1]

[0, 1] đợc gọi là một hàm chấp nhận đối
với agent mua nếu nó thoả mãn các điều kiện sau [8]:
1.
0),,0( =

F

),0,(

F
= 0;
2.
),,(),,(
222111

FF
nếu
212121
,,


;
3.
),min(),,(

F
dấu = xảy ra khi

0=

;
4. Nếu

<
thì
1),,( <<

F
với

là ngỡng chấp nhận của agent mua.
Trong áp dụng ở Phần 3, hàm F đợc chọn là:
))1((),min(),,(

+=F
. Trong đó,

là ngỡng chấp nhận của agent mua và

là toán tử đồng nhất với phần tử đơn vị là

. Một toán tử

: [0, 1]
ì
[0, 1]

[0, 1]đợc gọi là toán tử đồng nhất với phần tử đơn vị


nếu nó thoả mãn các điều
kiện sau [8]:
1.
aa
=

với
]1,0[a
;
2.
),max( baba
với
]1,(,

ba
;
3.
),min( baba
với
),0[,

ba
;
4.
),m ax(),min( bababa
với
]1,(),,0[

ba

;
5.
00
=
a
với
]1,0[a
.
Trong áp dụng ở Phần 3, toán tử đồng nhất đợc sử dụng là:
)1)(1()1(
)1(
baab
ab
ba
+

=


.
Khi đó, nếu độ chấp nhận mặt hàng : lớn hơn ngỡng chấp nhận

của khách hàng thì
agent mua chấp nhận mặt hàng bằng cách gửi đi thông điệp deal và kết thúc giai đoạn
thơng lợng. Nếu ngợc lại, độ thoả mãn của mặt hàng nhỏ hơn ngỡng

thì mặt hàng bị
Học viện Công nghệ BCVT
Hội nghị Khoa học lần thứ 5
loại bỏ và agent mua yêu cầu agent bán tìm mặt hàng khác theo các ràng buộc cũ với

thông điệp refind (không bổ sung thêm ràng buộc mới).
Ràng buộc: khi mặt hàng nhận đợc có ít nhất một vi phạm đối với các ràng buộc trong P,
agent mua chuyển vào trạng thái này. Tại đây, nó bổ sung các ràng buộc bị vi phạm vào
tập các yêu cầu gửi đi agent bán cùng với thông điệp find để yêu cầu tìm kiếm mặt hàng
thoả mãn các yêu cầu đã đợc bổ sung này.
Duyệt lại: nếu nhận đợc thông điệp relax, agent mua sẽ chuyển vào trạng thái này.
Thông điệp relax có ý nghĩa yêu cầu agent mua giảm bớt mức độ đối với ràng buộc bổ
sung sau cùng trớc đó. Do vậy, agent mua sẽ kiểm tra lại xem ràng buộc đó có thể giảm đ-
ợc nữa hay không. Một ràng buộc (

có thể giảm thêm đợc khi độ thoả mãn
j
i
pp
(giảm
lần thứ j) vần còn lớn hơn ngỡng nhợng bộ

. Sau khi kiểm tra, nếu còn giảm đợc, agent
mua sẽ chuyển sang trạng thái O/. Nếu không còn giảm đợc nữa, agent mua sẽ gửi
đi thông điệp fail để thông báo huỷ bỏ cuộc thơng lợng với agent bán.
Nhợng bộ: tại đây, agent mua sẽ giảm ràng buộc đợc đề nghị (

xuống một mức theo đơn
vị của thuộc tính tơng ứng (khi đó, độ u tiên
j
i
pp
cũng giảm theo). Sau đó, gửi ràng buộc
đợc thay đổi này đến agent bán với thông điệp find yêu cầu agent bán tìm kiếm mặt
hàng theo các ràng buộc đã thay đổi.

Vì việc thơng lợng có thể diễn ra trên nhiều thuộc tính, có nghĩa là có thể có nhiều thuộc tính cần nhợng
bộ. Tuy nhiên, agent mua phải ớc lợng để chọn ra mỗi lần chỉ nhợng bộ trên một thuộc tính sao cho giá
trị lợi ích của mình bị giảm là nhỏ nhất. Khi đó, agent mua tính giá trị lợi ích bị mất dựa trên độ thoả
mãn bị giảm đi
i
pp
và độ u tiên tơng đối

của thuộc tính đó.
Hàm T:[0, 1]
ì
[0, 1]

[0, 1] đợc gọi là hàm tính giá trị lợi ích bị mất nếu nó thoả mãn các điều kiện:
1.
),(),(
21
puTpuT
nếu
21
pp
2.
),(),(
21
puTpuT
nếu
21
uu
3.
upT =),1(

4.
0)0,( =uT
Trong áp dụng ở Phần 3, hàm tính giá trị lợi ích bị mất đợc sử dụng là
puupT =),(
.
Nh vậy, với mỗi bên tham gia thơng lợng, đều có hai trạng thái kết thúc: thành công
hoặc thất bại. Việc quyết định thành công hay thất bại đều do bên agent mua chấp nhận hay
không chấp nhận mặt hàng của agent bán. Điều này là phù hợp với thực tế khi thơng lợng kết
thúc là do ngời mua quyết định có mua hay không.
3. áp dụng hệ dịch vụ du lịch
3.1 Kiến trúc của hệ thống
Bài toán đặt ra nh sau: P.%:;)-5'+Q
(%9$N 3.011230-B3(0A
002', ,!.6&.,#:?:;0?-B46 $
J6&.R(S2/''50 0A0(T
2', &,. ;&.6,!H50':;0?U
*$
Hệ thống này đợc phân tích và thiết kế dựa trên phơng pháp luận MaSE và agentTool.
MaSE (Multiagent Systems Engineering) là phơng pháp luận cho phát triển các hệ đa agent
và agentTool là bộ công cụ hỗ trợ phơng pháp luận này (xem chi tiết [2]). Hệ thống đợc thiết
kế gồm bốn lớp agent: UserAgent là lớp agent đại diện cho ngời mua, HotelAgent là
lớp agent quản lý và cung cấp phòng ở khách sạn, TrainAgent là agent quản lý và cung
cấp thông tin vé cho các chuyến tàu và MidAgent là agent môi giới thơng lợng giữa
UserAgent với các agent bán là HotelAgent và TrainAgent. Kiến trúc hệ thống đợc
minh hoạ nh hình 4.
Học viện Công nghệ BCVT
Lĩnh vực Công nghệ thông tin
Hoạt động của hệ thống đợc tóm tắt nh sau: Mỗi agent bán kiểu HotelAgent và
TrainAgent đại diện cho nhà cung cấp các dịch vụ khách sạn và tàu hoả tơng ứng tại mỗi
thành phố. Khi tham gia vào hệ thống, chúng phải đăng kí với MidAgent các thông tin bao

gồm địa chỉ và khả năng cung cấp dịch vụ của mình. Mỗi UserAgent đại diện cho một
khách hàng, khi tham gia vào hệ thống phải đăng kí với MidAgent để nhận đợc địa chỉ các
nhà cung cấp dịch vụ khách sạn và tàu hoả tại thành phố nó định đến, để tiến hành thơng l-
ợng. Sau khi nhận đợc địa chỉ HotelAgent và TrainAgent, UserAgent sẽ tiến hành
thơng lợng với các agent bán này theo chiến lợc và giao thức đã đợc giới thiệu trong Phần 2.
Trớc hết UserAgent sẽ thơng lợng với TrainAgent theo yêu cầu nh ngày đi, chuyến tàu,
loại vé, để chọn vé tàu mong muốn; sau đó nó tiếp tục tiến hành thơng lợng với
HotelAgent để chọn chỗ ở khách sạn mong muốn. UserAgent còn có nhiệm vụ tích
hợp thông tin và gửi lại cho ngời sử dụng (xem chi tiết trong [10]). Phần tiếp theo dành trình
bày quá trình thơng lợng giữa các agent.
3.2 Quá trình thơng lợng
Do khuôn khổ hạn chế của bài báo nên phần này sẽ chỉ tập trung minh hoạ quá trình
thơng lợng đặt chỗ khách sạn giữa bên mua là UserAgent và bên bán là HotelAgent.
Giả sử UserAgent đại diện cho một khách hàng muốn đi công tác tại Thành phố Hồ
Chí Minh trong 3 ngày. Các yêu cầu của khách hàng đối với khách sạn bao gồm 5 tiêu chí là
{L%,2', &'(T2', &,%.(T&2S'V2',
3(%&023%W**}, độ u tiên với các tiêu chí này tơng ứng là {E&
X&F&Y&Z}. Ngỡng chấp nhận
95.0=

và ngỡng nhợng bộ là
5.0=

cho tất cả các tiêu chí
trên. Độ thoả mãn với các giá trị khác nhau của từng thuộc tính đợc cho trong các bảng 1 đến
5.
Học viện Công nghệ BCVT
Hình 4:J3["%
Hội nghị Khoa học lần thứ 5
Độ thoả mãn đối với các hình thức khuyến mại Miễn phí điện thoại nội hạt và Tặng quà

may mắn lần lợt là 80% và 20%. HotelAgent quản lí khách sạn khu vực Thành phố
HCM có các khách sạn với các thuộc tính nh bảng 6.
Sau khi đợc MidAgent môi giới, UserAgent bắt đầu tiến trình thơng lợng với
HotelAgent thee các vòng lặp nh sau.
Vòng 1
UserAgent: chọn ràng buộc có độ u tiên cao nhất là có Internet, gửi đi cùng với thông điệp
kiểu find.
HotelAgent: Khi nhận đợc thông điệp find. Nó cập nhật yêu cầu {internet} vào tri thức của
mình và tiến hành tìm kiếm khách sạn thoả mãn yêu cầu này. Theo bảng 6, có các khách sạn
{2
E
&2
Y
&2
\
&2
]
&2
^
} thoả mãn. Nhng 2
E
có giá trị lợi ích cao hơn (trong ứng dụng này, giá trị lợi
ích đợc tính là 2% giá phòng khách sạn môi giới đợc). Do đó, HotelAgent sẽ gửi thông
điệp check kèm với khách sạn 2
E
bao gồm các thông tin {,%,_Z&'(T_X``&,%
._E&2S'_X&6**}.
Học viện Công nghệ BCVT
Bảng 1: Độ thoả mãn thuộc
tính '(T

Bảng 2: Độ thoả mãn thuộc tính
2S'
Bảng 3: Độ thoả mãn
thuộc tính L%,
Bảng 4: Độ thoả mãn
thuộc tính L%D.
Bảng 5: Độ thoả mãn
thuộc tính W**
Lĩnh vực Công nghệ thông tin
Vòng 2
UserAgent: Nhận đợc thông điệp check, nó kiểm tra xem có bị vi phạm ràng buộc nào
không. Phát hiện có vi phạm '(T_X``aY``. Nó bổ sung yêu cầu {'(T


Y``} và gửi đi cùng với thông điệp find.
HotelAgent: Nhận thông điệp find, nó cập nhật lại yêu cầu và tìm kiếm lại theo yêu cầu
{6W**&'(T

Y``}. Có các khách sạn {2
\
&2
^
} thoả mãn, nhng 2
\
có lợi ích lớn
hơn nên nó gửi k
6
{,%,_Y&'(T_Y``&,%._E&2S'_E&6W**}
kèm thông điệp check.
Vòng 3

UserAgent: kiểm tra thấy vi phạm: ,%,_YbX. Bổ sung yêu cầu {,%,

X} và gửi theo
thông điệp find.
HotelAgent: cập nhật lại yêu cầu, tìm kiếm theo yêu cầu mới {6W**&'(T

Y``&
,%,

X}. Nhng không có khách sạn nào thoả mãn. Vì trớc đây cha có khách sạn nào bị
gửi lại với thông điệp refind nên nó gửi thông điệp relax mà không phải vào trạng thái
23 .
Vòng 4
UserAgent: Nhận thông điệp relax, nó duyệt lại xem có thể nhợng bộ những thuộc tính nào
đã gửi đi đồng thời kiểm tra giá trị lợi ích bị mất nếu nhợng bộ trên từng thuộc tính. Các
thuộc tính có thể nhợng bộ:
F$W**K/VFc%`K_)FU`+d)ZeZ+_F
E$f'(TK/VY``YF`K_)F `$g+d)XeZ+_`$`^
Y$L%,K/VXc%YK_)FU`$]+d)EeZ+_`$FE
Do đó, nó chọn nhợng bộ là giá phòng do giá trị lợi ích bị mất là nhỏ nhất. Nó bổ sung yêu
cầu {'(T
310
} và gửi đi thông điệp find.
HotelAgent: cập nhật lại yêu cầu và tìm kiếm theo yêu cầu mới là {6W**&'(T
310

&,%,

X}. Vì chỉ có khách sạn2
]

thoả mãn nên nó giới thiệu 2
]
{,%,_X&'
(T_YF`&,%._F&2S'_\&6W**} kèm theo thông điệp check.
Vòng 5
UserAgent: kiểm tra thấy có hai vi phạm: ,%._FbE và 2S'_\aZ. Nó bổ
sung yêu cầu {,%.

E&2S'

Z} và gửi kèm thông điệp find.
HotelAgent: cập nhật yêu cầu, yêu cầu hiện tại là {6W**&'(T

YF`&,%,

X&
,%.

E&2S'

Z}. Vì không có khách sạn nào thoả mãn, và cũng cha có khách
sạn nào đợc trả lại kèm thông điệp refind nên HotelAgent sẽ gửi đi thông điệp relax.
Vòng 6
UserAgent: Kiểm tra các khả năng nhợng bộ:
Học viện Công nghệ BCVT
Bảng 6: Các khách sạn có thể phục vụ
Hội nghị Khoa học lần thứ 5
F$W**&/VFc%`K_)FU`+d)ZeZ+_F
E$f'(T&/VYF`YE`)>+K_)F `$^+d)XeZ+_`$F\
Y$L%,&/VXc%YK_)F `$]+d)EeZ+_`$FE

X$L%.&/VEc%FK_)F `$Z+d)FeZ+_`$F
Z$JS'&/VZ\K_)F `$g+d)YeZ+_`$`\
Do đó, nó nhợng bộ về khoảng cách và bổ sung yêu cầu {2S'

\}, gửi đi kèm
thông điệp find.
HotelAgent: cập nhật yêu cầu về khoảng cách, nhng vẫn không tìm thấy khách sạn nào thoả
mãn. một lần nữa, nó lại gửi thông điệp relax.
Vòng 7
UserAgent: kiểm tra các điều kịên nhợng bộ:
F$W**&/VFc%`K_)FU`+d)ZeZ+_F
E$f'(T&/VYF`YE`)>+K_)F `$^+d)XeZ+_`$F\
Y$L%,&/VXc%YK_)F `$]+d)EeZ+_`$FE
X$L%.&/VEc%FK_)F `$Z+d)FeZ+_`$F
Z$JS'&/V\])>+K_)F `$^+d)YeZ+_`$FE
Vì vậy nó nhợng bộ ,%., bổ sung yêu cầu {,%.

F} và gửi kèm thông điệp find.
HotelAgent: cập nhật yêu cầu mới, trở thành {6W**&'(T

YF`&,%,

X&,%U
.

F&2S'

\}. Lần này, có khách sạn 2
]
thỏa mãn. Nó gửi 2

]
kèm thông điệp
check. (Lu ý rằng 2
]
trớc đây đã bị từ chối do yêu cầu quá cao, nay lại có thể phù hợp do
một số nhợng bộ từ UserAgent).
Vòng 8
UserAgent: kiểm tra thấy các ràng buộc đều thoả mãn so với ràng buộc hiện tại. Nó chuyển
sang trạng thái duyệt xem có chấp nhận đợc khách sạn này không.
h(i('/KL%,_)FUF+d)EeZ+jF_F
f'(T_)`$g F+d)XeZ+jF_`$gE
L%._)`$ZUF+d)FeZ+jF_`$g
JS'_)`$gUF+d)YeZ+jF_`$gX
W**_)FUF+d)ZeZ+jF_F
kH

_`$g
h'(/2', K012', 256/
1=

$
hS>23 K2', 2
\
623 "9"

0=

$
Vậy độ chấp nhận của UserAgent là
: = min{0.9, 1}


((1 0.95)*0 + 0.95)
= 0.9

0.95
=
)95.01)(9.01(95.095.0*9.0*)95.01(
95.0*9.0*)95.01(
+

= 0.9
Giá trị này lớn hơn ngỡng chấp nhận 0.95 nên không chấp nhận đợc đối với
UserAgent. Khi đó, nó gửi đi thông điệp refind.
HotelAgent: Khi nhận thông điệp refind, nó tiến hành tìm lại theo yêu cầu cũ. Nhng không
có khách sạn nào thoả mãn ngoại trừ khách sạn 2
]
vừa đợc từ chối theo thông điệp refind.
Nó chuyển sang trạng thái J3 , phát hiện khách sạn 2
]
có khuyến mại h"
, nó đính kèm thông tin này vào khách sạn 2
]
và gửi đi với thông điệp check.
Vòng 9
UserAgent: nhận đợc 2
]
bổ sung hình thức khuyến mại. Nó chỉ cần tính lại giá trị độ thoả
mãn khuyến mại
8.0=


do độ thoả mãn với hình thức khuyến mại này là 80%, các giá trị
Học viện Công nghệ BCVT
Lĩnh vực Công nghệ thông tin
9.0
=


0=

vẫn không đổi do khách sạn 2
]
đẫ đợc tính trong vòng 8. Khi đó, độ chấp
nhận đợc tính lại là
: = min{0.9, 1}

((1-0.95)*0.8 + 0.95)
= 0.9

0.99
=
)99.01(*)9.01(*95.099.0*9.0*)95.01(
99.0*9.0*)95.01(
+

= 0.98
Giá trị này lớn hơn ngỡng 0.95 nên đợc chấp nhận. Khi đó, UserAgent sẽ gửi đi thông
điệp deal và kết thúc giai đoạn thơng lợng.
HotelAgent: nhận thông điệp deal, nó lu giữ thông tin này cho các bớc sau và cũng kết
thúc giai đoạn thơng lợng và nh vậy quá trình thơng lợng hoàn thành.
4. Kết luận

Bài báo này là kết quả nghiên cứu tiếp tục của chúng tôi [11] nhằm trình bày một mô
hình thơng lợng tự động song phơng, đa thuộc tính và đa chủng hàng dựa trên bài toán ràng
buộc mờ. Trong hệ thống đa agent, mỗi agent thay mặt ngời sử dụng sẽ thơng lợng với agent
đại diện ngời bán để chọn ra mặt hàng theo yêu cầu của ngời sử dụng. Các kết quả tìm kiếm
này sẽ đợc kết hợp lại để có đợc những chủng loại mặt hàng theo yêu cầu. Thông thờng các
yêu cầu của ngời sử dụng là những thông tin không chắc chắn hoặc không rõ ràng. Do đó,
việc sử dụng logic mờ trong việc mô hình yêu cầu ngời sử dụng và xác định chiến lợc cho
agent là khá tự nhiên và đã đợc nhiều ngời quan tâm nghiên cứu. Mô hình thơng lợng song
phơng dựa trên ràng buộc mờ đợc trình bày trong bài báo xuất phát từ công trình nghiên cứu
của Jennings et al. [8]. Tuy nhiên, nỗ lực của chúng tôi đi xa hơn công trình này ở chỗ thơng
lợng không những là đa thuộc tính mà còn là đa chủng hàng hoá và khi đó ràng buộc không
những chỉ có trên một sản phẩm mà còn có trên nhiều sản phẩm liên quan với nhau. Với
chiến lợc ớc lợng và ra quyết định mờ, các bên tham gia thơng lợng có thể đa ra những yêu
cầu bổ sung hoặc các nhợng bộ cần thiết để nhanh chóng đi đến một thoả thuận chung và có
lợi cho cả hai bên. Các chiến lợc này đã đợc áp dụng cho thiết kế hệ du lịch với hai nguồn
hàng là vé tàu và chỗ ở khách sạn và đợc cài đặt với ngôn ngữ Java. Việc thơng lợng đồng
thời trên nhiều thuộc tính với nhiều đối tác là vấn đề đang đợc quan tâm nghiên cứu và sẽ đợc
trình bày trong một công trình khác của chúng tôi.
Tài liệu tham khảo
[1] Morad Benyoucef, Hakim Alj, Mathieu Vézeau and Rudolf K. Keller. =/*:
O*lU=**K=*(,:G**, 2001.
[2] Scott A. DeLoach. G,,::*,,PLl:*. Presented at 12
nd
Midwest Artificial Intelligence and Cognitive Science Conference (MAICS 2001), Miami
University, Oxford, Ohio, March 31 April 1, 2001.
[3] Jonathan DiLeo, Timothy Jacobs and Scott A. DeLoach. W*m*,
P*L,*,l*. Fourth International Bi-Conference Workshop on Agent
Oriented Information Systems (AOIS 2002), 15
th
-16

th
July 2002, Bologna, Italy.
[4] P. Faratin, C. Sierra and N. R. Jennings. n,L=*2*O*
:*Uoo,$ Journal of Artificial Intelligence, 142(2), 2002, 205-237.
[5] Minghua He, Nicholas R. Jennings and Ho-fung Liung. mG*UP*:*:l*
=**. IEEE Transactions on Knowledge and Data Systems, 15(4), 2003.
[6] Sarit Kraus. G*:O*:N*,P2P*l0*,.
2001.
[7] X. Luo, J. H. Lee, H. Liung and N. R. Jennings. C,*:pqq=,Lo
C/*,KGc,&W,:k:. Journal of Fuzzy Sets and Systems,
136(2), 2002, 155-188.
[8] Xudong Luo, Nicholas R. Jennings, Nigel Shadbolt, Ho-fung Liung anf Jimmy Ho-man
Học viện Công nghệ BCVT
Hội nghị Khoa học lần thứ 5
Lee. Gpqq=,7,*:P:*o7*&PU,,*O*,L*U
(*0*l0*,. 21
st
January 2003.
[9] Pattie Maes, Robert H. Guttman and Alexandros G. Moukas. G*7:L*.
Communications of the ACM, March 1999, Vol.42, No.3, .
[10] T.D. Quế và N.M. Sơn. <(5:"*. Kỷ yếu
Hội nghị Khoa học Học Viện Công nghệ Bu chính Viễn thông, Tháng 9 năm 2003.
[11] T.D Quế và N.M. Hùng. G*3;*,<.:i. Báo cáo tại Hội
nghị Quốc gia Một số vấn đề chọn lọc của công nghệ thông tin, Thái Nguyên, 8-2003.
Sơ lợc về tác giả
Trần Đình Quế tốt nghiệp Thạc sỹ tại Trờng Đại học Melbourne, Australia năm 1998 và
Tiến sỹ tại Viện Công nghệ Thông tin, Hà nội năm 2000. Những quan tâm nghiên cứu của
tác giả bao gồm: trí tuệ nhân tạo phân tán, công nghệ phần mềm hớng agent, hệ trợ giúp
quyết định, ontology, tích hợp thông tin và thơng mại điện tử. Một số công trình của tác giả
đã đợc đăng trên các tạp chí chuyên ngành và báo cáo tại các Hội nghị trong nớc và quốc tế.

Điện thoại: 04 8545604, Email:
Nguyễn Mạnh Hùng hiện là sinh viên năm cuối Khoa Công nghệ Thông tin, Học viện Công
Nghệ Bu chính Viễn thông. Những quan tâm nghiên cứu của tác giả bao gồm công nghệ
phần mềm hớng agent, ontology và thơng mại điện tử. Email:
Học viện Công nghệ BCVT

×