1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

9 368 1

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 260,62 KB

Nội dung

Trần Đình Quế Năm bảo vệ: 2007 Abstract: Khái quát về tương tác trong hệ đa agent : khái niệm, mô hình tương tác trong hệ đa agent, so sánh tương tác trong hệ đa agent và hệ hướng đối

Trang 1

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

Nguyễn Thị Thanh Huyền

Trường Đại học Công nghệ Luận văn ThS chuyên ngành: Công nghệ thông tin; Mã số: 1 01 10

Người hướng dẫn: PGS.TS Trần Đình Quế

Năm bảo vệ: 2007

Abstract: Khái quát về tương tác trong hệ đa agent : khái niệm, mô hình tương tác

trong hệ đa agent, so sánh tương tác trong hệ đa agent và hệ hướng đối tượng, thương lượng đấu giá Tổng quan về vai trò của role trong phát triển phần mềm: role và vai trò của role trong hệ thống thông tin, role trong phát triển phần mềm hướng đối tượng, role trong hệ đa agent Giới thiệu mô hình tương tác dựa trên role BRAIN , XRole - tập ký hiệu đặc tả role, cơ sở hạ tầng tương tác, mô hình role cho đấu giá tự động Trình bày cách cài đặt role trong hệ thống đấu giá cũng như những kết quả thử nghiệm và đánh giá hệ thống thử nghiệm

Keywords: Công nghệ thông tin, Hệ thống thông tin, Hệ Đa Agent, Máy tính, Phần

mềm

Content

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])

Trang 2

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à 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

Trang 3

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:

Trang 4

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

Chương 2 Role trong phát triển phần mềm: Khái niệm role trong phát triển

phần mềm và một số phương pháp mô hình role sẽ được trình bày trong chương này

Chương 3 Mô hình tương tác dựa trên role: Chương này mô tả chi tiết mô hình

tương tác dựa trên role với khung BRAIN Mô hình cung cấp công cụ để phát triển một hệ thống phần mềm dựa trên khái niệm role, một tập kí hiệu để đặc tả role và các cơ sở tương tác phục vụ cho việc cài đặt và thực thi hệ thống

Chương 4 Cài đặt thử nghiệm hệ thống đấu giá: Chương này sẽ trình bày một

cài đặt thử nghiệm hệ thống đấu giá sử dụng mô hình BRAIN trên nền Jade

Cuối cùng, phần kết luận trình bày một số kết quả đạt được của luận văn và hướng phát triển trong tương lai

References

Tiếng Việt

[1] Nguyễn Phương Lan, Hoàng Đức Hải, “XML nền tảng và ứng dụng”, Nhà xuất

bản Lao động và Xã hội, 2005

[2] Trần Đình Quế, Nguyễn Thị Thanh Huyền, ―Tương tác dựa trên role trong hệ

đa agent‖, Kỷ yếu Hội thảo Quốc gia về Công nghệ thông tin và Truyền thông

lần thứ IX, trang 349, 06/2006, Đà Lạt, Việt Nam

Tiếng Anh

[3] S.T Acuna, N Juristo, ―Assigning people to roles in software projects,‖ Softw

Pract Exp, vol 34, no 7, pp 675–696, Jun 2004

[4] C Bartolini, C Preist, ―A Framework for Automated Negotiation‖,

HPL-2001-90, 2001

[5] B Bauer, J.P Müller, J Odell, ―Agent UML: A Formalism for Specifying

Multiagent Interaction‖, International Journal of Software Engineering and

Knowledge Engineering 11, 2001

Trang 5

[6] D Baumer, D Ritchie, W Siberski, M Wulf, ―The Role Object Pattern‖, Proc

4th Pattern Languages of Programming conference (PLoP), Monticello, Illinois, USA, September 1997

[7] M Becht, T Gurzki, J Klarmann, M Muscholl, ―ROPE: Role Oriented

Programming Environment for Multiagent Systems‖, Proc Fourth IFCIS

Conference on Cooperative Information Systems (CoopIS'99), Edinburgh, Scotland, September 1999

[8] G Booch, ―Object-oriented analysis and design with applications‖, Addison

Wesley, 1994

[9] G Cabri, L Ferrari, L Leonardi, ―Agent role-based collaboration and

coordination: a survey about existing approaches‖, The 2004 IEEE Systems,

Man and Cybernetics Conference, Netherlands, October, 2004

[10] G Cabri, L Ferrari, L Leonardi, ―BRAIN: a Framework for Flexible

Role-based Interactions in Multiagent Systems‖, Proc First European Workshop in

Multi Agent Systems (EUMAS), Oxford, UK, December 2003

[11] G Cabri, L Ferrari, L Leonardi, F Zambonelli, ― Implementing role-based

interaction for Internet agents”, 2003 International Symposium on Applications

and the Internet, Orlando (USA), January 2003

[12] G Cabri, L Ferrari, L Leonardi, F Zambonelli, ―Role-based Approaches for

Agent Development‖, AAMAS'04, July 19-23, New York, USA, 2004

[13] G Cabri, L Ferrari, L Leonardi, F Zambonelli, ―Role-based Approaches for

Engineering Interactions in Large-scale Multi-Agent Systems‖, 2001

[14] G Cabri, L Ferrari, L Leonardi, F Zambonelli, ―RoleX Environment for

Multi-Agent Cooperation‖, 2004

[15] G Cabri, L Ferrari, L Leonardi,―Supporting the Development of Multi-Agent ”,

The International Workshop on AOSE-2005

[16] G Cabri, L Ferrari, L Leonardi, F Zambonelli, “XRole: XML Roles for Agent

Interactions”, in Proceedings of the 3rd International Symposium “From Agent

Theory to Agent Implementation”, at the 16th European Meeting on Cybernetics and Systems Research (EMCSR 2002), Wien, April 2002

Trang 6

[17] B.G Cain, J.O Coplien, ―A role-based empirical process modeling

environment,‖ in Proc 2nd Int Conf Softw Process, Berlin, Germany, Feb

1993, pp 125–133

[18] C Cheong, M Winikoff, ―Hermes: Designing Goal-Oriented Agent

Interactions‖, Proceedings of 4th international joint conference on Autonomous

agents and multiagent systems, 2005

[19] C Cheong, M Winikoff, ―Improving Flexibility and Robustness in Agent

Interactions: Extending Prometheus with Hermes‖, Software Engineering for

Multi-Agent Systems IV, 2005

[20] V Dignum, F Dignum, ―Task and Social Coordination in Agent

Organizations‖, 2005

[21] M Fasli, ―Social Interactions in Multi-Agent Systems: A Formal Approach‖,

Proc First European Workshop on Multi-Agent Systems (EUMAS), Oxford,

UK, December 2003

[22] J Ferber, O Gutknecht, ―AALAADIN: A metamodel for the analysis and design

of organizations in multi-agent systems‖, Proc Third International Conference

on Multi-Agent Systems (ICMAS'98), 1998

[23] FIPA English Auction Interaction Protocol Specification, 2001

[24] FIPA, http://fipa.umbc.edu/mirror/specifications/identifiers.html

[25] M Fowler, ―Dealing with Roles‖, http://martinfowler.com/apsupp/roles.pdf,

1997

[26] A.C.B Garcia, A Lopes, C Bentes,―Electronic Auction with autonomous

intelligent agents: Finding opportunities by being there‖, Inteligencia Artificial,

Revista Iberoamericana de Inteligencia Artificial, 2001

[27] D Gelernter ―Generative Communication in Linda.‖ ACM Transactions on

ProgrammingLanguages and Systems, 7(1):80–112, 1985

[28] Jade, http://jade.tilab.com

[29] N.R Jennings and M Wooldridge, ―Agent-Oriented Software Engineering‖,

Proceedings of the 9th MAAMAW-99, 2000

Trang 7

[30] R.C King, V Sethi, ―The impact of socialization on the roles adjustment of

information systems professionals,‖ J Manage Inf Syst., vol 15, no 4, pp

195–217, Spring 1998

[31] S Kraus, ―Automated Negotiation and Decision Making in Multiagent

Environments‖, the 9th ECCAI Advanced Course ACAI, 2001

[32] J Murdoch, J A McDermid, ―Modeling engineering design process with role

activity diagrams,‖ Trans Soc Des Process Sci., vol 4, no 2, pp 45–65, Jun,

2000

[33] J Mylopoulos, M Kolp, J Castro, ― UML for Agent-Oriented Software

Development: The Tropos Proposal‖, 2001

[34] J Odell, H.V.D Parunak, M Fleischer, ―The Role of Roles in Designing

Effective Agent Organization‖, Lecture Notes on Computer Science volume

2603, Springer, Berlin, 2003

[35] M.A Ould, Business Processes: Modeling and Analysis for Re-Engineering and

Improvement Hoboken, NJ: Wiley, 1995

[36] G.A Papadopoulos, ―Models and Technologies for the Coordination of

Internet Agents: A Survey‖, 2000

[37] C.F.G Parr, P Morrow, ―A Comparison of Mobile Agent and SNMP Message

Passing for Network Security Management Using Event Cases‖, 2006

[38] S Paurobally, J Cunningham, N.R Jennings, ―Developing Agent Interaction

Protocols Using Graphical and Logical Methodologies‖, 1st international

workshop on programming multi-agent systems, Melbourne, Australia, 2003

[39] I Rahwan,S.Ramchurn, N.R.Jennings, P McBurney,― Argumentation based

Negotiation‖,The Knowledge Engineering Review, 2004

[40] T Reenskaug, P Wold, O.A Lehne, ―Working with Objects — The OORAM ‖,

Software Engineering Method (Manning, Greenwich 1996)

[41] D Riehle, T Gross, ―Role model based framework design and integration,‖

ACM SIGPLAN Notices, vol 33, no 10, pp 117–133, Oct 1998

Trang 8

[42] T Skylogiannis, G Antoniou, N Bassiliades, ―A System for Automated Agent

Negotiation with Defeasible Logic-Based Strategies – Preliminary Repo‖,

Proceedings The 2005 IEEE International Conference on Volume, Issue, 2005

[43] F Steimann, ―A radical revision of UML’s role concepts,‖ in Proc UML, 2000,

pp 194–209

[44] F Steimann, “Role = Interface: A Merger of Concepts”, Journal of

Object-Oriented Programming, 2001

[45] K.P Sycara, ―Multiagent Systems‖, Publication of American Association of

Artificial Intelligence, 1998

[46] M Turoff, S R Hiltz, “The electronic journal: A progress report‖, J Amer

Soc Inf Sci., vol 33, no 4, 1982

[47] A Tveit, ―A survey of Agent-Oriented Software Engineering‖, 2001

[48] M VanHilst, D Notkin, ―Using role components to implement

based designs,‖ in Proc ACM Conf OOPSLA, San Jose, CA, 1996, pp 359–

369

[49] M Winikoff, "Designing Commitment-Based Agent Interactions,"

IEEE/WIC/ACM International Conference on Intelligent Agent Technology (IAT 2006 Main Conference Proceedings) (IAT'06), 2006

[50] M Wooldridge, ―An Introduction to Multiagent Systems”, Published by John

Wiley and Sons, 2002

[51] M Wooldridge, N R Jennings, D Kinny, ―The Gaia Methodology for

Agent-Oriented Analysis and Design‖, Journal of Autonomous Agents and

Multi-Agent Systems, Vol 3, No 3, pp 285-312, 2000

[52] L Yu, B.F Schmid, ―A conceptual framework for agent-oriented and

role-based workflow modelling‖, Proc 1st International Workshop on

Agent-Oriented Information Systems, G Wagner and E Yu eds., Heidelberg, June

1999

[53] L Zhao, E Kendall, ―Role modeling for component design,‖ in Proc 33rd

Hawaii Int Conf Syst Sci., 2000, p 8048

Trang 9

[54] H.Zhu, ―A Role Agent Model for Collaborative Systems‖, Proceedings of

International Conference on Information and Knowledge Engineering (IKE’03), USA, 2003

[55] H Zhu, M Zhou, P Seguin, ―Supporting Software Development With Roles‖,

System, Man and Cybernetics, Part A, IEEE Transactions on Publication, 2006

Ngày đăng: 25/08/2015, 12:05

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w