thương lượng tự động dựa trên độ đo tương tự trong hệ đa...
TRANSCRIPT
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
1
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent / Đặng Thành Trung ; Nghd. :
TS. Trần Đình Quế
MỤC LỤC MỤC LỤC .................................................................................................................... 1
DANH MỤC BẢNG BIỂU ........................................................................................... 3
DANH MỤC HÌNH VẼ ................................................................................................ 4
MỞ ĐẦU ...................................................................................................................... 5
Chương 1 THƯƠNG MẠI ĐIỆN TỬ ............................................................................ 8
1.1 THƯƠNG MẠI ĐIỆN TỬ ...................................................................................... 8
1.1.1 Một số khái niệm .............................................................................................. 8
1.2.2 Các mô hình giao dịch điện tử .......................................................................... 8
1.2 THƯƠNG LƯỢNG ................................................................................................. 9
1.2.1 Tổng quan về thương lượng .............................................................................. 9
1.2.2 Thương lượng song phương dựa trên ràng buộc mờ có trọng số ...................... 10
1.3 KẾT LUẬN ........................................................................................................... 10
Chương 2 CÔNG NGHỆ AGENT ............................................................................... 11
2.1 TỔNG QUAN VỀ AGENT ................................................................................... 11
2.1.1 Khái niệm Agent ............................................................................................ 11
2.1.2 Các đặc trưng của agent .................................................................................. 11
2.2 HỆ ĐA AGENT .................................................................................................... 11
2.2.1 Khái niệm ....................................................................................................... 11
2.2.2 Môi trường tính toán thích hợp cho hệ đa agent .............................................. 11
2.2.3 Mô hình tương tác .......................................................................................... 11
2.3 NGÔN NGỮ TRUYỀN THÔNG GIỮA CÁC AGENT ........................................ 12
2.3.1 KQML là gì? .................................................................................................. 12
2.3.2 Đặc trưng của KQML ..................................................................................... 12
2.3.3 Cú pháp KQML ............................................................................................. 12
2.4 PHƯƠNG PHÁP LUẬN PHÁT TRIỂN HỆ ĐA AGENT ..................................... 13
2.5 agentTool và agentMom ........................................................................................ 13
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
2
2.6 KẾT LUẬN ........................................................................................................... 14
Chương 3 AGENT RA QUYẾT ĐỊNH ....................................................................... 16
3.1 MỘT SỐ KHÁI NIỆM CƠ BẢN........................................................................... 16
3.1.1 Tập mờ và ngữ nghĩa khái niệm mờ................................................................ 16
3.1.2 Đại số các tập mờ ........................................................................................... 16
3.1.3 Quan hệ mờ .................................................................................................... 17
3.2 MÔ HÌNH AGENT RA QUYẾT ĐỊNH ................................................................ 18
3.2.1 Mô hình ra quyết định agent bán..................................................................... 18
3.2.2 Mô hình ra quyết định agent mua ................................................................... 22
3.3 KẾT LUẬN ........................................................................................................... 24
Chương 4 MÔ HÌNH THƯƠNG LƯỢNG .................................................................. 25
4.1 BÀI TOÁN ........................................................................................................... 25
4.2 CHIẾN LƯỢC THƯƠNG LƯỢNG ...................................................................... 25
4.2.1 CHIẾN LƯỢC CHO AGENT MUA .............................................................. 25
4.2.2 CHIẾN LƯỢC CHO AGEN BÁN.................................................................. 26
4.4 KẾT LUẬN ........................................................................................................... 28
Chương 5 DỊCH VỤ HỖ TRỢ MUA BÁN XE MÁY MoSeB .................................... 29
5.1 GIỚI THIỆU BÀI TOÁN ...................................................................................... 29
5.2 PHÂN TÍCH VÀ THIẾT KẾ ................................................................................. 29
5.2.1 Phân tích ........................................................................................................ 29
5.2.2 Thiết kế .......................................................................................................... 35
5.3 CÀI ĐẶT VÀ TÍCH HỢP ..................................................................................... 38
5.3.1 Lưu trữ hệ tri thức .......................................................................................... 38
5.3.2 Mô hình hệ thống ........................................................................................... 39
KẾT LUẬN ................................................................................................................ 40
TÀI LIỆU THAM KHẢO ............................................. Error! Bookmark not defined.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
3
DANH MỤC BẢNG BIỂU
Bảng 3.1: Một số phép toán trên tập mờ ........................................................................... 16
Bảng 3.2: Một số ví dụ về hàm t-norm và s-norm............................................................. 17
Bảng 3.3: Tiêu chuẩn đánh giá độ tương tự ...................................................................... 20
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
4
DANH MỤC HÌNH VẼ
Hình 1.1: Mô hình CBB (Comsumer Behavior Buying) ..................................................... 8
Hình 1.2: Mô hình BBT (Business-to-Business Transaction) ............................................. 9
Hình 2.1: Mô hình tương tác với agent môi giới ............................................................... 12
Hình 2.2: Biểu diễn cú pháp của KQML dưới dạng BNF ................................................. 13
Hình 2.3: Mô hình đối tượng agentMom .......................................................................... 14
Hình 2.4: Công cụ agentTool phiên bản 2.0 ..................................................................... 14
Hình 2.5: Các pha trong MaSE ........................................................................................ 15
Hình 3.1: Khái niệm tập mờ ............................................................................................. 16
Hình 3.2: Mức độ chấp nhận của agen bán ....................................................................... 21
Hình 4.1: Chiến lược mua ................................................................................................ 25
Hình 4.2: Chiến lược bán ................................................................................................. 27
Hình 5.1: Lược đồ mục tiêu ............................................................................................. 29
Hình 5.2: Trích chọn các usecase ..................................................................................... 30
Hình 5.3: Biểu đồ tuần tự báo cáo .................................................................................... 30
Hình 5.4: Biểu đồ tuần tự môi giới ................................................................................... 31
Hình 5.5: Biểu đồ tuần tự thương lượng ........................................................................... 31
Hình 5.6: Các lớp ontology .............................................................................................. 32
Hình 5.7: Sơ đồ ontology hệ thống ................................................................................... 33
Hình 5.8: Lược đồ các role hệ thống ................................................................................ 34
Hình 5.9: Sơ đồ hoạt động của nhiệm vụ Negotiate trong role Buyer ............................... 34
Hình 5.10: Sơ đồ hoạt động của nhiệm vụ Serve trong role Seller .................................... 35
Hình 5.11: Lược đồ Agent ............................................................................................... 35
Hình 5.12: Phiên hội thoại khởi xướng ............................................................................. 36
Hình 5.13: Phiên hội thoại đáp ứng .................................................................................. 36
Hình 5.14: Kiến trúc BuyerAgent .................................................................................... 37
Hình 5.15: Kiến trúc SellerAgent ..................................................................................... 37
Hình 5.16: Kiến trúc BrokerAgent ................................................................................... 37
Hình 5.17: Kiến trúc hệ thống tổng thể ............................................................................ 37
Hình 5.18: CSDL cho SellerAgent ................................................................................... 38
Hình 5.19: CSDL cho BuyerAgent .................................................................................. 38
Hình 5.20: Mô hình kiến trúc 3 lớp .................................................................................. 39
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
5
MỞ ĐẦU
Sự phát triển mạnh mẽ của Internet và công nghệ truyền thông đã dẫn đến sự bùng nổ
của thương mại điện tử với các tiến trình giao dịch được thực hiện dựa trên công nghệ
truyền thông và mạng Internet.
Do có nhiều ưu điểm hơn so với thương mại truyền thống như: giao dịch có thể thực
hiện nhanh hơn, rẻ hơn, không phụ thuộc vào văn hoá hay vị trí địa lý… nên thương mại
điện tử ngày càng đóng một vai trò quan trọng trong nhiều tổ chức doanh nghiệp. Tuy
nhiên, đa số các ứng dụng thương mại điện tử ngày nay mới chỉ dừng lại ở mức độ giới
thiệu sản phẩm trên các Website trực tuyến (được gọi thương mại điện tử thuộc thế hệ thứ
nhất). Khi đó, khách hàng chọn lựa sản phẩm ưa thích và sau đó tiến hành các bước giao
dịch khác như thanh toán (theo hình thức chuyển khoản…) hay yêu cầu giao hàng... Tuy
nhiên, càng ngày người ta càng nhận ra rằng mô hình này chưa thể hiện hết sức mạnh tiềm
ẩn của thương mại điện tử.
Trong thương mại điện tử, mỗi phiên giao dịch bao gồm nhiều pha khác nhau [24]: xác
định nhu cầu và nhà cung cấp, thương lượng, thanh toán… Trong các pha này, thương
lượng được xem là một trong những pha then chốt trong quá trình giao dịch. Với thương
mại điện tử thế hệ thứ nhất, giai đoạn thương lượng được khách hàng thực hiện một cách
thủ công và phải giao dịch trực tiếp với người bán. Thế hệ thứ hai của thương mại điện tử1,
bắt đầu từ năm 2001, được đặc trưng bởi việc tự động hoá các giai đoạn trong tiến trình
giao dịch. Nhiều nghiên cứu về thương mại điện tử hiện nay tập trung vào xem xét những
vấn đề liên quan đến tự động hoá quá trình thương lượng dựa trên công nghệ agent.
Các agent phần mềm thông minh hay ngắn gọn là agent được hiểu là các chương trình
có những đặc trưng như: tự chủ, linh hoạt, thích nghi... chạy trên các máy chủ khác nhau
có thể tương tác trao đổi thông tin cho nhau. Khi đó, người mua chỉ cần đưa ra các yêu cầu
đối với sản phẩm cần mua (giá trong khoảng bao nhiêu, màu sắc chất lượng sản phẩm như
thế nào…) cho các agent đại diện cho mình (gọi là agent mua) và người bán cũng đặt ra
các yêu cầu cho sản phẩm muốn bán (chỉ bán với giá tối thiểu bao nhiêu…) cho các agent
đại diện cho mình (gọi là agent bán). Khi đó, các agent sẽ tự động tìm kiếm và giao dịch
thương lượng với nhau. Kết quả cuối cùng sẽ được thông báo cho người dùng.
Tuỳ thuộc vào số lượng các bên tham gia, thương lượng có thể được chia thành hai
dạng: thương lượng kiểu đấu giá (chỉ một bên mua hay bên bán đưa ra đề xuất yêu cầu và
sẽ chọn người thắng cuộc trong nhiều đối tác tham gia) và thương lượng song phương (chỉ
1 K.C. Laudon and C.G. Traver. E-commerce: Business, Technology, Society. Addison Wesley Pub.,
2002.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
6
có một bên mua và một bên bán tham gia thương lượng). Mỗi dạng thương lượng đều có
ba thành phần liên quan:
(i) Đối tượng thương lượng: có thể là từng thuộc tính hoặc toàn bộ đối tượng như số
lượng mặt hàng, ngày giao hàng, giá cả, kích cỡ...
(ii) Giao thức thương lượng: liên quan đến các quy luật mà các bên phải thoả thuận
trong thương lượng như kiểu thương lượng là đấu giá hay song phương...
(iii) Chiến lược thương lượng: quá trình lập luận để đưa ra quyết định. Chiến lược
thương lượng có thể hiểu là các bước agent đưa ra quyết định. Tuỳ theo các mô
hình thương lượng khác nhau, các agent sẽ phải có các chiến lược thương lượng
khác nhau để đạt được mục đích của mình.
Trong những năm gần đây, thương lượng song tự động trong thương mại điện tử đã trở
thành chủ đề thu hút nhiều quan tâm, nghiên cứu ([3-8], [17-20], [23-28]). Mô hình thương
lượng song phương đa thuộc tính dựa trên ràng buộc mờ có độ ưu tiên được Jennings [28]
đề xuất năm 2003. Trong mô hình này, chiến lược ra quyết định của cả agent mua và agent
bán được xây dựng dựa trên các ràng buộc mờ có độ ưu tiên của các thuộc tính. Tuy nhiên,
trong thực tế người bán không những chỉ thụ động chạy theo các yêu cầu của agent mua
mà còn có thể tự đề xuất các mặt hàng tương tự để thuyết phục người bán mua mặt hàng
[18].
Ý tưởng về độ tương tự có thể hiểu đơn giản như sau: Các sản phẩm thương lượng
thường được đặc trưng bởi nhiều thuộc tính. Do đó, việc đánh giá các sản phẩm được thực
hiện thông qua các thuộc tính. Hai sản phẩm được xem là tương tự nhau nếu chúng có các
giá trị trong các thuộc tính tương ứng tương tự nhau. Khi đó, mức độ tương tự giữa hai sản
phẩm sẽ được xác định bằng tổ hợp có trọng số độ tương tự giữa các giá trị này. Các thuộc
tính của sản phẩm được chia thành hai loại: các thuộc tính định lượng (có miền giá trị là
một khoảng nào đó, ví dụ: giá, thời hạn đăng ký…) và các thuộc tính định tính (có miền
giá trị là một tập hợp các giá trị rời rạc, ví dụ: màu sắc, phân khối…). Để xác định mức độ
tương tự giữa các giá trị trong một thuộc tính, người ta sử dụng khái niệm gọi là hàm đánh
giá. Hàm đánh giá hiểu đơn giản là một hàm ánh xạ mỗi giá trị của một thuộc tính tương
ứng với một giá trị thực thuộc khoảng [0,1]. Khi đó, mức độ tương tự của các giá trị trong
cùng một thuộc tính cũng sẽ được xác định bằng tổ hợp có trọng số các giá trị của hàm
đánh giá đối với thuộc tính đó.
Luận văn này đã sử dụng mô hình “tương tự” để cải tiến mô hình ra quyết định của
agent bán. Trong quá trình thương lượng, các yêu cầu của agent mua sẽ được mô hình hoá
thành các ràng buộc mờ có độ ưu tiên và lần lượt gửi sang cho người bán theo thứ tự của
độ ưu tiên. Về phía agent bán, nếu không tìm được các sản phẩm thoả mãn yêu cầu agent
mua, nó có thể đề xuất một số sản phẩm “tương tự” để nâng cao hiệu quả thương lượng.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
7
Luận văn “Thương lượng song phương dựa trên độ đo tương tự trong hệ đa Agent”
nhằm kết hợp mô hình đưa ra quyết định dựa trên ràng buộc mờ có trọng số và mô hình độ
đo tương tự để phát triển thương lượng trong hệ đa agent. Mô hình này đã được áp dụng để
xây dựng hệ đa agent thương lượng tự động MoSeB (Motorcycle Selling and Buying). Hệ
thống được xây dựng và phát triển dựa theo phương pháp luận MaSE và công cụ agentTool
[11]. Nội dung chính của luận văn bao gồm năm chương:
Chương 1: Thương mại điện tử. Trình bày khái niệm cơ bản về thương mại điện tử, các
mô hình giao dịch và các mô hình thương lượng.
Chương 2: Công nghệ Agent. Trình bày các khái niệm cơ bản về agent, hệ đa agent và
ngôn ngữ truyền thông KQML giữa các agent. Phương pháp luận phát triển hệ đa agent
MaSE (Multiagent System Engineering) và công cụ agentTool được sử dụng để phát triển
ứng dụng sẽ được đề cập đến.
Chương 3: Agent ra quyết định. Trình bày một số khái niệm cơ bản trong logic mờ và
ứng dụng của chúng trong việc mô hình hoá sở thích người mua cũng như cách tính toán
đưa ra quyết định của người bán và người mua.
Chương 4: Mô hình thương lượng. Trình bày cụ thể chiến lược ra quyết định của cả hai
bên (bên mua và bên bán) trong mô hình thương lượng song phương.
Chương 5: Dịch vụ hỗ trợ mua bán xe máy MoSeB. Mô hình thương lượng song
phương được đề cập trong các chương trước sẽ được áp dụng để phát triển hệ MoSeB.
Chương này trình bày chi tiết từng bước xây dựng một hệ đa agent dựa trên phương pháp
luận MaSE và công cụ agentTool và kết quả cài đặt với ngôn ngữ lập trình java.
Phần kết luận của luận văn nhằm trình bày những kết quả đã đạt được và một số hướng
nghiên cứu và phát triển của luận văn trong thời gian tới.
Chương 1 Thương mại điện tử
8
Chương 1 THƯƠNG MẠI ĐIỆN TỬ
1.1 THƯƠNG MẠI ĐIỆN TỬ
1.1.1 Một số khái niệm
Hiệp hội thương mại điện tử [24] (Electronic Commerce Association) đã đưa ra một
định nghĩa về thương mại điện tử như sau:
Thương mại điện tử là các giao dịch thương mại, giao dịch hành chính hoặc trao đổi
thông tin được thực hiện dựa vào công nghệ thông tin và công nghệ truyền thông.
Dựa vào bản chất của các giao dịch, chúng ta có thể chia thương mại điện tử thành ba
dạng chính [10]:
• Giao dịch B2B (Business to Business) là giao dịch mà cả người mua và người bán
là các doanh nghiệp.
• Giao dịch B2C (Business to Consumer) là giao dịch mua bán giữa doanh nghiệp và
khách hàng.
• Giao dịch C2C (Consumer to Consumer) là giao dịch giữa các khách hàng.
1.2.2 Các mô hình giao dịch điện tử
1.2.2.1 Mô hình CBB
Mô hình CBB ([19], [24]) được sử dụng trong giao dịch B2C nhằm thể hiện hành vi
người tiêu dùng, tức là tập trung chủ yếu vào người khách hàng.
Hình 1.1: Mô hình CBB (Comsumer Behavior Buying)
Xác định
nhu cầu
Môi giới
sản phẩm Thành lập liên minh
người mua Sản phẩm
cần mua
Cần gì
Mua từ
ai?
Môi giới
người bán
Điều kiện
mua bán
Mua bán và
phân phối
Đánh giá
sản phẩm
Thẻ tín
dụng
Đường hàng
không, tàu thuỷ Cách thực
hiện
Còn ai mua
nữa không?
Mô hình CBB
Thương lượng
Chương 1 Thương mại điện tử
9
Mô hình CBB bao gồm bảy pha (hình 1.1): Xác định nhu cầu (Need Identification), môi
giới sản phẩm (Product Brokering), thành lập liên minh người mua (Buyer Coalition
Formation), môi giới người bán (Merchant Brokering), thương lượng (Negotiation), mua
bán & phân phối (Purchase and Delivery) và đánh giá sản phẩm (Product and Evaluation).
1.2.2.2 Mô hình BBT
Mô hình BBT ([10], [24]) là mô hình giao dịch cho kiểu giao dịch B2B giữa các doanh
nghiệp. Ngược với mô hình CBB, mô hình này tập trung chủ yếu vào phía người bán. Ý
nghĩa của nó là cải tiến hiệu quả trong quá trình tìm kiếm sản phẩm để cung cấp cho khách
hàng. Mô hình này bao gồm sáu pha (hình 1.2): thành lập hiệp hội (Partnership
Formation), môi giới (Brokering), thương lượng (Negotiation), dự thảo hợp đồng (Contract
Formation), thực hiện hợp đồng (Contract Fulfillment) và đánh giá dịch vụ (Service
Evaluation).
Hình 1.2: Mô hình BBT (Business-to-Business Transaction)
1.2 THƯƠNG LƯỢNG
1.2.1 Tổng quan về thương lượng
Thương lượng là một tiến trình thoả hiệp giữa các bên tham gia tương tác (có lợi ích
xung đột nhau) để đi tới một kết quả thống nhất, có thể chấp nhận được.
Thành lập
hiệp hội
Đánh giá
dịch vụ
Các doanh nghiệp
Môi giới
Thương lượng
Dự thảo hợp đồng
Thực hiện
hợp đồng
Tìm kiếm người
mua & người bán
Tìm
cộng tác
Thoả hiệp
Hợp đồng
hợp pháp
Phân phối và
thanh toán
Thông tin
phản hồi
Mô hình BBT
Chương 1 Thương mại điện tử
10
Thương lượng tự động là một quá trình thương lượng, trong đó, người mua và người
bán được thay thế bằng các thực thể agent. Việc tìm kiếm, mua bán và thoả thuận giữa
người mua và người bán được thực hiện tự động bởi các agent.
Mỗi quá trình thương lượng tự động đều bao gồm 3 thành phần chính [17]: Giao thức
thương lượng, mục tiêu thương lượng và chiến lược thương lượng
1.2.1.1 Thương lượng kiểu đấu giá
Đấu giá là một trong những hình thức thương lượng đã được nghiên cứu và phát triển
khá phổ biến trong thương mại điện tử (như eBay, Yahoo…). Trong mỗi phiên đấu giá, sẽ
có một hoặc nhiều agent làm nhiệm vụ điều khiển phiên đấu giá và các agent còn lại sẽ
thay nhau đưa ra các lời trả giá theo đúng các qui tắc đấu giá. Có nhiều kiểu đấu giá như
đấu giá kiểu Anh, kiểu Vickrey...
1.2.1.2 Thương lượng song phương
Thương lương song phương [24] là dạng thương lượng có hai bên tham gia trong quá
trình giao dịch, một bên mua và một bên bán. Có ba cách tiếp cận trong việc xây dựng mô
hình ra quyết định trong thương lượng song phương ([17], [24]): Mô hình thương lượng
dựa trên lý thuyết trò chơi, mô hình thương lượng dựa trên kỹ thuật Heuristic và mô hình
thương lượng dựa trên lý thuyết thuyết phục.
1.2.2 Thương lượng song phương dựa trên ràng buộc mờ có trọng số
Mô hình này được phát triển từ bài toán thoả mãn ràng buộc mờ ưu tiên (Prioritised
Fuzzy Constraint Satisfaction Problems viết tắt là PFCSP) được Jenning đề xuất năm 2003.
Bài toán thoả mãn ràng buộc mờ thuộc lớp bài toán NP đầy đủ, tức là chưa có lời giải tối
ưu. Thương lượng song phương là một trong những cách tiếp cận khá hiệu quả để giải
quyết các lớp bài toán thuộc dạng này.
• Mô hình sở thích của người mua: Trong mô hình này, chiến lược thương lượng của
người mua được mô hình hoá dựa trên các ràng buộc mờ có độ ưu tiên.
• Độ đo tương tự giữa các mặt hàng của người bán: Để cải tiến hiệu quả trong quá
trình thương lượng, luận văn trình bày một chiến lược mới dựa trên độ đo tương tự
giữa các mặt hàng.
1.3 KẾT LUẬN
Chương này giới thiệu tổng quan về thương mại điện tử và các giai đoạn trong các mô
hình giao dịch. Một trong những giai đoạn quan trọng nhất trong các mô hình giao dịch đó
là thương lượng và là quan tâm của luận văn này.
Chương 2 Công nghệ Agent
11
Chương 2 CÔNG NGHỆ AGENT
Nội dung chương này trước hết trình bày một số khái niệm cơ bản về agent, hệ đa agent
và ngôn ngữ truyền thông giữa các agent. Sau đó trình bày các bước trong phân tích và
thiết kế hệ đa agent dựa trên phương pháp luận MaSE.
2.1 TỔNG QUAN VỀ AGENT
2.1.1 Khái niệm Agent
Đã có rất nhiều định nghĩa khác nhau về Agent. Dưới đây là một định nghĩa về một
agent phần mềm được nhiều người chấp nhận.
“Agent là một hệ tính toán hoàn chỉnh hay chương trình được đặt trong một môi trường
nhất định, có khả năng hoạt động một cách tự chủ và mềm dẻo trong môi trường đó nhằm
đạt được mục đích đã thiết kế”.
2.1.2 Các đặc trưng của agent
Các Agent phần mềm có một số đặc trưng khác biệt với các chương trình phần mềm nói
chung (Jennings và Wooldridge 1998): Tính tự chủ (autonomous), khả năng phản ứng
(reactive), khả năng giao tiếp (communicative), khả năng hoạt động hướng đích (goal-
driven)...
2.2 HỆ ĐA AGENT
2.2.1 Khái niệm
Một hệ đa agent là một tập hợp các agent, có mục tiêu riêng, miền tri thức riêng nhưng
có thể tương tác với nhau để hoàn thành mục tiêu chung, tổng thể của hệ thống.
2.2.2 Môi trường tính toán thích hợp cho hệ đa agent
Các môi trường và dạng bài toán thích hợp cho hệ đa agent bao gồm [34]:
• Hệ đa agent có thể giải quyết một bài toán vượt quá khả năng của một agent đơn.
• Hệ đa agent cung cấp phương pháp giải quyết các bài toán phân tán trong đó có
nhiều thành phần tự chủ cùng hoạt động trong một xã hội agent và cùng tuân theo
các qui tắc trong xã hội đó.
• Hệ đa agent cung cấp các phương pháp giải quyết các bài toán mà thông tin được
thu thập từ nhiều nguồn khác nhau.
• Cách tiếp cận hướng agent phù hợp khi hệ thống phải hành động một cách tự chủ để
thay mặt người dùng.
2.2.3 Mô hình tương tác
Khi các agent hoạt động trong các hệ đa agent, người thiết kế cần phải xác định mô hình
tương tác cụ thể cho hệ thống. Hiện nay có rất nhiều mô hình tương tác khác nhau trong
Chương 2 Công nghệ Agent
12
các hệ đa agent ([36], [37]): tương tác không có agent trung gian và tương tác với agent
trung gian. Luận văn tập trung chủ yếu vào mô hình tương tác có agent trung gian, cụ thể
hơn là mô hình tương tác với agent môi giới.
Mô hình tương tác với agent môi giới
Trong mô hình này, một agent đóng vai trò như một nhà môi giới (gọi là BrokerAgent)
có nhiệm vụ là tạo ra cơ chế liên lạc trực tiếp giữa agent Yêu cầu và agent Cung cấp như
hình 2.1. Khi các agent khác muốn tham gia vào hệ thống phải đăng ký dịch vụ với agent
Môi giới và nó trở thành nhà cung cấp dịch vụ.
Hình 2.1: Mô hình tương tác với agent môi giới
2.3 NGÔN NGỮ TRUYỀN THÔNG GIỮA CÁC AGENT
2.3.1 KQML là gì?
KQML [15] được viết tắt của từ “Knowledge Query and Manipulation Language” có
nghĩa là ngôn ngữ thao tác và truy vấn tri thức. Nó không chỉ là ngôn ngữ mà còn xác định
giao thức cho việc trao đổi thông tin và tri thức giữa các agent.
2.3.2 Đặc trưng của KQML
KQML là một ngôn ngữ được sử dụng để truy vấn và thao tác tri thức. Do đó nó có các
đặc trưng sau [16]:
• KQML là giao thức và ngôn ngữ giao tiếp, hướng thông điệp, và là ngôn ngữ bậc
cao (sử dụng từ vựng và ngôn ngữ gần với ngôn ngữ người dùng).
• KQML là một giao thức độc lập đối với: Cơ chế truyền thông, ngôn ngữ nội dung,
giao thức tương tác.
• KQML có thể được sử dụng để mở rộng cho các kiểu thông điệp mới.
2.3.3 Cú pháp KQML
Một thông điệp KQML có thể được gọi là một thể hiện (performative). Một thể hiện
được biểu diễn bởi một chuỗi các ký tự ASCII tuân theo cú pháp tựa như ngôn ngữ lập
trình LISP (một ngôn ngữ lập trình hướng đối tượng). Theo cú pháp đó, mỗi câu lệnh được
Agent
Yêu cầu
Agent
Cung cấp
Agent
Môi giới
Đăng ký dịch vụ
Yêu cầu dịch vụ
Kết quả dịch vụ
Yêu cầu dịch vụ Tên, địa chỉ
nhà cung cấp
Chương 2 Công nghệ Agent
13
biểu diễn bởi một cặp “tham số/giá trị”. Cú pháp KQML [15] viết dưới dạng BNF (Backup
Norm Form) như hình 2.3
Hình 2.2: Biểu diễn cú pháp của KQML dưới dạng BNF
2.4 PHƯƠNG PHÁP LUẬN PHÁT TRIỂN HỆ ĐA AGENT
Hiện nay đã có rất nhiều phương pháp luận phát triển hệ đa agent. Tuy nhiên, tất cả đều
dựa trên một trong ba cách tiếp cận sau: dựa trên trên Agent và Công nghệ Agent, phát
triển từ hướng đối tượng và dựa trên công nghệ tri thức. Cùng với các phương pháp luận
phát triển hệ đa agent, cũng có rất nhiều các công cụ tiện ích được phát triển: agentTool
(Air Force Institute of Technology), AgentBuilder (Reticular Systems), Microsoft Agent
(Microsoft Corparation),…
Luận văn sử dụng phương pháp luận MaSE ([12], [13]) và công cụ agentTool ([11]) để
phát triển ứng dụng. Các thao tác chung của MaSE được thể hiện trong hình 2.5. Theo đó,
MaSE bao gồm hai pha [12]:
• pha phân tích bao gồm 4 bước: xác định mục tiêu, xác định các usecase, xây dựng
ontology và hoàn thiện các role.
• pha thiết kế bao gồm 4 bước: tạo các lớp Agent, xây dựng phiên hội thoại, kết hợp
các agent và thiết kế hệ thống.
2.5 agentTool và agentMom
agentTool [11] là bộ công cụ hỗ trợ phát triển hệ đa agent theo phương pháp luận
MaSE. Hình 2.3 minh hoạ ví dụ về giao diện của bộ công cụ này. Kết quả cuối cùng của
agentTool là sinh ra các lớp mã nguồn cho hệ đa agent, tức là sinh ra các lớp agent và các
lớp hội thoại tương ứng. Nói chung, tất cả các lớp agent và các lớp hội thoại, được sinh ra
từ agentTool, đều được xây dựng trên một khung chung, gọi là agent Mom (hình 2.3).
<performative> ::= (<word> {�:<word>�<expression>}*)
<expression> ::= <word> | <quotation> | <string> |
(<word>�<expression>}*)
<word> ::= <character>*
<character> ::= <alphabetic> | <number> | <special>
<special> ::= < | > | = | + | - | × | / | & | ^ | - | _ | @ | $ | % | : | . | ! | ?
<quotation> ::= ‘<expr> | ‘<comma-expr>
<comma-expr> ::= <word> | <quotation> | <string> | ,<comma-expr> |
(<word>{�<comma-expr>}*)
<string> ::= “<stringchar>*” | #<digit><digit>*”<ascii>*
<stringchar> ::= \<ascii>| <ascii>-\-<double-quote>
Chương 2 Công nghệ Agent
14
Sorry
Agent
Conversation
Message Handler
Message
Hình 2.3: Mô hình đối tượng agentMom
2.6 KẾT LUẬN
Chương đã trình bày các khái niệm về agent, hệ đa agent, ngôn ngữ truyền thông
KQML giữa các agent… Trong chương này cũng trình bày các bước để xây dựng một hệ
đa agent theo phương pháp luận MaSE và công cụ agentTool để thực hiện việc phát triển
một hệ đa agent
Hình 2.4: Công cụ agentTool phiên bản 2.0
Chương 2 Công nghệ Agent
15
Hình 2.5: Các pha trong MaSE
Yêu cầu hệ thống
Cây phân cấp mục tiêu
Usecase
Sơ đồ tuần tự
Sơ đồ lớp Agent
Kiến trúc Agent
Lược đồ phát triển
Xác định mục tiêu
Xác định Use Case
Hoàn thiện các Role
Tạo các lớp Agent
Xây dựng các phiên hội thoại
Kết hợp các lớp Agent
Thiết kế hệ thống
Ph
ân tích
Thiết k
ế
Ontology
Sơ đồ Role
Xây dựng ontology
Sơ đồ Task
Các phiên hội thoại
Chương 3 Agent ra quyết định
16
Chương 3 AGENT RA QUYẾT ĐỊNH
3.1 MỘT SỐ KHÁI NIỆM CƠ BẢN
3.1.1 Tập mờ và ngữ nghĩa khái niệm mờ
Theo L.A. Zadeh [40] tập mờ được xem như là một sự mở rộng trực tiếp của tập hợp
theo định nghĩa truyền thống (thường gọi là tập kinh điển). Tập kinh điển A⊆U có một
danh giới rõ ràng, và vì vậy nó được biểu thị bằng hàm đặc trưng [40]:
1( )
0A
u Au
u Aµ
∀ ∈=
∀ ∉ (1)
Về mặt ngữ nghĩa, hàm đặc trưng (còn gọi là hàm thuộc) cho ta khả năng biểu thị trực
quan của chúng ta về ý nghĩa của khái niệm mờ và không thể xác định một cách chính xác
được một hàm thuộc cho một khái niệm mờ. Đồ thị của hàm thuộc biểu diễn “sự rẻ” được
minh hoạ trong hình vẽ 3.1
Hình 3.1: Khái niệm tập mờ
3.1.2 Đại số các tập mờ
Phần này nhằm xem xét một số phép toán trên tập mờ [1]. Giả sử A, B ⊆ U là hai tập
mờ, µA, µB là hai hàm thuộc tương ứng.
Stt Phép toán trên tập mờ Định nghĩa trên hàm thuộc
1 A ⊆ B µA(u) ≤ µB
2 A ∪ B µA∪B(u) = µA(u) ∨ µB(u) = max{µA(u), µB(u)}
3 A ∩ B µA∩B(u) = µA(u) ∧ µB(u) = min{µA(u), µB(u)}
4 -A µ-A(u) = 1 - µA(u)
5 U, ∅ µU(u) = 1; µ∅(u) = 0
Bảng 3.1: Một số phép toán trên tập mờ
Các phép toán t-norm t và t-conorm
• t-norm là hàm t:[0,1]×[0,1]→[0,1] thoả mãn các tính chất sau (∀ x, y, z∈[0,1]) :
Rẻ Đắt
25
Rẻ Đắt
25 50
Chương 3 Agent ra quyết định
17
(i) Giao hoán: t(x, y) = t(y, x) (2)
(ii) Kết hợp: t(x, t(y, z)) = t(t(x, y), z) (3)
(iii) Tồn tại phần tử đơn vị: t(1, x) = x (4)
(iv) Không giảm theo từng biến
x1≥x2 ⇒ t(x1, y) ≥ t(x2, y) ∀x1, x2, y∈[0,1] (5)
y1≥y2 ⇒ t(x, y1) ≥ t(x, y2) ∀x, y1, y2∈[0,1] (6)
• s-norm (hay còn gọi là t-conorm) là hàm s:[0,1]×[0,1]→[0,1] thoả mãn các tính chất
sau (∀ x, y, z∈[0,1]) :
(I) Giao hoán: s(x, y) = s(y, x) (7)
(ii) Kết hợp: s(x, s(y, z)) = s(s(x, y), z) (8)
(iii) Tồn tại phần tử không: s(0, x) = x (9)
(iv) Không giảm theo từng biến
x1 ≥ x2 ⇒ s(x1, y) ≥ s(x2, y) ∀x1, x2, y∈[0,1] (10)
y1 ≥ y2 ⇒ t(x, y1) ≥ t(x, y2) ∀x, y1, y2∈[0,1] (11)
Có thể thấy t-norm và s-norm tuân thủ theo quy tắc đối ngẫu nhau theo nghĩa
t(x, y) = 1 – s(1-x, 1-y) (12)
Một số ví dụ về các cặp đối ngẫu t-norm và s-norm [1]
Stt Tên t-norm và s-norm
1 Dạng tích t(x, y) = xy
s(x, y) = x+y-xy
2 Lukasiewicz t(x, y) = max{x+y-1,0}
s(x, y) = min{x+y,1}
3 Min Nilpotent
(Fodor, 1993)
≤+
>+=
10
1),min(),(
yx
yxyxyxt
≥+
<+=
11
1),max(),(
yx
yxyxyxs
Bảng 3.2: Một số ví dụ về hàm t-norm và s-norm
3.1.3 Quan hệ mờ
Quan hệ mờ n ngôi là một tập mờ R trong không gian tích Đề-các của n không gian
U×U×...×U được định nghĩa như sau [40]:
R = {((x1,x2,...xn), µR(x1,x2,...,xn)) | (x1,x2,...,xn) ⊆U×U×...×U }
Chương 3 Agent ra quyết định
18
Với n=2 ta có quan hệ mờ 2 ngôi R(u,v) (u, v∈U). Sau đây là một số tính chất với các
quan hệ mờ 2 ngôi:
(i) Đối xứng: µR(u,v) = µR(v,u) (13)
(ii) Phản xạ: µR(u,u) = 1 (14)
(iii) Phản phản xạ: µR(u,u) = 0 (15)
(iv) Bắc cầu Max-Min: µR(u,v) ≥ ∨{µR(u,w)∧µR(w,v) :∀w∈U } (16)
(v) Bắc cầu Min-Max: µR(u,v) ≤ ∧{µR(u,w)∨µR(w,v) :∀w∈U } (17)
Trong đó ∧, ∨ là các phép toán được định nghĩa trong bảng 3.1
3.2 MÔ HÌNH AGENT RA QUYẾT ĐỊNH
3.2.1 Mô hình ra quyết định agent bán
3.2.1.1 Miền tri thức của agent bán
Định nghĩa 1: Miền tri thức của agent bán là một tập Ҝ = {G, P, H}
Trong đó:
• G = {g1, g2, …, gn} danh sách các sản phẩm (ta có thể giả sử các sản phẩm có mặt
trong tập này đều có số lượng lớn hơn không, tức là tất cả đều có thể mang ra giao
dịch).
• Tập P chứa các ràng buộc của agent mua. Agent bán sẽ lưu trữ tất cả các ràng
buộc này vào tập P để hỗ trợ cho quá trình ra quyết định trong các lần đề xuất sau
này.
• Tập H chứa các hàm đánh giá độ tương tự giữa các sản phẩm.
3.2.1.2 Độ tương tự giữa hai sản phẩm
Đầu tiên, chúng ta sẽ mô hình hóa cách tính toán độ tương tự theo một chiều của không
gian thương lượng, tức là độ tương tự cho một thuộc tính (hay còn gọi biến quyết định).
Định nghĩa 2 [18]: Độ tương tự mờ là hàm Sim:[0,1]× [0,1]→[0,1] thoả mãn các tính
chất sau đây:
(i) Phản xạ: Sim(x, x) = 1 ∀x ∈ [0,1] (18)
(ii) Đối xứng: Sim(x, ỵ) = Sim(y, x) ∀x, y ∈[0,1] (19)
(iii) Bắc cầu t-norm:
Sim(x, z) ≥ T(Sim(x, y), Sim(y, z)) ∀x, y, z ∈[0,1] (20)
(với T là một hàm t-norm)
Để xác định mức độ tương tự giữa các giá trị của thuộc tính, cần phải có các hàm đánh
giá các giá trị của từng thuộc tính.
Định nghĩa 3: Hàm đánh giá các thuộc tính trên tập D là hàm h:D→[0,1].
Chương 3 Agent ra quyết định
19
Với các thuộc tính định tính, hàm đánh giá có thể biểu diễn dưới dạng liệt kê, tức là mỗi
giá trị của thuộc tính sẽ tương ứng với một giá trị thực thuộc khoảng [0,1]. Ví dụ, D là tập
các màu sắc, giả sử xét theo khía cạnh độ ấm thì hàm đánh giá có thể xác định như sau:
ht(yellow) = 0.9 ht(viollet) = 0.1 ht(green) = 0.3
Với các thuộc tính định lượng, hàm đánh giá có thể được biểu diễn bởi một hàm tuyến
tính. Ví dụ, miền giá trị của thuộc tính giá cả là [0, 4000], khi đó, xét theo khía cạnh độ lớn
thì hàm đánh giá có thể là :
[ ] − ∈=
¸
1 / 4000 x 0,4000( )
0 ng−îc l¹igi
xh x
Mỗi thuộc tính có thể có nhiều hàm đánh giá tiêu chuẩn theo nhiều khía cạnh khác
nhau.
Định nghĩa 4 [18]: Độ tương tự giữa hai giá trị của một thuộc tính trên tập D là hàm
Sim:D×D→[0,1], xác định bởi biểu thức sau:
Simh(x, y) = h(x) Θ h(y) ∀x, y∈D (21)
Trong đó Θ là một toán tử tương đương mờ, nó có thể là một hàm t-norm.
Có thể có rất nhiều định nghĩa khác nhau đối với toán tử Θ. Trong phần sau của luận
văn, chúng tôi sử dụng hàm Θ được định nghĩa như sau:
h(x) Θ h(y) = 1 - |h(x) – h(y)| (22)
Định nghĩa 5 [18]: Cho miền giá trị D, độ tương tự giữa hai giá trị xj, yj ∈ D của thuộc
tính j được xác định bởi biểu thức:
1
( , ) ( ( ) ( ))m
j j j i i j i ji
Sim x y w h x h y=
= Θ∑ (25)
Trong đó:
1
1m
ii
w=
=∑ là tập các trọng số biểu diễn độ quan trọng của các hàm đánh giá
Θ là toán tử tương đương (có thể chọn hàm Θ như công thức (22))
Để minh hoạ việc mô hình hoá độ tương tự đối với một biến quyết định, xét ví dụ về các
màu sắc như sau:
D = {vàng, tím, hồng, xanh, xám, đỏ, ...} - miền giá trị các màu sắc.
Để xác định độ tương tự giữa các màu đã cho, có thể xem xét theo một số khía cạnh
hoặc một số tính chất sau: độ ấm, độ bức xạ, tầm nhìn. Với ba tiêu chuẩn đó, miền giá trị
của chúng có thể được mô hình như bảng 3.3:
Chương 3 Agent ra quyết định
20
vàng tím hồng xanh xám đỏ
Độ ấm (hấm) 0.9 0.1 0.1 0.3 0.2 0.7
Độ bức xạ (hbx) 0.9 0.3 0.6 0.6 0.4 0.8
Tầm nhìn (htn) 1 0.5 0.4 0.1 1 0.2
Bảng 3.3: Tiêu chuẩn đánh giá độ tương tự
Trong đó, hấm, hbx, htn là các hàm tiêu chuẩn tương ứng với độ ấm (ấm = 1, lạnh = 0), độ
bức xạ (tối đa = 1, tối thiểu = 0) và tầm nhìn (tối đa = 1, tối thiểu = 0).
Giả sử rằng, một người trẻ tuổi muốn mua một chiếc xe máy, các trọng số tương ứng
của anh ta đối với các hàm tiêu chuẩn: wấm=0.7, wbx=0.2 và wtn=0.1.
Khi đó, độ tương tự cho các màu tương ứng sẽ là:
Simmàu_sắc(vàng, đỏ) = wấm×Simấm(hấm(vàng), hấm(đỏ)) +
+ wbx×Simbx(hbx(vàng), hbx(đỏ)) + wtn×Simv(htn(vàng), htn(đỏ))
= wấm×(1 - |hấm(vàng)-hấm(red)|) + wbx×(1 - |hbx(vàng)-hbx(đỏ)|)
+ wtn×(1 - |htn(vàng)-htn(đỏ)|)
= 0.7×0.8 + 0.2×0.9 + 0.1×0.2 = 0.76
Tương tự ta có: Simmàu_sắc(vàng, tím) = 0.7×0.2 + 0.2×0.4 + 0.1×0.5 = 0.27
Như vậy ta có thể thấy rằng, đối với người mua trên, màu đỏ (red) tương tự với màu
vàng (yellow) hơn màu tím (violet).
Định nghĩa 6 [18]: Độ tương tự giữa hai sản phẩm x và y với tập các thuộc tính tương
ứng là (x1, x2, …xn) và (y1, y2, …, yn) được xác định như sau:
1
( , ) ( , )n
j j j jj
Sim x y w Sim x y=
= ×∑ (26)
Trong đó: 1
1n
jj
w=
=∑ là tập các trọng số tương ứng đối với từng thuộc tính.
Simj là hàm tương tự đối với biến quyết định j như định nghĩa 5.
3.2.1.3 Mức độ chấp nhận
Việc xác định mức độ chấp nhận của sản phẩm được thực hiện thông qua các thuộc tính
của nó. Tuy nhiên, không phải tất cả các thuộc tính đều được người bán quan tâm vì mục
đích duy nhất của người bán chỉ là bán được hàng và thu lợi nhuận, do đó người bán chỉ
quan tâm đến thuộc tính quan trọng nhất, thường là giá.
Thuộc tính giá cả là một thuộc tính kiểu định lượng, tức là các giá trị của nó được xác
định trong một miền liên tục: x∈D (trong đó D = [a, b]). Với các thuộc tính kiểu này, agent
Chương 3 Agent ra quyết định
21
bán sẽ có hai lựa chọn: càng cao càng tốt hoặc càng thấp càng tốt. Các lựa chọn được mô
hình hoá như hình vẽ 3.2
Hình 3.2: Mức độ chấp nhận của agen bán
Một trong những lớp hàm được sử dụng khá rộng rãi đó là lớp hàm tuyến tính. Sau đây
là một trường hợp sẽ được sử dụng trong luận văn:
Càng cao càng tốt Càng thấp càng tốt
0
-( )
-1
x a
x aV x a x b
b ax b
≤
= < <
≥
1
-( )
-0
x a
b xV x a x b
b ax b
≤
= < <
≥
Trong trường hợp này, lựa chọn càng cao càng tốt sẽ được sử dụng cho agent bán. Ví
dụ, miền giới hạn của thuộc tính giá cả là [1000, 4000], khi đó hàm đánh giá mức độ chấp
nhận được của người bán sẽ là:
0 1000
-1000( ) 1000 4000
30001 4000
x
xV x x
x
≤
= < <
≥
(26)
3.2.1.4 Thủ tục ra quyết định
Khi không tìm được sản phẩm thoả mãn yêu cầu của agent mua. Agent bán sẽ tìm sản
phẩm tương tự nhất đối với ràng buộc các của agent mua. Gọi P là tập hợp các ràng buộc
của khách hàng mà agent bán đã nhận được (P không nhất thiết phải chứa tất cả các thuộc
tính của sản phẩm). Khi đó, agent bán sẽ tìm ra một tập Q các sản phẩm có độ tương tự cao
nhất đối với tập P:
Q = {q / Sim(P, q) > Sim(P, q’) ∀q’∉Q} (27)
Trong số các sản phẩm thuộc tập Q, sản phẩm được đề xuất là sản phẩm có mức độ
chấp nhận cao nhất:
p = {p: V(p) = max(V(p’)) ∀p’∈Q} (28)
Mong
muốn
Giá
1
Càng cao càng tốt
a b
Mong
muốn
Giá
1
Càng thấp càng tốt
a b
Chương 3 Agent ra quyết định
22
Trong đó V là hàm đánh giá mức độ chấp nhận của agent bán được xác định như công
thức 26.
3.2.2 Mô hình ra quyết định agent mua
3.2.2.1 Miền tri thức của agent mua
Định nghĩa 7: Miền tri thức của agent mua là tập Ҝ={D, W, λ, P}
Trong đó:
• D = {d1, d2, …, dn} là tập các tri thức miền, di là tập các giá trị có thể đối với thuộc
tính i.
• W = {w1, w2, …, wn} tập các trọng số hay còn gọi là độ ưu tiên đối với từng thuộc
tính.
• λ=(λ1, λ2, …, λn) ngưỡng nhượng bộ đối với các thuộc tính sản phẩm.
• Tập P lưu trữ miền tri thức đang thương lượng.
3.2.2.2 Biến ngôn ngữ
Một trong những kỹ thuật được sử dụng phổ biến nhất để người dùng mô hình hoá
thông tin của mình là sử dụng biến ngôn ngữ ([20], [21]). Khi đó, ngữ nghĩa của các biến
ngôn ngữ được xác định thông qua một cấu trúc đại số gọi là đại số gia tử.
Định nghĩa 8: Đại số gia tử là một bộ (T, G, H, ≤). Trong đó:
- T là miền ngôn ngữ (mỗi phần tử thuộc T sẽ có dạng x = hnhn-1…h1u ∀u∈G, hi∈H
∀i=1,…n).
- G là tập các từ nguyên thuỷ được xem như là các phần tử sinh.
- H là tập các gia tử được xem như là các phép toán một ngôi.
- Quan hệ ≤ trên các từ (các khái niệm mờ) là quan hệ được “cảm sinh” từ ngữ
nghĩa tự nhiên.
Ví dụ: Chọn tập phần tử sinh là G = {quan trọng}, tập các gia tử H = {không, ít, vừa
phải, khá, rất, cực kỳ}. Khi đó tập T có thể là:
T = {t0=”không quan trọng”, t1=”ít quan trọng”, t2=”quan trọng vừa phải”, t3=”quan
trọng”, t4=”khá quan trọng”, t5=”rất quan trọng”, t5=”cực kỳ quan trọng”}
Dựa trên ngữ nghĩa, quan hệ thứ tự giữa các phần tử trong T có thể là: ti≤tj (∀i, j=0, …,
6. ). Từ đó ta có thể xác định ngữ nghĩa cho các biến ngôn ngữ trong tập T.
3.2.2.3 Mức độ chấp nhận
Để đánh giá mức độ chấp nhận của một sản phẩm, trước hết chúng ta sẽ đánh giá mức
độ chấp nhận của từng thuộc tính. Sau đó kết hợp các mức độ chấp nhận này để xác định
Chương 3 Agent ra quyết định
23
mức độ chấp nhận tổng thể đối với sản phẩm. Thuộc tính của sản phẩm có thể là định tính
(có giá trị rời rạc: màu sắc, hãng xe, …) hoặc định lượng (có giá trị liên tục: giá, thời hạn
đăng ký, …).
Định nghĩa 9: Hàm đánh giá mức độ mức độ thoả mãn của agent mua đối với từng thuộc
tính là hàm: Vi : Di → [0,1]
Từ hàm đánh giá cho từng biến, ta xác định hàm đánh giá agent đối với một tập biến
(một sản phẩm thường có tập các thuộc tính tương ứng) - tức là đối với một bộ giá trị
x={x1, x2, ..., xn} trong không gian đa chiều D=D1×D2×…×Dn như sau :
j j j1
V(x) w .V (x )n
j=
= ∑ (29)
3.2.2.4 Ngưỡng chấp nhận
Định nghĩa 10 [39]: Cho vector a=(a1, a2, …, an)∈Rn. Toán tử OWA là một ánh xạ
F:Rn→R xác định bởi:
F(a1, a2, …, an) = w1b1 + w2b2+… + wnbn (33)
Trong đó:
w=(w1, w2, …, wn) là các trọng số kết hợp thỏa mãn wi∈[0,1] và Σiwi=1
b=(b1, b2, …, bn) là một hoán vị của tập A=(a1, a2, …, an) nhưng được sắp thứ tự
giảm dần (bi ≥bj ⇔ i≤j ∀i,j=1, …, n).
Một số trường hợp đặc biệt của toán tử OWA
• Toán tử cực đại:
w = w*= (1, 0, …, 0) ⇒ F(a1, a2, …, an) = max{a1, a2, …, an} (34)
• Toán tử cực tiểu:
w = w* = (0, 0, …, 1) ⇒ F(a1, a2, …, an) = min{a1, a2, …, an} (35)
• Toán tử trung bình :
w = (1
n,
1
n, …,
1
n) ⇒ F(a1, a2, …, an) = 1 2 ... na a a
n
+ + + (36)
Ngưỡng chấp nhân của người dùng được ước lượng từ độ quan trọng (wi) và ngưỡng
nhượng bộ (λi) của mỗi thuộc tính theo các bước sau:
Bước 1: Xác định ngưỡng chấp nhận trên từng thuộc tính θi = O(wi, λi). Trong đó O là
một hàm t-norm nào đó.
Bước 2: Ngưỡng chấp nhận tổng thể được xác định bằng cách tổ hợp các ngưỡng chấp
nhận trên từng thuộc tính θi bởi toán tử OWA:
Chương 3 Agent ra quyết định
24
θ = F(θ1, θ2, …, θn) (37)
Nhận xét rằng, nếu có ít nhất một thuộc tính không thỏa mãn yêu cầu của bên mua thì
mặt hàng đó sẽ không được chấp nhận. Do đó, toán tử OWA được sử dụng trong trường
hợp này là toán tử max (như công thức (34)).
3.2.2.5 Thủ tục ra quyết định
Khi nhận được yêu cầu nhượng bộ từ phía người bán, agent mua sẽ phải xác định ràng
buộc nhượng bộ sao cho mức độ lợi ích bị giảm là ít nhất.
Định nghĩa 11 [29]: Mức độ lợi ích bị giảm đối với mỗi thuộc tính của sản phẩm được xác
định bởi biểu thức:
Ti= (Vi(x) – Vi(y))*wi (38)
Trong đó:
Ti, wi: mức độ lợi ích bị giảm và trọng số của thuộc tính thứ i.
Vi(x): giá trị mong muốn nhất đối với thuộc tính thứ i (Vi được xác định theo định
nghĩa 9).
Vi(y): giá trị mong muốn sau khi nhượng bộ đối với thuộc tính thứ i.
Khi đó, thuộc tính nhượng bộ sẽ là:
i0 = {i : Ti = minj(Tj) ∀j=1, …, n} (39)
Sản phẩm được chấp nhận là sản phẩm:
g0 = {g : V(g)>θ ∀g∈G} (40)
Trong đó: V được xác định theo công thức (29)
Nếu sản phẩm không được chấp nhận, nó sẽ gửi thông điệp “refind” sang cho agent bán.
Agent mua sẽ chỉ gửi thông điệp này sau một số hữu hạn lần. Điều này cũng khá thực tế,
người mua không thể kiên nhẫn để thử tất cả các lời chào hàng của người bán.
3.3 KẾT LUẬN
Chương này giới thiệu một số khái niệm cơ bản về lý thuyết tập mờ và các mô hình ra
quyết định của agent mua và agent bán. Với người mua, việc lựa chọn các giá trị ưa thích
cho từng thuộc tính cũng như độ ưu tiên (trọng số) được thực hiện thông qua các biến ngôn
ngữ. Ngữ nghĩa của các biến ngôn ngữ được xác định thông qua cấu trúc có thứ tự của
chúng. Tương tự như vây, người bán sử dụng khái niệm số mờ để đánh giá độ tương tự
giữa các sản phẩm cũng như mức độ chấp nhận được đối với từng sản phẩm.
Chương 4 Mô hình thương lượng
25
Chương 4 MÔ HÌNH THƯƠNG LƯỢNG
4.1 BÀI TOÁN
Bài toán thương lượng song phương được được đặt ra như sau: Có hai bên tham gia
giao dịch, một bên bán và một bên mua. Người mua nắm giữa một tập các ràng buộc P =
{p1, p2, …, pm}, các ràng buộc này có thể là ràng buộc trên một thuộc tính, có thể là ràng
buộc trên nhiều thuộc tính. Mong muốn của người mua là mua được mặt hàng thoả mãn tốt
nhất các ràng buộc này. Người bán có một tập các sản phẩm G = {g1, g2, …, gn} có thể
cung cấp cho người mua. Mỗi sản phẩm gi sẽ có mức độ thoả mãn khác nhau đối với các
ràng buộc pj và có một mức độ lợi nhuận V(gi) cho người bán nếu mặt hàng này được bán.
Mong muốn của người bán là bán được mặt hàng có mức độ lợi nhuận V(gi) cao nhất.
4.2 CHIẾN LƯỢC THƯƠNG LƯỢNG
4.2.1 CHIẾN LƯỢC CHO AGENT MUA
Các trạng thái trong chiến lược thương lượng của agent mua sẽ được mô tả như hình
4.1. Các trạng thái của agent mua gồm có:
Hình 4.1: Chiến lược mua
• Khởi tạo: Trước khi bắt đầu thương lượng, agent mua phải hoàn tất các thủ tục cần
thiết để đăng ký vào hệ thống. Sau khi đã hoàn thành, agent mua bắt đầu đi vào
trạng thái lựa chọn.
• Chờ đợi: Trạng thái này chờ đợi các phản ứng từ phía người bán. Tuỳ theo nội dung
trả về, agent sẽ chuyển vào trạng thái tương ứng.
Khởi
tạo
Lựa
chọn
Chờ
đợi
Kiểm
tra
Duyệt
Kết
thúc
Nhượng
bộ
�
� �
� �
�
�
�
�
0 - Khởi tạo
1 - Lựa chọn và gửi thông điệp “find”
2 - Nhận thông điệp “check”
3 - Vi phạm ràng buộc & gửi thông điệp
“find”
4 - Không vi phạm
5 - Nhận thông điệp “deal” hoặc “fail” để
kết thúc giao dịch
6 - Không duyệt được, gửi thông điệp
“refind”
7 - Nhận thông điệp “try”
8 - Nhận thông điệp “relax”
9 - Gửi thông điệp “find” cùng ràng buộc
mới, đã được nhượng bộ
10 - Gửi thông điệp “norelax”
Chương 4 Mô hình thương lượng
26
• Lựa chọn: Agent mua lần lượt chọn các thuộc tính có độ ưu tiên cao nhất (trọng số
lớn nhất) để đưa vào tập ràng buộc P. Sau đó, nó sẽ gửi tập ràng buộc P này cùng
với thông điệp “find” tới agent bán để yêu tìm kiếm sản phẩm thoả mãn ràng buộc
này.
• Kiểm tra: Sau khi nhận thông điệp “check” từ agent bán, agent mua sẽ đi vào trạng
thái này. Tại đây, nó kiểm tra xem sản phẩm được đề xuất có thoả mãn các ràng
buộc còn lại không. Nếu thoả mãn, nó chuyển sang trạng thái Duyệt (verify). Ngược
lại, nó cập nhật thêm vào tập P các ràng buộc mới trước khi gửi sang cho người bán
cùng thông điệp “find”.
• Duyệt: Trạng thái này đạt được khi nhận được thông điệp “try” hoặc chuyển sang từ
trạng thái kiểm tra. Mặc dù có thể các ràng buộc đã được thoả mãn nhưng chưa
chắc mặt hàng đã được chấp nhận (Mức độ chấp nhận được trình bày trong phần
3.2.2.3). Nếu chấp nhận được agent mua gửi thông điệp “deal”, thông báo giao dịch
thành công. Ngược lại, nếu agent mua chuyển sang trạng thái này từ trạng thái kiểm
tra thì nó gửi thông điệp “refind” yêu cầu tìm lại mặt hàng khác theo ràng buộc cũ
(không cần bổ sung thêm ràng buộc mới). Nếu chuyển sang từ trạng thái chờ đợi,
tức là nó nhận được thông điệp “try” đi kèm với ràng buộc này thì nó sẽ gửi thông
điệp “fail”, kết thúc giao dịch.
• Nhượng bộ: Khi nhận được thông điệp “relax”, agent mua sẽ chuyển vào trạng thái
này để giảm bớt mức độ yêu cầu với các ràng buộc. Tuy nhiên, mức độ lợi ích sau
khi nhượng bộ không thể vượt quá ngưỡng λi (ngưỡng nhượng bộ đối với thuộc tính
thứ i). Quá trình xác định thuộc tính nhượng bộ được xác định trong phần 3.2.2.5.
Nếu xác định được thuộc tính nhượng bộ, nó gửi ràng buộc được thay đổi đến cho
agent bán cùng với thông điệp “find”. Ngược lại, nó gửi thông điệp “norelax” để từ
chối.
Agent mua có hai trạng thái kết thúc thành công (gửi thông điệp “deal”) hoặc thất bại
(gửi thông điệp “fail”). Việc thành công hay thất bại đều do nó quyết định. Điều này là phù
hợp với thực tế. Người mua luôn là người quyết định sự thành bại của giao dịch. Còn
người bán thì ngược lại. Luôn luôn sẵn sàng phục vụ.
4.2.2 CHIẾN LƯỢC CHO AGEN BÁN
Các trạng thái thương lượng của agent bán được minh hoạ trong hình vẽ 4.2
• Khởi tạo: Trước khi bắt đầu cuộc thương lượng, agent bán phải hoàn tất các thủ tục
cần thiết để đăng kí vào hệ thống. Sau khi đã hoàn thành, agent bán chuyển sang
trạng thái tiếp theo là trạng thái chờ đợi.
Chương 4 Mô hình thương lượng
27
• Chờ đợi: Trạng thái này chờ đợi các phản ứng từ phía agent mua (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 tới các trạng thái
tiếp theo tương ứng.
Hình 4.2: Chiến lược bán
• Cập nhật: Sau khi nhận được thông điệp “find” (tìm kiếm) từ phía khách hàng, tức
là nhận được một lời yêu cầu tìm kiếm từ phía khách hàng. Nó cập nhật các yêu cầu
của khách hàng vào tập P tương ứng. Và sau đó chuyển sang trạng thái tìm kiếm, để
tìm kiếm sản phẩm theo yêu cầu của khách hàng.
• Tìm kiếm: Trạng thái này đạt được khi agent nhận được thông điệp “refind” (tìm
lại) từ phía khách hàng hoặc chuyển sang từ trạng thái cập nhật. Tại đây, nó tìm
kiếm mặt hàng thoả mãn các yêu cầu của khách hàng được lưu trong tập P. Nếu có
nhiều hơn một mặt hàng thoả mãn, nó chọn mặt hàng có mức độ chấp nhận cao nhất
(được xác định trong phần 3.2.1.3). Sau đó, agent bán sẽ gửi thông điệp “check”
kèm theo mặt hàng để hỏi xem người mua có chấp nhận mặt hàng này không. Nếu
không tìm thấy mặt hàng nào nó gửi thông điệp “relax” để yêu cầu giảm bớt ràng
buộc.
• Tương tự: Trạng thái này đạt được khi nó nhận được thông điệp “norelax”. Tức là
lúc này nó không tìm được mặt hàng nào thoả mãn ràng buộc và agent mua cũng
không thể giảm bớt ràng buộc hơn nữa, do đó agent bán buộc phải tìm kiếm trong
miền tri thức của mình một số mặt hàng “tương tự” với các ràng buộc (thủ tục xác
định mặt hàng tương tự được trình bày trong phần 3.2.1.2). Khi đó, mặt hàng được
tìm thấy sẽ được đề xuất cho agent mua kèm theo thông điệp “try”.
0 - Khởi tạo
1 - Nhận thông điệp “find” và cập nhật
ràng buộc
2 - Tìm kiếm theo ràng buộc mới
3 - Nhận thông điệp “refind”
4 - Không tìm thấy sản phẩm, gửi thông
điệp “relax”
5 - Tìm thấy sản phẩm, gửi thông điệp
“check”
6 - Nhận thông điệp “norelax”
7 -Gửi thông điệp “try”
8 - Nhận thông điệp “deal”hoặc “fail” kết
thúc giao dịch
Khởi
tạo
Chờ
đợi
Cập
nhật
Kết
thúc
Tương
tự
� �
� �
�
�
�
�
Tìm
kiếm
Chương 4 Mô hình thương lượng
28
Quá trình trên có thể lặp lại nhiều lần và chỉ kết thúc khi agent bán nhận được thông
điệp “deal” (thành công) hoặc “fail” (thất bại) từ phía khách hàng. Trong trường hợp thành
công, agent bán phải cập nhật lại tập tri thức của mình.
4.4 KẾT LUẬN
Chương này trình bày một mô hình chiến lược cụ thể cho cả bên mua và bên bán tương
ứng. Về phía người mua, sở thích của người dùng được mô hình hoá thành các ràng buộc
mờ và được đề xuất lần lượt cho người bán theo độ ưu tiên của từng thuộc tính. Người bán
nhận lần lượt các ràng buộc từ phía người mua và có các xử lý tương ứng cũng dựa trên lý
thuyết mờ theo mô hình chiến lược đã đề xuất. Khi không có mặt hàng theo yêu cầu, agent
bán sẽ tìm mặt hàng tương tự với hy vọng người mua chấp nhận.
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
29
Chương 5 DỊCH VỤ HỖ TRỢ MUA BÁN XE MÁY MoSeB
5.1 GIỚI THIỆU BÀI TOÁN
Một người muốn mua một chiếc xe máy thông qua một hệ thống mua bán tự động trên
mạng. Khi sử dụng hệ thống, người dùng chỉ cần khai báo các thông tin về chiếc xe mà
mình mong muốn như: giá tiền, màu sắc, loại xe, … sau đó, kết quả sẽ được hệ thống tự
động gửi về mail cho người dùng hoặc thông báo khi người dùng đăng nhập lại sau một
thời hạn nhất định.
5.2 PHÂN TÍCH VÀ THIẾT KẾ
5.2.1 Phân tích
5.2.1.1 Xác định mục tiêu
Đối với hệ thống này, nhiệm vụ chủ yếu của nó là tìm ra được một sản phẩm thoả mãn
yêu cầu người dùng, do đó, mục tiêu chủ yếu của hệ thống chỉ là thương lượng. Các mục
tiêu con của mục tiêu này bao gồm: tìm kiếm đối tác và báo cáo kết quả.
Hình 5.1: Lược đồ mục tiêu
5.2.1.2 Xây dựng các usecase
Việc xác định các role từ các usecase được thực hiện như sau:
- Trong usecase “tìm kiếm đối tác”, có các role là: Buyer, Seller và Broker.
- Với usecase “báo cáo” chỉ có hai role: Buyer và User.
- Với usecase “thương lượng”, cần hầu hết tất cả các role: Buyer, User, Seller,
Broker.
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
30
THƯƠNG LƯỢNG
1. Người dùng gửi yêu cầu đến nhà môi giới để tìm kiếm đối tác thích hợp
2. Sau khi đã xác định được đối tác, người mua liên hệ trực tiếp đến người bán để xác định thông tin về sản phẩm
3. Tiến hành xác định các giá trị thuộc tính
4. Bắt đầu tiến trình thương lượng theo đúng qui tắc.
5. Thông báo kết quả cho người dùng.
TÌM ĐỐI TÁC
1. Người bán đăng ký địa chỉ và dịch vụ với người môi giới
2. Khi có yêu cầu, nhà môi giới tìm kiếm trong miền tri thức của mình một người bán có dịch vụ phù hợp với người yêu cầu
3. Kết quả tìm kiếm được thông báo cho người yêu cầu.
BÁO CÁO
1. Người dùng đăng nhập vào hệ thống 2. Agent mua thông báo kết quả cho
người dùng
Hình 5.2: Trích chọn các usecase
Việc xác định các biểu đồ tuần tự được xác định thông qua các usecase. Mỗi usecase sẽ
có tương ứng một biểu đồ tuần tự. Hình vẽ sau đây mô tả các biểu đồ tuần tự tương ứng
với các usecase.
Hình 5.3: Biểu đồ tuần tự báo cáo
THÔNG BÁO KẾT QUẢ
1. Người dùng trước khi xem kết
quả phải đăng nhập thành công
vào hệ thống.
2. Kết quả thương lượng sẽ đựoc
thông báo khi có yêu cầu.
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
31
Hình 5.4: Biểu đồ tuần tự môi giới
Hình 5.5: Biểu đồ tuần tự thương lượng
THƯƠNG LƯỢNG
1. Sau khi đã tìm được đối tác,
người mua đăng nhập vào hệ
thống để ra lệnh thương
lượng.
2. Khi nhận được yêu cầu,
agent mua sẽ tự động thương
lượng với agent bán.
3. Kết quả trả về được lưu trữ
để thông báo cho người dùng
MÔI GIỚI
1. Nguời mua đăng ký với nhà
môi giới để quảng bá sản phẩm
của mình.
2. Người bán trước khi tìm kiếm
sản phẩm phải đăng nhập vào hệ
thống để yêu cầu tìm kiếm đối
tác thông qua nhà môi giới.
3. Sau khi đăng nhập agent mua
cũng phải đăng ký với nhà môi
giới để tìm kiếm đối tác.
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
32
5.2.1.3 Xây dựng ontology
Quá trình thu thập dữ liệu được thực hiện để xác định miền tri thức cho các role hệ
thống. Trong hệ hỗ trợ mua bán xe máy, miền tri thức gồm có:
- Miền tri thức của người bán: Tên, địa chỉ, số hiệu cổng kết nối của người bán; Tên
mặt hàng và các thuộc tính của mỗi mặt hàng của người bán.
- Miền tri thức của người mua: Tên, địa chỉ và cổng kết nối của người mua; Yêu cầu
về sở thích của người mua đối với mặt hàng; Các thông tin khác.
- Miền tri thức của nhà môi giới: Tên, địa chỉ và số hiệu cổng kết nối của nhà môi
giới; Tên, địa chỉ, số hiệu cổng kết nối và khả năng cung cấp dịch của các agent
bán; Tên, địa chỉ, số hiệu cổng kết nối và yêu cầu của agent mua.
Các ontology trong hệ thống bao gồm:
Hình 5.6: Các lớp ontology
class Address {
String name;
String host;
port: int;
}
class Aspect {
String name;
double value;
double weight
}
class Weight{
double wColor;
double wManufacture;
double wCapacity;
double wCost;
double wRegister;
}
class Product{
int color;
int manufacture;
int capacity;
double cost;
double register;
}
class Interval {
double maxVal;
double minVal;
}
class Constraint {
String name;
double value;
}
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
33
Hình 5.7: Sơ đồ ontology hệ thống
5.2.1.4 Hoàn thiện các role
Từ quá trình phân tích trên, chúng ta có thể xác định được các role trong hệ thống gồm
có (hình 5.8):
- Role Broker thực hiện mục tiêu tìm kiếm đối tác.
- Role User thực hiện mục tiêu xem báo cáo kết quả.
- Role Sheller và Buyer thực hiện mục tiêu thương lượng.
Trong phần này, chúng ta chỉ tập trung vào hai nhiệm vụ chính, quan trọng nhất và có
thể được xem như là trái tim của luận văn đó là nhiệm vụ thương lượng trong vai trò người
mua và nhiệm vụ phục vụ trong vai trò người bán. Hình 5.9 mô tả các hoạt động chính
trong nhiệm vụ thương lượng (negotiate) và hình 5.10 mô tả các hoạt động chính trong
nhiệm vụ phục vụ (serve).
Thing
Address
Constraint
Interval
Product
Weight
Aspect
name
host
port
name
value
minVal
maxVal
color
manufacture
capacity
cost
register
color
manufacture
capacity
cost
register
name
value
weight
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
34
Hình 5.8: Lược đồ các role hệ thống
Hình 5.9: Sơ đồ hoạt động của nhiệm vụ Negotiate trong role Buyer
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
35
Hình 5.10: Sơ đồ hoạt động của nhiệm vụ Serve trong role Seller
5.2.2 Thiết kế
5.2.2.1 Tạo các lớp agent
Các lớp agent được xác định tương ứng như sau:
- Hai role User và Buyer cùng liên quan đến mục đích thoả mãn yêu cầu của người
dùng, do đó chúng cùng được đặt vào một lớp gọi là lớp BuyerAgent.
- Lớp SellerAgent đại diện cho người bán thực hiện role Seller.
- Lớp BrokerAgent đại diện cho nhà môi giới thực hiện role Broker.
Hình 5.11: Lược đồ Agent
5.2.2.2 Xây dựng các phiên hội thoại
Trong MaSE, mọi liên lạc giữa hai agent bất kỳ đều phải thông qua các phiên hội thoại.
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
36
Hình 5.12: Phiên hội thoại khởi xướng
Hình 5.13: Phiên hội thoại đáp ứng
5.2.2.3 Kết hợp các agent
Thành phần cho các lớp agent được minh hoạ qua các hình vẽ 5.14, 5.15 và 5.16:
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
37
Hình 5.14: Kiến trúc BuyerAgent
Hình 5.15: Kiến trúc SellerAgent
Hình 5.16: Kiến trúc BrokerAgent
5.2.2.4 Thiết kế hệ thống
Để áp dụng giống với mô hình thực tế, chúng ta sẽ thiết kế mô hình mỗi agent được
chạy trên một máy khác nhau.
Hình 5.17: Kiến trúc hệ thống tổng thể
Server a
BuyerAgent
Server b
SellerAgent
Server c
BrokerAgent
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
38
5.3 CÀI ĐẶT VÀ TÍCH HỢP
5.3.1 Lưu trữ hệ tri thức
Hình 5.18: CSDL cho SellerAgent
Hình 5.19: CSDL cho BuyerAgent
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
39
Người mua Môi giới Người bán
BuyerAgent
BrokerAgent
SellerAgent
BuyerDB BrokerDB SellerDB
Tầng giao
diện
Tầng agent
Tầng CSDL
Một trong những yêu cầu thiết yếu của hệ thống là phải lưu trữ được tri thức cho các
agent. Có hai giải pháp có thể được lựa chọn: Lưu trữ trên bộ nhớ trong và lưu trữ trên bộ
nhớ ngoài.
Trong ứng dụng này chúng tôi chọn giải trộn tức là sử dụng cả hai cách tiếp cận trên
nhằm mục đích tối ưu hoá hệ thống. Tri thức của các agent sẽ được lưu trữ trong CSDL
Access. Do đó, cần phải ánh xạ tri thức của các agent thành các bảng (hình 5.18, 5.19). Các
tri thức còn lại như: thông tin về đối tác, danh sách các ràng buộc, mức độ chấp nhận
được… sẽ được lưu trữ trong bộ nhớ trong để tăng tốc độ xử lý.
5.3.2 Mô hình hệ thống
Mô hình kiến trúc tổng thể được xây dựng theo mô hình 3 tầng (hình 5.20): tầng giao
diện, tầng agent và tầng CSDL.
Hình 5.20: Mô hình kiến trúc 3 lớp
Chương 5 Dịch vụ hỗ trợ mua bán xe máy MoSeB
40
KẾT LUẬN
Nhằm mục đích phát triển mô hình thương lượng giữa các agent trong thương mại điện
tử, luận văn đã tập trung trình bày một số nội dung sau đây:
• Tổng quan về các mô hình giao dịch và các giai đoạn trong quá trình giao dịch của
thương mại điện tử. Đặc biệt chú trọng đến tự động thương lượng và các thành phần
liên quan mà được xem là pha chủ yếu trong thương mại điện tử thế hệ II.
• Tổng quan các khái niệm cơ bản về agent và phương pháp luận phát triển hệ đa
Agent MaSE (Multiagent System Engineering) cùng công cụ hỗ trợ phát triển
agentTool. Phương pháp luận MaSE bao gồm hai pha: pha phân tích (gồm 4 bước:
xác định mục tiêu, xác định usecase, xây dựng ontology và hoàn thiện các role) và
pha thiết kế (bao gồm 4 bước: tạo các lớp Agent, xây dựng các phiên hội thoại, kết
hợp các Agent và thiết kế hệ thống).
• Phát triển mô hình thương lượng song phương kết hợp đa thuộc tính với ràng buộc
mờ có trọng số và độ đo tương tự. Trong mô hình này, các yêu cầu của agent mua
được đặc tả dựa trên các ràng buộc mờ có độ ưu tiên (hay còn gọi là trọng số).
Trong quá trình thương lượng, agent mua đề xuất các ràng buộc này theo thứ tự của
độ ưu tiên. Trong khi đó, mô hình ra quyết định của agent bán được xây dựng dựa
trên độ “tương tự” giữa các sản phẩm. Ý tưởng chính của mô hình này là trong
trường hợp không tìm được sản phẩm thoả mãn yêu cầu bên mua, agent bán sẽ đề
xuất các sản phẩm “xấp xỉ” với các ràng buộc của agent mua nhằm tăng hiệu quả
trong quá trình thương lượng.
• Mô hình thương lượng song phương đa thuộc tính với ràng buộc mờ và tương tự
được áp dụng để xây dựng hệ thương lượng “Dịch vụ hỗ trợ mua bán xe máy
MoSeB”. Hệ thống được phân tích, thiết kế theo từng bước trong phương luận
MaSE và công cụ agentTool. Ứng dụng đã được cài đặt thử nghiệm trên các máy
PC trong một mạng LAN.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
41
Một số hướng phát triển trong thời gian tới
Mô hình thương lượng giữa các agent được trình bày trong luận văn đã mở ra một số
hướng nghiên cứu trong tương lai :
• Trong luận văn, việc đánh giá mức độ tương tự giữa các sản phẩm mới chỉ dừng lại
ở mức độ chủ quan, tức là phụ thuộc hoàn toàn vào các khía cạnh do người bán đề
xuất. Tuy nhiên, chúng ta có thể đánh giá độ tương tự các sản phẩm một cách khách
quan hơn bằng cách “thống kê” tất cả các giao dịch mà người bán đã thực hiện với
những người mua trước đây. Do đó, cần phải lưu trữ tất cả các thông tin về các giao
dịch trước đây và sử dụng các kỹ thuật trong khai phá dữ liệu để có thể khai thác
các thông tin đó hiệu quả.
• Theo mô hình thương lượng song phương, tại mỗi thời điểm một người mua chỉ có
thể thương lượng với một người bán. Do đó, việc mua bán chỉ phụ thuộc vào một
người bán. Mặc dù mô hình này rất phổ biến nhưng nó chưa phản ánh hết các khía
cạnh thực tế. Trên thực tế, một người mua có thể cần mua nhiều sản phẩm và do đó
cần phải tham gia giao dịch với nhiều người bán để có thể tìm kiếm các sản phẩm
có lợi nhất cho mình. Như vậy, agent mua có thể thương lượng với nhiều agent bán
theo kiểu đồng thời hoặc tuần tự. Vì vậy, xây dựng mô hình thương lượng song
phương kết hợp là vấn đề cần phải xem xét trong tương lai.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
42
TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Nguyễn Cát Hồ, (2001), Lý Thuyết Tập Mờ và Công Nghệ Tính Toán Mềm, Nhà xuất
bản khoa học và kỹ thuật, Hà nội .
[2] Nguyễn Phương Lan, Hoàng Đức Hải, (2001), Java Lập Trình Mạng, Nhà xuất bản
giáo dục, Hà nội.
[3] Trần Đình Quế, (9-2003), Thương Lượng Tự Động Trong Thương Mại Điện Tử, Kỷ
yếu Hội nghị Khoa học lần thứ năm của Học Viện Công nghệ Bưu chính Viễn thông,
tr. 452-462, Hà Nội, Việt nam.
[4] Trần Đình Quế, (4-2004), Techniques of Information Integration Based on Ontology
in Developing Multiagent Systems, Proceedings of Asian Info-communications
Council 30th Conference, tr. 50-58 Kuala Lumpur, Malaysia.
[5] Trần Đình Quế, (11-2004), Combined Concurrent And Sequential Bilateral
Negotiations in E-commerce, Proceedings of International Conference AIC, Shenzen,
China.
[6] Trần Đình Quế, (8-2004), Ontology Trong Thương Lượng Giữa Các Agent, Báo cáo
tại Hội nghị Quốc gia về Công nghệ thông tin và Truyền thông lần thứ VII, Đà Nẵng,
Việt Nam.
[7] Trần Đình Quế, Đặng Thành Trung, (8-2004), Thương Lượng Song Phương Dựa
Trên Độ Đo Tương Tự Trong Hệ Đa Agent, Báo cáo tại Hội nghị Quốc gia về Công
nghệ thông tin và Truyền thông lần thứ VII, Đà Nẵng, Việt Nam.
[8] Trần Đình Quế, (6-2004), Nghiên Cứu Xây Dựng Quy Trình Phát Triển Hệ Phần
Mềm Hướng Agent, Đề tài nghiên cứu khoa học, Học Viện Công Nghệ Bưu chính
viễn thông, Hà Nội, Việt Nam.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
43
Tiếng Anh
[9] Walter Brenner and Rudiger Zarnekow Hartmut Wittig, (1998), Intelligent Software
Agent, Springer-Verlag Berlin Heidelberg.
[10] H.M. Chung, E. Turban and J. Lee, D. King, (1999), Electronic Commerce: A
Managerial Perspective, eds. Prentice Hall.
[11] Scott A. DeLoach, (2000, 2001), agentTool 2.0 User's manual, Air Force Institute of
Technology.
[12] Scott A. DeLoach, (1999), Multiagent Systems Engineering: A Methodology And
Language for Designing Agent Systems, Presented at Agent-Oriented Information
Systems (AOIS).
[13] Scott A. Deloach, Mark F. Wood and Clint H. Sparkman, (2001), Multiagent Systems
Engineering, International Journal of Software Engineering and Knowledge
Engineering, Vol. 11, No. 3, pp. 231-258.
[14] Scott DeLoach, Jonathan DiLeo and Timothy Jacobs, (2002), Integrating Ontologies
into Multiagent Systems Engineering, Fourth International Bi-Conference Workshop
on Agent-Oriented Information Systems, Bologna, Italy.
[15] Tim Finin and Yanin Labrou, (1997), A proposal for a new KQML Specification,
CSEE Technical Report TR CS--97--03.
[16] T. Finin, Y. Labrrou et al, (1997), KQML as an agent communication language, In J.
Bradshaw, editor, Software agents. MIT Press, pp. 291-316.
[17] P. Faratin, C. Sierra, N. R. Jennings and S. Parsons, (2000), Automated Negotiation,
Proc. 5th Int. Conf. on the Practical Application of Intelligent Agents and Multi-
Agent Systems (PAAM-2000), Manchester, UK, pp. 23-30.
[18] P. Faratin, N. R. Jennings and C. Sierra, (2002), Using similarity criteria to make
issue trade-offs in automated negotiations, Proc. 4th Int. Conf. on Multi-Agent
Systems (ICMAS-2000), Boston, USA, pp. 119-126.
[19] R. H. Guttman, A.G. Moukas, and P. Maes, (1998), Agent-Mediated Electronic
Commerce: A Survey, The Knowledge Eng. Rev., vol. 13, no. 2, pp. 147-159.
[20] F. Herrera, E. Herrera-Viedma and J. L. Verdegay, (1994), A linguistic Decision
Process in Group Decision Making, Technical Report DECSAI 94102.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
44
[21] F. Herrera, E. Herrera-Viedma, (1998), Linguistic Decision Analysis: Steps for
Solving Decision Problems under Linguistic Information, Technical Report DECSAI
98104.
[22] Marty Hall, (2000), Core Servlets and JavaServer Pages, Sun Microsystems Press A
prentice Hall Title.
[23] Nicholas R. Jenning, Alesso R. Lomuscio and Michael Wooldridge, (2000), A
classification scheme for negotiation in electronic commerce, Int Journal of Group
Decision and Negotiation 12 (1), pp. 31-56.
[24] Nicholas R. Jennings, Ho-Fung Leung and Minghua He, (2003), On Agent-Mediated
Electronic Commerce, IEEE Trans on Knowledge and Data Engineering 15 (4), pp.
985-1003.
[25] Nicholas R. Jennings, Jimmy Ho-man Lee, Xudong Luo and Ho-fung Leung, (2003),
Prioritised fuzzy constraint satisfaction problems: axioms, instantiation and
validation, Int Journal of Fuzzy Sets and Systems 136, (2), pp. 155-188.
[26] Nicholas R. Jennings, Jose J. Castro-Schez, Xudong Luo and Nigel R. Shadbolt,
(2003), Acquiring domain knowledge for negotiating agents: a case of study, Proc.
5th Int. Workshop on Agent-Mediated E-Commerce, Melbourne, Australia, pp. 41-
48.
[27] Nicholas R. Jennings and Minghua He, (2004), Designing a Successful Trading
Agent: A Fuzzy Set Approach, Proc 15th European Conf. on AI (ECAI-2002), Lyon,
France.
[28] Nicholas R. Jennings, Xudong Luo, Nigel Shadbolt, Ho-fung Leung, Jimmy Ho-
man Lee, (2003), A fuzzy constraint based model for bilateral, multi-issue
negotiations in semi-competitive environments, Artificial Intelligence, (148), pp. 53–
102.
[29] Sun Microsystems, (2003), The Java Tutorial, online http://java.sun.com.
[30] Scott A. Moore, (1998), KQML & FLBC: Contrasting Agent Communication
Languages, Proceedings of the Thirty-second Annual Hawaii International
Conference on System Sciences-Volume 6.
[31] A. Sharma, (2002), Trends in Internet-Based Business-to-Business Marketing,
Industrial Marketing Management, vol. 31, pp. 77-84.
Thương lượng tự động dựa trên độ đo tương tự trong hệ đa Agent
45
[32] Larry M. Stephens and Michael N. Huhns, (1999), Mutilagent Systems and Societies
of Agents, Multiagent systems: a modern approach to distributed artificial intelligent
table of contents, pp. 79-120, MIT Press Cambridge, MA, USA.
[33] K. P. Sycara, (1998), Multiagent Systems, AI magazine Volume 19, No.2 Intelligent
Agents Summer.
[34] K. P. Sycara and M. Tsvetovat, (2000), Customer Coalitions in the Electronic
Marketplace, Proc. Fourth Int’l Conf. Autonomous.
[35] K. P. Sycara and Matthias Klush, (2001), Brokering and Matchmaking for
Coordination of Agent Societies, In Coordination of Internet Agents, A. Omicini et
al. (eds.), Springer.
[36] K. P. Sycara and H.C Wong, (2000), A Taxonomy of Middle-Agents for The Internet,
Proceedings of the Fourth International Conference on Multiagent Systems (ICMAS
2000), pp. 465-466.
[37] R. Till and T. Nash, (1998), Transforming the Way We Do Business, Electronic
Commerce, T. Nash, ed., pp. 9-12.
[38] R. R. Yager, (1998), On Ordered Weighted Averaging Aggregation Operators in
Multicriteria Decision Making, IEEE Trans, System Man Cerbernetics, 18, pp. 183-
190.
[39] L. A. Zadeh, (1965), Fuzzy Sets, Inform and Control, pp. 338-353.
[40] P.R. Wurman, M. Wellman, and W. Walsh, (1998), The Michigan Internet
Auctionbot: A Configurable Auction Server for Human and Software Agents, Proc.
Second Int’l Conf. Autonomous Agents, pp. 301-308.