Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)Nghiên cứu mô hình và giải thuật lựa chọn đối tác tiềm năng cho bài toán thương lượng tự động trong hệ đa tác tử (tt)
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: PGS.TS Đỗ Trung Tuấn
Phản biện 1: ………
………
Phản biện 2: ………
………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông Vào lúc ……… giờ …… ngày …… tháng …… năm ……
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MỞ ĐẦU
Xu hướng kết nối và xử lý phân tán được coi là một trong những đặc điểm quan trọng nhất của máy tính hiện đại Số lượng ứng dụng liên quan rất đa dạng với độ phức tạp không ngừng tăng Máy tính ngày càng đảm nhiệm công việc phức tạp hơn mà trước đây vốn chỉ có con người có khả năng thực hiện Nói cách khác, máy tính ngày càng trở nên
“thông minh” hơn, “trí tuệ” hơn và có thêm tính tự chủ Khi tìm hiểu về công nghệ tác tử, chúng ta thường nghe nhắc nhiều đến cụm từ “thương lượng tự động” Có thể hiểu, đây là hoạt động tương tự như người mua và người bán đàm phán trong quá trình mua bán hàng hóa Tuy nhiên, điểm đặc biệt là cả hai bên người mua và bán, không có bên nào trực tiếp tham gia mà để các tác tử sẽ thay mặt người dùng thực hiện thương lượng với đối tác theo một chiến lược, một kịch bản đã được định trước
Cấu trúc luận văn
Trong luận văn này, tôi nghiên cứu một mô hình cải tiến trong đó tạo thêm một số tác
tử điều phối giúp giảm bớt sự phức tạp của quá trình đàm phán Trước khi quá trình thương lượng thực sự diễn ra giữa tác tử mua và tác tử bán trong hệ thống, tác tử điều phối với chiến lược được định sẵn sẽ có nhiệm vụ tìm kiếm để chọn ra các đối tác tiềm năng cho quá trình đàm phán Theo đó, tác tử mua chỉ thương lượng với một số tác tử đối tác được lựa chọn, và nghĩa là thời gian cũng như chi phí tổng thể được giảm xuống đáng kể
Chương 1 – Tổng quan hệ đa tác tử và bài toán thương lượng tự động;
Chương 2 – Nghiên cứu mô hình kiến trúc hệ thống và thuật toán;
Chương 3 – Thực nghiệm và đánh giá
Trang 4Chương 1 - TỔNG QUAN HỆ ĐA TÁC TỬ VÀ BÀI TOÁN
THƯƠNG LƯỢNG TỰ ĐỘNG
Phần này sẽ trình bày một số các nghiên cứu lý thuyết liên quan được thu thập bài viết của các tác giả, tài liệu nghiên cứu về tác tử và hệ đa tác tử Trong chương này cũng trình bày bài toán về thương lượng và đặc biệt hướng tới bài toán thương lượng tự động trong thương mại điện tử và từ đó nghiên cứu đánh giá mô hình kiến trúc hệ thống và thuật
toán cải tiến sẽ được trình bày ở chương 2
1.1 Tác tử phần mềm
1.1.1 Khái niệm về tác tử phần mềm
Có rất nhiều định nghĩa khác nhau, thậm chí mâu thuẫn, về tác tử Theo một định nghĩa thường được sử dụng, tác tử (agent) là hệ thống tính toán hoạt động tự chủ trong một môi trường nào đó, có khả năng cảm nhận môi trường và tác động vào môi trường
Hình 1.1 Tác tử phần mềm
Có thể hiểu định nghĩa trên như sau: Hệ thống tính toán có thể là phần cứng, phần mềm, hoặc cả phần cứng lẫn phần mềm Bất cứ tác tử nào cũng tồn tại và hoạt động trong một môi trường nhất định Tác tử nhận thông tin từ môi trường qua các cơ quan cảm nhận
và tác động vào môi trường bằng các cơ quan tác động
Trang 51.1.2 Kiến trúc tác tử
Hình 1.2 Kiến trúc tác tử
Từ hình trên ta thấy, tác tử nhận thông tin từ môi trường (bao gồm thông tin từ các tác tử khác) thông qua cơ quan cảm nhận Nhờ có cơ chế ra quyết định, tác tử lựa chọn hành động cần thực hiện Quá trình ra quyết định có thể sử dụng thông tin về trạng thái bên trong của tác tử Trong trường hợp đó, tác tử lưu trữ trạng thái dưới dạng những cấu trúc dữ liệu riêng Hành động do cơ chế ra quyết định lựa chọn sau đó được tác tử thực hiện thông qua
cơ quan tác động
1.2.3 Hệ đa tác tử
Năng lực của mỗi tác tử chỉ giải quyết các vấn đề của riêng tác tử đó Trong một hệ thống ứng dụng cụ thể, thông thường tài nguyên dành cho mỗi tác tử là hạn chế do đó khả năng hành động của mỗi tác tử cũng là hạn chế Mỗi tác tử chỉ tập trung giải quyết một vấn
đề tại một vị trí cụ thể nào đó chứ không thể giải quyết được hết các vấn đề đặt ra cho cả hệ thống Trong các hệ phân tán phức tạp, hệ đa tác tử được xem là hệ xử lý thông tin có nhiều tiềm năng ứng dụng Có thể hiểu hệ đa tác tử là một tập các tác tử cùng hoạt động trong một
hệ thống, mỗi tác tử có thể có chức năng khác nhau nhưng toàn bộ hệ tác tử cùng hướng tới mục đích chung thông qua tương tác
Quá trình tính toán và xử lý thông tin trong hệ đa tác tử được xem là có nhiều ưu
điểm hơn so với các hệ thống khác như: Khả năng tính toán hiệu quả, độ tin cậy cao, khả
Trang 6năng mở rộng, sự mạnh mẽ, khả năng bảo trì, khả năng phản ứng, sự linh hoạt và khả năng
1.2.4 Tương tác trong hệ đa tác tử
Hệ đa tác tử bao gồm nhiều tác tử tự chủ có thể hoạt động trên những máy tính khác nhau Tuy nhiên, các tác tử thường phải trao đổi, tương tác với nhau và chính các tương tác trong hệ đa tác tử quyết định kiến trúc của hệ thống đó Các dạng tương tác này phức tạp hơn rất nhiều so với các tương tác trong hệ thống đối tượng Các tác tử tương tác với nhau bằng cách gửi thông điệp và bản chất của các thông điệp này cũng là những lời gọi hàm như trong hệ thống các đối tượng nhưng các lời gọi trong tương tác giữa các tác tử có nhiều khác biệt so với tương tác giữa các đối tượng:
1.2.4.1 Mô hình tương tác
1.2.4.2 Tương tác với tác tử trung gian
1.2.5 Công nghệ phần mềm hướng tác tử
1.2.5.1 Phần mềm hướng tác tử là gì
Có một số vấn đề định nghĩa này cần giải thích rõ hơn Các tác tử là:
Các thực thể có thể nhận dạng rõ ràng của bài toán đang được giải quyết với các giao diện và ranh giới rõ ràng;
Được đặt trong một môi trường cụ thể - chúng nhận các đầu vào từ trạng thái của môi trường thông qua các bộ cảm nhận của chúng và tác động lên môi trường thông qua
cơ quan cảm ứng của chúng;
Được thiết kế để thực hiện một vai trò cụ thể - chúng có các mục tiêu cụ thể cần đạt đến, có thể rõ ràng hay không rõ ràng trong các tác tử;
Tự trị - chúng kiểm soát qua trạng thái trong và các hành vi của chúng;
Trang 7 Có khả năng thể hiện hành vi giải quyết vấn đề mềm dẻo (phụ thuộc ngữ cảnh) - chúng cần reactive (có thể phản ứng ngay lập tức với những thay đổi của môi trường
để thoả mãn các mục tiêu thiết kế của chúng) và proactive (có khả năng cập nhật các mục đích mới và nắm thế chủ động để thoả mãn mục tiêu thiết kế của chúng)
Trong hầu hết các trường hợp, các tác tử hành động để đạt đến mục tiêu đại diện cho các thành phần riêng lẻ hay các hệ thống Vì vậy, khi các tác tử tương tác, thường có một số ngữ cảnh cơ bản thuộc tổ chức Ngữ cảnh này trợ giúp việc định nghĩa tính chất của mối quan hệ giữa các tác tử
Trong thực tế, để mua một mặt hàng nào đó, người mua thường trải qua 6 giai đoạn
từ việc xác định sự cần thiết cho đến việc thương lượng để mua và dịch vụ hậu mãi Hiện tại, khi các giao dịch thương mại sử dụng Internet hay còn gọi là thương mại điện tử thì các giai đoạn trên vẫn không thay đổi
Thương mại điện tử chủ yếu hoạt động theo nguyên tắc: hãy chọn và chấp nhận những sự lựa chọn đó Như thế, người dùng có thể duyệt qua danh mục hàng hóa cần mua rồi quyết định chọn thứ cần mua Có thể nhận xét trong các hệ thống hiện nay, chương trình chỉ hỗ trợ người dùng ở giai đoạn môi giới sản phẩm hoặc/và môi giới người bán
Khi nghiên cứu về thương lượng, có 3 vấn đề chính được quan tâm như sau: Giao thức thương lượng, là tập luật ràng buộc các thành phần tham gia cần tuân thủ trong quá trình thương lượng, nó miêu tả các bước thương lượng, những thông điệp có thể trao đổi trong quá trình thương lượng, những hành vi mà các thành viên tham gia được phép làm trong quá trình thương lượng Đối tượng thương lượng, miêu tả những gì được đưa ra đàm phán giữa các đối tác Nó có thể là những thỏa thuận người dùng muốn đạt được, một hành
vi họ muốn thực thi hoặc đơn giản là một mặt hàng họ muốn có Nếu đối tượng có nhiều thuộc tính sẽ được gọi là đàm phán đa phương (multi-issue), ngược lại thì gọi là đàm phán đơn phương (single-issue)
Trang 8Ví dụ:
Khi người bán xe hơi và khách hàng đàm phán về một chiếc xe, họ có thể thương lượng
về giá bán, công nghệ và những lựa chọn nội thất…như thế gọi là multi-issue Chiến lược thương lượng, là cách thức các tác tử ra quyết định trong suốt quá trình đàm phán, điều này phụ thuộc nhiều vào lĩnh vực của bài toán, giao thức, đối tượng và thông tin mà tác tử có
1.2.3 Cơ chế bán đấu giá
Sau đây là một số dạng bán đấu giá phổ biến:
Bán đấu giá kiểu Anh (English auction)
Bán đấu giá theo kiểu Hà Lan (Dutch auction)
Bán đấu giá theo giá đầu tiên (First-price auction)
Bán đấu giá theo giá thứ hai (Second-price auction)
1.2.4 Thương lượng trong thương mại điện tử
Thương lượng là một phần quan trọng của quá trình giao dịch kinh doanh Vì thế, để thúc đẩy việc tiến hành giao dịch điện tử trở nên phổ biến hơn, các hệ thống TMĐT cần cung cấp khả năng thương lượng cho người dùng
1 Yêu cầu của thương lượng trong thương mại điện tử
2 Lựa chọn giải pháp cho công cụ thương lượng tự động
3 Kỹ thuật thương lượng
Để có khả năng tự động thương lượng, các tác tử cần được cung cấp kỹ thuật thương lượng hiệu quả:
Kỹ thuật phát sinh tự động thư chào hàng và thư hoàn giá:
Trang 9 Kỹ thuật đánh giá lợi ích của thư chào hàng:
- Vj(xj): là lợi ích mà tác tử thu được từ giá trị xj
Kỹ thuật lựa chọn thư chào hàng có lợi nhất
Kiến trúc hệ thống
1.3 Kết luận
Tác tử và hệ đa tác tử là một lĩnh vực mới trong công nghệ phần mềm, các khái niệm, định nghĩa về chúng vẫn còn chưa thật đầy đủ Tuy nhiên trong chương này luận văn đã tìm hiểu và sưu tầm các khái niệm, định nghĩa về chúng mà được cộng đồng nghiên cứu về tác
tử đánh giá cao Phân tích các ưu điểm, nhược điểm, các lĩnh vực có thể áp dụng Đây là các kiến thức cơ sở, nền tảng rất quan trọng không thể thiếu được để chúng ta tiếp cận, tìm hiểu các vấn đề liên quan đến tác tử và hệ đa tác tử
Trang 10Chương 2 - NGHIÊN CỨU MÔ HÌNH KIẾN TRÚC HỆ THỐNG VÀ
THUẬT TOÁN
Với mục tiêu hỗ trợ Thương mại điện tử, luận văn hướng đến việc xây dựng một thị trường điện tử hỗ trợ việc mua bán hàng hóa thông qua các cuộc thương lượng Quá trình tìm kiếm các đối tác kinh doanh và thương lượng về các điều kiện chi tiết của giao dịch thường làm tốn nhiều thời gian của người dùng Trong chương này trình bày nghiên cứu về
mô hình cải tiến bằng cách thêm các tác tử điều phối giúp giảm bớt sự phức tạp trong quá trình thương lượng, đồng thời trình bày một số thuật toán áp dụng trong quá trình điều phối của các tác tử
2.1 Kiến trúc hệ thống của thị trường điện tử Tác tử
2.1.1 Kiến trúc thị trường
Hình 2.1 Kiến trúc thị trường
Trang 11Trong kiến trúc được mô tả ở hình trên, thị trường bao gồm 3 loại tác tử: tác tử giao diện, tác tử tác vụ và tác tử trung gian
Tác tử giao diện: thực hiện việc giao tiếp giữa người dùng và thị trường
Tác tử tác vụ: thực hiện các nhiệm vụ do người dùng ủy quyền Với mục đích
tự động hóa giai đoạn Thỏa thuận của các giao dịch thương mại, nhiệm vụ chủ yếu của các tác tử tác vụ trong thị trường này là thương lượng hợp đồng
2.1.2 Tác tử mua
Tác tử có nhiệm vụ thương lượng để mua hàng hóa, gọi tắt là Tác tử mua
Trang 13Hình 2.4 Tác tử trung gian
2.1.5 Kịch bản hoạt động
Các bước thực hiện trong quá trình mua hàng hóa của một khách hàng như sau:
1 Đăng ký người dùng:
2 Xác định yêu cầu mua bán:
3 Tìm kiếm thông tin:
4 Thỏa thuận điều kiện mua bán:
5 Thực hiện giao dịch:
2.3 Ngôn ngữ truyền thông giữa các Tác tử
Các tác tử trao đổi với nhau thông qua các thông điệp Khác với hệ hướng đối tượng, thông điệp trong hệ đa tác tử không chỉ biểu diễn các lời gọi hàm mà còn phải biểu diễn thông tin và tri thức cần trao đổi giữa các tác tử Các thông điệp này được biểu diễn theo các ngôn ngữ truyền thông tác tử (ACL: Agent Comminucation Language) nhằm mục đích:
Định nghĩa khuôn dạng các thông điệp để trao đổi giữa các tác tử trong hệ thống
Thiết lập một giao thức trao đổi giữa các tác tử bao gồm: định nghĩa các kiểu thông điệp gửi và nhận, các mô hình trao đổi thông điệp giữa các tác tử
Các ngôn ngữ truyền thông đều dựa trên lý thuyết hành động - lời nói (speech-act) Mỗi thông điệp bao giờ cũng phải mô tả đầy đủ người gửi, người nhận, mục đích của lời nói
và ngữ nghĩa của lời nói Một hành động - lời nói đầy đủ không chỉ định nghĩa cấu trúc lời nói mà còn xác định hành động liên quan đến lời nói đó Có nhiều ngôn ngữ truyền thông đa tác tử đã được đưa ra trong đó hai ngôn ngữ truyền thông được sử dụng rộng rãi nhất nhất là KQML (Knowledge Query and Manipulation Language) và FIPA-ACL (Foudation for Intelligent Physical Agent)
2.3.1 Cấu trúc thông điệp:
2.4 Kỹ thuật thương lượng của các Tác tử
2.4.1 Cấu trúc của thông tin thương lượng
Để các tác tử thương lượng có thể hiểu được yêu cầu của nhau, các thông tin trao đổi phải được biểu diễn theo cú pháp chung
Trang 14Ví dụ minh họa về một yêu cầu mua sách đơn giản, các vấn đề được thương lượng là giá cả và thời gian giao hàng
Bảng 2.3 Yêu cầu mua sách
Giả sử tác tử bán PHUONG NAM có thể đáp ứng yêu cầu mua sách này, nó sẽ gửi thư chào hàng cho tác tử mua DUNG với cấu trúc:
2.4.2 Kỹ thuật lựa chọn thư chào hàng
Khi một tác tử gửi thông điệp chấp nhận thư chào hàng hoặc thư hoàn giá từ đối thủ thương lượng, có nghĩa là nó đồng ý với điều kiện mua bán được đề nghị Khi đó, tác tử mua sẽ không chấp nhận thư chào hàng của đối thủ khác nữa, còn tác tử bán sẽ không dùng
số lượng hàng hóa đó để chào bán với tác tử khác Tuy nhiên, thỏa thuận chỉ đạt được thật
sự khi đối thủ thương lượng gửi ngược lại cho nó một thông điệp đồng ý xác nhận hợp đồng Trong trường hợp đối thủ từ chối xác nhận, nó phải chấp nhận thư chào hàng của một đối thủ khác
Các tác tử mua thương lượng đồng thời với nhiều tác tử bán nhưng chỉ thực hiện giao dịch mua bán với một tác tử bán mà thôi Đối với tác tử bán, nó sẽ chấp nhận mọi yêu cầu mua hàng Tuy nhiên, trong trường hợp số lượng hàng hóa của nó còn lại không đủ đáp ứng cho tất cả khách hàng thì nó sẽ lựa chọn giao dịch với những khách hàng tiềm năng nhất
1 Lựa chọn của tác tử mua:
Trang 15Hình 2.5 Sơ đồ giải thuật lựa chọn Tác tử mua
2 Lựa chọn của tác tử bán:
Trang 16Hình 2.6 Sơ đồ giải thuật lựa chọn Tác tử bán
Trang 172.5 Nghiên cứu trước đây
2.5.1 Mô hình kiến trúc hệ thống
Hình 2.8 Tác tử điều phối trong mô hình thương lượng
Trong hệ thống nghiên cứu ở hình, thiết lập nhiệm vụ của tác tử điều phối (CA) là: (1) nhận yêu cầu từ tác tử mua (BA); (2) di chú, tìm kiếm và đánh giá các tác tử bán (SA); (3) trả về danh sách tác tử tiềm năng để tiến trình thương lượng bắt đầu Chi tiết về các nhiệm vụ này được trình bày cụ thể ở các phần tiếp theo của luận văn
2.5.2 Tiến trình thương lượng
Khi có nhu cầu thương lượng, cả người bán (Seller) và người mua (Buyer) đều đăng nhập vào hệ thống Đối với người muốn mua một mặt hàng, họ sẽ tạo ra một tác tử mua (b_agent) và cung cấp các tiêu chí quan tâm khi mua hàng
Như đã đã đề cập ở trên, nhằm nâng cao hiệu quả quá trình thương lượng, tôi đã sử dụng thêm các tác tử điều phối để phân loại và lựa chọn được các đối tác tiềm năng dùng để thương lượng Quá trình tiền xử lý trong hệ thống gồm 3 bước: Tìm kiếm, đánh giá, phản hồi Chi tiết sẽ được trình bày ở các mục tiếp theo
2.5.3 Tìm kiếm
Ở giải đoạn này, các tác tử đại diện cho người mua gửi yêu cầu cho tác tử điều phối Tác tử điều phối dựa trên thông tin được cung cấp, giao tiếp và so sánh với các yêu cầu của các tác tử bán từ đó chọn được đối tác phù hợp với các yêu cầu cơ bản của người mua