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

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]). 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. 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.  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. [6] D. Baumer, D. Ritchie, W. Siberski, M. Wulf, ―The Role Object Pattern‖, Proc. 4 th 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. [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. [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. [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 collaboration- 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. [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. . 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. 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, . 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

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