Kĩ thuật lập trình - Java agent development framework
Others
Package jade.content
Package jade.mtp
Package jade.gui
Package jade.proto
Package jade.tools
6 trang |
Chia sẻ: huyhoang44 | Lượt xem: 673 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Kĩ thuật lập trình - Java agent development framework, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1(c) SE/FIT/HUT 200x
Java Agent Development
Framework
what it is and what it is next ?
site:
(c) SE/FIT/HUT 200x 2
CÁC VẤN ĐỀ
1. Khái niệm về Jade
2. Cấu trúc của Jade platform
3. Chuẩn FIPA
4. Một số lớp quan trọng trong thư viện Jade
5. Các hướng phát triển mới được Jade hỗ trợ
(c) SE/FIT/HUT 200x 3
1. Các khái niệm về Jade
Jade là phần mềm dạng middle-ware phục vụ
cho việc phát triển MAS.
Hỗ trợ việc xây dựng từng Agent trong hệ MAS.
Cung cấp các dịch vụ cho hoạt động của Agent:
• life-cycle, white-page, yellow-page, message
transport, message encoding
Cung cấp các tools phục vụ cho việc debug:
• remote monitoring agent, sniffer agent,
Yêu cầu xây dựng Agent dựa trên chuẩn FIPA.
(c) SE/FIT/HUT 200x 4
1. Các khái niệm về Jade (tiếp)
Jade được xây dựng hoàn toàn trên ngôn ngữ
Java
Đòi hỏi môt trường JDK 1.2 trở lên
Có thể hoạt động phân tán trên nhiều máy(Không
nhất thiết cùng hệ điều hành)
Jade là một hệ mở và mã nguồn mở
(c) SE/FIT/HUT 200x 5
2. Cấu trúc của Jade platform
2.1 Cấu trúc phân tán của Jade platform
Platform Jade là môi trường hỗ trợ Agent hoạt
động, trao đổi thông tin
Platform Jade chứa nhiều container, các container
khác có thể hoạt động độc lập trên các host khác
nhau.
Có hai loại container:
• Jade main-container: mỗi platform chỉ có một
main-container.
• Jade Agent-container: một platform có thể có nhiều
Agent-container.
(c) SE/FIT/HUT 200x 6
Cấu trúc phân tán của Jade platform
Network protocol stack
JRE 1.2 JRE 1.2 JRE 1.2
Jade Main-container
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
host1.it host2.jp host3.us
Jade Agent Container Jade Agent Container
Jade distributed Agent Platform
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
A
pp
lic
at
io
n
A
ge
nt
2(c) SE/FIT/HUT 200x 7
2.1 Cấu trúc phân tán của Jade platform(tiếp)
a. Tìm hiểu về Jade main-container
Container này được khởI tạo cùng vớI Jade
platform, và chỉ bị huỷ bỏ khi huỷ platform.
Chứa một số Agent quan trọng của Jade platform:
• RMA(Remote Management Agent): hoạt động như một
màn hình điểu khiển, phục vụ cho việc qlý platform.
command line: java Jade.Boot –platform –gui
• DF(Directory Facilitator): là một Agent cung cấp dịch
vụ yellow-page trong platform.
• AMS(Agent Managemrnt System): là Agent theo dõi
và quản lý sự truy cập và sử dụng Agent Platform.
• Cung cấp dịch vụ white-page.
(c) SE/FIT/HUT 200x 8
2.1 Cấu trúc phân tán của Jade platform(tiếp)
Tìm hiểu về Jade Agent-Container
Chứa các Agent của ngườI sử dụng
Commad line:
java jade.Boot –container
Các container có thể nằm trên các host khác
nhau, nếu có opption : -host trong commad line.
java jade.Boot –host [host’s Name/ IP]
(c) SE/FIT/HUT 200x 9
2.2 Cấu trúc run-time của Jade
Intra-Container
Message Transport
(Java events)
White page
service
Agent
Management
System
Yellow page
service
Directory
Facilitator
Agent Communication Channel
Inter-Containers
Message Transport
(Java RMI)
Inter-Platforms
Message Transport
(IIOP, HTTP, )
cache of
agent addresses
(c) SE/FIT/HUT 200x 10
2.3 Hoạt động của Jade Platform
Cấu trúc chuẩn của Agent platform (FIPA)
(c) SE/FIT/HUT 200x 11
2.3 Hoạt động của Jade Platform (tiếp)
2.3.1 Các dịch vụ cần cho hoạt động của Jade platform
a. White-page service
Quản lý việc đăng ký của Agent
Quản lý AID của các Agent đã đăng ký
Quản lý vòng đờI của Agent
b. Yellow-page service
Quản lý việc giao tiếp giữa các Agent
Điều phốI luồng thông tin trao đổI
c. Message Transport System
Là hệ thống phục vụ việc giao tiếp giữa các Agent
(c) SE/FIT/HUT 200x 12
2.3.1 Các dịch vụ cần cho hoạt động của Jade
(tiếp)
c. Message Transport System (tiếp)
Còn được gọI là ACC (Agent communication
channel)
Là một thành phần thực hiện việc truyển và
nhận các message giữa các Agent, thuộc cùng
platform hay các platform ở xa.
Các message được lưu trữ trong queue cho đến
khi Agent nhận gọi phương thức receive();
3(c) SE/FIT/HUT 200x 13
3. Chuẩn FIPA
Foundation for Intelligent Physical Agents
Do một tổ chức phát triển lên (1996, Thụy
Sỹ), hiện nay có khoảng 65 công ty thành
viên.
Việc phát triển ứng dụng dựa trên chuẩn FIPA
giúp ta có thể tái sử dụng các thành phần một
cách dễ dàng.
(c) SE/FIT/HUT 200x 14
3. Chuẩn FIPA (tiếp)
Chuẩn FIPA vớI công nghệ Agent:
Quy định cấu trúc và hoạt động của Jade
Platform.
Định nghĩa ngôn ngữ giao tiếp giữa các Agent,
ngôn ngữ ACL.
Cung cấp các dịch vụ của platform.
(c) SE/FIT/HUT 200x 15
Định nghĩa Agent Platform (FIPA)
Agent Platform
Service
White page service
Life cycle Management
Agent-Software Integration
Ontology Service
Human Agent Interaction
provides
Yellow page service
Message Transport service
Normative services Optional services
(c) SE/FIT/HUT 200x 16
4. Một số lớp quan trọng trong thư viện Jade.
Package jade.core
Implements the kernel of the system
Includes Agent class must be extend by AP
Contains jade.core.behaviour sub-package
implement the task of Agent
(c) SE/FIT/HUT 200x 17
4. Một số lớp quan trọng trong thư viện Jade
Package jade.lang.acl
Process Agent Communication Language
according to FIPA standard specification
(c) SE/FIT/HUT 200x 18
4. Một số lớp quan trọng trong thư viện Jade.
Package jade.domain
Represent Agent management entities defined
by FIPA standard
Provide some services: life-cycle, yellow page,
white page .
4(c) SE/FIT/HUT 200x 19
4. Một số lớp quan trọng trong thư viện Jade.
Package jade.wrapper
Provides wrapper of the JADE higher-level
functionalities
Allow the usage of Jade as a library whether
external Java app launch JADE agents and agent
containers
(c) SE/FIT/HUT 200x 20
4. Một số lớp quan trọng trong thư viện Jade.
Others
Package jade.content
Package jade.mtp
Package jade.gui
Package jade.proto
Package jade.tools
(c) SE/FIT/HUT 200x 21
4. Một số lớp quan trọng trong thư viện Jade.
4.1. Lớp jade.core.Agent
Cung cấp phương thức đăng ký vớI platform.
Cung cấp các phương thức xác định trạng thái
của Agent, quản lý trạng thái.
Cung cấp các phương thức hoạt động khác của
Agent
(c) SE/FIT/HUT 200x 22
4. Một số lớp quan trọng trong thư viện Jade.
(c) SE/FIT/HUT 200x 23
4. Một số lớp quan trọng trong thư viện Jade.
Methods
doStart(): initiate active
doMove(): active transit
doClone(): active copy
doWake(): waiting active
doActive(): suspended active, waiting
(c) SE/FIT/HUT 200x 24
4. Một số lớp quan trọng trong thư viện Jade.
Họat động của Agent
Đặt tên AMS active setup
destroy
5(c) SE/FIT/HUT 200x 25
4. Một số lớp quan trọng trong thư viện Jade.
Package jade.core.behaviour
Bao gồm các lớp cho phép tạo ra các hoạt động
của Agent từ đơn giản đến phức tạp
Ta có thể tạo ra hành động cho Agent bằng việc
kế thừa các lớp này
• Cài đặt phương thức Action()
Agent.addBehaviour(Behaviour)
(c) SE/FIT/HUT 200x 26
4. Một số lớp quan trọng trong thư viện Jade.
Gồm một số lớp chính sau
Behaviour
SimpleBehaviour
OneShotBehaviour
CyclicBehaviour
CompositeBehaviour
(c) SE/FIT/HUT 200x 27
4. Một số lớp quan trọng trong thư viện Jade.
SequentialBehaviour
ParallelBehaviour
FSMBehaviour
SenderBehaviour
ReceiverBehaviour
WakerBehaviour
(c) SE/FIT/HUT 200x 28
4. Một số lớp quan trọng trong thư viện Jade.
Class ACLMessage
Biểu diễn thông điệp ACL trao đổi giữa các
Agent
Các thuôc tính trong ACL message obj có thể
truy cập thông qua các pt get/set
Hỗ trợ khả năng reply
.
(c) SE/FIT/HUT 200x 29
4. Một số lớp quan trọng trong thư viện Jade.
Cách tạo Agent
public class MyAgent extends Agent
{
// some attributes
public void setup()
{
// registry with AMS..
// other activities
addBehaviour(myBehaviour)
}
// other methods
}
(c) SE/FIT/HUT 200x 30
4. Một số lớp quan trọng trong thư viện Jade.
Cách tạo behaviour
public class MyBehaviour extends Behaviour
{
// some attributes
public MyBehaviour(Agent agent){super(agent)}
public void action()
{
// agent action
}
// other methods
}
6(c) SE/FIT/HUT 200x 31
5.JADE Tools
(c) SE/FIT/HUT 200x 32
5.JADE Tools
(c) SE/FIT/HUT 200x 33
5.JADE Tools
(c) SE/FIT/HUT 200x 34
5.JADE Tools
Các file đính kèm theo tài liệu này:
- l10_case_jade_3265_5543.pdf