1. Trang chủ
  2. » Luận Văn - Báo Cáo

LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf

45 339 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Sử Dụng Mobile Agent Để Tích Hợp Thông Tin
Tác giả Tạ Minh Tú
Người hướng dẫn PGS.TS. Nguyễn Việt Hà
Trường học Đại Học Quốc Gia Hà Nội - Trường Đại Học Công Nghệ
Chuyên ngành Công Nghệ Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2010
Thành phố Hà Nội
Định dạng
Số trang 45
Dung lượng 0,94 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục tiêu chính của khóa luận đưa ra phương pháp tích hợp thông tin bằng cách sửdụng mobile agent và áp dụng phương pháp mẫu Visitor, mang xử lý đến gần nguồn dữliệu khai thác thông tin m

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Tạ Minh Tú

SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN

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

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Tạ Minh Tú

SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN

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 3

Tôi xin cảm ơn các bạn sinh viên lớp K51CD, K51CNPM trường Đại Học Côngnghệ, những người bạn luôn bên cạnh ủng hộ tôi trong suốt những năm học đại học.Cuối cùng con xin gửi tới bố mẹ và toàn thể gia đình lòng biết ơn và tình cảm yêuthương nhất.

Hà Nội, ngày 10/05/2010

Tạ Minh Tú

Trang 4

Tóm Tắt

Mobile Agent là một mô hình trong đó các tiến trình - được gọi là agent - có tính tự trị

và khả năng di động từ máy chủ này sang máy chủ khác để hoàn tất tác vụ Ý tưởng chủđạo của mobile agent là di chuyển xử lý đến gần nguồn dữ liệu, nhờ đó có thể giảm tảimạng, khắc phục tình trạng trễ, hỗ trợ xử lý không đồng bộ và tạo ra sự tưng thích mạnhtrên các môi trường không đồng nhất

Trong các ứng dụng phân tán phát triển theo mô hình client-server truyền thống, đểtích hợp thông tin từ nhiều nguồn dữ liệu khác nhau, các ứng dụng phải tạo kết nối tớinguồn dữ liệu đó và tải dữ liệu về xử lý Như vậy phải vận chuyển lượng thông tin nhấtđịnh trên đường truyền về nơi xử lý dó đó đường truyền cũng phải tải một lượng thôngtin đáng kể và dễ bị mất mát nếu đường truyền không tốt Thực tế phía nguồn dữ liệu cóthể không muốn cung cấp dữ liệu mà chỉ muốn cung cấp kết quả xử lý dữ liệu đó chophía yêu cầu Nếu việc tính toán kết quả được cung cấp bởi nguồn chứa dữ liệu thì dịch

vụ sẽ thiếu đi tính linh động do phía yêu cầu mong muốn những kết quả khác hơn

Mục tiêu chính của khóa luận đưa ra phương pháp tích hợp thông tin bằng cách sửdụng mobile agent và áp dụng phương pháp mẫu Visitor, mang xử lý đến gần nguồn dữliệu khai thác thông tin mà phía cung cấp dữ liệu vẫn kiểm soát được quá trình xử lý vàđảm bảo được tính linh động của hệ thống Do đó Server có được độ mềm dẻo tối đa vì

nó có thể thực hiện bất kì yêu cầu nào từ phía client mà vẫn đảm bảo được Client chỉbiết kết quả mà không biết nội dung thông tin để xử lý ra kết quả, phía client chỉ có tráchnhiệm chuyển các yêu cầu của mình thành mã để có thể thi hành trên Server

Trang 5

Mục lục

1.1 Đặt vấn đề 7

1.2 Mục Tiêu Và Phạm Vi Của Đề Tài 8

1.3 Cấu Trúc Khóa Luận 8

2 Tìm Hiểu Về Mobile Agent Và JADE 10 2.1 Khái niệm về Mobile Agent 10

2.1.1 Thế nào là Mobile Agent 10

2.1.2 Cấu tạo của mobile agent 10

2.1.3 Các đặc tính của mobile agent 11

2.2 Ứng dụng của mobile agents 12

2.2.1 Các lợi thế khi sử dụng mô hình mobile agents 12

2.2.2 Các lĩnh vực ứng dụng tiềm năng của mobile agents 13

2.3 FIPA (Foundation for Intelligent, Physical Agents) 14

2.3.1 Lịch sử FIPA 15

2.3.2 Các khái niệm cốt lõi 15

2.3.3 Truyền thông Agent (agent communication) 16

2.3.4 Quản lý Agent (Agent management) 16

2.4 Nền tảng JADE (JADE Platform) 16

Trang 6

M ỤC LỤC

2.4.1 JADE là gì 16

2.4.2 Kiến trúc JADE 17

2.4.3 Biên dịch và chạy trên nền tảng Jade 19

2.4.4 Giao tiếp giữa các JADE Agent 21

2.4.5 Dịch vụ di động liên nền (Inter-Platform) 23

2.4.6 JadeGateway 24

3 Sử Dụng Mobile Agent Để Tích Hợp Thông Tin 25 3.1 Mô tả bài toán 25

3.2 Ý tưởng 26

3.3 Các giải pháp 26

3.3.1 Giải pháp 1 26

3.3.2 Giải pháp 2 - áp dụng mẫu visitor 27

3.3.3 Các thành phần Client 30

3.3.4 Các thành phần Server 31

3.3.5 Hoạt động 31

3.4 Ý nghĩa của phương pháp 32

4 Thực Nghiệm 33 4.1 Mô tả và thiết kế bài toán 33

4.1.1 Thiết kế tổng thể 33

4.1.2 Thiết kế phía Client 34

4.1.3 Thiết kế phía Server 35

4.1.4 Hoạt động 35

4.2 Thực Nghiệm 37

4.2.1 Cài đặt thực nghiệm 37

4.2.2 Ý nghĩa của thực nghiệm 39

Trang 7

M ỤC LỤC

5.1 Kết quả thu được 405.2 Hướng nghiên cứu tiếp theo 41

Trang 8

Danh sách hình vẽ

2.1 Cấu trúc cơ bản của một mobile agent 11

2.2 Mối quan hệ giữa các thành phần kiến trúc chính của jade 17

2.3 Dịch vụ trang vàng 19

2.4 Cấu trúc thư mục jade 20

2.5 Quá trình khởi tạo môi trường thực thi jade 21

2.6 Giao diện quản lý agent JADE 22

2.7 Mô hình truyền thông điệp không đồng bộ giữa các agent 23

2.8 Di chuyển liên nền của mobile agent 24

2.9 Mô hình tương tác giữa servlet với agent thông qua JadeGateway 24

3.1 Mẫu Visitor 28

3.2 Cải tiến mẫu Visitor 29

3.3 Mô hình sử dụng mobile agent tích hợp thông tin áp dụng mẫu Visitor 30

4.1 Biểu đồ UML gói thiết kế web phía Client 34

4.2 Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client 35

4.3 Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client 36

4.4 Biểu đồ tuần tự của quá trình tích hợp thông tin 37

4.5 Kết quả tích hợp thông tin dùng visitor kiểu ComputeSalaryVisitor 38

4.6 Kết quả tích hợp thông tin dùng visitor kiểu ComputeSalaryVisitor1 39

Trang 9

Bảng 1: Bảng từ viết tắt

Trang 10

Các ứng dụng phân tán xây dựng chủ yếu dựa trên mô hình Client-Server Một ứngdụng được xây dựng trên nền tảng của sự kết hợp nhiều dịch vụ thành phần, mà mỗi dịch

vụ được cấu thành từ hai thành phần cốt lõi là : mã cài đặt dịch vụ và tài nguyên mà dịch

vụ đó thi hành (ví dụ CSDL, hệ thống tệp tin ) Để tích hợp thông tin từ nhiều nguồn

dữ liệu khác nhau, các ứng dụng phải tạo kết nối tới nguồn dữ liệu đó và tải dữ liệu về

xử lý Như vậy phải vận chuyển lượng thông tin nhất định trên đường truyền về nơi xử lýdẫn đến tỷ lệ thất thoát thông tin là cao và làm đường truyền phải tải nhiều hơn

Thực tế, có những thông tin nhạy cảm mà Server không thể cung cấp cho Client

và chỉ muốn cung cấp kết quả xử lý từ những thông tin đó Một giải pháp là phía Servercài đặt sẵn các dịch vụ và khi phía Client có yêu cầu, Server sẽ gọi dịch vụ truy cập vàoCSDL xử lý và trả lại kết quả cho Client Tuy nhiên, số dịch vụ cài đặt sẵn là có hạn mà

số yêu cầu phía Client luôn luôn thay đổi, do đó mặc dù vẫn bảo đảm được an toàn thôngtin song hệ thống thiếu đi tính mềm dẻo

Trang 11

C HƯƠNG 1: G IỚI T HIỆU

Bài toán đặt ra là đưa ra phương pháp tích hợp thông tin sao cho phía client chỉ biếtđược kết quả xử lý từ những thông tin mà Server không muốn Client biết và vẫn đảm bảođược tính mềm dẻo của hệ thống đồng thời làm giảm lượng thông tin vận chuyển trênđường truyền

1.2 Mục Tiêu Và Phạm Vi Của Đề Tài

Mục tiêu chính của khóa luận đưa ra phương pháp tích hợp thông tin bằng cách sửdụng mobile agent áp dụng phương pháp mẫu Visitor, mang xử lý đến gần nguồn dữ liệukhai thác thông tin mà phía cung cấp dữ liệu vẫn kiểm soát được quá trình xử lý đồngthời giảm tải lượng thông tin thô mà đường truyền phải tải và đảm bảo được tính mềmdẻo của hệ thống Do đó Server có được độ mềm dẻo tối đa vì nó có thể thực hiện bất kìyêu cầu nào từ phía client mà vẫn đảm bảo được Client chỉ biết kết quả mà không biếtnội dung thông tin để xử lý ra kết quả, phía client chỉ có trách nhiệm chuyển các yêu cầucủa mình thành mã để có thể thi hành trên Server

Trong phạm vi nghiên cứu của mình, đề tài sẽ đưa ra mô hình có khả năng thựchiện việc tích hợp thông tin nguồn dữ liệu sử dụng mobile agent sao cho vẫn đảm bảođược tính mềm dẻo của hệ thống và an toàn thông tin Ngoài những kết quả đó mô hìnhcòn đem lại các lợi ích to lớn khác như giảm tải, khắc phục độ trễ mạng, làm tăng tínhtoàn vẹn dữ liệu do một dữ liệu lớn không phải di chuyển trên đường truyền

1.3 Cấu Trúc Khóa Luận

Chương 2 giới thiệu về một số khái niệm lý thuyết và công nghệ được sử dụngtrong nghiên cứu và là cơ sở để xây dựng mô hình Chương này sẽ trình bày về hai kháiniệm chính là Agent và JADE Agent được sử dụng như là nền tảng để đưa ra ý tưởngthiết kế mô hình tích hợp thông tin JADE là một nền tảng được dùng để phát triển các

hệ thống Agent, trong nghiên cứu này, phần thực nghiệm được triển khai dựa trên nềntảng JADE

Chương 3 mô tả cụ thể về bài toán sử dụng mobile agent để tích hợp thông tin, vàđược miêu tả cụ thể từ ý tưởng ban đầu, giải pháp cụ thể cho đến mô hình chi tiết để giảiquyết bài toán Phân tích ý nghĩa thực tế của mô hình

Trang 12

C HƯƠNG 1: G IỚI T HIỆU

Chương 4 trình bày về cài đặt và thực nghiệm dựa trên mô hình đã đưa ra ở chương

3 Thực nghiệm này là một ứng dụng tích hợp thông tin, phía Client muốn thống kê một

số kết quả dựa trên danh sách lương nhân viên của một công ty, phía server chứa dữ liệu

về lương nhân viên song không muốn client biết được lương cụ thể của từng nhân viên.Chương 5 tổng kết những gì đã đạt được sau quá trình nghiên cứu, đồng thời đưa

ra những hạn chế cần phải cải thiện, từ đó đưa ra hướng nghiên cứu tiếp theo

Trang 13

CHƯƠNG 2

Tìm Hiểu Về Mobile Agent Và JADE

Trong chương này, chúng ta sẽ tìm hiểu về khái niệm mobile agent, các ứng dụng

và lợi ích khi áp dụng trong thực tế, cuối cùng là nền tảng JADE để phát triển agent

2.1 Khái niệm về Mobile Agent

2.1.1 Thế nào là Mobile Agent

Một mobile agent là một chương trình có khả năng di chuyển một cách tự trị từ nútmạng này sang nút mạng khác và thực hiện các xử lý thay thế cho con người để đạt đượcmục tiêu được giao phó Khi di chuyển, các mobile agent đóng gói mã nguồn, dữ liệu và

cả trạng thái thi hành, nhờ vậy mobile agent có thể dừng việc thi hành đang thực hiện tạimáy này, di chuyển sang máy khác và khôi phục lại sự thi hành tại máy đích

Di động là một trong các thuộc tính không bắt buộc của các agent, nghĩa là khôngphải tất cả các agent đều di động Một agent có thể chỉ nằm ở một chỗ và trao đổi vớimôi trường xung quanh theo các phương thức đã được quy ước

2.1.2 Cấu tạo của mobile agent

Cấu tạo của một mobile agent gồm 3 phần : mã, trạng thái và dữ liệu Mã sẽ đượcthực hiện khi agent di chuyển đến một máy khác Trạng thái là dữ liệu về môi tường chạycủa agent, gồm con đếm chương trình và ngăn xếp thực hiện Phần này chỉ có ở agent có

Trang 14

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

khả năng di động mạnh (strong mobility) Dữ liệu gồm các biến được sử dụng bởi agentnhư tri thức, định danh tệp tin

Hình 2.1: Cấu trúc cơ bản của một mobile agent

2.1.3 Các đặc tính của mobile agent

• Tính tự trị (autonomous): là khả năng tự kiểm soát bản thân của agent sau khi đượcgiao việc mà không cần sự can thiệp nào của người dùng hoặc của agent khác

Có nhiều hướng đánh giá về sự tự trị của agent Hai đặc tính hướng đích oriented) và tính chủ động (pro-activeness) thường được dùng để đánh giá mức độ

(goal-tự trị của agent Khả năng (goal-tự trị của agent chủ yếu được quyết định bởi tri thứctrang bị cho agent

• Tính di động (mobility): là khả năng di chuyển từ môi trường thi hành này sang môitrường khác khác của một agent Khả năng di động của một agent được phân thànhhai loại Di động mạnh (strong mobility) là khả năng mà hệ thống có thể di chuyển

cả mã chương trình và trạng thái thi hành của agent đến một môi trường khác Diđộng yếu (weak mobility) là khả năng của hệ thống chỉ có thể di chuyển mã chươngtrình giữa các môi trường thi hành với nhau, mã nguồn có thể mang kèm theo một

số dữ liệu khởi tạo nhưng trạng thái thi hành thì không thể di chuyển

• Tính thích ứng (reactiveness): là khả năng của agent có thể thực thi trên nhữngmôi trường lạ, và cảm nhận được sự thay đổi của môi trường Khả năng cộngtác(collaboration): là khả năng liên lạc, phối hợp hoạt động của các agent với cácagent của cùng môi trường khác hay với các loại đối tượng khác trong những môitrường khác

Trang 15

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

2.2 Ứng dụng của mobile agents

2.2.1 Các lợi thế khi sử dụng mô hình mobile agents

• Giảm tải mạng : Kỹ thuật mobile agents cho phép người dùng đóng gói cuộc traođổi, gởi nó đến máy đích và thực hiện xử lý dữ liệu, trao đổi cục bộ tại đó Như thế

sẽ góp phần làm giảm những dòng dữ liệu thô trên mạng ; và như thế, tải mạng sẽgiảm đáng kể Phương châm thực hiện của kỹ thuật mobile agents là: mang xử lýđến nơi chứa dữ liệu hơn là mang dữ liệu về chỗ xử lý

• Khắc phục sự trễ mạng : Việc điều khiển các hệ thống với quy mô lớn thông quamạng sẽ phải chấp nhận một sự trễ hạn nhất định Nhưng điều đó lại không đượcphép xảy ra trong các hệ thống thời gian thực như điều khiển robot, quy trình sảnxuất Khi đó, giải pháp mobile agents tỏ ra hữu ích trong việc khắc phục độ trễnhờ vào việc các agent có thể được gửi đi từ một trung tâm điều khiển và hànhđộng cục bộ, tự trị, trực tiếp thi hành các chỉ dẫn của người điều khiển

• Đóng gói các giao thức : Khi dữ liệu được trao đổi trong hệ thống phân tán, việctruyền và nhận dữ liệu phải được mã hóa bởi các giao thức cần thiết Các giao thứcnày được sở hữu bởi mỗi máy trong hệ thống Tuy nhiên, một khi các giao thứcphải tiến hóa để phù hợp với những yêu cầu mới về sự bảo mật hoặc tính hiệu quả,chúng bắt đầu trở nên cồng kềnh, nặng nề và trở thành vấn đề nan giải Riêng vớigiải pháp mobile agents, các agents có thể mang trên mình các giao thức thích hợp

và di chuyển tới các máy ở xa để thiết lập các kênh truyền nhận thông tin tươngứng

• Thi hành không đồng bộ và tự trị : Thông thường, các thiết bị di động thường phụthuộc vào các kết nối mạng đắt tiền nhưng rất yếu ớt Vì thế, những tác vụ cần cókết nối liên tục giữa thiết bị di động và mạng cố định có thể sẽ không có tính kinh

tế hoặc không khả thi về mặt kỹ thuật Giải pháp mobile agents giải quyết vấn đềnày bằng cách nhúng tác vụ cần thực hiện vào agent, rồi gửi lên mạng Sau khiđược gửi đi, agent trở nên độc lập thi hành không đồng bộ và có khả năng tự trị.Các thiết bị di động sau đó có thể kết nối trở lại để đón agent về

• Thích ứng nhanh : Các agent có khả năng cảm nhận những thay đổi của môi trườngthi hành và tác động trở lại những thay đổi ấy một cách tự động

Trang 16

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

• Khắc phục tình trạng không đồng nhất : Việc xử lý tính toán trên mạng cơ bản

là không đồng nhất vì sự đa dạng về phần cứng và phần mềm được sử dụng Domobile agent độc lập với máy tính (phần cứng và hệ điều hành) và tầng vận chuyển,chỉ phụ thuộc vào môi trường thi hành, nên chúng cung cấp một điều kiện tối ưucho việc liên kết các hệ thống không liên quan gì lại với nhau

• Mạnh mẽ và có khả năng chế ngự lỗi cao : Với khả năng phản ứng năng động vớicác sự kiện và những thay đổi bất lợi, mobile agents giúp cho việc xây dựng hệthống mạnh mẽ và chịu lỗi cao được dễ dàng hơn

2.2.2 Các lĩnh vực ứng dụng tiềm năng của mobile agents

Hiện nay, theo các nghiên cứu về agents, chưa có một ứng dụng nào có thể đượcxem như là ứng dụng đặc trưng (kill application) dành cho công nghệ mobile agents Vớitất cả những kết quả đạt được hiện nay với mobile agents, người ta cũng đều đạt đượcbằng những công nghệ truyền thống Tuy nhiên, trong một vài trường hợp, mobile agents

có thể là giải pháp tối ưu Mobile agents có thể được áp dụng trong nhiều lĩnh vực như:

• Thương mại điện tử : Các ứng dụng thương mại điện tử cho phép người dùng thựchiện các giao dịch trong kinh doanh trên mạng Một giao dịch có thể bao gồm sựthương lượng với các thực thể ở xa và có thể đòi hỏi truy cập nguồn thông tin liêntục thay đổi Từ thực tế đó nảy sinh nhu cầu thay đổi hành vi của các thực thể đểđạt được một nghi thức chung trong việc thương lượng Hơn nữa, việc di chuyểncác thành phần của ứng dụng tiến gần đến nguồn thông tin thích hợp cho giao dịchcũng được quan tâm Vì thế công nghệ mobile agents là một giải pháp rất hấp dẫncho lĩnh vực này

• Thu thập thông tin phân tán : Trong trường hợp có nhu cầu truy vấn phức tạp,chuyên biệt và liên qua đến nhiều nguồn dữ liệu phân tán, không đồng nhất, việc

cử các mobile agent di chuyển đến các nguồn tin để khai thác tại chỗ và cuối cùng

là quay về với những thông tin cần thiết sẽ cho phép giảm tải mạng và giải quyếttốt hơn bài toán tương thích

• Theo dõi và thông báo tin cập nhật : Ứng dụng cổ điển này làm nổi bật bản chấtkhông đồng bộ của các mobile agent Các agent có thể được gởi đi, đến nơi cónguồn tin và hoạt động theo dõi nguồn tin ngay cả khi người dùng ngắt kết nối

Trang 17

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

Sau đó, khi nguồn tin có sự thay đổi , agent sẽ quay về báo cho chủ nhân WeatherAlarm (University of Tromso) và JobFinder (findjobs.com), là một trong nh ữngđại diện của loại ứng dụng này Các agent có thể được gửi đi để chờ một dạng thôngtin nào đó xuất hiện, rồi sau đó báo cho người dùng biết hoặc tự nó có những hànhđộng thích hợp đối với thông tin đó

• Giám sát và phổ biến thông tin : Các mobile agents là một minh họa cho mô hìnhInternet push Các agent có thể phổ biến tin tức và cập nhật phần mềm tự động chocác nhà sản xuất Các agent mang các software components cũng như các thủ tụccần thiết đến các máy cá nhân của khách hàng và tự cập nhật phần mềm trên máy

đó Mô hình này giúp cho nhà sản xuất chủ động hơn trong việc phục vụ kháchhàng để bảo đảm chất lượng dịch vụ của mình Mặc khác, các ứng dụng thuộc loạinày cũng tỏ ra hiệu quả đối với các mạng cục bộ hay các chương trình quản lý quitrình hoạt động, sản xuất để giúp người quản trị giám sát các hệ thống con

• Xử lý song song : Vì các mobile agent có thể tạo ra nhiều bản sao của nó trênmạng, một ứng dụng đầy tiềm năng của mobile agent là quản trị các tác vụ songsong Một ứng dụng đòi hỏi quá nhiều tài nguyên bộ xử lý có thể được phân bố chocác mobile agent mang đi thực hiện trên nhiều máy tính khác nhau để tận dụng cáctài nguyên rảnh rỗi và cân bằng tải

• Quản trị hệ thống mạng : Đối với những hệ thống mạng lớn, việc chẩn đoán lỗi, duytrì sự ổn định của hệ thống là các công việc rất khó khăn Việc ứng dụng mobileagent vào việc quản trị mạng sẽ giúp cho các công việc chẩn đoán lỗi và duy trì từ

xa sự ổn định của hệ thống được dễ dàng hơn

• Hỗ trợ các thiết bị di động : Do đặc điểm tài nguyên hạn chế và không kết nốithường xuyên, việc xây dựng các ứng dụng dựa trên mobile agent với khả năng dichuyển đến các máy tính có cấu hình mạnh hơn để hoạt động (truy vấn cơ sở dữliệu, tìm tin ) rồi trả kết quả về sẽ là một giải pháp tốt cho người dùng các thiết

bị di động

2.3 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ác đặc tả FIPA Tập hợp đầy đủ các đặc tả của FIPA có thể được tìm thấy trên trang

Trang 18

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

web chính thức của FIPA

2.3.1 Lịch sử FIPA

FIPA được thành lập năm 1996 như là một tổ chức phi lợi nhuận quốc tế với mụctiêu phát triển tập hợp các chuẩn liên quan đến công nghệ phần mềm Agent Các thànhviên ban đầu, tập hợp của các tổ thức nghiên cứu và công nghiệp, đưa ra một tập hợp cácquy chế hướng dẫn sản xuất cho một tập hợp các đặc tả chuẩn de jure [2] dành cho côngnghệ phần mềm Agent Ở thời điểm này, các phần mềm Agent đã được biết đến rộng rãitrong giới khoa học nhưng nhận được rất ít sự quan tâ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ác chuẩn có thể tạo ra một nềntảng cứng của một kỹ thuật mới bằng cách sử dụng chéo một lượng lớn các ứng dụng.Cốt lỗi của FIPA sẽ theo tập hợp các nguyên lý:

• Các Công nghệ Agent cho phép một mô hình mới để giải quyết các vấn đề cũ vàmới

• Các công nghệ Agent sẽ tiến đến cấp độ trưởng thành lớn

• Để sử dụng được, các công nghệ Agent cần phải có đặc tả

• Đặc tả của công nghệ tiến hoá được đưa ra để hỗ cung cấp các kết quả thu đượcbởi đặc tả fora

• Đặc tả của cơ chế bên trong các Agent không phải 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.3.2 Các khái niệm cốt lõi

Trong suốt quá trình phát triển của FIPA, rát nhiều các ý tưởng liên quan đến Agent

đã được đưa ra Nhiều ý tưởng đã tiến tới việc thực hiện sau khi được đưa ra thành cácchuẩn, một vài ý tưởng vẫn đang được phát triển nhưng chưa hoàn thành, và có nhữngcái khác đã thật bại vì một hoặc nhiều lý do Trong tất cả các ý tưởng đó, những phầnquan trọng nhất là truyền thông Agent, quản lý Agent và kiến trúc Agent Phần này sẽgiới thiệu về hai trong số ba phần quan trọng nhất đó

Trang 19

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

2.3.3 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ân theokhá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ững ngườiđiều hành của các thông điệp truyền thông thông qua các 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 trong việcphát triển các cụm các giao thức được phân lớp dựa phần lớn trên truyền thông máy tínhchúng ta đã biết – mô hình OSI và mô hình TCP/IP Cả hai đều được tận dụng thông quagiao tiếp giữa các phần mềm ứng dụng giao thức

2.3.4 Quản lý Agent (Agent management)

Để bổ sung cho truyền thông, khía cạnh cơ bản thứ hai của các hệ thống Agentđược tạo ra bởi các đặc tả ban đầu của FIPA là quản lý Agent: một nền tảng chuẩn trong

đó các chuẩn FIPA cho Agent có thể tồn tại, tổ chức và quản lý Nó thành lập cá mô hìnhlôgíc tham chiếu cho việc khởi tạo, đăng ký, xác định vị trí, di trú và tổ chức các Agent

2.4 Nền tảng JADE (JADE Platform)

Phần này sẽ đưa ra cái nhìn tổng quan cơ bản về nền tảng JADE (Java AgentDevelopment framework) và các thành phần chính trong kiến trúc của nó

2.4.1 JADE là gì

JADE (Java Agent DEvelopment Framework) là một framework phần mềm đượccài đặt hoàn toàn bằng ngôn ngữ JAVA nhằm mục đích đơn giản hóa việc cài đặt các hệthống đa agent Môi trường JADE gồm có :

• Một môi trường thực thi được cài đặt trên máy để các agent có thể làm việc

• Một bộ công cụ cho phép theo quản lý và theo dõi hành vi của các agent đang hoạtđộng

Trang 20

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

• Thư viện lớp cho phép lập trình viên sử dụng (dùng trực tiếp hoặc kế thừa) để pháttriển các agent

2.4.2 Kiến trúc JADE

Hình 2.2: Mối quan hệ giữa các thành phần kiến trúc chính của jade

Hình 2.2 trên chỉ ra các thành phần chính của kiến trúc JADE platform JADEplatform bao gồm các container agent được phân phối trên mạng Mỗi một thể hiện củamôi trường thực thi JADE được gọi là một Container dùng để chứa các agent, agentsống trên các container, các container này cung cấp JADE run-time và tất cả các dịch

vụ cần thiết cho việc lưu và chạy các agent Có một container đặc biệt là main container(container chính) luôn chạy trên một platform và biểu diễn điểm chương trình khởi độngcủa một platform : nó là container đầu tiên khởi động và tất cả các container khác phảitham gia vào một main container bằng cách đăng kí với main container

Lập trình viên định danh các container bằng cách sử dụng một tên logic; mặc địnhmain container có tên là "Main Container" trong khi các container khác được đặt tên là

"Container-1", "Container-2",

Như một điểm khởi động của chương trình, main container có các nhiệm vụ đặcbiệt sau :

Trang 21

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

• Quản lý container table (CT), bảng này là đăng ký của các tham chiếu đối tượng

và địa chỉ vận chuyển của tất cả các node container của platform;

• Quản lý bảng mô tả agent toàn cục (global agent descriptor table – GADT), bảngnày là đăng ký của tất cả các agent hiện tại trong platform, gồm các trạng thái và

vị trí của nó

• AMS agent là một agent đặc biệt, cung cấp dịch vụ quản lý agent và white page

• DF agent cung cấp dịch vụ default yellow page của platform

Một truy vấn chung có thể là main-container hoặc một trở ngại của hệ thống trongthực tế điều này không phải là trường hợp khi JADE cung cấp một cache của GADT màmỗi container quản lý một cách cục bộ các thao tác Platform, trong trường hợp tổng quát,không bao gồm main-container, nhưng thay vào chỉ cache cục bộ và hai container lưugiữ agent, các agent này là đối tượng của thao tác (ví dụ : agent gửi và nhận của thôngđiệp) Khi một container phải tìm ra địa chỉ của agent nhận thông điệp được gửi, đầutiên container tìm kiếm bảng mô tả agent cục bộ LADT của nó (local agent descriptortable).bởi vì hệ thống là động (agent có thể di chuyển, kết thúc, hoặc agent mới có thểxuất hiện, thi thoảng hệ thống có thể sử dụng một giá trị cache sinh ra kết quả trong mộtđịa chỉ không hợp lệ Trong trường hợp này, container nhận một ngoại lệ và buộc phảilàm tươi cache của nó Quy ước thay thế bộ nhớ cache là LRU (Least recently used –

sử dụng gần đây ít nhất) , được thiết kế để tối ưu hóa các cuộc trao đổi dài hơn là thỉnhthoảng, các cuộc trao đổi thông điệp đơn giản thực tế ít có trong ứng dụng multi-agent.Định danh agent được chứa bên trong một Agent Identifier (AID), bao gồm mộttập các slot tuân theo cấu trúc và ngữ nghĩa được định nghĩa bởi FIPA Hầu hết thànhphần cơ bản của AID là tên của agent và địa chỉ của nó Tên của một agent là một địnhdanh duy nhất trong toàn cục được JADE xây dựng bằng cách nối với một nickname dongười dùng định nghĩa (cũng được biết đến như một tên cục bộ đủ để có nghĩa trong giaotiếp bên trong một platform (intra-platform) đối với tên của platform Địa chỉ của agent

là địa chỉ giao vận được kế thừa từ platform, nơi mỗi địa chỉ platform tương ứng với mộtgiao thức giao vận thông điệp (MTP – Message Transport Protocol) điểm cuối nơi màcác thông điệp FIPA có thể được gửi và nhận Lập trình viên agent cũng được cho phép

để thêm các địa chỉ giao vận của chính họ vào AID, cho một vài mục đích riêng của ứngdụng

Khi main-container khởi động, có 2 agent đặc biệt được khởi tạo và chạy bởi JADE,vai trò của chúng như sau

Trang 22

C HƯƠNG 2: T ÌM H IỂU V Ề M OBILE A GENT V À JADE

1 AMS agent : Hệ thống quản lý Agent (AMS – Agent Management System) là mộtagent giám sát toàn bộ platform Là điểm liên lạc cho tất cả các agent cần tương tác

để truy cập white pages của platform cũng như để quản lý vòng đời của nó Mọiagent được yêu cầu đăng ký với AMS (thực hiện một cách tự động bởi JADE lúcagent bắt đầu) để đạt được một AID hợp lệ

2 DF Agent:Dịch vụ trang vàng trong JADE (hình 2.3), tuân theo đặc tả quản lýAgent của FIPA, được cung cấp bởi một agent đặc biệt gọi là DF (Directory Facili-tator) Mọi platform theo chuẩn FIPA đều chứa một DF agent (tên cục bộ của agentnày là df<platform-name>) Một "yellow pages" – trang vàng cho phép agent công

bố các mô tả của một hoặc nhiều dịch vụ mà nó cung cấp để các agent khác có thể

dễ dàng tìm ra và khai thác một cách dễ dàng Xem hình mình họa ta có thể thấycác agent A1, A2, A3 đăng ký với DF agent các dịch vụ mình cung cấp, các agentA4, A5 tìm kiếm dựa vào DF agent và khai thác dịch vụ từ các agent A1, A2, A3

Hình 2.3: Dịch vụ trang vàng

2.4.3 Biên dịch và chạy trên nền tảng Jade

Tất cả các phần mềm liên quan đến JADE đều có thể tải về từ trang web chính thứccủa JADE Các phần mềm liên quan đến JADE có thể chia thành hai loại: bản phân phốichính và các bản phụ trợ Các bản phụ trợ trong mỗi bản riêng biệt đều có chứa các đơn

vị (module) thực thi các phần mở rộng riêng biệt như các mã hoá cho ngôn ngữ gọi làaddons

Bản phân phối chính bao gồm năm file đã được nén là:

Ngày đăng: 28/06/2014, 00:20

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Fabio Bellifemine, Giovanni Caire, Dominic Greenwood, Developing Multi- Agent Systems with JADE. John Wiley and Sons Ltd, 2007 Khác
[2] D. Kotz, R. S. Gray. Mobile Agents and the Future of the Internet. Operating Systems Review, 33(3):7-13, August, 1999 Khác
[4] Brown, P. and Rossak, W. Mobile Agents. Morgan Kaufmann Publishers and dpunkt.verlag, 2005 Khác
[5] D. Milojicic, Mobile agent applications, IEEE Concurrency, July-September 1999 Khác
[6] Picco, Understanding Code Mobility (Tutorial Session). In ICSE ’00: Proceed- ings of the 22nd International Conference on Software Engineering, 2000 Khác
[7] Rao AS and Georgeff M. BDI Agents: from Theory to Practice. In Proceedings of the 1st International Conference on Multi-Agent Systems, 1995, trang 312–319 Khác
[8] Russell, SJ and Norvig, P. Artificial Intelligence: a Modern Approach, 2nd edn.Prentice Hall, 2003 Khác
[9] White, JE. Telescript Technology: Mobile Agents. In Bradshaw Jeffrey, (ed), Software Agents, AAAI Press/MIT Press, 1996 Khác
[10] Wooldridge, MJ and Jennings, NR. Intelligent Agents: Theory and Practice.Knowledge Engineering Review, 1995, trang. 115–152 Khác
[11] Trần Hạnh Nhi, Lê Đình Duy, Bộ môn CNPM Khoa CNTT, Trường ĐH KHTN Tp.HCM. TỔNG QUAN VỀ MOBILE AGENTS Khác
[12] Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides , Design Pattern. Addison Wesley Longman, Inc Khác

HÌNH ẢNH LIÊN QUAN

Bảng từ viết tắt - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Bảng t ừ viết tắt (Trang 9)
Hình 2.1: Cấu trúc cơ bản của một mobile agent - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.1 Cấu trúc cơ bản của một mobile agent (Trang 14)
Hình 2.2: Mối quan hệ giữa các thành phần kiến trúc chính của jade - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.2 Mối quan hệ giữa các thành phần kiến trúc chính của jade (Trang 20)
Hình 2.3: Dịch vụ trang vàng - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.3 Dịch vụ trang vàng (Trang 22)
Hình 2.4: Cấu trúc thư mục jade - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.4 Cấu trúc thư mục jade (Trang 23)
Hình 2.6: Giao diện quản lý agent JADE - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.6 Giao diện quản lý agent JADE (Trang 25)
Hình 2.7: Mô hình truyền thông điệp không đồng bộ giữa các agent - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.7 Mô hình truyền thông điệp không đồng bộ giữa các agent (Trang 26)
Hình 2.9: Mô hình tương tác giữa servlet với agent thông qua JadeGateway - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.9 Mô hình tương tác giữa servlet với agent thông qua JadeGateway (Trang 27)
Hình 2.8: Di chuyển liên nền của mobile agent - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 2.8 Di chuyển liên nền của mobile agent (Trang 27)
Hình 3.1: Mẫu Visitor - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 3.1 Mẫu Visitor (Trang 31)
Hình 3.2: Cải tiến mẫu Visitor - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 3.2 Cải tiến mẫu Visitor (Trang 32)
Hình 3.3: Mô hình sử dụng mobile agent tích hợp thông tin áp dụng mẫu Visitor - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 3.3 Mô hình sử dụng mobile agent tích hợp thông tin áp dụng mẫu Visitor (Trang 33)
Hình 4.1: Biểu đồ UML gói thiết kế web phía Client - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 4.1 Biểu đồ UML gói thiết kế web phía Client (Trang 37)
Hình 4.2: Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 4.2 Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client (Trang 38)
Hình 4.3: Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client - LUẬN VĂN:SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN pdf
Hình 4.3 Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client (Trang 39)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm