Chương 1: Tổng quan về hệ đa agent mở 1.3 Mối quan hệ giữa role và mô hình tổ chức trong hệ đa agent mở 1.1 Vai trò của role trong thiết kế hệ đa agent mở Nhƣ đã trình bày trong phần 1.1, role là một khái niệm quan trọng khi xem xét hệ đa agent mở. Có thể hiểu role là tập hợp các chuẩn mực, mô tả, quy tắc và khái niệm cho hành vi của một con người hoặc một vị trí xã hội. Từ lâu, khái niệm role đã đƣợc sử dụng trong phát triển phần mềm nhƣ một công cụ cho các hoạt động cơ bản nhƣ: mô hình hóa hệ thống, phân tích thiết kế hệ thống, mô tả tƣơng tác, quản lý nguồn nhân lực. Trong phát triển phần mềm hƣớng đối tƣợng với UML , role đƣợc sử dụng để xây dựng tập hành vi mà đối tƣợng có thể áp đặt lên đối tƣợng khác, hoặc là thành phần trong biểu đồ cộng tác, hoặc dùng để mô tả các lớp giao diện.
Tuy nhiên, role không phải là khái niệm có vai trò quyết định trong phân tích và thiết kế hƣớng đối tƣợng. Trong phát triển hệ đa agent và đặc biệt là hệ đa agent mở, nhiều nghiên cứu khẳng định role là khái niệm có vai trò quyết định ([2. Theo Zambonelli ([3,4]), role đƣợc định nghĩa là tập các khả năng, hành vi mong đợi và tri thức mà agent có thể dùng đến khi cần. Có thể hiểu, role cung cấp tập khả năng mà agent có thể sử dụng trong quá trình hƣớng tới đích đƣợc thiết kế.
Xét trên quan điểm phát triển hệ thống, trong hệ đa agent đóng, role có thể đƣợc biểu diễn nhƣ một nhóm các tác vụ (task) cố định và các trách nhiệm đƣợc xác định trƣớc. Trong hệ đa agent mở, role có thể đƣợc gán và thay đổi trong quá trình tƣơng tác giữa các agent. Việc một agent đảm nhận hay không đảm nhận một role là dựa trên khả năng và mục tiêu của agent đó trong quá trình thực thi của hệ thống. Các phƣơng pháp luận phát triển hệ đa agent mở, đã giới thiệu trong phần 1.2, đều coi role là khái niệm quan trọng để tiến trình phát triển phần mềm.
Mỗi phƣơng pháp có thể quan tâm ở mức độ nào đó với các khái niệm nhƣ tổ chức, goal, protocol hay cài đặt hệ thống nhƣng đều rất coi trọng khái niệm role (xem Bảng so sánh 1.1) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 15 Chương 1: Tổng quan về hệ đa agent mở Phương pháp Pha phân tích Pha thiết kế Cài đặt luận hệ thống Tổ Goal Role Agent Protocol Plan chức Tropos + + ++ ++ ++ ++++ ROADMAP +++ + +++ + +++ ++ +++ GaiA-EXOA +++ + +++ + +++ + + O-MaSE ++ +++ ++ ++ ++ +++ ++++ Bảng 1.1: So sánh các phương pháp luận cho hệ đa agent mở Luận văn sẽ đi sâu vào hai vấn đề quan trọng khi phát triển hệ đa agent mở dựa trên role là xây dựng mô hình biểu diễn role (chƣơng 2) và đƣa ra thuật toán gán role áp dụng cho một mô hình tổ chức cụ thể (chƣơng 3). Phần tiếp theo của chƣơng 1 sẽ khái quát các mô hình tổ chức nói chung và quan điểm về role và gán role cho agent trong các mô hình tổ chức đó.2 Role trong các mô hình tổ chức của hệ đa agent mở Dựa trên cấu trúc tổ chức xã hội con ngƣời, nhiều nhóm nghiên cứu khác nhau đã đƣa ra rất nhiều dạng tổ chức đa agent khác nhau. Sự khác biệt giữa các dạng tổ chức này là do bản chất tƣơng tác và vai trò của các agent tham gia trong tổ chức đó. Trong tài liệu [15], nhóm B.
Lesser đã tổng kết các dạng tổ chức đa agent. Phần này sẽ trình bày vắn tắt các kiểu tổ chức này theo các đặc trƣng chính và những suy nghĩ về vấn đề gán role cho các agent theo kiểu tổ chức đó. Tổ chức kiểu cây (Hierarchies) Đặc trƣng cơ bản của kiểu tổ chức cây là đƣợc xây dựng dựa trên cấu trúc phân rã của tập goal của hệ thống. Các agent tham gia vào hệ thống để đảm nhận các goal của hệ thống theo cách tiếp cận chia để trị.
Một đặc điểm quan trọng của kiểu tổ chức này là cố gắng giảm thiểu quan hệ “rộng rãi” giữa một agent với các LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 16 Chương 1: Tổng quan về hệ đa agent mở nhiều agent khác. Các agent chỉ quan hệ với các agent mức trên (node cha trong cây) và mức dƣới (node con trên cây). Các role đƣợc gán trong cấu trúc cây hoàn toàn theo cấu trúc phân rã goal và task trong hệ thống. Mỗi agent khi tham gia hệ thống đều có một tập khả năng tƣơng ứng với một vị trí nào đó trên cây và do đó sẽ đƣợc gán role tƣơng ứng để hƣớng tới goal đƣợc yêu cầu cho node đó Tổ chức Holarchies Đặc trƣng cơ bản của kiểu tổ chức này là hệ thống đƣợc chia thành các nhóm có tính chất tự chủ (ở mức độ nào đó) gọi là holon.
Một agent có thể thuộc một nhóm và một nhóm có thể thuộc một nhóm lớn hơn. Mỗi nhóm nhƣ vậy thƣờng gồm các agent cùng hƣớng đến việc thực hiện một tác vụ nào đó. Có thể xem kiểu tổ chức này là một trƣờng hợp riêng của tổ chức kiểu cây trong đó cho phép một số tƣơng tác giữa các node không có quan hệ cha con trực tiếp Gán role trong tổ chức Holarchies cũng dựa trên cấu trúc phân rã goal và task của hệ thống. Tuy nhiên, khác với cấu trúc cây, các role không thể tƣơng ứng với một node trên cây mà cần xem xét các tƣơng tác (ràng buộc) giữa các node.
Mỗi node cũng có thể là một hoặc nhiều agent trong cùng một nhóm. Tổ chức kiểu liên minh (coalition) Đặc trƣng cơ bản của kiểu tổ chức liên minh là một tập con các agent trong hệ thống có thể “liên minh” với nhau để hƣớng tới đích chung trong một thời gian. Trong một liên minh, có thể có agent lãnh đạo. Khi đã liên minh lại thì các liên minh tƣơng tác với nhau nhƣ những thực thể duy nhất.
Không có sự phối hợp giữa các agent của các liên minh khác nhau. Gán role cho tổ chức kiểu liên minh có thể đƣợc quyết định bởi agent lãnh đạo (nếu có). Tại thời điểm các agent phải liên minh, agent lãnh đạo hoặc agent điều phối chung sẽ xác định và phân chia role cho các agent tham gia để hƣớng tới đích chung. Tổ chức kiểu đội (team) Đặc trưng cơ bản của kiểu tổ chức đội (team) là các agent trong đội (team) có hành động riêng nhƣng cùng hỗ trợ để đạt tới đích chung.
Các agent có thể hoạt động theo một “kế hoạch chung” xác định trƣớc. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 17 Chương 1: Tổng quan về hệ đa agent mở Gán role trong mô hình tổ chức này có hai đặc trƣng cơ bản: Mỗi agent trong đội đều có thể nhận một hoặc nhiều role để thực hiện các tác vụ phân rã từ đích chung của hệ thống. Các role có thể thay đổi tuỳ theo kế hoạch chung của đội và sự kiện từ môi trƣờng. Tổ chức kiểu hội họp (congregation) Đặc trưng cơ bản của tổ chức kiểu hội họp là các agent riêng lẻ phối hợp với nhau theo nhóm nhằm bổ sung cho nhau.
Mỗi nhóm agent theo kiểu này thƣờng không chỉ có một goal mà có thể có nhiều goal khác nhau. Tuy nhiên, các agent này thƣờng phải có một tập khả năng và yêu cầu cố định ban đầu tƣơng tự nhau. Tổ chức kiểu hội họp có thể tồn tại lâu dài. Gán role trong tổ chức này sẽ có các đặc điểm: Các hội sẽ đƣợc tạo ra và gán nhãn.
Mỗi agent tuỳ thuộc vào tập khả năng và yêu cầu của nó sẽ xem xét để lựa chọn hội phù hợp. Role đƣợc gán cho các agent khi agent tham gia vào hội. Các agent có thể thay đổi hội mà nó tham gia trong quá trình hƣớng tới goal của nó. Do đó role cũng đƣợc thay đổi theo.
Tổ chức kiểu xã hội (societies) Đặc trưng cơ bản kiểu tổ chức xã hội là hệ thống đƣợc xây dựng có tính mở, linh động. Các agent có đích riêng rất khác nhau, khả năng không đồng nhất, tƣơng tác với nhau nhằm hƣớng tới đích riêng của mình. Kiểu tổ chức này ràng buộc các agent bằng cách sử dụng các luật xã hội. Gán role trong tổ chức kiểu xã hội có thể rất phức tạp và thƣờng không có quy tắc chung cho tất cả các trƣờng hợp.
Nếu có một hoặc một vài luật xã hội chi phối mọi hoạt động của tổ chức thì role cũng đƣợc gán cho agent dựa trên các luật xã hội đó. Tổ chức kiểu liên hiệp (federation) Đặc trưng cơ bản của kiểu liên hiệp là hệ thống có agent điều phối chung (facilitator, mediator, broker). Các agent trong liên hiệp chỉ tƣơng tác với agent điều phối này. Các liên hiệp khác nhau tƣơng tác với nhau thông qua tƣơng tác của LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 18 Chương 1: Tổng quan về hệ đa agent mở các agent trung gian.
Các agent trong các liên hiệp khác nhau có thể không cần có ngôn ngữ giao tiếp chung và tƣơng tác, xử lý đƣợc tập trung ở agent trung gian. Role đƣợc gán cho các agent tham gia vào liên hiệp bởi agent điều phối trong liên hiệp đó. Tùy thuộc vai trò của agent điều phối trong hệ thống cụ thể, các role có thể đƣợc quản lý trực tiếp bởi agent điều phối hoặc agent điều phối chỉ là trung gian để agent tham gia tổ chức tƣơng tác với agent quản lý role. Tổ chức kiểu chợ (market-based) Đặc trưng của tổ chức kiểu chợ khác với kiểu liên hiệp ở chỗ các agent trong hệ thống là đối thủ cạnh tranh của nhau.
Các agent hƣớng tới việc đạt đƣợc lợi ích riêng, có thể trái ngƣợc với lợi ích của các agent khác (ví dụ agent mua và agent bán). Tuy nhiên, các agent trong tƣơng tác sẽ hƣớng tới cân bằng chung của toàn bộ các agent tham gia. Gán role trong tổ chức kiểu chợ có thể sử dụng agent điều phối nhƣ trong mô hình kiểu liên hiệp hoặc dựa trên hàm mục tiêu của mỗi agent. Tổ chức kiểu ma trận Đặc trưng của kiểu ma trận là một agent có thể được quản lý bởi nhiều agent quản lý.
Các hoạt động của một agent có thể bị ảnh hƣởng bới nhiều agent quản lý khác nhau. Mỗi hàng trong ma trận là các agent, mỗi cột là các agent quản lý. Gán role và quản lý role đƣợc thực hiện bởi các agent quản lý tại mỗi hàng.