1. Trang chủ
  2. » Văn Hóa - Nghệ Thuật

Mô hình tương tác dựa trên role trong hệ đa agent

17 343 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 517,06 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

iii Mô hình tương tác dựa trên role trong hệ đa agent HÀ NỘI – 2007 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ THANH HUYỀN MÔ HÌNH TƯƠNG TÁC DỰA TRÊN ROLE TRONG HỆ

Trang 1

ii

Mô hình tương tác dựa trên role trong hệ đa agent

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Thị Thanh Huyền

MÔ HÌNH TƯƠNG TÁC DỰA TRÊN ROLE

TRONG HỆ ĐA AGENT

LUẬN VĂN THẠC SĨ

Trang 2

iii

Mô hình tương tác dựa trên role trong hệ đa agent

HÀ NỘI – 2007

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ THANH HUYỀN

MÔ HÌNH TƯƠNG TÁC DỰA TRÊN ROLE

TRONG HỆ ĐA AGENT

Ngành: Công nghệ thông tin Chuyên ngành:

LUẬN VĂN THẠC SĨ

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS TRẦN ĐÌNH QUẾ

Trang 3

iv

Mô hình tương tác dựa trên role trong hệ đa agent

HÀ NỘI – 2007

LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của riêng cá nhân tôi, không sao chép lại của người khác Trong toàn bộ nội dung luận văn, những điều đã được trình bày hoặc là của riêng cá nhân tôi, hoặc là được tổng hợp từ nhiều nguồn tài liệu Tất cả các nguồn tài liệu tham khảo được dùng đều có xuất xứ rõ ràng, được trích dẫn hợp pháp

Tôi xin chịu hoàn toàn trách nhiệm và chịu mọi hình thức kỉ luật theo quy định cho lời cam đoan của mình

Hà nội, 11/2007 Nguyễn Thị Thanh Huyền

MỤC LỤC

LỜI CAM ĐOAN iv

MỤC LỤC iv

DANH MỤC BẢNG BIỂU viii

DANH MỤC HÌNH VẼ viii

KÍ HIỆU VIẾT TẮT x

MỞ ĐẦU 12 Chương 1 Tương tác trong hệ đa agent Error! Bookmark not defined.

Trang 4

v

Mô hình tương tác dựa trên role trong hệ đa agent

1.1 Hệ đa agent Error! Bookmark not defined.

1.1.1 Hệ phần mềm phức tạp Error! Bookmark not defined.

1.1.2 Hệ đa agent Error! Bookmark not defined.

1.2 Tương tác trong hệ đa agent Error! Bookmark not defined.

1.2.1 Khái niệm tương tác đa agent Error! Bookmark not defined 1.2.2 So sánh tương tác trong hệ đa Agent và hệ hướng đối tượng Error!

Bookmark not defined.

1.3 Mô hình tương tác hướng agent Error! Bookmark not defined 1.3.1 Đặc tả tương tác bằng UML Error! Bookmark not defined 1.3.2 Mô hình tương tác dựa trên mục tiêu (goal)Error! Bookmark not defined.

1.3.3 Mô hình tương tác dựa trên role Error! Bookmark not defined.

1.4 Thương lượng đấu giá Error! Bookmark not defined 1.4.1 Khái niệm thương lượng Error! Bookmark not defined 1.4.2 Thương lượng đấu giá Error! Bookmark not defined 1.4.3 Một số giao thức đấu giá cơ bản Error! Bookmark not defined.

1.5 Kết chương Error! Bookmark not defined.

Chương 2 Role trong phát triển phần mềm Error! Bookmark not defined.

2.1 Tổng quan về role Error! Bookmark not defined 2.1.1 Cơ sở thực tiễn Error! Bookmark not defined 2.1.2 Role và vai trò của role trong hệ thống thông tinError! Bookmark not

defined.

2.2 Phát triển phần mềm dựa trên role Error! Bookmark not defined 2.2.1 Role trong phát triển phần mềm Error! Bookmark not defined.

Trang 5

vi

Mô hình tương tác dựa trên role trong hệ đa agent

2.2.2 Role trong phát triển phần mềm hướng đối tượngError! Bookmark not

defined.

2.3 Role trong hệ đa agent Error! Bookmark not defined 2.3.1 Mô hình role Error! Bookmark not defined 2.3.2 So sánh role trong hệ đa agent và hướng đối tượngError! Bookmark not defined.

2.3.3 Một số phương pháp mô hình tương tác dựa trên roleError! Bookmark

not defined.

2.4 Kết chương Error! Bookmark not defined.

Chương 3 Mô hình tương tác dựa trên role Error! Bookmark not defined.

3.1 Mô hình role và tương tác dựa trên role BRAINError! Bookmark not defined.

3.1.1 Mô hình role Error! Bookmark not defined 3.1.2 Mô hình tương tác dựa trên role Error! Bookmark not defined 3.2 XRole – Tập kí hiệu đặc tả role Error! Bookmark not defined 3.2.1 Đặc tả role Error! Bookmark not defined 3.2.2 Cài đặt role Error! Bookmark not defined 3.3 Cơ sở hạ tầng tương tác Error! Bookmark not defined 3.3.1 RoleX Error! Bookmark not defined 3.3.2 RoleSystem Error! Bookmark not defined 3.4 Mô hình role cho đấu giá tự động Error! Bookmark not defined 3.4.1 Thiết kế role Error! Bookmark not defined 3.4.2 Đặc tả role Error! Bookmark not defined 3.5 Kết chương Error! Bookmark not defined.

Trang 6

vii

Mô hình tương tác dựa trên role trong hệ đa agent

Chương 4 Cài đặt thử nghiệm hệ thống đấu giá Error! Bookmark not defined.

4.1 Mô tả bài toán Error! Bookmark not defined 4.1.1 Giao thức đấu giá kiểu Anh Error! Bookmark not defined 4.1.2 Chiến lược đấu giá Error! Bookmark not defined 4.2 JADE Platform Error! Bookmark not defined 4.2.1 Ngôn ngữ truyền thông ACL Error! Bookmark not defined 4.2.2 Cơ chế truyền thông giữa các Agent Error! Bookmark not defined 4.2.3 Ví dụ minh họa truyền thông ACL Error! Bookmark not defined 4.3 Cài đặt role Error! Bookmark not defined 4.4 Cấu trúc role agent Error! Bookmark not defined 4.4.1 Cấu trúc hai tầng của hệ thống Error! Bookmark not defined 4.4.2 Quá trình tương tác giữa các role agent Error! Bookmark not defined 4.5 Kết quả thử nghiệm Error! Bookmark not defined 4.5.1 Khởi tạo các role agent Error! Bookmark not defined 4.5.2 Quá trình thương lượng giữa Seller và Auctioneer.Error! Bookmark not defined.

4.5.3 Quá trình thương lượng giữa Bidder và AuctioneerError! Bookmark not defined.

4.5.4 Kết thúc đấu giá Error! Bookmark not defined 4.5.5 Một số khảo sát kết quả Error! Bookmark not defined 4.6 Đánh giá Error! Bookmark not defined 4.6.1 Đánh giá hệ thống thử nghiệm Error! Bookmark not defined 4.6.2 Đánh giá phương pháp BRAIN Error! Bookmark not defined.

KẾT LUẬN Error! Bookmark not defined.

Trang 7

viii

Mô hình tương tác dựa trên role trong hệ đa agent

Hướng phát triển trong tương lai Error! Bookmark not defined.

TÀI LIỆU THAM KHẢO 14

DANH MỤC BẢNG BIỂU

Bảng 1.1 So sánh tương tác hướng agent và hướng đối tượng Error! Bookmark

not defined.

Bảng 2.1: Các phương pháp sử dụng role trong phát triển phần mềm Error!

Bookmark not defined.

Bảng 4.1 Quá trình thương lượng giữa Seller và Auctioneer Error! Bookmark not

defined.

Bảng 4.2 Quá trình thương lượng giữa Bidder và AuctioneerError! Bookmark not

defined.

Bảng 4.3 Các Bidder tham gia đấu giá Error! Bookmark not defined Bảng 4.4 Kết quả phiên đấu giá khi thay đổi gia số Error! Bookmark not defined Bảng 4.5 Kết quả phiên đấu giá khi thay đổi TO3 Error! Bookmark not defined Bảng 4.6 Kết quả ba phiên đấu giá đồng thời Error! Bookmark not defined.

Trang 8

ix

Mô hình tương tác dựa trên role trong hệ đa agent

DANH MỤC HÌNH VẼ

Hình 1.1 Mô hình chuẩn của hệ thống phức tạp Error! Bookmark not defined Hình 1.2 Hệ đa agent Error! Bookmark not defined Hình 1.3 Lược đồ tổng quan của phương pháp Hermes Error! Bookmark not

defined.

Hình 1.4 Lược đồ phân cấp IG Error! Bookmark not defined Hình 2.1 Mô hình tương tác dựa trên role Error! Bookmark not defined Hình 3.1 Khung BRAIN Error! Bookmark not defined Hình 3.2 Mô hình tương tác giữa hai agent Error! Bookmark not defined Hình 3.3 Cú pháp khai báo DTD Error! Bookmark not defined Hình 3.4 DTD cho các role theo mô hình BRAIN Error! Bookmark not defined Hình 3.5 Lược đồ XML cho mô hình role theo BRAIN Error! Bookmark not

defined.

Hình 3.6 Định nghĩa role Bidder trong XRole Error! Bookmark not defined Hình 3.7 Chuyển đối HTML của Bidder.xml Error! Bookmark not defined Hình 3.8 XSL chuyển tài liệu XML thành lớp Java Error! Bookmark not defined Hình 3.9 Mã nguồn lớp Java chuyển từ Bidder.xml Error! Bookmark not defined Hình 3.10 Đặc tả role Seller Error! Bookmark not defined Hình 3.11 Đặc tả role Auctioneer Error! Bookmark not defined.

Trang 9

x

Mô hình tương tác dựa trên role trong hệ đa agent

Hình 3.12 Đặc tả role Seller Error! Bookmark not defined Hình 4.1 Giao thức đấu giá kiểu Anh FIPA Error! Bookmark not defined Hình 4.2 Thuật toán quyết định của Auctioneer Error! Bookmark not defined Hình 4.3 Thuật toán đấu giá của Bidder Error! Bookmark not defined Hình 4.4 Nền Jade và các Container Error! Bookmark not defined Hình 4.5 Cơ chế truyền thông điệp không đồng bộ của Jade Error! Bookmark not

defined.

Hình 4.6 Lược đồ quan hệ giữa các lớp trong hệ Auction Error! Bookmark not

defined.

Hình 4.7 Mã nguồn Java tương ứng với Seller.xml Error! Bookmark not defined Hình 4.8 Mã nguồn Java tương ứng với Auctioneer.xml Error! Bookmark not

defined.

Hình 4.9 Mã nguồn Java tương ứng với Bidder.xmlError! Bookmark not defined Hình 4.10 Mã nguồn Java cài đặt Bidder Error! Bookmark not defined Hình 4.11 Cấu trúc phân tầng của hệ đa agent dựa trên role Error! Bookmark not

defined.

Hình 4.12 Giao diện khởi tạo role agent Error! Bookmark not defined Hình 4.13 Giao diện của một Bidder Error! Bookmark not defined Hình 4.14 Giao diện của Seller Error! Bookmark not defined Hình 4.15 Giao diện của Auctioneer Error! Bookmark not defined Hình 4.16 Cây phân cấp Agent của nền Jade Error! Bookmark not defined Hình 4.17 Giao diện kết quả của Bidder thắng cuộc Error! Bookmark not

defined.

Hình 4.18 Giao diện kết quả của Bidder thất bại Error! Bookmark not defined Hình 4.19 Giao diện kết quả của Seller Error! Bookmark not defined Hình 4.20 Giao diện hiển thị của Auctioneer Error! Bookmark not defined Hình 4.21 Giao diện thiết đặt thông số cho ba phiên đấu giá song song Error!

Bookmark not defined.

Trang 10

xi

Mô hình tương tác dựa trên role trong hệ đa agent

KÍ HIỆU VIẾT TẮT

AIP Agent Interaction Protocol

ACL Agent Communication Language

KIF Knowledge Interchange Format

XSL eXtension Style Language

Trang 11

MỞ ĐẦU

Thiết kế và xây dựng các hệ thống phần mềm phức tạp là một việc làm hết sức khó khăn và được cho là một trong những công việc kiến thiết phức tạp nhất của loài người Lịch sử phát triển phần mềm đã trải qua nhiều mô hình khác nhau như lập trình thủ tục, hướng đối tượng, mẫu thiết kế… Mỗi mô hình đều có mục đích hoặc đơn giản hóa quá trình kỹ nghệ hoặc mở rộng quy mô và tăng khả năng xử lý phức tạp của hệ thống Thập kỷ trước đã chứng kiến thời kỳ huy hoàng của kỹ nghệ phần mềm hướng đối tượng, song bản chất tĩnh, ổn định của đối tượng tỏ ra không phù hợp cho thiết kế các hệ thống trong môi trường phân tán, không thuần nhất, động và mở như Internet

Thực thể phần mềm gọi là agent với những đặc trưng như tự chủ, linh hoạt, di động, có khả năng

giao tiếp…được coi là một trong những lựa chọn cho phát triển các hệ thống phân tán và đã thu hút nhiều sự quan tâm nghiên cứu ([36], [50], [8], [9])

Với công nghệ agent, một hệ thống phức tạp được chia thành các thành phần nhỏ hơn và mỗi agent được giao thực hiện một số nhiệm vụ nào đó Các thành phần phân rã này thường phụ thuộc lẫn nhau Nhờ có khả năng tự chủ, các agent này có thể giao tiếp, phối hợp với các agent khác để hoàn thành mục tiêu chung của hệ thống Như vậy, mỗi agent luôn cần có sự cộng tác từ

phía các agent khác Tương tác chính là cầu nối, là phương tiện để các agent hoạt động cùng nhau

Tương tác [9] có thể có nhiều dạng như phối hợp, hỗ trợ, thương lượng để hoàn thành mục tiêu riêng hoặc để thực hiện mục tiêu chung hoặc thậm chí là cạnh tranh tài nguyên…

Do khả năng chủ động và tính xã hội của agent mà tương tác giữa các agent trở nên phức tạp hơn nhiều so với tương tác giữa các đối tượng Trong khi, đối tượng chỉ đơn giản thực hiện những thao tác do người lập trình cài đặt mà không có sự chủ động nào, agent được cung cấp tri thức, phương pháp và có thể chủ động quyết định thực hiện cái gì, như thế nào [45] Do vậy, tương tác trong hệ đa agent có một số điểm khác biệt nổi bật so với tương tác trong hệ đối tượng:

 Tương tác đa agent xảy ra một cách tự động, không cần sự kích hoạt từ bên ngoài Trong khi thực hiện một nhiệm vụ nào đó, nếu cần thiết, agent hoàn toàn có thể tự kích hoạt tương tác với agent khác Chính điều này tạo ra sự lan tỏa tương tác khiến cho tương tác giữa các agent không chỉ dừng lại ở hai chiều

 Tương tác trong hệ đa agent mang tính chất xã hội vì đó không chỉ là một bên đưa

ra yêu cầu còn bên kia thực hiện mà agent hoàn toàn có khả năng từ chối thực thi yêu cầu của các agent khác Mặt khác, tương tác đa agent có thể được phân chia theo ngữ cảnh xã hội thành các loại như tương tác kết hợp, phối hợp, cạnh tranh, thương lượng Với các tương tác phức tạp như cạnh tranh, thương lượng, việc xây dựng chiến lược, mô hình để agent thực hiện tương tác một cách tự động gặp nhiều khó khăn vì cần phải có những mô hình phù hợp và những công cụ mạnh hơn Hơn nữa, do agent có thể quyết định dựa trên tri thức, có khả năng phát động tương tác nên tương tác trong hệ đa agent là rất khó đoán trước trong thời gian thiết kế Vì vậy, tính linh động là điều tối cần thiết trong mô hình tương tác đa agent, nghĩa là mô hình tương tác phải cung cấp cho agent khả năng di chuyển và

Trang 12

hoạt động từ vị trí này sang vị trí khác, thêm bớt agent một cách dễ dàng… trong thời gian chạy

Cho đến nay, nhiều mô hình tương tác đã được đề xuất như mô hình dựa trên mục tiêu (goal) [18], mô hình kế thừa từ mô hình hướng đối tượng AUML [5]…Tuy nhiên, các mô hình này chưa thể hiện được đầy đủ bản chất chủ động và tính xã hội của agent cũng như chưa hỗ trợ được đầy đủ các pha trong quy trình phát triển phần mềm Một số mô hình gần đây ra đời nhằm khắc

phục những hạn chế trên, trong số đó mô hình dựa trên role đang thu hút nhiều sự quan tâm nghiên

cứu

Role [20] từ lâu đã được áp dụng trong nhiều lĩnh vực khác nhau và thường được hiểu là tập các quyền hạn, chức năng và nghĩa vụ được cung cấp cho một đối tượng như con người để hoàn thành một nhiệm vụ nào đó Trong hệ đa agent, mỗi khi agent muốn thực hiện một công việc,

nó sẽ đảm nhận một role tương ứng Ví dụ, khi một agent muốn tham gia trả giá trong một phiên

đấu giá, agent đó sẽ chọn đảm nhận role Người mua (Bidder), ngược lại, nếu muốn rao bán một mặt hàng, agent khác nào đó sẽ chọn đảm nhận role Người bán (Seller) Mọi thao tác liên quan đến

trả giá, tìm kiếm sản phẩm, mua hàng đều được tích hợp trong role Bidder, các thao tác tìm trung gian, đặt giá được cài đặt trong role Seller Bản thân mỗi agent không cần phải cài đặt tất cả các chức năng này Như vậy, việc sử dụng role cho phép người phát triển phân tách rạch ròi vấn đề liên quan đến tương tác với các vấn đề liên quan đến thuật toán của agent Tương tác có thể được phát triển độc lập với thuật toán tính toán của agent và điều này làm tăng tính môđun hóa và sử dụng lại của phần mềm Các ứng dụng cùng thể loại có thể sử dụng lại các role đã được phát triển hoàn thiện của một ứng dụng trước đó và hoàn toàn có thể chỉnh sửa cho phù hợp với ngữ cảnh cụ thể

Hiện nay, nhiều phương pháp dựa trên role đã được đề xuất [9], mỗi phương pháp mô hình role theo một cách riêng biệt như role dưới dạng quyền hạn, trách nhiệm trong phương pháp GAIA [51] hay dịch vụ trong phương pháp ALAADIN [22]…Trong luận văn này, chúng tôi chọn cách tiếp cận dựa trên khung BRAIN [13] do nhóm tác giả G Cabri, L.Ferrari và F.Zambonelli đề xuất

Khung BRAIN cung cấp một mô hình để trừu tượng hóa role bao gồm: tập kí hiệu XRole để đặc tả role cũng như cơ sở tương tác RoleX, RoleSystem để hỗ trợ cài đặt và thực thi các ứng dụng

dựa trên role Trong BRAIN, role được mô hình dưới dạng các hành vi, khả năng và tri thức mà

agent có thể sử dụng để thực hiện nhiệm vụ Hành vi của agent là tập các sự kiện mà agent có thể quản lý còn khả năng của Agenta là tập các hành động mà agent có thể thực hiện Tương tác giữa các Agent được mô hình bởi một cặp (hành động, sự kiện) Tương tác xảy ra khi một agent chọn

thực hiện một hành động và cơ sở tương tác sẽ dịch hành động này thành một sự kiện rồi gửi tới agent nhận Agent nhận tiếp nhận, xử lý các sự kiện này và đáp trả bằng cách chọn thực hiện một hành động trong khả năng của nó và hệ thống chuyển hành động này thành sự kiện gửi lại agent gửi

Ngày nay, với sự phát triển của Internet, các hệ thống đấu giá trực tuyến đã trở nên phổ biến Đặc biệt, việc sử dụng các agent thông minh đã giúp người dùng có thể thoát ly việc ra quyết định trong đấu giá đồng thời có thể tham gia nhiều cuộc đấu giá cùng lúc Tuy nhiên, tương tác giữa các agent này lại đặt ra nhiều vấn đề đối với người phát triển hệ thống như làm cách nào để agent có thể di chuyển dễ dàng giữa các nút trong mạng, cách nào để một agent có thể tham gia đồng thời nhiều cuộc đấu giá với những vai trò khác nhau…

Mục đích của luận văn này trước hết xem xét vấn đề tương tác, khái niệm role trong phát triển phần mềm và đặc biệt trong mô hình tương tác của các agent Sau đó, tập trung nghiên cứu

mô hình tương tác dựa trên role với khung BRAIN và áp dụng mô hình vào phát triển hệ thống đấu giá trực tuyến Nội dung luận văn được chia thành các phần chính sau đây:

Chương 1 Tương tác trong hệ đa agent: Chương này tập trung làm rõ vai trò và

tầm quan trọng của tương tác trong hệ đa agent Một số đặc điểm khác biệt của tương tác trong hệ đa Agent với tương tác trong các hệ khác cùng một số đặc điểm của thương lượng – một loại hình tương tác phức tạp nhất trong hệ đa agent

Ngày đăng: 08/02/2017, 23:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w