TRUYỀN THÔNG GIỮA CÁC AGENT

Một phần của tài liệu Phát triển phần mềm hướng Agent (Trang 77 - 78)

Truyền thông giữa các agent có lẽ là tính năng cơ bản nhất của Jade và được thực hiện theo các đặc tả FIPA được mô tả trong Phần 1.2. Các mô hình truyền thông dựa trên truyền thông điệp bất đồng bộ. Như vậy, mỗi agent có một “hộp thư” (hàng đợi thông điệp của các agent), nơi Jade tại thời gian chạy gửi thông điệp được gửi đến bởi các agent khác. Bất cứ khi nào một thông điệp được gửi vào trong hàng đợi hộp thư thì agent được gửi thông điệp đó sẽ nhận được thông báo. Tuy nhiên khi nào, hoặc nếu, agent chọn lấy thông điệp từ hàng đợi để xử lý là do việc lựa chọn thiết kế của lập trình viên. Quá trình này được mô tả trong hình 3.6.

Các định dạng cụ thể của thông điệp trong Jade tương thích với định dạng được định nghĩa trong cấu trúc thông điệp FIPA-ACL được mô tả trong Phần 1.2.3. Mỗi thông điệp bao gồm các trường sau:

Người gửi thông điệp.

• Danh sách những người nhận.

• Những hành động giao tiếp (còn gọi là 'performative - biểu hiện') chỉ ra những gì người

gửi dự định đạt được bằng cách gửi thông điệp. Ví dụ, nếu hành động là một yêu cầu (request), tức là người gửi muốn người nhận thực hiện một hành động, nếu là thông báo (inform) tức là người gửi muốn người nhận biết một thông tin gì đó, nếu là một đề xuất (proposal) hay một yêu cầu được đề xuất (CFP) nghĩa là người gửi muốn tham gia vào một đàm phán.

Hình 3.6: Cơ chế truyền thông điệp không đồng bộ trong JADE

Nội dung có chứa các thông tin thực sự được trao đổi bằng thông điệp (ví dụ, hành động

được thực hiện trong một thông điệp YÊU CẦU, hoặc thực tế là người gửi muốn tiết lộ trong thông điệp THÔNG BÁO…).

Ngôn ngữ nội dung chỉ ra cú pháp được sử dụng để thể hiện nội dung. Cả người gửi và

người nhận phải có khả năng mã hóa và phân tích các biểu thức tuân thủ với cú pháp này

cho việc giao tiếp có hiệu quả.

• Các ontology chỉ ra vốn từ vựng của những biểu tượng được sử dụng trong nội dung. Cả người gửi và người nhận phải quy về cùng ý nghĩa như nhau với các biểu tượng này để việc giao tiếp có hiệu quả.

• Một số trường bổ sung được sử dụng để kiểm soát một số cuộc hội thoại đồng thời và để xác định những thời gian trễ khi nhận một trả lời như conversation – id, reply – with, in – reply – to và reply – by.

Một thông điệp trong Jade được thực hiện như là một đối tượng của lớp

jade.lang.acl.ACLMessage cung cấp các phương thức get và set để truy cập vào tất cả các trường

được đặc tả bởi định dạng ACL.Tất cả các performatives được định nghĩa trong đặc tả FIPA được ánh xạ như các hằng số trong lớp ACLMessage.

Một phần của tài liệu Phát triển phần mềm hướng Agent (Trang 77 - 78)