Nhiệm vụ chính của pha này là mô tả bài toán thông qua các biểu đồ use cases và scenario có dạng tương tự như trong phân tích hướng đối tượng. Các biểu đồ này giúp chúng ta hiểu rõ các yêu cầu phi hình thức của hệ thống và kiểm tra hệ thống về sau. Mỗi thành phần tham gia vào các use case và biểu đồ tuần tự được gọi là một role.
1.5.3 Pha phân tích
Mục đích của pha phân tích là đặc tả các yêu cầu của hệ thống vào trong các mô hình được chỉ ra trong phần 1.5.1 trừ mô hình thiết kế. Quá trình xây dựng các mô hình này được mô tả ngắn gọn như sau.
Xây dựng Mô hình agent
Các agent sẽ được xác định theo các chiến lược sau:
- Phân tích các thành phần tham gia vào các use case đã xác định trong pha khái niệm hoá để nhóm các role tương tự nhau vào trong một agent nhằm đơn giản hoá các trao đổi, liên lạc trong hệ thống.
- Phân tích các câu trong mô tả bài toán để tìm ra các chủ ngữ là các đối tượng chủ động và gán chúng thành các agent. Các hành động của các chủ ngữ này sẽ trở thành đích của agent nếu như hành động đó do agent khởi tạo, và sẽ trở thành dịch vụ của nó nếu như hành động đó được thực hiện theo yêu cầu bên ngoài.
- Sử dụng chiến lược heuristics: các agent sẽ được xác định thông qua các khái niệm về khoảng cách như: sự phân tán tri thức, phân tán về địa lý, phân tán về mặt logic hoặc phân tán về tổ chức.
- Sử dụng mô hình chuyên gia để xác định các chức năng và các yêu cầu về năng lực xử lý tri thức, thông qua đó để định nghĩa các agent.
- Sử dụng thẻ CRC và kỹ thuật RDD giống như trong thiết kế hướng đối tượng.
Xây dựng Mô hình Task
Các task được xác định theo cách tiếp cận từ trên xuống và được biểu diễn theo dạng hình cây. Mô tả một task bao gồm tên của task, đầu vào và đầu ra của task, cấu trúc của task, các điều kiện thực hiện, …
Mô hình này giúp người phát triển hệ thống dễ dàng quản lý các thay đổi trong các bước còn lại của pha phân tích cũng như trong pha thiết kế.
Xây dựng Mô hình phối hợp
Mô hình phối hợp được xây dựng theo 2 pha:
- Định nghĩa các kênh truyền thông giữa các agent và xây dựng một bản mẫu (prototype).
- Phân tích các tương tác và chỉ ra các tương tác phức tạp cùng với các giao thức phối hợp tương ứng.
Mỗi pha bao gồm một loạt các bước nhỏ, trong đó sử dụng các ký hiệu theo MSC (Message Sequence Chart), SDL (Specification and Description Language) hoặc biểu diễn thông qua các cấu trúc tri thức (tham khảo thêm trong [21]).
Xây dựng Mô hình tri thức
Người phát triển sẽ sử dụng mô hình chuyên gia để mô hình hoá khả năng lập luận của các agent trong việc thực hiện các task và hướng tới đích của nó. Ở đây chỉ có một số mô hình chuyên gia được xây dựng nhằm mô hình hoá khả năng lập luận trong miền tri thức và mô hình hoá khả năng suy luận của agent.
CHƯƠNG 1: HỆ ĐA AGENT 27
Mô hình chuyên gia biểu diễn các tri thức ứng dụng (bao gồm tri thức miền, tri thức lập luận, và tri thức tác vụ) cùng với tri thức giải quyết bài toán. Quá trình xây dựng mô hình tri thức sẽ lần lượt xem xét và biểu diễn các tri thức ứng dụng và các tri thức giải quyết bài toán.
Xây dựng Mô hình tổ chức
Tương tự như trong CommonKADS, mô hình tổ chức trong MAS-CommonKADS cũng được xây dựng để biểu diễn các mối quan hệ tĩnh hoặc được cấu trúc hoá giữa các agent (trong khi mô hình phối hợp biểu diễn các mối quan hệ động).
Mô hình tổ chức cũng sử dụng tập ký hiệu theo OMT nhưng với ngữ nghĩa thay đổi cho phù hợp với hệ đa agent.
1.5.4 Pha thiết kế
Dựa trên tập các agent cùng với các mô hình đã được xây dựng trong pha phân tích, pha thiết kế sẽ tiến hành xây dựng mô hình thiết kế. Pha này bao gồm các bước nhỏ sau:
- Thiết kế kiến trúc mạng agent (agent network design) - Thiết kế agent (agent design)
- Thiết kế nền (platform design) Ta sẽ lần lượt xem xét từng bước này.
Thiết kế kiến trúc mạng agent
Bước này xác định cơ sở hạ tầng cho hệ đa agent bao gồm các điều kiện cần thiết về mạng, về tri thức và các sự phối hợp giữa các thành phần trong hệ thống. Các agent cũng sẽ được định nghĩa trên cơ sở hạ tầng của hệ thống phụ thuộc vào một số điều kiện cần thiết theo yêu cầu sau:
- Các điều kiện về mạng: bao gồm dịch vụ đặt tên agent, dịch vụ đăng ký, mức độ bảo mật, mã hoá và chứng thực, các giao thức truyền thông và ứng dụng...
- Các điều kiện về tri thức: bao gồm các ontology server, các bộ chuyển đổi ngôn ngữ mô tả tri thức...
- Các điều kiện về sự phối hợp giữa các thành phần trong hệ thống: bao gồm các giao thức phối hợp, các dịch vụ quản lý nhóm agent...
Kết quả của bước thiết kế kiến trúc mạng agent là các agent phải liên lạc được với nhau thông qua các giao thức tương tác và ontology của hệ thống.
Thiết kế Agent
Bước này xác định kiến trúc phù hợp nhất cho mỗi agent dựa theo các module: liên lạc với người dùng (user-communication), liên lạc giữa các agent (agent communication), năng lực xử lý và các dịch vụ của hệ thống.
Thiết kế nền
Bước này lựa chọn môi trường phát triển cho hệ đa agent và các phần cứng cần thiết cho hệ thống nếu cần.