Tài liệu tham khảo công nghệ thông tin Kiến trúc phần mềm dựa trên agent
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Lê Thị Hồng Hạnh
KIẾN TRÚC PHẦN MỀM DỰA TRÊN AGENT
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
HÀ NỘI – 2010
Trang 2§
Trang 3ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Lê Thị Hồng Hạnh
KIẾN TRÚC PHẦN MỀM DỰA TRÊN AGENT
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin Cán bộ hướng dẫn: PGS.TS Nguyễn Việt Hà
HÀ NỘI – 2010
Trang 4LỜI CẢM ƠN
Lời đầu tiên em muốn gửi cảm ơn chân thành và sâu sắc tới thầy giáo, Phó Giáo
Sư, Tiến sĩ Nguyễn Việt Hà – Phó Hiệu trưởng trường Đại học Công Nghệ, người thầy
đã giúp em định hướng, có những kinh nghiệm quý báu về công nghệ Agent, thầy đãtận tình giúp đỡ em hoàn thành khóa luận
Em xin gửi lời cảm ơn đến thầy giáo, Thạc sĩ Đào Kiến Quốc đã giúp em hoànthiện và hiểu rõ các khái niệm, cách phân tích chương trình để hoàn thiện khóa luậnnày
Em cũng muốn gửi lời cảm ơn tới các thầy, cô giáo đã chỉ bảo trong suốt quátrình học tập tại trường Đại học Công Nghệ - Đại học Quốc Gia Hà Nội Cảm ơn bạn
Tạ Minh Tú, chị Nguyễn Thị Thu Hiền, những người đã cùng giúp đỡ, hợp tác nghiêncứu các bài toán, ứng dụng được trình bày trong khóa luận tốt nghiệp này
Ngoài ra, em muốn gửi lời cảm ơn đến các thầy giáo, cô giáo trong bộ môn Côngnghệ phần mềm, khoa Công nghệ thông tin, Trường Đại học Công nghệ, đã tạo điềukiện thuận lợi cho em trong quá trình học tập chuyên ngành và thực hiện khóa luận Cuối cùng con muốn cảm ơn đến cha mẹ, tới gia đình và bạn bè với tình yêuthương sâu sắc – những người đã hết sức ủng hộ, giúp đỡ và động viên con trong suốtquá trình học tập đã qua
Hà nội, ngày 18/05/2010
Sinh viên:
Lê Thị Hồng Hạnh
Trang 5TÓM TẮT
Hiện nay, khi Internet trở nên phổ biến và cần thiết, các hệ thống mở, phân tánđang được phát triển rộng rãi và hữu ích theo cùng Hướng phát triển các hệ thống nàychủ yếu được sử dụng theo mô hình Client –Server, mọi tính toán, yêu cầu đượcchuyển lên và thực hiện ở Server bên ngoài Internet Điều này đòi hỏi một băng thôngInternet lớn với chi phí cao Có các hướng giải quyết để phân tải mạng trên Server nhưphân tải mạng bằng các Server khác hay sử dụng Proxy Cache để lưu các kết quả tínhtoán, yêu cầu đã được thực hiện Khóa luận này sẽ giới thiệu một hướng phân tải mạngcho Server bằng cách sử dụng Proxy động được xây dựng dựa trên lý thuyết, các kiếnthức về kiến trúc xây dựng phần mềm dựa trên Agent – một hướng nghiên cứu pháttriển phần mềm mới được xem là tiếp theo của phương pháp hướng đối tượng
Trong mô hình này, các tính toán, yêu cầu được đóng gói thành các Agent, sau
đó được chuyển xuống Proxy, lưu giữ và thực thiện các tính toán Các agent này có thể
di chuyển, cập nhật cơ sở dữ liệu từ Server, lưu giữ các tính toán, thực hiện các tínhtoán này ngay trên Proxy khi có yêu cầu gửi đến nhằm giảm thiểu việc truy cập lênServer, cơ sở dữ liệu, và phân tải mạng cho Server Bên cạnh đó, sử dụng Proxy động
sẽ làm việc thực hiện các tính toán một cách nhanh chóng hơn do các tính toán ở gần
và cơ sở dữ liệu được lưu trữ sẵn trên Proxy, do đó tốc độ truyền dẫn thông tin và cáctính toán đã được lưu trữ sẽ tối ưu hơn so với khi Client yêu cầu tính toán nếu đượcgửi và thực hiện trên Server theo mô hình truyền thống
Trang 6MỤC LỤC
LỜI CẢM ƠN i
TÓM TẮT ii
MỤC LỤC iii
Chương 1 GIỚI THIỆU 5
1.1 Tổng quan kiến trúc phần mềm dựa trên Agent 5
1.2 Bài toán xây dựng mô hình phân tải mạng nhờ Proxy động dựa trên Agent 5
1.3 Nội dung và cấu trúc khóa luận 6
Chương 2 TỔNG QUAN VỀ AGENT 8
2.1 Agent phần mềm 8
2.1.1 Khái niệm Agent phần mềm 8
2.1.2 Kiến trúc tổng thể 9
2.2 FIPA (Foundation for Intelligent, Physical Agents) 9 2.2.1 Lịch sử FIPA 10
2.2.2 Truyền thông Agent (Agent Communication) 10
2.2.3 Quản lý Agent (Agent Management) 10
2.3 Nền tảng JADE 11 2.3.1 Khái niệm về JADE 11
2.3.2 Mô hình nền tảng JADE 12
2.3.3 Biên dịch và chạy trên nền tảng JADE 13
2.3.4 Dịch vụ di động liên nền (Inter - Platform) 16
2.3.5 Jade Gateway 17
2.4 Tổng quan về Mobile Agent 18 2.4.1 Khái niệm về mobile Agent 18
Trang 72.4.3 Ứng dụng của Mobile Agent 19
Chương 3 MÔ HÌNH PROXY ĐỘNG DỰA TRÊN AGENT 21 3.1 Giới thiệu chung về bài toán 21 3.2 Ý tưởng xây dựng mô hình 22 3.3 Giải pháp 22 3.4 Phân tích mô hình 23 3.4.1 Mô hình chung 23
3.4.2 Mô hình Client 24
3.4.3 Mô hình Server 24
3.4.4 Mô hình Proxy 25
3.5 Tổng kết 27 Chương 4 THỰC NGHIỆM 28 4.1 Mô tả chương trình 28 4.2 Thiết kế ứng dụng 29 4.3 Cài đặt và thực nghiệm 31 4.3.1 Cài đặt 31
4.3.2 Thực nghiệm 31 Chương 5 KẾT LUẬN 33
TÀI LIỆU THAM KHẢO 34
Trang 8Chương 1 GIỚI THIỆU
1.1 Tổng quan kiến trúc phần mềm dựa trên Agent
Trong những năm gần đây, sự phát triển mạnh mẽ của các công nghệ truyềnthông và Internet đã ảnh hưởng sâu rộng đến nhiều mặt của cuộc sống từ kinh tế, khoahọc đến văn hóa xã hội Cùng với sự phát triển lớn mạnh, không ngừng của Internet,đòi hỏi việc chia sẻ và tích hợp thông tin qua đường truyền giữa các máy với nhau, để
sử dụng cơ sở dữ liệu chia sẻ ngày càng nên phổ biến Điều này dẫn đến nhiều tháchthức với người phát triển phần mềm khi phải đối đầu với những yêu cầu về hệ phầnmềm phức tạp, mở và phân tán
Chúng ta đã được biết các cách phát triển phần mềm dựa trên cách cách tiếp cậnhướng cấu trúc, cách tiếp cận hướng đối tượng Phương pháp hướng đối tượng có ưuđiểm so với phương pháp hướng cấu trúc là khả năng sử dụng lại mã nguồn, dễ đọc mãnguồn và xử lý lỗi Đối với cách tiếp cận hướng đối tượng, hệ thống phần mềm đượcxem như tập các thực thể tương tác gọi là “đối tượng”, trong đó mỗi đối tượng đượcxác định bởi 3 yếu tố: Định danh, trạng thái, và hành vi Với cách tiếp cận hướng đốitượng, phần mềm được xây dựng dựa trên khái niệm đối tượng, các phương thức, quan
hệ giữa các đối tượng hướng giải quyết này có vẻ không đáp ứng được với các hệphần mềm mở, phân tán, phức tạp như là quản lý mạng viễn thông, thương mại điện
tử, tìm kiếm trích lọc thông tin
Là một hướng phát triển tiếp theo của phương pháp hướng đối tượng, cách tiếpcận hướng agent được xem là một công nghệ hứa hẹn cho phát triển của các hệ phầnmềm phức tạp này Ý tưởng cơ bản của hệ Phần mềm Agent là xem hệ phần mềm nhưmột cấu trúc xã hội bao gồm các agent có tính tự chủ về hành vi, về trạng thái, có khảnăng phản ứng nhận biết được môi trường, chủ động trong hành động và phản ứng, vàchúng có khả năng tương tác với nhau để đạt tới một mục đích chung của hệ thống.Phần trình bày về lý thuyết Agent sẽ làm rõ hơn các khái niệm và có cái nhìn tổngquan hơn về agent, cũng như sử dụng agent trong việc xây dựng phần mềm
1.2 Bài toán xây dựng mô hình phân tải mạng nhờ Proxy động dựa trên Agent
Hiện nay, các ứng dụng hệ thống phân tán, mở, phúc tạp thường được xây dựng
Trang 9bao gồm mã cài đặt dịch vụ và các tài nguyên để thực thi dịch vụ Khi có các yêu cầu
từ Client, các mã dịch vụ sẽ được thực thi trên tài nguyên dịch vụ và kết quả trả về choClient Tuy nhiên với lượng các yêu cầu tính toán gửi lên cho Server lớn thì vấn đềđường truyền mạng là một là một thách thức Mô hình Client –Proxy –Server là mộthướng giải quyết của vấn đề này Bài toán được đưa ra từ ý tưởng giảm tải mạng chocho Server nhờ Proxy động dựa trên các kiến thức về Agent, mobile Agent Ở đây cáctính toán sẽ được đóng gói thành các Agent được chuyển từ Server xuống Proxy khiđược yêu cầu Proxy sẽ lưu các tính toán này và trả về một cách nhanh chóng khi cóyêu cầu
Nền tảng được lựa chọn để phát triển hệ thống này là JADE (Java Agent DevelopFramework), nền tảng phát triển trên nền java, cung cấp cho người lập trình một nềntảng để tạo ra các Agent thực hiện các tính toán, di chuyển, truyền thông với nhau
1.3 Nội dung và cấu trúc khóa luận
Với nội dung trình bày những lý thuyết cơ bản về công nghệ Agent, xây dựng môhình phân tải mạng ở Server nhờ Proxy động dựa trên công nghệ Agent và cách ápdụng vào bài toán thực tế - phân tải mạng cho chương trình tìm kiếm thông tin sinhviên ở các trường Đại học Khóa luận được tổ chức theo cấu trúc như sau:
Chương 1: Giới thiệu
Giới thiệu sơ lược về tổng quan kiến thức về công nghệ Agent, lý thuyết Agent
và các kiến thức xây dựng phần mềm dựa trên Agent Bài toán xây dựng mô hình phântải mạng nhờ Proxy động được phân tích dưới khía cạnh sử dụng Agent đóng gói, đạidiện cho các tính toán là một hướng giải quyết khả thi cho việc giải quyết bài toánphân tải mạng Chương này giới thiệu những gì mà khóa luận nghiên cứu, từ đó thôngqua việc trình bày về nội dung và cấu trúc của khóa luận
Chương 2: Tổng quan về Agent
Chương hai đi vào giới thiệu một cách tổng quan nhất về Agent Cấu trúc và hoạtđộng của Agent, hệ đa Agent, mobile Agent, chuẩn FIPA, nền tảng JADE Với nhữngkiến thức cơ bản này, người đọc sẽ hiểu được phần nào cấu trúc, hoạt động cũng nhưnhững ưu nhược điểm của Phần mềm Agent từ đó có thể xây dựng, phân tích thiết kếđược mô hình phù hợp với từng bài toán
Chương 3: Mô hình phân tải mạng bằng Proxy động dựa trên Agent
Trang 10Chương này giới thiệu hiện trạng của việc phân tải mạng cho Server, nêu rahướng giải quyết sử dụng Proxy động được xây dựng dựa trên ý tưởng đóng gói cáctính toán bằng Agent Xây dựng mô hình Client – Proxy- Server, phân tích các môhình Client, mô hình Proxy, mô hình Server Qua đó xây dựng mô hình xử lý bài toán
và thiết kế chi tiết cho mô hình giảm tải mạng
Chương 4: Thực nghiệm
Trình bày thực nghiệm được phân tích ở chương 3, mô tả các bước thiết kế, càiđặt, kết quả thực nghiệm của chương trình quản lý đào tạo của trường đại học trong đóvấn đề tìm kiếm thông tin sinh viên là các tính toán được thực hiện thường xuyên từphía Client lên Server sẽ được đóng gói thành các Agent thực thi có thể di chuyểnxuống Proxy để giúp cho việc phân tải mạng
Chương 5: Kết luận
Chương này tổng kết lại những gì đã đạt được và chưa đạt được Từ đó nêu lênnhững kết quả hướng tới, hướng nghiên cứu và phát triển tiếp theo
Trang 11Chương 2 TỔNG QUAN VỀ AGENT
2.1 Agent phần mềm
Chương này sẽ trình bày khái niệm Agent phần mềm [1] [2] [3](SoftwareAgent), cấu tạo và đặc tính của nó cũng như các khái niệm liên quan như đặc tảFIPA[1] [4] của Agent, nền tảng thực thi JADE [1][5][6], và tìm hiểu về Agent diđộng (Mobile Agent) [7]
2.1.1 Khái niệm Agent phần mềm
Trong những năm gần đây, hướng tìm hiểu, nghiên cứu các ứng dụng của Agentphần mềm phát triển rất mạnh mẽ, đặc biệt là trong việc thiết kế và xây dựng các ứngdụng phân tán Có rất nhiều tranh luận về khái niệm Agent phần mềm, tuy là các cáchdiễn đạt khác nhau nhưng ở góc độ người dùng, có thể hiểu Agent phần mềm là:
Agent phần mềm là một chương trình có thể thực hiện công việc thay cho người dùng một cách độc lập sau khi được giao công việc
Các agent cần có môi trường để thi hành trong suốt thời gian tồn tại của chúng,chúng tương tác với môi trường thi hành cũng như hoạt động một cách không đồng bộ
và tự trị trong đó
Một ví dụ về mô hình phát triển phần mềm dựa trên Agent như trong dịch vụ dulịch, người sử dụng thường có nhiều yêu cầu khác nhau cho các gói du lịch của mìnhnhư vé máy bay, vé tàu, chỗ ở Do đó, thành phần phần mềm thay mặt người sử dụngcần phải tương tác, thương lượng với nhiều dịch vụ khác một cách tự động và sau đótích hợp kết quả gửi lại cho người sử dụng Mỗi thành phần như thế được hình dung là
một Agent.
Các đặc trưng cơ bản của Agent [1]:
Tính tự trị (autonomous): agent có thể tự kiểm soát các hành động của nó
sau khi được giao việc mà không cần sự can thiệp của người dùng hay cácagent khác Mỗi agent chứa một trạng thái nào đó của riêng nó, các agentkhác không thể truy cập được vào trạng thái này Agent tự quyết định cáchành động của mình dựa trên trạng thái hiện thời mà không cần sự tácđộng của con người hay các agent khác
Tính tự trị là đặc trưng quan trọng nhất của Agent
Trang 12 Khả năng phản ứng (reactivity): Tính phản ứng là khả năng agent có thể
nhận biết được môi trường (qua bộ phận cảm nhận nào đó) và dựa vàonhận biết đó, agent đáp ứng kịp thời những thay đổi xảy ra trong môitrường Phản ứng của Agent với môi trường bên ngoài đều hướng tới việcthực hiện mục tiêu của Agent đó
Tính chủ động (pro-activeness): Khi có sự thay đổi của môi trường, agent
không chỉ phản ứng một cách đơn giản mà nó còn xác định chuỗi cáchành động cần thực hiện, bản thân agent sẽ chủ động trong việc khởi động
và thực hiện chuỗi hành động này
Tính xã hội (Social ability): các agent không chỉ hướng tới mục đích riêng
cuản nó mà còn có khả năng tương tác với các agent khác trong hệ thống
để hướng tới mục đích chung của hệ thống Các hoạt động tương tác nàybao gồm phối hợp, cạnh tranh, thương lượng
2.1.2 Kiến trúc tổng thể
Kiến trúc Agent là một cơ chể cơ bản dựa trên các thành phần tự chủ, nó hỗ trợcác hành động tác động lên thế giới thực, các môi trường mở và động Trên thực tế,kết quả ban đầu của Agent tính toán nhằm vào việc phát triển kiến trúc các Agentthông minh, và những năm đầu tồn tại các kiểu thiết kế kiến trúc khác nhau, từ cáckiến trúc đơn giản về phản ứng hành động, điều khiển trong một mô hình kích thích –
trả lời, như là kiến trúc xếp gộp [8], cho đến các kiến trúc phức tạp hơn như là kiến trúc dựa trên sự tin tưởng vào mục đích (BDI-Belief Desire Intention) [9] Kiến trúc
phân lớp, tổng hợp giữa hai kiểu kiến trúc trên, bao gồm cả phản ứng hành động vàcác điểm mạnh của cả hai phương pháp trên Kiến trúc của Agent có thể được chiathành bốn nhóm chính: Nền tảng Logic, phản ứng hành động, BDI, và kiến trúc phânlớp
2.2 FIPA (Foundation for Intelligent, Physical Agents)
Phần này sẽ giới thiệu một cách tổng quát về lịch sử phát triển và nội dung chínhcủa đặc tả FIPA [2] Tập hợ đầy đủ các đặc tả FIPA có thể được tìm thấy trên trangweb chính thức của FIPA
JADE là sự thi hành của các đặc tả FIPA vì thế nó phụ thuộc lớn vào các ý tưởngđược đưa ra trong các đặc tả và được mở rộng theo những tài liệu đặc tả Tuy nhiên
Trang 13các đặc tả FIPA không được thể hiện hoàn toàn trong JADE do JADE có mở rộngthêm một số khu vực so với đặc tả.
2.2.1 Lịch sử FIPA
FIPA được thành lập năm 1996, được xem như là một tổ chức phi lợi nhuận quốc
tế với mục tiêu phát triển tập các chuẩn liên quan đến công nghệ phần mềm Agent.Các thành viên ban đầu, tập hợp các tổ chức nghiên cứu và công nghiệp, đưa ra một
tập các quy tắc hướng dẫn sản xuất của tập đặc tả chuẩn Pháp lý [10] (Chuẩn Pháp lý
được hiểu đối lập với chuẩn Thực tế, nó được tạo ra không phải bởi các cơ quan chuẩn
mà được đặt ra bởi các công ty) cho công nghệ phần mềm Agent Tại thời điểm đó,phần mềm Agent được biết đến rộng rãi trong giới khoa học nhưng lại ít được sự quantâm của các tổ chức thương mại Những người đứng đầu đã đồng ý cho sản xuất cácchuẩn có thể tạo ra một nền tảng cứng của một kỹ thuật mới bằng cách sử dụng chéomột lượng lớn các ứng dụng
Cốt lõi FIPA tuân theo tập các quy tắc:
1 Công nghệ Agent bao gồm một mô hình mới để giải quyết các vấn đề cũ vàmới
2 Các công nghệ Agent sẽ hướng tới mức độ hoàn thiện lớn hơn
3 Để sử dụng công nghệ Agent cần có đặc tả
4 Đặc tả của cơ chế bên trong các Agent không phải là mối quan tâm chính, mà
là cơ sở hạ tầng và ngôn ngữ yêu cầu cho khả năng phối hợp mở
2.2.2 Truyền thông Agent (Agent Communication)
Agent về cơ bản là hình thái của quá trình phân phối mã nguồn và do đó tuântheo khái niệm cổ điển của mô hình phấn phối tính toán theo hai phần: các thành phần
và các kết nối Các thành phần là những khách hàng, những nhà sản xuất và nhữngngười điều hành các thông điệp truyền thông thông qua kết nối Phần thân của cácchuẩn đầu tiên như là ISO hay IETF lựa chọn một cách tiếp cận hướng mạng trongviệc phát triển các cụm giao thức được phân lớp dựa phần lớn trên truyền thông máytính mà chúng ta đã biết như mô hình OSI, mô hình TCP/IP Cả hai đều được tận dụngthông qua giao tiếp giữa các phần mềm ứng dụng giao thức
Trang 142.2.3 Quản lý Agent (Agent Management)
Để bổ sung cho truyền thông, khía cạnh cơ bản thứ hai của hệ thống Agent đượctạo ra bởi đặc tả FIPA là quản lý Agent: một nền tảng chuẩn trong đó có các chuẩnFIPA cho Agent tồn tại, tổ chức và quản lý Nó thành lập các mô hình logic thamchiếu cho việc khởi tạo, đăng ký, xác định vị trí, di trú và tổ chức các Agent Mô hìnhtham chiếu quản lý Agent được mô tả theo hình:
Hình 2.1 Quản lý AgentCác thành phần của mô hình sẽ được giải thích chi tiết hơn trong phần trình bàytiếp theo về nền tảng của Agent
2.3 Nền tảng JADE
Phần này sẽ giới thiệu một cách tổng quan của nền tảng JADE [11][12] (JavaAgent DEvelopment Framework platfom) và các lý thuyết cơ bản về thành phần kiếntrúc của nó
2.3.1 Khái niệm về JADE
JADE (Java Agent DEvelopment Framework) là một framework phần mềm cho
hệ thống đa agent viết hoàn toàn bằng Java và được phát triển từ cuối năm 2001 Jadecho phép sự kết hợp giữa nhiều agent tuân thủ theo chuẩn FIPA và sử dụng ngôn ngữgiao tiếp theo chuẩn FIPA-ACL với cả SL và XML
Jade là một nền tảng cho hoạt động của các agent, nó hỗ trợ:
Trang 15- Là một nền tảng cho hệ phân tán của agent theo chuẩn FIPA, nó có tính diđộng, bảo mật và nhiều các tính năng khác.
- Giao diện người dùng của ứng dụng Java
- Là thư viện của các giao thức tương tác FIPA, được cung cấp sẵn, hỗ trợ giaotiếp của các agent trên những nền tảng giống hoặc khác nhau
- Có giao diện đồ họa người dùng để quản lý các agent từ cùng
- Có sẵn tại http://jade.cselt.it/
2.3.2 Mô hình nền tảng JADE
Hình 2.2 Mô hình nền tảng JADE
Hình trên mô tả kiến trúc của nền tảng JADE
Nó là 1 hệ kiến trúc phân tán bao gồm:
Nhiều máy
Nhiều tiến trình
Nhiều các Agent Container
Các Agent Container được hiểu là tiến trình java cho container, mỗi container sẽ
Trang 16nhiều container cho các agent, chúng có thể ở trong cùng một hệ thống máy tính hoặckhác hệ thống Các tập của các container với nhau được gọi là nền tảng Mỗi nền tảngphải có một Main – Container, các container khác đều phải đăng ký với Main-container khi chúng được đưa vào nền tảng
Hình 2.3 Mối quan hệ các thành phần trong JADE
Khi Main-container được khởi động, đi kèm theo nó là 2 agent đặc biệt:
AMS Agent: Hệ thống quản lý Agent (Agent Management system), mộtagent giám sát toàn bộ platform Nó là nơi để các agent đăng ký bao gồmcác dịch vụ như đặt tên, xác định tính duy nhất của tên agent, quản lývòng đời các agent
DF Agent: dịch vụ trang vàng trong JADE, nơi các agent đăng ký dịch vụcủa mình, ở đó một agent có thể tìm kiếm các agent khác có các dịch vụ
mà agent đó yêu cầu để thực hiện nhiệm vụ của agent
2.3.3 Biên dịch và chạy trên nền tảng JADE
Tất cả những phần liên quan đến JADE có thể được download từ website
http://jade.tilab.com Các phần mềm liên quan này được chia thành 2 phần: bản phân
Trang 17module thực thi các phần mở rộng riêng biệt như các mã hóa cho ngôn ngữ Các bảnnày được phát triển bởi các thành viên công đồng nguồn mở, chia sẻ những kiến thức
về JADE cho cộng đồng
Bản phân phối chính gồm năm file đã được nén lại với các nội dung sau:
jadeBin.zip bao gồm các file jar là nền tảng của JADE đã được dịch và đượcdùng sẵn
jadeDoc.zip chứa các tài liệu, bao gồm cá hướng dẫn cho Adminitrator vàProgrammer Tài liệu này cũng có sẵn trên website
JadeExamples.zip chứa mã nguồn của nhiều ví dụ
jadeSrc.zip chứa tất cả nguồn của JADE
jadeAll.zip chứa tất cả cả bốn file được liệt kê ở trên
Các file được down, giải nén sẽ được được chứa dưới dạng thư mục theo cấu trúcsau:
Hình 2.4 Cấu trúc thư mục Jade
Thư mục jade/lib chứa tất cả các file jar cần được khai báo vào javaCLASSPATH để chạy JADE.CLASSPATH được khai báo như sau:
Thiết lập biến môi trường: tạo tham biến mới JADE_HOME với giá trị là C:\jade – nơi đặt thư mục jade
Trang 18Sau đó có thể khởi động JADE với đồ họa bằng cách sử dụng lệnh:
prompt> java jade.Boot –gui
Màn hình hiện thị sẽ thành công khi hiện ra dòng lệnh thông báo :
Hình 2.5 Thông báo dòng lệnh khởi động Jade thành công
Và màn hình đồ họa:
Trang 19Hình 2.6 Màn hình đồ họa khởi động Jade
2.3.4 Dịch vụ di động liên nền (Inter - Platform)
Gói thư viện migration.jar được cộng đồng phát triển cho môi trường JADE bổsung, cung cấp gói thư viện hỗ trợ tính di động của Agent (Tính di động của Agent sẽđược trình bày tiếp ở phần sau)
Một agent bất kỳ có thể di chuyển từ container này sang container khác thôngtrong một platform thông qua dịch vụ di động agent là bên trong nền (Intra - Platform)được cung cấp bởi JADE Tuy nhiên muốn di chuyển liên nền (Inter - Platform) tức là
từ platform này sang platform khác, cần phải bổ sung thêm addon cho môi trường jade
là dịch vụ agent di động liên nền