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

ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông

82 1,6K 0
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 đề Ứng Dụng Agent Phần Mềm Trong Tích Hợp Thông Tin Về Phương Tiện Giao Thông
Tác giả Nguyễn Thị Thúy Hằng
Người hướng dẫn 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 Luận Văn Thạc Sĩ
Năm xuất bản 2009
Thành phố Hà Nội
Định dạng
Số trang 82
Dung lượng 2,21 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Ở ĐẦUSự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tintrong nhiều lĩnh vực của đời sống, kinh tế xã hội trong nhiều năm qua cũng đồng nghĩavới lượng dữ liệu đã

Trang 1

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

-NGUYỄN THỊ THÚY HẰNG

ỨNG DỤNG AGENT PHẦN MỀM TRONG TÍCH HỢP THÔNG TIN VỀ PHƯƠNG TIỆN GIAO THÔNG

LUẬN VĂN THẠC SĨ

Hà Nội - 2009

Trang 2

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

-o0o -NGUYỄN THỊ THÚY HẰNG

ỨNG DỤNG AGENT PHẦN MỀM TRONG TÍCH HỢP THÔNG TIN VỀ PHƯƠNG TIỆN GIAO THÔNG

Ngành: Công nghệ Thông tin

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của riêng cánhân tôi, không sao chép lại của người khác Trong toàn bộ nội dung của luận văn,những điều đã trình bày là của cá nhân tôi hoặc là được tôi tổng hợp từ nhiều nguồn tàiliệu Tất cả các nguồn tài liệu tham khảo có xuất xứ rõ ràng và được trích dẫn hợppháp

Tôi xin chịu toàn bộ trách nhiệm và chịu mọi hình thức kỷ luật theo quy địnhcho lời cam đoan của tôi

Hà Nội, tháng 12 năm 2009

Nguyễn Thị Thúy Hằngi

Trang 4

LỜI CẢM ƠN

Lời đầu tiên tôi xin gửi lời cảm ơn chân thành nhất tới TS Nguyễn Việt Hà,Trưởng bộ môn Công nghệ phần mềm – khoa Công nghệ thông tin – Trường Đại họcCông nghệ - đã dành rất nhiều thời gian quí báu để tận tình hướng dẫn, chỉ bảo và địnhhướng cho tôi trong suốt thời gian hoàn thành luận văn

Tôi xin bày tỏ lòng biết ơn tới các thầy cô giáo Khoa Công nghệ thông tin Trường Đại học Công nghệ - ĐHQGHN đã truyền đạt cho em những kiến thức, kinhnghiệm quý báu trong suốt thời gian học tập tại trường Tôi xin gửi lời cảm ơn sâu sắctới các đồng nghiệp tại Trung tâm Công nghệ thông tin – Bộ Giao thông vận tải vàCục Hàng Hải đã hết sức tạo điều kiện thuận lợi cho tôi trong suốt quá trình học tập vàthực hiện luận văn

-Tôi xin chân thành cảm ơn bạn bè và gia đình tôi, những người thân yêu luônluôn ở bên khuyến khích, động viên và ủng hộ tôi trong học tập cũng như trong cuộcsống

Do thời gian và trình độ có hạn nên luận văn này không thể tránh khỏi nhữngthiếu sót Rất mong nhận được sự đóng góp ý kiến của các thầy cô giáo, bạn bè, cácquý vị quan tâm tới vấn đề này để luận văn được hoàn thiện hơn

Trân trọng cảm ơn!

Hà Nội, tháng 12 năm 2009

Nguyễn Thị Thúy Hằngii

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC CÁC CHỮ VIẾT TẮT v

DANH MỤC BẢNG BIỂU vi

DANH MỤC HÌNH VẼ vii

MỞ ĐẦU 1

Chương 1 Tổng quan về agent 3

1.1 KHÁI NIỆM AGENT 3

1.1.1 Định nghĩa Agent 3

1.1.2 Một số agent điển hình 4

1.2 HIỆN TRẠNG CÔNG NGHỆ AGENT 8

1.2.1 Hiện trạng sử dụng agent 8

1.2.2 Các kiểu ứng dụng agent hiện nay 10

1.2.3 Hiện trạng sử dụng công nghệ agent 11

1.3 CÁC VẤN ĐỀ CHÍNH CỦA CÔNG NGHỆ AGENT 12

1.3.1 Truyền thông giữa các agent 12

1.3.2 Quản lý vòng đời agent 14

1.3.3 Tính di động 15

1.4 ĐÁNH GIÁ MỘT SỐ AGENT PLATFORM 16

1.4.1 Giới thiệu 16

1.4.2 Các chuẩn agent 16

1.4.3 Khảo sát các tài liệu nghiên cứu về agent platform 17

1.4.4 Kết quả đánh giá các agent platform 19

1.4.5 Kết luận 26

Chương 2 Tích hợp thông tin 27

2.1 TỔNG QUAN VỀ TÍCH HỢP THÔNG TIN 27

2.1.1 Khái niệm tích hợp thông tin 27

2.1.2 Các mức độ tích hợp thông tin 27

2.1.3 Các phương pháp tích hợp thông tin 28

2.2 HỆ ĐA AGENT VÀ TÍCH HỢP THÔNG TIN 31

iii

Trang 6

2.2.1 Hệ đa agent 31

2.2.2 Mối quan hệ giữa hệ đa agent và tích hợp thông tin 32

2.2.3 Cấu trúc chung của hệ đa agent tích hợp thông tin 33

2.3 ONTOLOGY VÀ CÁC VẤN ĐỀ LIÊN QUAN 35

2.3.1 Khái niệm 36

2.3.2 Các thành phần của ontology 37

2.3.3 Phân loại ontology 38

2.3.4 Các công cụ phát triển Ontology 39

2.3.5 Các ngôn ngữ Ontology 41

2.4 MÔ HÌNH TÍCH HỢP THÔNG TIN DỰA TRÊN ONTOLOGY 42

2.4.1 Vai trò của Ontology trong tích hợp thông tin 42

2.4.2 Kỹ thuật xây dựng ontology trong tích hợp thông tin 46

Chương 3 Hệ thống tích hợp thông tin giao thông 50

3.1 BÀI TOÁN TÍCH HỢP THÔNG TIN GIAO THÔNG 50

3.1.1 Mô tả bài toán 50

3.1.2 Xây dựng các ontology hệ thống 51

3.2 JADE PLATFORM 61

3.2.1 Giới thiệu 62

3.2.2 Kiến trúc JADE 62

3.2.3 Ngôn ngữ truyền thông ACL 63

3.3 THỬ NGHIỆM HỆ THỐNG 63

3.3.1 BIÊN DỊCH VÀ CHẠY JADE PLATFORM 63

3.3.2 KẾT QUẢ THỬ NGHIỆM 66

KẾT LUẬN 71

TÀI LIỆU THAM KHẢO 72

iv

Trang 7

DANH MỤC CÁC CHỮ VIẾT TẮT

ACL Agent Communication Language

AIP Agent Interaction Protocol

BDI Belief – Desire – Intention

CSDL Cơ sở dữ liệu

FIPA Foundation for Intelligent Physical AgentJADE Java Agent Development Framework

JDK Java Development Kit

J2EE Java 2 Enterprise Edition

KQML Knowledge Query and Manipulation LanguageODBC Open Database Connection

OMG Object Management Group

SQL Structure Query Language

VPN Virtual Private Network

XML eXtensible Markup Language

WAN Wide Area Network

v

Trang 8

DANH MỤC BẢNG BIỂU

Bảng 1.1 So sánh mức độ bảo trì của các agent platform 2

Bảng 1.2 So sánh mức độ tích cực của các platform 2

Bảng 1.3 So sánh mức độ cập nhật của các platform 2

Bảng 1.4 So sánh mức độ phổ biến của các platform 2

Bảng 1.5 So sánh mức độ truy cập thông tin của các platform 2

Bảng 1.6 So sánh thời gian phát hành phiên bản mới nhất của các platform 2

Bảng 1.7 So sánh khả năng cung cấp phiên bản gọn nhẹ của các platform 2

Bảng 1.8 So sánh khả năng dùng sẵn của các platform 2

vi

Trang 9

DANH MỤC HÌNH VẼ

Hình 2.1 Sơ đồ hệ đa agent tích hợp thông tin tổng quát 2

Hình 2.2 So sánh các công cụ xây dựng Ontology 2

Hình 2.3 Cách tiếp cận đơn ontology 2

Hình 2.4 Cách tiếp cận đa ontology 2

Hình 2.5 Cách tiếp cận lai 2

Hình 2.6 Các bước xây dựng cấu trúc ontology 2

Hình 2.7 Các bước xây dựng dùng chung 2

Hình 3.1 Sơ đồ tổ chức Bộ giao thông vận tải 2

Hình 3.2 Mô hình tích hợp phương tiện giao thông trong hệ đa agent 2

Hình 3.3 Định nghĩa thuộc tính trong ontology 2

Hình 3.4 Kiểu dữ liệu thuộc tính của các loại phương tiện 2

Hình 3.5 Biểu diễn ontology trong Protégé 2

Hình 3.6 Cấu trúc MaritimeOntology 2

Hình 3.7 Cấu trúc AviationOntology 2

Hình 3.8 Cấu trúc RoadOntology 2

Hình 3.9 Cấu trúc RailwayOntology 2

Hình 3.10 Cấu trúc tổng thể các khái niệm trong ontology giao thông 2

Hình 3.11 Sơ đồ kiến trúc tổng thể của JADE 2

Hình 3.12 Cấu trúc thư mục của JADE 2

Hình 3.13 Giao diện JADE 2

Hình 3.14 CSDL tích hợp thông tin giao thông vận tải 2

Hình 3.15 Màn hình thực thi các agent 2

Hình 3.16 Tìm kiếm thông tin theo tên phương tiện 2

Hình 3.17 Tổng hợp thông tin phương tiện giao thông 2

vii

Trang 10

MỞ ĐẦU

Sự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tintrong nhiều lĩnh vực của đời sống, kinh tế xã hội trong nhiều năm qua cũng đồng nghĩavới lượng dữ liệu đã được các cơ quan thu thập và lưu trữ ngày một tích luỹ nhiều lên.Trong khi khối lượng dữ liệu ngày càng phát triển với tốc độ chóng mặt và phân tánkhắp nơi thì mỗi hệ thống chỉ cần một số thông tin nhất định phù hợp với yêu cầuriêng của hệ thống đó và trong nhiều trường hợp để xây dựng một hệ thống cần đếnthông tin từ nhiều nguồn khác nhau Xuất phát từ thực tế đó dẫn đến yêu cầu phải cóphương pháp tích hợp thông tin từ các nguồn khác nhau để có thể sử dụng tối ưu thôngtin cần thiết và quan trọng là có thể sử dụng thông tin dùng chung giữa các hệ thốngkhác nhau

Tích hợp thông tin là một khái niệm khá trừu tượng thậm chí là hơi mơ hồkhiến nhiều người không thể định nghĩa được chính xác và cụ thể, thông thường tíchhợp thông tin có thể được hiểu là quá trình kết hợp dữ liệu từ các nguồn thông tin khácnhau nhằm cung cấp cho người dùng một cái nhìn tổng quan và duy nhất về các dữliệu này [36] Đối với dữ liệu từ các nguồn thông tin khác nhau thường khá hỗn tạp vàkhông đồng nhất về nhiều mặt như: sự không đồng nhất trong cách trình diễn dữ liệu,cấu trúc dữ liệu, sự không đồng nhất về hệ thống và đặc biệt là sự không đồng nhất vềngữ nghĩa Cho đến nay đã có rất nhiều nghiên cứu đã được tiến hành trong lĩnh vựctích hợp thông tin chủ yếu tập trung vào vấn đề không đồng nhất về ngữ nghĩa của cácnguồn thông tin [3], [5], [20], [29], [48], [49] Các ontology là mô hình biểu diễn cáckhái niệm và mối quan hệ giữa các khái niệm đó, trong những năm gần đây có nhiềunhà khoa học đã đi sâu nghiên cứu sử dụng ontology để giải quyết vấn đề không đồngnhất về ngữ nghĩa này [3], [20], [49], sự phát triển của các ontology ngày một nhiềucùng với sự thừa nhận của cộng đồng đã thúc đẩy hơn nữa việc sử dụng ontology trongtích hợp thông tin

Có nhiều hướng tiếp cận khác nhau trong phương pháp tích hợp thông tin dựatrên ontology bằng cách sử dụng hệ đơn ontology, đa ontology hoặc hệ ghép bao gồmcác ontology cục bộ cùng với một bộ từ vựng dùng chung [19] Nhiều nghiên cứu đãkhẳng định cách tiếp cận lai sử dụng bộ từ vựng chung là cách tiếp cận phù hợp nhất

để xây dựng ontology cho mục đích tích hợp thông tin [3], [16], [20], [29]

Mục tiêu của luận văn là tìm hiểu agent và mô hình tích hợp thông tin dựa trênontology sử dụng bộ từ vựng chung sau đó áp dụng phương pháp này vào bài toán tích

Trang 11

hợp thông tin về phương tiện giao thông vận tải Trên cơ sở hạ tầng viễn thông đã có,các kết nối từ Trung tâm tích hợp dữ liệu của Bộ Giao thông Vận tải tới các Cục quản

lý chuyên ngành bằng hệ thống mạng riêng ảo (VPN) đã tạo ra mạng diện rộng(WAN) của Bộ Giao thông Vận tải Các kết nối liên thông cho phép chúng taxây dựng ứng dụng tích hợp thông tin từ các cục quản lý chuyên ngành vềTrung tâm tích hợp thông tin của Bộ để phục vụ công tác quản lý Agent tại trung tâmtích hợp thông tin của Bộ sẽ gửi yêu cầu tới các agent ở các cục quản lý chuyên ngành

và nhận kết quả trả về từ các agent này rồi tiến hành thu thập và tích hợp thông tin

Nội dung chính của luận văn được chia thành ba chương như sau:

Chương 1 trình bày các kiến thức tổng quan về agent, các đặc trưng của agent,

so sánh các công nghệ agent trên cơ sở đó đi sâu tìm hiểu và ứng dụng nền tảng Jadephục vụ cho việc cài đặt và thực thi hệ thống

Chương 2 trình bày khái niệm tích hợp thông tin, nhu cầu tích hợp thông tin vàcác phương pháp tích hợp thông tin và bài toán tích hợp thông tin trong hệ đa agent.Trong chương này đi sâu tìm hiểu ontology và phương pháp tích hợp thông tin dựatrên ontology để áp dụng vào bài toán giao thông

Chương 3 trình bày về bài toán tích hợp thông tin giao thông và áp dụngphương pháp tích hợp dựa trên ontology, phần cuối chương trình bày cách cài đặt, cấuhình và thực thi ứng dụng thử nghiệm cho bài toán tích hợp thông tin về phương tiệngiao thông vận tải từ các cục quản lý chuyên ngành về Trung tâm tích hợp thông tincủa Bộ giao thông vận tải

Cuối cùng, phần kết luận trình bày một số kết quả đạt được của luận văn vàhướng nghiên cứu tiếp theo trong tương lai

Trang 12

Chương 1 Tổng quan về agent

1.1.1 Định nghĩa Agent

Công nghệ agent là một hướng nghiên cứu thu hút rất nhiều sự quan tâm từnhững năm 90 đến nay Tuy nhiên ngay trong chính cộng đồng agent cũng có rất nhiều

định nghĩa khác nhau về agent Wooldridge [34] định nghĩa agent phần mềm “là một

hệ thống tính toán bao gói, được đặt trong một môi trường cụ thể, có khả năng hoạt động linh hoạt và tự chủ để đạt được các mục tiêu thiết kế” James Odell [25] lại định

nghĩa agent là một “thực thể có hành vi” với các đặc điểm sau:

Tự trị – là khả năng hành động mà không cần đến sự can thiệp trực tiếp từ

bên ngoài Nó có một số mức điều khiển thông qua trạng thái nội tại của nó

và có các hành động dựa trên kinh nghiệm của chính nó

Tương tác – giao tiếp với môi trường và các agent khác.

Thích nghi – khả năng phản ứng với các agent khác và/hoặc môi trường của

nó ở một vài mức độ nào đó Dạng thích nghi cao cấp hơn là cho phép mộtagent có thể sửa đổi hành vi của mình dựa trên kinh nghiệm của nó

Xã hội – thể hiện trong mối quan hệ xã hội.

Di động – có thể tự di chuyển từ môi trường này sang môi trường khác.

Ủy quyền – có thể hành động với tư cách của một ai đó hoặc một cái gì đó,

có nghĩa là hành động như một người đại diện hoặc hành động vì lợi ích củamột vài thực thể nào đó

Chủ động – Không đơn giản là chỉ tác động trở lại tới môi trường mà hành

động có chủ đích để đạt được mục tiêu

Thông minh – hình thức hóa các trạng thái của agent (ví dụ: niềm tin, mục

tiêu, các dự kiến, các giả định ) bằng tri thức và các tương tác với các agentkhác sử dụng ngôn ngữ tượng trưng

Suy luận – có thể lựa chọn một hành động dựa trên các mục tiêu chính và sự

hiểu biết về một hành động cụ thể có khả năng giúp nó tiến đến gần mụctiêu hơn

Trang 13

Không thể dự báo trước - có thể hành động theo cách nào đó không hoàn

toàn có thể dự đoán trước được thậm chí dù đã biết trước tất cả các điều kiệnban đầu

Thời gian liên tục – là một quá trình chạy liên tục.

Rõ ràng và giải nghĩa được – khi được yêu cầu thì phải rõ ràng và trong

suốt, khi cần có thể cung cấp nhật ký ghi lại các hành động của nó

Phối hợp – có thể thực hiện một số hành động trong một môi trường dùng

chung với các agent khác

Hợp tác – có thể phối hợp với các agent khác để đạt được mục đích chung.

Các agent không đối kháng nhau sẽ thành công hoặc thất bại cùng nhau (sửdụng thuật ngữ “Cộng tác” đồng nghĩa với “Hợp tác”)

Cạnh tranh – có thể phối hợp với các agent khác trừ khi thành công của một

agent dẫn đến thất bại của các agent khác (trái nghĩa của “Hợp tác”)

Mạnh – khả năng giải quyết các lỗi và các dữ liệu không đầy đủ.

Đáng tin cậy – trung thực.

Cho đến nay chưa có một định nghĩa chuẩn nào về agent, hầu hết mọi ngườiđều đồng ý rằng giới hạn về agent cho các hệ thống công nghệ thông tin sẽ không hữuích nếu không có ít nhất 3 tính chất đầu tiên ở trên Những người khác đòi hỏi cácagent công nghệ thông tin phải có tất cả các tính chất trên với các mức độ khác nhau.Thường thì một agent công nghệ thông tin được coi là một thực thể tự trị có thể tươngtác với môi trường của nó Nói cách khác, nó phải có khả năng quan sát môi trường vàhành động theo môi trường của nó

Trang 14

Các agent phần mềm là một kiểu agent riêng Một agent phần mềm là một thựcthể phần mềm tự trị có thể tương tác với môi trường của nó Điều này có nghĩa chúng

là các thực thể tự trị và có thể tác động trở lại các thực thể khác, bao gồm cả conngười, máy móc và các agent phần mềm khác trong nhiều môi trường và nền tảng(platforms) khác nhau Về cơ bản, các agent phần mềm được thiết kế mẫu cho phầnmềm Phát triển các công cụ, ngôn ngữ và môi trường để hỗ trợ mẫu dựa trên agent.Tuy nhiên, có thể thực thi các mẫu thiết kế agent sử dụng các công cụ, ngôn ngữ vàmôi trường hướng đối tượng hoặc bất kỳ công cụ, ngôn ngữ và môi trường nào khác

mà có khả năng hỗ trợ các thực thể phần mềm tự trị, tương tác và thích nghi Chủ yếucác công cụ dựa trên agent vẫn được ưa thích hơn bởi vì các mẫu thiết kế agent là cósẵn trong phần mềm hơn là được lập trình Nói cách khác, có thể sử dụng công nghệđối tượng cho công nghệ dựa trên agent, nhưng tính tự trị, tương tác và thích nghi củaagent hiện không được hỗ trợ trong công nghệ hướng đối tượng Trong khi đó cácthuộc tính này có thể (và đang) được thêm vào cách tiếp cận hướng đối tượng thì cácmẫu thiết kế cho các agent và phần mềm dựa trên agent vẫn chưa được hỗ trợ hoàntoàn và trực tiếp

Các agent tự trị:

Khi một agent có một sự độc lập nào đó với điều khiển bên ngoài, nó được coi

là tự trị.Ở một mức độ nào đó, các agent có thể hoạt động mà không cần sự can thiệphoặc gọi trực tiếp từ bên ngoài Nếu không có quyền tự trị, một agent sẽ không còn làmột thực thể động nữa mà giống như một đối tượng thụ động như một bản ghi trongmột bảng quan hệ

Các agent tương tác :

Các agent tương tác có thể tương tác với cả môi trường và các thực thể khác và

có thể được biểu diễn theo cấp bậc Ở một mức độ nào đó, các thông điệp đối tượng(lời gọi hàm) có thể được coi là dạng cơ bản nhất của tương tác, mức độ tương tácphức tạp hơn sẽ gồm các agent có khả năng phản ứng lại các sự kiện đáng chú ý bêntrong môi trường Các tương tác phức tạp hơn ở các hệ thống trong đó các agent đãbận tham gia trong các tương tác song song, phức tạp với các agent khác Ở mức độnày các agent bắt đầu hành động giống như một xã hội Cuối cùng, mức độ tương tácphức tạp nhất khi các hệ thống bao hàm nhiều agent hỗn tạp khác nhau có thể phối hợpthông qua sự cộng tác và/hoặc cạnh tranh (ví dụ như thỏa thuận và lập kế hoạch)

Các agent thích nghi:

Trang 15

Một agent được xem là thích nghi nếu nó có khả năng đáp ứng lại các agentkhác và/hoặc môi trường của nó ở một vài mức độ nào đó Ít nhất thì nó phải phản ứnglại một kích thích đơn giản – để tạo một đáp ứng tiền định, trực tiếp tới một sự kiện cụthể hoặc tín hiệu môi trường Bộ điều nhiệt, các cảm biến tự động, và các máy tìmkiếm đơn giản thuộc loại agent thích nghi

Tiến xa hơn agent phản ứng đơn giản là các agent có khả năng suy luận Cácagent suy luận này phản ứng lại bằng cách đưa ra các suy luận và bao gồm cả cácagent chẩn đoán bệnh và một số loại agent khai phá dữ liệu

Dạng nâng cao hơn của agent thích nghi là có khả năng học và tiến hóa Cácagent này có thể thay đổi hành vi của chúng dựa theo kinh nghiệm Các kỹ thuật phầnmềm phổ biến cho việc học là các mạng nơ ron, các luật Bayesian, các luật phânlớp… Ví dụ các agent học là các agent có thể phân tích giọng nói, nhận dạng và theodõi mục tiêu Một kỹ thuật chính cho các agent tiến hóa thường gồm các giải thuật ditruyền và lập trình di truyền Có thể phát sinh ra các agent để phù hợp với mục tiêu đặt

ra Ví dụ, kế hoạch hành động, và các chương trình phần mềm tối ưu hơn bất kỳ sảnphẩm nào do con người làm ra trong một khoảng thời gian vừa phải

Agent di động :

Trong khi các agent tĩnh tồn tại như một quy trình đơn lẻ trên một máy chủ thìcác agent di động có thể lấy lại và di chuyển mã của chúng tới một máy chủ mới tại đóchúng có thể tiếp tục thực thi Quan điểm ở mức khái niệm thì các agent di động nhưvậy có thể được xem là lưu động, động, không định cư, lang thang, hoặc di cư Ví dụ,nếu một agent muốn lấy thông tin từ một vài nguồn khác nhau trên các platform khácnhau, nó có thể gửi thông tin yêu cầu đến mỗi platform sử dụng kỹ thuật tương đươngvới một RPC (remote procedure call - gọi thủ tục từ xa) Tuy nhiên, nếu khối lượngthông tin ứng với site ở xa là lớn thì cần phải xem xét vấn đề lưu lượng và băng thông.Hơn nữa, agent có thể xử lý dữ liệu từ xa hiệu quả hơn các dịch vụ như vậy tại site ở

xa Việc di chuyển agent tới một trong nhiều platform khác nhau có thể sẽ hiệu quảhơn là cách xử lý dữ liệu từ xa

Các agent phối hợp :

Các tổ chức nhân sự tồn tại chủ yếu để phối hợp các hành động của nhiều cánhân vì một số mục tiêu Mục tiêu này có thể là tạo ra các kết cấu như các đơn vị kinhdoanh sinh lãi, các tổ chức từ thiện, các công ty ba lê hoặc các liên hiệp nhỏ Tương tựnhư vậy, các hệ thống bao gồm nhiều agent có thể sinh lợi theo cùng kiểu mẫu đó Một

Trang 16

số ứng dụng phổ biến nhất về agent phối hợp là dây chuyền cung cấp, lập lịch, giảiquyết vấn đề, thương lượng hợp đồng, và thiết kế sản phẩm Nếu không có sự phốihợp ở mức độ nào đó, các hệ thống như vậy không thể tồn tại, dù là người hay là các

hệ thống dựa trên agent

Các tổ chức nhân sự không được xây dựng bởi các cá nhân giống hệt nhau vàcùng làm những việc giống nhau mà có sự đa dạng hóa, có người đại diện, có thươnglượng, quản lý, cộng tác, cạnh tranh, và v.v…Và chúng ta cần thực hiện cách tiếp cậngiống như vậy trên các hệ thống đa agent Tuy nhiên vẫn nên xem xét cẩn thận trongkhi thiết kế và xây dựng cấu trúc của các hệ thống dựa trên agent Điều này sẽ giúptăng khả năng liên kết chặt chẽ giữa các agent với hành vi của chúng, mặc dù sẽ hạnchế và điều chỉnh tính tự động của agent nhưng vẫn đảm bảo được tính linh hoạt ởmức agent

Các agent thông minh :

Sau hàng thập kỷ thuật ngữ « thông minh » vẫn chưa được định nghĩa (hoặcđược hiểu) cho hệ thống nhân tạo và ngày nay việc áp dụng thuật ngữ này cho agent có

lẽ chưa thật thích đáng lắm Hầu hết đều có xu hướng cho rằng agent và agent thôngminh là tương đương nhau Có lẽ đây chỉ là sự cố gắng để truyền tải thông tin rằngagent có nhiều sức mạnh hơn các cách tiếp cận thường Ví dụ, khi so sánh với cácbảng quan hệ hoặc so sánh với các đối tượng, agent có thể được coi như là cái gì đó

“thông minh” Hoặc, đây chỉ là sự cường điệu của tiếp thị Tuy nhiên, không sai khinói rằng khái niệm về sự thông minh của các agent là rất khác so với của con người.Chúng ta không tạo các agent để thay thế con người mà chúng ta tạo chúng để giúp đỡhoặc bổ sung thêm cho con người

Các agent thông minh yêu cầu một bộ cơ bản các thuộc tính và tính năng Ví

dụ, một trạng thái của agent thông minh phải được chuẩn hóa bởi tri thức (hiểu biết,mục tiêu, mơ ước, ý định, giả định, v.v…) và có thể hành động trên cơ sở tri thức này

Nó cần có khả năng kiểm tra sự hiểu biết và mơ ước của nó, hình thành ý định của nó,lập kế hoạch các hành động mà nó sẽ thực hiện dựa trên các giả định nào đó, và cuốicùng là hành động theo kế hoạch đó Ngoài ra, các agent thông minh phải tương tácđược với các agent khác sử dụng ngôn ngữ tượng trưng Các nhà nghiên cứu agent sửdụng hiểu biết của chúng ta về suy nghĩ của con người để làm mẫu cho thiết kế cácagent

Các agent wrapper:

Trang 17

Agent này cho phép agent khác kết nối tới một dịch vụ/hệ thống phần mềmkhông phải agent Các agent client gửi các lệnh tới agent wrapper và được gọi đếntrong các dịch vụ cơ bản (Agent wrapper có thể là không cần thiết với các đối tượngnhưng vẫn nên có các đối tượng tồn tại trong cùng một môi trường)

Các loại agent trên thường chiếm ưu thế trong các hệ thống dựa trên agent,ngoài ra một ứng dụng cũng có thể dùng các dạng agent khác như: agent môi giới,agent quản lý, agent hỗ trợ, v.v…

Được chuẩn bị cho những mục tiêu lớn lao nhưng hiện nay, công nghệ agentvẫn chỉ là một lĩnh vực đang tiếp tục được nghiên cứu và mới đang trong thời kỳ đầuphát triển Dù đã được quảng cáo rộng rãi nhưng công nghệ agent chưa được sử dụngphổ biến, không được chấp nhận rộng rãi như là xu hướng tất yếu và cũng không có sựthống nhất trong việc hỗ trợ agent ở mức hệ điều hành Vì thế, việc triển khai côngnghệ và các hệ thống dựa trên agent là biệt lập và không thường xuyên, nhưng nó vẫntồn tại và trên thực tế là đang có xu hướng tăng dần Hiện có một số lớp agent đangđược triển khai như sau:

Các agent quản lý hệ thống và mạng: Các công ty viễn thông hoạt động trong

lĩnh vực này nhiều nhất, và là nhóm tận tụy với mô hình agent nhất Mục tiêu của họ là

sử dụng agent để thực hiện các nhiệm vụ quản lý mạng và hệ thống phức tạp như: cânbằng tải, phòng ngừa thất bại, phân tích vấn đề và tổng hợp thông tin

Các agent hỗ trợ quyết định: Chủ yếu được triển khai trong các môi trường

đóng, các công ty tiện ích và các tổ chức quân đội thường dùng các agent để hỗ trợquyết định và tổng hợp thông tin Các hệ thống này có thể cảnh báo một thao tác vớimột vấn đề có thể xảy ra, cung cấp thông tin để hỗ trợ một quyết định phức tạp

Trang 18

Agent tìm sở thích: Đây có thể là các agent được sử dụng nhiều nhất và hầu hết

người dùng thậm chí không biết họ đang sử dụng chúng Các agent này thường đượcdùng bởi các Websites thương mại để chào hàng, ví dụ như nếu bạn thích “FrankSinatra’s Greatest Hits” thì có thể bạn sẽ thích “Tony Bennett’s Songs for a SummerDay” Dựa trên Patti Maes hoạt động ở MIT Media Labs và sau đó là Firefly, cácagent theo dõi các kiểu mẫu sở thích và cách sử dụng để đưa ra các gợi ý Các agentnày được triển khai trên amazon.com và rất nhiều trang buôn bán CD và video

Các agent hỗ trợ người dùng: Các agent này hoạt động ở mức giao diện người

dùng, đưa ra thông tin hoặc lời khuyên tới người dùng Các công ty như Microsoft,Lotus và Apple hoạt động nhiều nhất trong lĩnh vực này Ví dụ được sử dụng nhiềunhất của loại agent này là các ký hiệu trợ giúp dạng hoạt họa ở trong sản phẩmMicrosoft Office Các agent này sử dụng các mạng bayesean để phân tích và dự đoáncác chủ đề có thể người dùng cần trợ giúp

Các agent kết cấu có tổ chức: Các agent này kết cấu để thao tác theo kiểu tương

tự như các tổ chức của con người Ví dụ, hệ thống dây chuyền cung cấp đa agent sẽ cócác agent đóng các vai trò khác nhau như người mua, nhà cung cấp, người môi giới,kho hàng, đơn hàng, các mục hàng, và các phòng sản xuất Các hệ điều hành sẽ có cácagent nguồn, các agent tài liệu, các agent xử lý v.v…

Mỗi agent trong số các agent này thể hiện một vài khía cạnh của các agent Tuynhiên, không có agent nào thể hiện được toàn bộ tính năng có thể có của agent

1.2.2 Các kiểu ứng dụng agent hiện nay

Các kiểu ứng dụng agent hiện nay vẫn còn hạn chế Khi các khái niệm đượcthừa nhận rộng rãi và có sẵn nhiều công cụ hơn thì hướng tiếp cận dựa trên agent sẽđược nhúng trong các ứng dụng công nghệ thông tin nhiều hơn

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ực hiệ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ên tụcthay đổi Từ thực tế đó nảy sinh nhu cầu thay đổi hành vi của các thực thể để đạt đượcmột nghi thức chung trong việc thương lượng Hơn nữa, việc di chuyển các thành phầncủa ứng dụng tiến gần đến nguồn thông tin thích hợp cho giao dịch cũng được quantâm

Tìm kiếm thông tin: lượng thông tin sẵn qua mạng nội bộ công ty giúp người

dùng mở rộng khả năng thu được các thông tin hữu ích một cách hiệu quả Các agent

Trang 19

tìm kiếm chứa các phạm vi kiến thức về rất nhiều nguồn thông tin khác nhau Kiếnthức này bao gồm các kiểu thông tin sẵn có trên mỗi nguồn, cách truy xuất thông tin

đó và kiến thức có tiềm năng hữu ích như: độ tin cậy và độ chính xác của nguồn thôngtin Các agent tìm kiếm sử dụng kiến thức này để thực hiện các tác vụ tìm kiếm riêngbiệt

Lọc thông tin: Các agent lọc thông tin cố gắng giải quyết vấn đề quá tải thông

tin bằng cách hạn chế hoặc sắp xếp thông tin tới người dùng Tư tưởng chính là đểphát triển một đại diện trực tuyến cho người dùng, đại diện này có đầy đủ kiến thức vềthông tin cơ bản của người dùng cần để nó có thể chọn các tài liệu ưa thích Các loạiagent này thường thực hiện chức năng như những người canh cổng bằng cách ngănngười dùng khỏi bị tràn ngập bởi luồng thông tin đến ồ ạt Các agent lọc tin cùng làmviệc (hoặc đôi khi hợp nhất) với các agent tìm kiếm để giữ lại các kết quả tìm kiếm ởmức độ vừa phải Thông thường, các agent lọc tin sẽ kết hợp chặt chẽ với các kỹ thuậthọc máy Điều này cho phép chúng thích nghi với yêu cầu của mỗi người dùng vàcung cấp thông tin chính xác hơn nhiều so với phương pháp lọc tin bằng từ khóa

Giám sát thông tin: nhiều tác vụ phụ thuộc vào thông báo xảy ra khi có thay đổi

trong các nguồn dữ liệu khác nhau Một người lập kế hoạch xây dựng một kế hoạch đểchuyển các thiết bị từ vùng này sang vùng khác, nhưng việc thực hiện kế hoạch đó cóthể bị phá hỏng bởi sự ảnh hưởng của thời tiết xấu Người lập kế hoạch sẽ thích tìmhiểu các sự kiện có thể gây ảnh hưởng đến kế hoạch của anh ta khi chúng xảy ra Khi

đó các agent sẽ rất hữu ích cho việc giám sát dữ liệu riêng tại các nguồn dữ liệu phântán Là các phần mềm có cấu trúc nên chúng có đủ kiên nhẫn cần thiết để giám sát liêntục sự thay đổi của các nguồn dữ liệu Các agent di động có thể gửi thông điệp tới cácnơi ở xa hoặc các vị trí khác không thể truy cập được

Môi giới nguồn dữ liệu (Data source mediation): Vùng quản lý dữ liệu đặt ở

nhiều hệ thống khác nhau, hầu hết chúng không bao giờ giao tiếp với nhau Các agent

có thể dùng như người môi giới giữa các nguồn dữ liệu khác nhau, cung cấp cơ chế đểcho phép chúng kết hợp chặt chẽ với nhau Dự án SIMS của ISI được phát triển nhưmột môi giới thông tin có thể cấp phép truy cập tới cơ sở tri thức và dữ liệu hỗn tạp, cóthể dùng nó để tạo mạng các agent thu nhặt thông tin, mỗi agent này có quyền truy cậptới một vài nguồn thông tin Các agent này sử dụng một ngôn ngữ bậc cao, một giaothức truyền thông, và các ontology riêng để mô tả dữ liệu chứa trong các nguồn thôngtin của chúng Điều này cho phép mỗi agent có thể giao tiếp với các agent khác ở mứcngữ nghĩa cao hơn

Trang 20

Các agent giao diện/ hỗ trợ cá nhân: Một agent giao diện là một chương trình

có thể thao tác bên trong một giao diện người dùng và trợ giúp đắc lực cho người dùngthao tác với giao diện Một agent giao diện có thể ngăn chặn dữ liệu vào của ngườidùng, kiểm tra nó, và đưa ra hành động phù hợp Tuy các agent giao diện không trựctiếp liên quan tới quản lý dữ liệu nhưng chúng phải có tiềm năng thực hiện vai trò lớnlao trong việc trợ giúp người dùng trong các hệ thống quản lý dữ liệu Điều này càngquan trọng hơn khi các hệ quản trị dữ liệu phân tán nhiều nơi và nhóm cùng nhauthành dạng lớn hơn, hệ thống các hệ thống phức tạp Các agent trong giao diện có thểthực hiện các chức năng như một cầu nối giữa phạm vi kiến thức về hệ quản trị dữ liệu

và người dùng Các agent này có thể giúp người dùng truy vấn, tìm khu vực định vị dữliệu, giải thích ngữ nghĩa của dữ liệu giữa các tác vụ khác Các ví dụ là các hệ thốnghướng dẫn thông minh và trợ giúp duyệt web Ngoài ra, Microsoft hiện đã gắn thêmcác agent giao diện vào trong các sản phẩm desktop để quan sát hành động của ngườidùng và đưa ra những gợi ý phù hợp tới người dùng

1.2.3 Hiện trạng sử dụng công nghệ agent

Hầu hết tất cả các hệ thống đang xây dựng ngày nay đều sử dụng ngôn ngữ lậptrình Java hoặc C++ [55] Truyền thông và phối hợp giữa các agent chủ yếu sử dụngngôn ngữ KQML (Knowledge Query and Manipulation Language) [33] hoặc FIPAACL (Foundation Intelligent Physical Agen) [14], KIF (“Knowledge InterchangeFormat”) [32] KIF là ngôn ngữ dùng cho việc truyền thông hướng nội còn KQML vàFIPA ACL dùng cho việc truyền thông hướng mục đích [55]

Các tập hợp công cụ thương mại đầu tiên để xây dựng các agent bắt đầu có trênthị trường vào khoảng năm 1999 Một số phải mua hoặc một số có thể cho tải về miễnphí Các hệ thống xây dựng agent biến đổi nhiều về mặt chức năng thì thường khôngtuân theo một chuẩn nào Các agent được xây dựng trong một hệ thống sẽ không làmviệc trong hệ thống khác Và cũng không có sự hỗ trợ nào cho các giao thức truyềnthông giữa các công cụ này Hình 1.1 mô tả một số công cụ phát triển hệ đa agent hiệnnay:

Trang 21

1.3 CÁC VẤN ĐỀ CHÍNH CỦA CÔNG NGHỆ AGENT

1.3.1 Truyền thông giữa các agent

Hiện đang là một trong những lĩnh vực quan trọng nhất cần chuẩn hoá Khôngchỉ nội dung và ý nghĩa của truyền thông có thể rất khác nhau mà cách thức truyềnthông cũng có rất nhiều cách khác nhau

1.3.1.1 Các ngôn ngữ truyền thông agent

Các thông điệp phải có ngữ nghĩa tốt để có thể nhìn thấy được và tính toánđược Vì thế chúng ta cần phải chuẩn hoá ngôn ngữ truyền thông agent (agentcommunication languages – ACL) để những người khác có thể phát triển các agent của

họ để có thể thao tác lẫn nhau Ngoài ra họ phải có một dạng ngữ nghĩa chính thức đểcác cách thực thi khác nhau vẫn duy trì được các tính năng cần thiết của ACL Bằngcách xác định rõ một ACL chúng ta có thể hệ thống hoá các yếu tố tương tác cơ bảngiữa các agent một cách hiệu quả

Theo Weiß [55] một số ngôn ngữ chính dùng cho việc truyền thông giữa cácagent là: KQML[33] (đây có lẽ là ngôn ngữ truyền thông agent được sử dụng rộng rãinhất), ARCOL (“ARTIMIS Communication Language”) [35] (ngôn ngữ truyền thôngdùng trong hệ thống ARTIMIS, có ít từ ngữ truyền thông gốc hơn KQML), FIPA ACL[14] (là ngôn ngữ truyền thông agent chịu ảnh hưởng mạnh bởi ARCOL) và KIF [32]

Hình 1.1 Một số công cụ phát triển hệ đa agent.

Trang 22

(ngôn ngữ dựa trên logic này được thiết kế để biểu diễn bất cứ loại tri thức hoặc siêutri thức nào) Sự kết hợp của FIPA-ACL, ARCOL, và KQML hầu như đã tạo nên mộtchuẩn hoàn chỉnh cho các ngôn ngữ truyền thông agent

1.3.1.2 Cơ chế truyền tải thông điệp

Trong môi trường agent, có thể lập lịch các thông điệp như hướng sự kiện Cóthể gửi thông điệp dưới chế độ đồng bộ hoặc không đồng bộ Hơn nữa, cơ chế truyềnthông điệp nên hỗ trợ đánh địa chỉ duy nhất như đánh địa chỉ dựa trên vai trò (tức làđánh địa chỉ “trang trắng” so với “trang vàng”) Cuối cùng, cơ chế truyền tải phải hỗtrợ các chế độ truyền tải đơn, truyền tải đa và truyền tin quảng bá (unicast, multicast,broadcast) và các dịch vụ như hành vi quảng bá tin, không từ chối thông điệp, vàlogging

1.3.1.3 Truyền thông Ontology

Truyền thông agent là các khái niệm về truyền thông giữa các agent Các agent

có thể có các thuật ngữ khác nhau cho cùng một khái niệm, các thuật ngữ giống hệtnhau cho các khái niệm khác nhau và các hệ thống lớp khác nhau Khi biểu diễn kiếnthức từ nhiều miền khác nhau đòi hỏi phải có một ontology chung, cách xây dựng vàliên kết chúng với nhau

1.3.1.4 Các giao thức tương tác agent

Hệ đa agent là hệ thống gồm nhiều agent tự chủ và linh hoạt khác nhau Mỗiagent đều có mục tiêu riêng và một phần mục tiêu chung của cả hệ thống Trong quátrình hoạt động các agent phải liên hệ với nhau để hoàn thành nhiệm vụ, tất cả nhữngmối liên hệ đó được gọi chung là tương tác Như vậy, tương tác chính là các mối liên

hệ, trao đổi để kết hợp, phối hợp hoặc cạnh tranh, thương lượng giữa các agent trong

hệ đa agent nhằm đạt được mục tiêu riêng của từng agent cũng như mục tiêu chungcủa hệ thống Trong các hệ thống thông tin, tương tác có thể chia thành ba loại chính:

+ Tương tác bình đẳng (peer to peer): đơn giản chỉ là trao đổi các thông điệp

có thể hiểu được giữa các thành phần với nhau

+ Tương tác kiểu khách – chủ truyền thống (client - server): Tương tác nàyxảy ra khi một bên yêu cầu bên kia thực hiện một hành động cụ thể nào đó.+ Tương tác xã hội: Các thành phần tỏng hệ thống có mối liên hệ phức tạp,mang tính xã hội như quan hệ tương hỗ, cạnh tranh, thương lượng…

Trang 23

1.3.2 Quản lý vòng đời agent

Các agent sẽ là phần mềm chạy trong môi trường phần mềm Vì thế, chúng phải

có cơ chế ngầm hiểu các hành động như: đang bắt đầu, đang tạm dừng, đang đượcquản lý, đang được theo dõi Một số agent được thực thi như mã di động (mobile code)

có bổ sung thêm các vấn đề về vòng đời như: cho phép có các quyền để chạy, cácquyền để thực hiện một số tác vụ nào đó, và để có truyền thông tại nhiều địa điểmkhác nhau ngoài điểm bắt đầu xuất phát Các agent có thể tiến hóa và khi chúng takiểm tra quản lý vòng đời, chúng ta phải kiểm tra cả các môi trường phần mềm sẽ chạyagent Môi trường có thể rất nhỏ, không kết nối liên tục với các thiết bị như điện thoại

di động hay trợ giúp kỹ thuật số cá nhân hoặc có thể bao gồm nhiều máy chủ có khảnăng chạy số lượng agent khổng lồ Yêu cầu đối với các môi trường hơi khác nhau vàcần phải xem xét cho phù hợp đối với từng hệ thống cụ thể

a, Thời gian tồn tại của agent

Các agent có thể tồn tại logic trong khoảng thời gian nó hiển thị hành vi im lìmkhông hoạt động Các giao diện hỗ trợ vòng đời của agent cần cân nhắc các yêu cầu về

sự tồn tại “logic” của rất nhiều agent trái với sự tồn tại vật lý trong bộ nhớ

Trong các hệ thống hiện đang hỗ trợ các agent “sống lâu” (long-lived), các

agent có thể “ngủ” và thường được lưu trữ trong ổ đĩa vật lý Khi agent tồn tại lâu dài,

dữ liệu và trạng thái hiện tại vẫn được duy trì và sẽ phục hồi lại khi agent “thức” Cómột trạng thái khác khi chuyển giữa trạng thái để agent ngủ và khi đánh thức nó dậy,

có thể truy vấn xem nó đang ở trong tình trạng nào, và khi agent đang thức dậy sẽ cóthông báo khoảng thời gian trôi qua và nó có thể đánh giá lại môi trường

Các hệ agent có thể có nhiều mô hình thông điệp trong khi agent “ngủ” Một sốcần mô hình kiểu sự kiện thô với các thông điệp được truyền đi một cách chắc chắn.Một số khác cần kiểu ngẫu nhiên khi một agent nhìn thấy một thông điệp quan trọng

có thể tác động đến thông tin Có nhiều kiểu thông điệp truyền trực tiếp giữa hai agent,với phương pháp store-and-forward và mô hình publish-and-subscribe Các sự kiện hệthống có thể được truyền qua các thông điệp hoặc một số cơ chế khác Phải thiết kếcác mô hình sao cho việc truyền thông điệp là tối ưu Tuy có nhiều mô hình khác nhaunhưng qua thời gian sẽ xuất hiện một số mẫu thiết kế nào đó

b, Quá trình hoạt động của agent

Cần thiết phải có các kỹ thuật ghi lại lịch sử các hành động của agent để trìnhđiều khiển hành vi của agent có thể kiểm tra lại và agent đó có thể đánh giá các hành

Trang 24

động trong thời gian trước Lịch sử bao gồm một dãy các tình huống, từ trạng thái củamột agent để cung cấp các bản ghi ghi lại các sự kiện và hành động của agent.

c, Phân lớp động và đa phân lớp

Trong suốt vòng đời của mình, agent có thể hiển thị các giao diện động phảnánh các thay đổi trạng thái của nó hoặc môi trường Tùy theo từng hoàn cảnh mà cácvai trò hoặc hành vi của các agent cụ thể sẽ thay đổi Tức là mỗi agent có thể thay đổi

cả vai trò của nó (phân lớp động) và nó có thể đảm đương nhiều vai trò trong cùng mộtkhoảng thời gian nào đó (đa phân lớp) Đây là một vấn đề quan trọng vì hầu hết cácngôn ngữ và các phương pháp đều chưa trực tiếp hỗ trợ phân lớp động và đa phân lớp

1.3.3 Tính di động

Các agent cố định tồn tại như một quy trình đơn trên một máy tính chủ; cácagent di động có thể lấy lại và di chuyển mã của nó tới một máy chủ mới và tiếp tụcthực thi Lý do di chuyển là để cải thiện độ thực thi bằng cách chuyển agent tới gầncác dịch vụ sẵn có trên máy chủ mới Các agent di động cũng là một bộ phận của một

hệ agent có các agent cố định

Để thực thi các agent di động đòi hỏi một máy chủ agent để chạy các agent diđộng, cần phải có chính sách về bảo mật và thẩm định tính xác thực của mã di động vàcác vấn đề liên quan như: các agent đang ở đâu, làm thế nào để giao tiếp với agenttrong khi chúng đang di chuyển, làm sao để mang chúng về nếu mạng bị lỗi, liệu cóđảm bảo được rằng chúng biết cách tính “thời gian chờ” và tạm dừng tiến trình mộtcách hợp lý trong khi thực hiện các nhiệm vụ nhạy cảm về mặt thời gian không, nếuvẫn phải tiếp tục hoạt động trong mọi nghịch cảnh thì làm thế nào để biết được chúngvẫn đang tồn tại hay đã “chết”

1.4.1 Giới thiệu

Agent platform (nền tảng agent) là một kiến trúc kỹ thuật cung cấp môi trườngcho các agent tồn tại và hoạt động tích cực để đạt được mục tiêu của chúng Các agentplatform có thể hỗ trợ thêm sự phát triển của các agent và các ứng dụng dựa trên agent.Trong phần này của luận văn sẽ đưa ra xem xét và đánh giá 9 platform của agent theochuẩn FIPA

Trang 25

Trong những năm gần đây, công nghệ agent, đặc biệt là các agent di động, trởthành một lĩnh vực gây chú ý trong khoa học máy tính Phát triển agent đang ngàycàng trở nên hứng thú, thậm chí trong cả lĩnh vực thương mại, do vậy việc tìm hiểu vềsức mạnh của agent và các tình huống sử dụng agent hiệu quả là việc làm cần thiết.Hiện có rất nhiều phương pháp, bộ công cụ và các platform khác nhau (trên 100 sảnphẩm phần mềm) Trong phần này của luận văn sẽ đưa ra xem xét và đánh giá 9platform agent chính dựa theo khuyến nghị của FIPA [15]

1.4.2 Các chuẩn agent

Ở đây chúng ta không tập trung vào giải thích và đánh giá cao tầm quan trọngcủa các chuẩn, mà tiêu chuẩn đầu tiên để chọn lựa ra agent platform phù hợp nhấtchính là sự tuân thủ theo các chuẩn agent của nền tảng đó

Chỉ có hai tổ chức quy định các chuẩn cho công nghệ agent, đó là: Foundationfor Intelligent Physical Agents (FIPA) và Object Management Group (OMG).FIPA đã công bố hai mươi ba đặc tả về tiêu chuẩn trong các lĩnh vực khác nhau củacông nghệ agent: truyền thông agent, quản lý agent, truyền thông điệp agent, kiến trúctrừu tượng agent, và các ứng dụng agent OMG cũng đã đặc tả trong tài liệu “Đặc tính

đa agent” (“Multi Agent Facility” (MAF) [30]) của họ về quản lý agent và các lĩnh vựckhác mà trong cách tiếp cận của FIPA chính là những thành phần cấu thành nên kiếntrúc trừu tượng như: tên agent và hệ thống agent, kiểu hệ thống agent, cú pháp định vị.Trong những phạm vi này thì cách tiếp cận của OMG không trừu tượng như của FIPA

và họ đề nghị sử dụng Common Object Request Broker Architecture (CORBA) [44].OMG thiên về các hoạt động từ dưới lên (bottom-up) trong khi FIPA thiên về các hoạtđộng từ trên xuống (top-down) Trước khi phát hành bản đặc tả FIPA 2000 thì sự khácbiệt lớn nhất so với đặc tả của OMG đó là, MAF nói về lĩnh vực di động của agenttrong khi đó FIPA không đề cập đến Tình thế thay đổi khi bản đặc tả FIPA 2000 bàn

về tính di động của agent và cố gắng tích hợp FIPA với MAF Tuy rằng sau đó người

ta không tán thành bản đặc tả đó, nhưng trên thực tế cả hai bản đặc tả của OMG vàFIPA đều đề cập đến tính di động của agent như nhau kể từ khi MAF kết thúc với bảnphát hành cuối cùng vào năm 2000 và dừng lại từ đó Mặt khác, FIPA vẫn đang hoạtđộng và hỗ trợ các chuẩn của nó và công nghệ agent bằng nhiều hành động khác nhau.Với các lý do trên, khi xem xét chọn lựa các agent platform chúng ta nên chọn các nềntảng tuân theo đặc tả FIPA

Trên trang chủ FIPA công bố danh sách các nền tảng tuân thủ theo đặc tả của

họ [15] bao gồm: Agent Development Kit [51], April Agent Platform [40], Comtec

Trang 26

Agent Platform, FIPA-OS [12], Grasshopper [22], JACK Intelligent Agents [4], JADE[24], Java Agent Services API [26], LEAP (hiện nay là bộ phận con của JADE) vàZEUS [23] Mỗi nền tảng đều có phần mô tả ngắn gọn và có liên kết tới trang chủ của

nó trên mạng Tiếp theo là phần đưa ra các tiêu chí để chọn ra nền tảng thích hợp nhấttrong 10 agent platform theo chuẩn FIPA này Sau đây là phần trình bày một số tài liệunghiên cứu đánh giá các agent platform

1.4.3 Khảo sát các tài liệu nghiên cứu về agent platform

Hiện có một số tài liệu đánh giá các agent platform được viết bằng tiếng anh vàphổ biến rộng rãi [8], [10], [11], [41], [47] Các tài liệu này thể hiện các cách nhìnkhác nhau, độ phức tạp và mức độ toàn diện cũng khác nhau Ví dụ [8] đưa ra bộ tiêuchuẩn toàn diện bao hàm rất nhiều các yêu cầu riêng rẽ và các yêu cầu đặc biệt Tuynhiên, tài liệu nghiên cứu này đã có từ lâu (năm 1998) và các tác giả chỉ chú trọngtrình bày về platform Grasshopper mà không nói tới các platform theo chuẩn FIPAkhác Tài liệu [47] lại giới thiệu một cách tiếp cận khác, liên quan đến bốn giai đoạn

kỹ nghệ phần mềm: phân tích, thiết kế, phát triển và triển khai và đánh giá mức độ hỗtrợ của một agent platform đối với các giai đoạn này Cuối cùng, các tác giả luận bàn

về điểm mạnh và điểm yếu của 4 platform: AgentBuilder, JACK, MadKit và ZEUS.Tài liệu xuất bản [10] và [11] trình bày về các tiêu chí phổ biến như: tính tương thíchcủa các chuẩn, sự bảo mật, truyền thông và tính di động của agent (di động mạnh – hệthống có khả năng di chuyển mã nguồn và trạng thái thực hiện của từng đơn vị thực thi– hoặc di động yếu – chỉ có khả năng di chuyển mã nguồn) Ngoài ra, tài liệu [27]quan tâm đến vòng đời của agent và tiêu chuẩn về sản phẩm, trong khi [28] đánh giácác vấn đề liên quan đến tính sẵn sàng, khả dụng, tài liệu và phát triển (các đề án pháttriển/ các ứng dụng thực tế) của các agent platform Tài liệu [11] chủ yếu tập trungđánh giá các platform theo chuẩn FIPA, sau khi khảo sát, các tác giả khuyến nghị nên

sử dụng Grasshopper, JADE và Aglets (Aglets không theo chuẩn của FIPA) Trongtài liệu nghiên cứu [41], các tác giả đánh giá 3 platform là JADE, Tryllian và SAP (2platform đầu tiên nằm trong danh sách của FIPA) với các tiêu chí khác nhau về mức

độ thực thi

Lĩnh vực công nghệ agent thay đổi rất nhanh chóng, có thể xảy ra trường hợpcác platform từ năm trước sang năm sau đã không còn được duy trì nữa, thậm chí làkhông thể sử dụng được nữa Bởi vì công nghệ tương đối mới lạ và chủ yếu dùng ởgiai đoạn nghiên cứu Số lượng các platform được phát hành bởi các phòng thí nghiệmcủa các công ty hoặc các trường đại học hay viện nghiên cứu là khá lớn Ý thức đượcđiều này nên không ai chỉ dựa vào các công trình trước đó mà chọn được agent

Trang 27

platform thích hợp nhất Kiến thức phải được cập nhật thường xuyên và thông tin vềcác platform vẫn có trên thị trường Dưới đây là phần đánh giá các agent platform dựatrên bảng các câu hỏi sau:

 Platform hiện còn được duy trì không?

 Nhóm nghiên cứu phát triển ra platform này có còn hoạt động không?

 Platform có đang được tiếp tục phát triển không?

 Platform này có phổ biến không? Có được sử dụng rộng rãi không?

 Platform có dễ dàng truy cập được không?

 Ngày phát hành phiên bản mới nhất của platform này là khi nào?

 Platform này có phiên bản gọn nhẹ không?

 Khả năng dùng sẵn của platform đến đâu?

Trong phần tiếp theo của luận văn sẽ trình bày các bảng biểu minh họa cho kếtquả đánh giá các platform dựa theo các tiêu chí ở trên

1.4.4 Kết quả đánh giá các agent platform

Như đã trình bày trong phần trước của luận văn, có một số tiêu chí để đánh giácác agent platform, sau khi đã tìm hiểu thực tế tôi xin trình bày kết quả đánh giá 9platform theo khuyến nghị của FIPA dựa theo các tiêu chí trên

Tiêu chí 1: xác định xem các platform này hiện còn được duy trì hay không.Bảng 1.1 sẽ so sánh mức độ duy trì hiện nay của 9 platform trên

Bảng 1.1 So sánh mức độ bảo trì của các agent platformAgent Development Kit Có

April Agent Platform Không Phiên bản cuối cùng phát hành tháng 10/2002

Comtec Agent Platform Không truy cập được vào địa chỉ URL như đã công bố

trên trang chủ của FIPA

Grasshopper Không có hoạt động nào kể từ tháng 11/2003

Trang 28

JACK Intelligent Agents Có, vẫn duy trì, nhưng là sản phẩm thương mại

Như vậy, các kết quả trong bảng 1.1 cho thấy hiện nay chỉ có ADK, JACK vàJADE hiện đang tiếp tục được bảo trì, các platform còn lại hoặc là không truy cậpđược vào website hoặc là trên thực tế không có hoạt động nào chứng tỏ vẫn đang tiếptục được bảo trì

Tiêu chí 2: Nhóm nghiên cứu phát triển ra platform này có còn hoạt độngkhông Kết quả so sánh mức độ tích cực của các platform được thể hiện trong bảng1.2

Bảng 1.2 So sánh mức độ tích cực của các platform

Agent Development Kit Có Tryllian là công ty thương mại tạo ra các adaptive

enterprises thông qua Bộ tích hợp quy trình kinh doanhphân tán (Distributed Business Process Integration Suite).Bằng cách sử dụng các dịch vụ và công nghệ Java, Trylliantạo điều kiện cho các cộng đồng kinh doanh và các tổ chứcliên hợp hoạt động nhanh nhạy và thuận tiện hơn

April Agent Platform Không hoạt động từ khi phát hành phiên bản cuối cùng

tháng 10/2002Comtec Agent Platform Không Cả nên tảng này và các thông tin liên quan đến nó

đều không truy cập được

FIPA-OS Không Từ năm 2003 Emorphia tập trung vào việc hỗ trợ

các công việc quản trị liên quan đến sự cộng tác giữa ngườivới người, đặc biệt là đàm phán và điều phối cuộc họpGrasshopper Không Hoạt động gần đây nhất là từ tháng 10/2003 IKV+

+ là một công ty cung cấp cho các khách hàng thương mạidịch vụ tư vấn, công nghệ thông tin và các giải pháp chuyênbiệt để dự phòng cho các dịch vụ truyền thông và thông tinJACK Intelligent

Agents

Có AOS là nhà phát triển và cung cấp sản phẩm phần mềm

để xây dựng và triển khai các ứng dụng hướng agent

Trang 29

JADE Có JADE-Board là một tổ chức phi lợi nhuận với sứ mệnh

thúc đẩy JADE tiến triển và được công nhận bởi ngànhcông nghiệp truyền thông di động như là một phần mềmsụn chuẩn dựa trên java (java-based de-facto standardmiddleware) cho các ứng dụng dựa trên agent trong lĩnhvực truyền thông cá nhân di động JADE Board hiện có bathành viên là: TILAB (Telecom Italia Lab), Motorola, vàWhitestein Technologies AG

JAS (Java Agent

Services API)

Có thể Trên trang chủ của Java Community Process thôngbáo là họ đang tiếp tục làm việc với JAS, tuy nhiên tài liệumới nhất của là từ ngày 20/3/2002

ZEUS Không, phiên bản mới nhất phát hành từ tháng 1/2006

Kết quả so sánh trong bảng 1.2 cho thấy hiện nay chỉ có ADK, JACK và JADE

là vẫn đang hoạt động tích cực, ngoài ra cũng có thể các nhà nghiên cứu đang tiếp tụcphát triển JAS như thông báo trên trang chủ của họ, tuy nhiên khả năng lớn là họkhông tiếp tục nghiên cứu nữa nữa vì tài liệu “mới nhất” của họ đã phát hành cách đâygần 8 năm

Tiêu chí 3: Xác định xem platform có đang được tiếp tục phát triển không.Bảng 1.3 xin là kết quả so sánh 9 platform theo tiêu chí này

Bảng 1.3 So sánh mức độ cập nhật của các platformAgent Development Kit Có

April Agent Platform Không có thông tin mới nào chứng tỏ nó vẫn đang được

phát triển, kể từ phiên bản mới nhất ra tháng 10/2002Comtec Agent Platform Không Không truy cập được bất kỳ thông tin nào

FIPA-OS Không có thông tin mới nào chứng tỏ nó vẫn đang được

phát triển kể từ khi phát hành phiên bản gần đây nhất

Grasshopper Không có thông tin mới nào chứng tỏ nó vẫn đang được

phát triển kể từ khi phát hành phiên bản gần đây nhất

JACK Intelligent Agents Có

Trang 30

JAS (Java Agent Services

API)

Không có bản thực thi JAS nào

ZEUS Không có thông tin mới nào chứng tỏ nó vẫn đang được

phát triển kể từ khi phát hành phiên bản gần đây nhất

Kết quả trong bảng 1.3 cũng tương tự như bảng 1.1 và bảng 1.2, chỉ có ADK,JACK và JADE là vẫn đang tiếp tục được phát triển Các platform còn lại đều không

có thông tin nào cho thấy hiện vẫn đang tiếp tục nâng cấp và ra phiên bản mới

Tiêu chí 4: Nền tảng có phổ biến không? Có được sử dụng rộng rãi không?.Bảng 1.4 là kết quả so sánh các platform theo tiêu chí 4:

Bảng 1.4 So sánh mức độ phổ biến của các platform

Agent Development Kit Tryllian thông báo tới các công ty đối tác của họ nhiều hơn

tới người dùng

April Agent Platform Khoảng 10.000 lần tải về

Comtec Agent Platform Không Không truy cập được bất kỳ thông tin nào

FIPA-OS Khoảng 66.000 lần tải về

Grasshopper Không cung cấp thông tin nào

JACK Intelligent

Agents

Nhóm AOS thông báo tới các công ty đối tác của họ hơn làtới người sử dụng JACK đã thiết lập cơ sở khách hàngkhắp toàn cầu với doanh thu từ Mỹ, Anh và Australia.JACK hỗ trợ sản phẩm của họ trên toàn thế giới

JADE Hiện đang là platform được sử dụng rộng rãi nhất cho mục

đích nghiên cứu

JAS (Java Agent

Services API)

Không có bản thực thi JAS nào

Theo kết quả so sánh của bảng 1.4, một số platform thương mại không quá chútrọng vào người dùng thông thường mà chỉ chú ý tới các đối tác của họ, do vậy màkhông phải ai cũng biết đến các platform này, ngược lại, một số platform mã nguồn

mở cho người dùng tải về miễn phí như AAP, FIPA-OS, JADE, ZEUS… và có lẽJADE được coi là platform phổ biến nhất hiện nay

Trang 31

Tiêu chí 5: platform có dễ dàng truy cập không? Bảng 1.5 đánh giá mức độ

truy cập thông tin của các platform:

Bảng 1.5 So sánh mức độ truy cập thông tin của các platform

Agent Development Kit Có, vào trang chủ ADK để biết thêm thông tin về ADK

phiên bản 3.2: http://www.tryllian.org/

April Agent Platform Có Ở trang web SourceForge:

http://sourceforge.net/projects/networkagent/

Comtec Agent Platform Không, không thể truy cập được

FIPA-OS Có Ở trang web SourceForge:

http://sourceforge.net/projects/fipa-os/

Grasshopper Không có bất kỳ thông tin nào

JACK Intelligent Agents Có, ở trang chủ của JACK, bắt buộc phải là điền vào mẫu

đăng ký trở thành thành viên

http://www.aosgrp.com/products/jack/registration/

regform.htmlJADE Có, ở trang chủ của JADE, bắt buộc phải là điền vào mẫu

đăng ký trở thành thành viên mới tải về được

Tiêu chí 6: ngày phát hành phiên bản mới nhất của nền tảng này là khi nào?

Bảng 1.6 là kết quả so sánh thời gian phát hành phiên bản mới nhất của các platform ởtrên:

Bảng 1.6 So sánh thời gian phát hành phiên bản mới nhất của các platform

Trang 32

Agent Development Kit Phiên bản 3.2.

April Agent Platform Ngày 17/10/2002, phiên bản 4.4.4

Comtec Agent Platform Không truy cập được

FIPA-OS Ngày 18/03/2003 Phiên bản: 2.2.0

Grasshopper Phiên bản 2.2.4 Không truy cập được

JACK Intelligent Agents Phiên bản: 4.1

JADE Phiên bản 3.7 ngày 02/07/2009

JAS (Java Agent Services

API)

Hoạt động cuối cùng của JAS kết thúc ngày 19/5/2002

Kết quả so sánh trong bảng 1.6 cho thấy thời gian phát hành phiên bản mới nhấtcủa JADE và ZEUS là gần đây nhất, đặc biệt là các nhà phát triển JADE liên tục cậpnhật sản phẩm của họ lên các phiên bản cao hơn

Tiêu chí 7: Platform này có phiên bản gọn nhẹ không Với việc cung cấp các

phiên bản gọn nhẹ sẽ giúp cho người dùng có nhiều tùy chọn sử dụng hơn, họ có thểchọn phiên bản này dùng cho thiết bị di động hoặc các máy tính cấu hình thấp… Bảng1.7 thể hiện kết quả so sánh các platform theo tiêu chí này:

Bảng 1.7 So sánh khả năng cung cấp phiên bản gọn nhẹ của các platform

Agent Development Kit Không

April Agent Platform Không

Comtec Agent Platform Không

Trang 33

Kết quả của bảng 1.7 cho thấy chỉ có FIPA-OS, JACK và JADE hiện có phiênbản gọn nhẹ mà thôi.

Tiêu chí 8 Khả năng dùng sẵn của platform đến đâu? Kết quả so sánh khả

năng dùng sẵn của các platform thể hiện trong bảng 1.8

Bảng 1.8 So sánh khả năng dùng sẵn của các platformAgent Development Kit Có thể phải trả tiền bản quyền thương mại

April Agent Platform Mã nguồn mở Lesser General Public License (LGPL).Comtec Agent Platform Không có

FIPA-OS Mã nguồn mở Công khai

Grasshopper Không có

JACK Intelligent Agents Phải đăng ký Miễn phí phiên bản dùng thử Phiên bản

thương mại phải trả tiền Phiên bản nâng cao được chiếtkhấu

JADE Mã nguồn mở GNU General Public License Bắt buộc

phải đăng ký trở thành thành viên để tải về

JAS (Java Agent Services

dự báo trước sự phát triển của các thiết bị di động thì sự xuất hiện của phiên bản gọnnhẹ là khá quan trọng Và với JADE cũng đã có phiên bản gọn nhẹ là LightweightExtensible Agent Platform (LEAP) JADE hiện vẫn đang được duy trì và phát triểnliên tục, không chỉ bởi các nhà phát triển của Telecom Italia Lab (Tilab), là nơi khởi

Trang 34

đầu hình thành nên JADE, mà còn có sự đóng góp của nhiều thành viên cộng đồngJADE Việc truy cập JADE cũng rất dễ dàng và thuận lợi Những người phát triển vàngười dùng có thể tải về không chỉ phiên bản hiện tại mà còn cả những bức ảnh chụpgần đây về những cải tiến mới của môi trường Ngoài ra, JADE hỗ trợ phát triển cácontology thường dùng để biểu diễn tri thức của agent Có thể thiết kế các ontologybằng Protégé [46] và sau đó sử dụng các plugin cho Protégé như BeanGenerator hayJadeJessProtege để chuyển đổi sang các lớp Java tương thích với JADE.

Trang 35

Chương 2 Tích hợp thông tin

2.1 TỔNG QUAN VỀ TÍCH HỢP THÔNG TIN

2.1.1 Khái niệm tích hợp thông tin

Tích hợp thông tin là một khái niệm khá trừu tượng thậm chí là hơi mơ hồkhiến nhiều người không thể định nghĩa được chính xác và cụ thể, thông thường tíchhợp thông tin có thể được hiểu là quá trình kết hợp dữ liệu từ các nguồn thông tin khácnhau nhằm cung cấp cho người dùng một cái nhìn tổng quan và duy nhất về các dữliệu này [36] Các đặc điểm của hệ thống tích hợp thông tin bao gồm:

Các nguồn thông tin là phân tán Các nguồn thông tin này có thể các cơ sở dữ

liệu trong các hệ thống khác nhau, cũng có thể là các trang Web ở các địa chỉ khácnhau, hoặc cũng có thể là những con người với các quan điểm khác nhau về một vấn

đề nào đó

Các nguồn thông tin là không đồng nhất Sự không đồng nhất này thể hiện ở cả

ngôn ngữ biểu diễn và từ vựng biểu diễn thông tin Các nguồn thông tin có thể có ngônngữ biểu diễn khác nhau, ví dụ CSDL của một nguồn được biểu diễn theo dạng XMLnhưng một nguồn thông tin khác lại được biểu diễn theo CSDL quan hệ Các nguồnthông tin cũng có thể sử dụng các từ vựng khác nhau để cùng biểu diễn một thông tin

Ví dụ, cùng là khái niệm giá tiền nhưng khi đó là thông tin về ô tô thì giá được biểu diễn là giá ô tô (car_cost), còn nếu đó là thông tin vé của tàu hoả lại được biểu diễn là

Với các đặc điểm như trên, việc xây dựng các hệ tích hợp thông tin yêu cầu

kiến thức về nhiều lĩnh vực khác nhau như lý thuyết về CSDL, các phương pháp ước

lượng, lý thuyết về ngôn ngữ và biểu diễn thông tin, …

2.1.2 Các mức độ tích hợp thông tin

Theo Khaled Bashir Shaban [31], tích hợp thông tin được chia thành ba mứcdựa trên đặc điểm đầu vào và đầu ra của quá trình tích hợp như sau:

Trang 36

Mức 1: Tích hợp dữ liệu (Data Fusion) Đây là mức thấp nhất Trong mức này,

đầu vào là các bản ghi dữ liệu Đầu ra cũng có dạng các bản ghi hoặc một dạng caohơn nhưng vẫn đóng vai trò là dữ liệu cung cấp cho một ứng dụng nào đó

Mức 2: Tích hợp thông tin (Information Fusion) Trong mức này, cả đầu vào và

đầu ra của quá trình tích hợp đều là thông tin (information), tức là một cấu trúc đầy đủ,

tập hợp từ các bản ghi dữ liệu Mức này xảy ra với các hệ thống nhiều nguồn dữ liệu

mà cấu trúc của các nguồn dữ liệu này là khác nhau và mỗi nguồn thông tin không thểtách ra từ một nguồn khác

Mức 3: Tích hợp quyết định (Decision Fusion) Đây là mức tích hợp thông tin

cao nhất Đầu vào của hệ thống này có thể là thông tin, dữ liệu, hoặc các quyết định

(được biểu diễn theo một dạng cụ thể nào đó) từ các hệ thống khác nhau Nhiệm vụcủa hệ tích hợp thông tin ở mức này là phải đưa ra tập quyết định phục vụ yêu cầu đặt

ra của hệ thống Có thể nói tích hợp quyết định ở mức trừu tượng cao hơn hai mứctrước, do đó nó bao hàm cả hai mức trên Một điểm khác nhau nữa, nếu như ở mức 1

và mức 2 vẫn có những trường hợp quá trình tích hợp thông tin không thực hiện được(do không thoả mãn các điều kiện nào đó) thì mức 3 sẽ luôn được thực hiện vì nókhông phụ thuộc vào bản chất và đặc điểm của các nguồn thông tin

Tuy chia làm ba mức như trên nhưng trên thực tế một hệ tích hợp thông tinthường có đủ cả ba mức Các mức thấp, do đó, sẽ làm cơ sở cho các mức cao hơn

Luận văn dùng thuật ngữ tích hợp thông tin để thay cho cả ba mức tích hợp thông tin

trên

2.1.3 Các phương pháp tích hợp thông tin

Nhu cầu tích hợp thông tin trong các hệ thống thông tin, nhất là trên môi trườngInternet, rất lớn Nhiều nghiên cứu về tích hợp thông tin đã được tiến hành [3], [5], [4],[20], [48], [49] Các nghiên cứu này đưa ra một loạt các phương pháp tích hợp thôngtin, mỗi phương pháp lại phù hợp với một dạng hệ thống (và các nguồn thông tin) cụthể nào đó Trong phần này, luận văn sẽ trình bày một số phương pháp tích hợp thôngtin theo cách phân loại dựa trên kỹ thuật tích hợp

2.1.3.1 Tích hợp thông tin dựa trên ước lượng không chắc chắn

Hiểu một cách đơn giản, tích hợp thông tin dựa trên ước lượng không chắc chắn

là phương pháp tính toán độ phù hợp của các thông tin thu thập được với yêu cầu củangười dùng hoặc ứng dụng cụ thể, sau đó chọn ra thông tin có độ phù hợp cao nhất Để

Trang 37

tính toán độ phù hợp, các phương pháp thuộc dạng này sử dụng các ước lượng khôngchắc chắn

Trong các ứng dụng tìm kiếm truy xuất thông tin trên Web quen thuộc như

Yahoo, Google, Alta Vista… độ phù hợp của một thông tin được tính qua hai tham số

là độ chính xác (precision) và khả năng thu hồi (recall) [38] Từ yêu cầu tìm kiếm thông tin của người dùng, hai tham số trên sẽ được tính toán Độ chính xác thay thế cho các văn bản phù hợp nhất với người dùng trong tập các văn bản ban đầu Khả

năng thu hồi thay thế cho phần phù hợp nhất bên trong các văn bản tìm được đó Kết

quả trả về sẽ dựa trên cả hai tham số này

Trong [31] lại trình bày một phương pháp tích hợp thông tin khác sử dụng hệ đaagent Với mục đích tích hợp và truy xuất các nguồn thông tin trên Internet nhằm tìm

ra thông tin phù hợp nhất với người dùng, hệ tích hợp thông tin sẽ được tổ chức thànhmột nhóm các agent khác nhau, mỗi agent có chức năng thu thập thông tin tại mộtnguồn nhất định Phương pháp tích hợp thông tin được đưa ra là tổ chức các agent

thành các nhóm đồng hướng (team consensus) bao gồm các agent cùng thu thập thông

tin cho một yêu cầu của người dùng Các agent trong mỗi nhóm này sẽ thu thập thôngtin từ nguồn của mình sau đó thông tin sẽ được ước lượng giá trị theo một phươngpháp ước lượng không chắc chắn (ước lượng mờ) dựa trên các điều kiện không chắcchắn của agent đó Cuối cùng, các giá trị thông tin sẽ được tính toán, so sánh và lựachọn theo một thuật toán tích hợp và hệ thống sẽ đưa ra quyết định lựa chọn thông tinphù hợp nhất với người dùng

Nói chung, các phương pháp tích hợp thông tin sử dụng ước lượng không chắcchắn đều cần thuật toán tích hợp thông tin phức tạp Mặt khác, việc tính toán độ phùhợp của thông tin chưa tính đến sự không đồng nhất về ngữ nghĩa thông tin Theo nhậnđịnh của Morgan Benton và Benjamin K.Ngugi [38] thì phương pháp tính toán độ phù

hợp dựa trên hai độ đo: độ phù hợp và khả năng thu hồi có bản chất là so sánh từng

bít, do đó không so sánh được ngữ nghĩa thông tin

2.1.3.2 Tích hợp thông tin dựa trên các ràng buộc dữ liệu

Một dạng phương pháp tích hợp thông tin khác là dựa trên các ràng buộc dữliệu Các phương pháp thuộc dạng này được áp dụng cho hệ thống bao gồm các nguồnthông tin biểu diễn dưới dạng các hệ CSDL và cấu trúc, ràng buộc trong các hệ CSDLnày là có thể biết được Mục đích của các hệ thống này là trả lời các truy vấn củangười dùng về thông tin trong nhiều nguồn khác nhau mà không cần truy nhập trựctiếp vào tất cả các nguồn thông tin này Tiêu biểu cho phương pháp tích hợp thông tin

Trang 38

thuộc loại này là phương pháp dùng cho hệ thống IBIS (Internet_based Information

System) [5].

Phương pháp tích hợp thông tin được đưa ra dựa trên bộ ba lược đồ (G, S, M)được xây dựng từ các nguồn thông tin cần tích hợp:

Lược đồ toàn cục (global schema) G: giống như lược đồ quan hệ trong lý thuyết

về CSDL, mô tả các ràng buộc nhất quán, các ràng buộc khoá và các yêu cầu về tínhđộc lập giữa các nguồn thông tin

Lược đồ nguồn thông tin (source schema) S: Mô tả cấu trúc của tập các nguồn

thông tin cần tích hợp trong hệ thống

Các ánh xạ M : bao gồm các ánh xạ được thiết lập giữa lược đồ toàn cục và các

lược đồ nguồn thông tin

Trên cơ sở xem xét các ràng buộc được định nghĩa trong G và cấu trúc biểudiễn trong S, người thiết kế hệ thống sẽ xác định các ánh xạ tương ứng giữa các thựcthể thông tin trong các nguồn thông tin (ở đây là các CSDL)

Phương pháp này có ưu điểm là biểu diễn được ngữ nghĩa thông tin thông qua

bộ ba (G, S, M) nhưng nhược điểm là cần biết cấu trúc và ràng buộc của các CSDLtrong hệ thống Điều này không phải lúc nào cũng thực hiện được

2.1.3.3 Tích hợp thông tin tự động dựa trên ontology

Nhiều nghiên cứu khác nhau đã khẳng định phương pháp tích hợp thông tin dựatrên ontology có một số ưu điểm so với hai dạng phương pháp đã trình bày ở trên [3],[20], [49] Thay vì sử dụng các ước lượng không chắc chắn hoặc các lược đồ CSDL,

các phương pháp dựa trên ontology sử dụng một cấu trúc phân lớp các khái niệm,

thuật ngữ và các quan hệ giữa các khái niệm đó gọi là ontology để biểu diễn các

nguồn thông tin cần tích hợp (cả nội dung và ngữ nghĩa thông tin) Thông qua tươngtác giữa các thành phần dựa trên ontology, thông tin từ các nguồn được tích hợp

Vì ontology biểu diễn ngữ nghĩa thông tin thông qua các khái niệm và các mốiquan hệ giữa các khái niệm nên phương pháp tích hợp thông tin dựa trên ontology giảiquyết được vấn đề không đồng nhất về ngữ nghĩa thông tin Quá trình tích hợp thông

tin sẽ diễn ra một cách tự động thông qua việc xác định các ánh xạ tương đương hoặc

không tương đương giữa các khái niệm trong các ontology khác nhau.

Trang 39

Có nhiều nghiên cứu khác nhau về tích hợp thông tin dựa trên ontology trong

hệ đa agent [3], [29], [20], [49] Trong các nghiên cứu này, Agustina Buccella [3] và

H Stuckenschmidt [20] xây dựng phương pháp tích hợp thông tin sử dụng bộ từ vựng

chung (shared vocabulary) còn Soe-Tsyr Yuan [49] xây dựng phương pháp tích hợp

thông tin sử dụng agent trung gian Luận văn sẽ tập trung tìm hiểu ontology và môhình tích hợp thông tin dựa trên ontology sử dụng bộ từ vựng chung của H.Stuckenschmidt [20]

2.2.1 Hệ đa agent

Nhiều agent thương mại trước đây được phát triển để tìm kiếm thông tin Mỗiagent riêng biệt chạy trong một phạm vi để thu thập một số kiểu thông tin nhất địnhnào đó và trả về thông tin tới người yêu cầu Nói cách khác, các agent này hoạt độngđơn lẻ một mình và rất ít khi tương tác với các agent khác (nếu có) Cách tiếp cận nhưvậy chắc chắn sẽ có những lợi ích của nó Tuy nhiên, nếu nhìn vào thế giới con ngườithực, cách tiếp cận đơn độc như thế sẽ không thể xây dựng được mạng xã hội hoặc cókhả năng hỗ trợ mọi người đến và tham gia các tổ chức Thay vào đó, chúng ta thiếtlập các mạng có thể tương tác lẫn nhau phục vụ cho nhiều mục đích Tương tác giữacác agent chưa đủ để xây dựng xã hội agent, chúng ta cần các agent có thể phối hợpvới nhau – dù là cộng tác, cạnh tranh hay tổ hợp của cả hai Các “xã hội” agent nàyđược gọi là hệ đa agent (multiagent systems – MAS) Vậy các hệ đa agent là các hệthống bao gồm các agent kết hợp trong mối quan hệ với các agent khác và tương tácvới nhau theo một cách nào đó

Các đặc điểm của các hệ đa agent:

Một agent có thể làm mọi thứ, nhưng các agent chậm chạp (fat agents) sẽ giảm

về tốc độ, độ tin cậy, khả năng bảo trì, v.v…(tức là không có các agent tuyệt đối).Phân chia chức năng giữa các agent sẽ tăng tính mô đun, tính linh động, dễ sửa đổi và

Trang 40

Để hỗ trợ các hệ đa agent cần phải thiết lập một môi trường thích hợp Các môitrường MAS phải cung cấp một cơ sở hạ tầng có các giao thức tương tác và truyềnthông, thường xuyên mở hoặc thiết kế tập trung và có các agent tự chủ, thích nghi,phối hợp.

2.2.2 Mối quan hệ giữa hệ đa agent và tích hợp thông tin

Như đã trình bày trong chương 1, các hệ đa agent là các hệ thống bao gồm cácagent kết hợp trong mối quan hệ với các agent khác hoạt động tự chủ, thích nghi vàphối hợp với nhau, các hệ đa agent hỗ trợ tốt các ứng dụng đòi hỏi tính toán phân tán

và cũng rất phù hợp với các ứng dụng tích hợp thông tin bởi các nguyên nhân sau:

Mỗi agent trong hệ đa agent thường đại diện cho một thành phần hay mộtnguồn thông tin nào đó trong hệ thống Do đó, các mô hình tương tác giữa các agent sẽ

là cơ sở để tích hợp thông tin trong hệ thống

Đặc điểm của mỗi agent trong hệ đa agent là chủ động và hướng đích Các

agent trong hệ thống do vậy sẽ luôn hành động hướng tới đích riêng của mình và chủđộng trong việc tìm các thông tin cần thiết để quyết định hành động tiếp theo cần thựchiện Đó cũng là một trong những đặc trưng của hệ tích hợp thông tin

Tương tác trong hệ đa agent sử dụng ontology Ontology có vai trò quan trọng

trong việc biểu diễn thông tin và tri thức của miền tri thức mà agent quan tâm Do đó,thông qua tương tác, các agent sẽ trao đổi thông tin và tri thức giữa các nguồn thôngtin Đây chính là cơ sở để giải quyết vấn đề không đồng nhất giữa các nguồn thông tintrong tích hợp thông tin

Hệ đa agent có tính động Điều này phù hợp với sự thay đổi, thêm bớt các

nguồn thông tin trong hệ thống tích hợp thông tin Hơn nữa, các agent luôn sống (chạy

không ngừng) Do vậy hệ đa agent sẽ luôn cập nhật được những thay đổi của các

nguồn thông tin cần cho việc tích hợp

Xét theo chiều ngược lại, tích hợp thông tin cũng là một yêu cầu tất yếu đặt racho các hệ phần mềm đa agent Điều này được thể hiện qua các điểm sau:

Các agent trong hệ đa agent là độc lập và nắm giữ một nguồn thông tin hạn chế (hoặc một tài nguyên hạn chế) Chúng bắt buộc phải tương tác với các agent khác

để hướng tới đích riêng của mình Bản chất của các tương tác này chính là quá trìnhgửi và nhận thông tin giúp các agent ra quyết định về hành động tiếp theo nhằm hướngtới đích

Ngày đăng: 02/07/2014, 21:46

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Nguyễn Văn Đông (2007); “Nghiên cứu vấn đề tích hợp dữ liệu của Bộ Giao thông Vận tải. Áp dụng thử nghiệm đối với việc tích hợp cơ sở dữ liệu từ Cục Hàng hải về Bộ”; Luận văn thạc sĩ trường Đại học Công nghệ, Đại học Quốc gia Hà nội. Tr54, 60, 61 Sách, tạp chí
Tiêu đề: “Nghiên cứu vấn đề tích hợp dữ liệu của Bộ Giao thông Vận tải. Áp dụng thử nghiệm đối với việc tích hợp cơ sở dữ liệu từ Cục Hàng hải về Bộ”
[2]. Lê Diệu Thu, Trần Thị Ngân (2008), “Xây dựng ontology nhằm hỗ trợ tìm kiếm ngữ nghĩa trong lĩnh vực y tế”, báo cáo nghiên cứu khoa học, trường Đại học Công nghệ, Đại học Quốc gia Hà nội, tr6-9.Tiếng Anh Sách, tạp chí
Tiêu đề: “Xây dựng ontology nhằm hỗ trợ tìm kiếm ngữ nghĩa trong lĩnh vực y tế”
Tác giả: Lê Diệu Thu, Trần Thị Ngân
Năm: 2008
[3]. A gustina Buccella, Alejandra Cechich, Nieves R.Brisaboa (2003), “An Ontology Approach to Data Integration” Sách, tạp chí
Tiêu đề: An Ontology Approach to Data Integration
Tác giả: A gustina Buccella, Alejandra Cechich, Nieves R.Brisaboa
Năm: 2003
[5]. An drea Cali, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini (2002), “On the role of Integrity Constrants in Data Integration”, IEEE Computer Society Technical Committee ontology Data Engineering Sách, tạp chí
Tiêu đề: On the role of Integrity Constrants in Data Integration
Tác giả: An drea Cali, Diego Calvanese, Giuseppe De Giacomo, Maurizio Lenzerini
Năm: 2002
[6]. A ndreia Malucelli. “Ontology-based Services for Agents Interoperability” Sách, tạp chí
Tiêu đề: Ontology-based Services for Agents Interoperability
[7]. B. Chandrasekaran and John R.Josephson, V.Richard Benjamins (1999), “What are Ontologies, and Why do we need them?” Sách, tạp chí
Tiêu đề: What are Ontologies, and Why do we need them
Tác giả: B. Chandrasekaran and John R.Josephson, V.Richard Benjamins
Năm: 1999
[9]. Borst, W. N. “Construction of Engineering Ontologies”. University of Tweenty. Enschede, The Netherlands - Centre for Telematica and InformationTechnology, 1997 Sách, tạp chí
Tiêu đề: Construction of Engineering Ontologies
[10]. Bross R., Dillenseger B., Dini P., Hong T., Leichsenring A., Leith M., Malville E., Nietfeld M., Sadi K., and Zell M.: “Mobile Agent Platform Assessment Report”. Technical report for IST ACTS Programme Project AC338 Sách, tạp chí
Tiêu đề: Mobile Agent Platform Assessment Report
[11]. Burbeck, K. Garpe, D. Nadjm-Tehrani, S: “Scale-up and performance studies of three agent platforms”. In: Performance, Computing, and Communications, 2004 IEEE International Conference on, pages: 857- 864.April 15-17, 2004, Linkoping University Sách, tạp chí
Tiêu đề: Scale-up and performance studies of three agent platforms
[13]. Fabio Bellifemine, Giovanni Caire and Dominic Greenwood (2007), “Developing Multi-Agent Systems with JADE” Sách, tạp chí
Tiêu đề: Developing Multi-Agent Systems with JADE
Tác giả: Fabio Bellifemine, Giovanni Caire and Dominic Greenwood
Năm: 2007
[16]. Gerhard Schuster and Heiner Stuckenschmidt (2001), “Buiding Shared Ontologies for Terminology Integration” Sách, tạp chí
Tiêu đề: Buiding Shared Ontologies for Terminology Integration
Tác giả: Gerhard Schuster and Heiner Stuckenschmidt
Năm: 2001
[17]. Gruninger, M., Fox, M. S. “Methodology for the design and evaluation of ontologies”, In: IJCAI95 Workshop on Basic Ontological Issues in Knowledge Sharing, Montreal, Canada Sách, tạp chí
Tiêu đề: Methodology for the design and evaluation of ontologies
[18]. Guarino, N. “Formal ontology in information systems”, IOS press, Amsterdan, NL, 1998 Sách, tạp chí
Tiêu đề: Formal ontology in information systems
[19]. H. Stuckenschmidt, H.Wache, U. Visser, G. Schuster, “Methodologies for ontology-based semantic translation”, The BUSTER Project, TZI, Intelligent Systems Group, University of Bremen, Germany Sách, tạp chí
Tiêu đề: Methodologies for ontology-based semantic translation
[20]. H. Wache, T.Vogele, U.Visser, H.Stuckenschmidt, G.Schuster, H.Neumann and S.Hubner (2001), “Ontology–based Integration of Information – A Survey of Existing Approaches”, Intelligent Systems Group, Center for Computing Technologies Sách, tạp chí
Tiêu đề: Ontology–based Integration of Information – A Survey of Existing Approaches
Tác giả: H. Wache, T.Vogele, U.Visser, H.Stuckenschmidt, G.Schuster, H.Neumann and S.Hubner
Năm: 2001
[21]. Howard Beck, Helena Sofia Pinto (2002), “Methodologies, Standards, and Tools for Ontologies”, The Agricultural Ontology Service, UN FAO Sách, tạp chí
Tiêu đề: Methodologies, Standards, and Tools for Ontologies
Tác giả: Howard Beck, Helena Sofia Pinto
Năm: 2002
[4]. A gent Oriented Software Group: JACK Intelligent Agents. http://www.agent- software.com/shared/home/ Link
[14]. FIPA. FIPA (Foundation for Intelligent Agents), http://www.fipa.org, 1999.[15]. Foundation for Intelligent Physical Agents.http://www.fipa.org/resources/livesystems.html Link
[40]. Network Agents Research Group: April Agent Platform. http://sourceforge.net/projects/networkagent/ Link
[46]. Protégé. Stanford Medical Informatics: 2004. http://protege.stanford.edu/ Link

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Một số công cụ phát triển hệ đa agent. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Hình 1.1. Một số công cụ phát triển hệ đa agent (Trang 23)
Bảng 1.1 sẽ so sánh mức độ duy trì hiện nay của 9 platform trên. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.1 sẽ so sánh mức độ duy trì hiện nay của 9 platform trên (Trang 29)
Bảng 1.2. So sánh mức độ tích cực của các platform - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.2. So sánh mức độ tích cực của các platform (Trang 30)
Bảng 1.3 xin là kết quả so sánh 9 platform theo tiêu chí này. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.3 xin là kết quả so sánh 9 platform theo tiêu chí này (Trang 31)
Bảng 1.3. So sánh mức độ cập nhật của các platform - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.3. So sánh mức độ cập nhật của các platform (Trang 31)
Bảng 1.4 là kết quả so sánh các platform theo tiêu chí 4: - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.4 là kết quả so sánh các platform theo tiêu chí 4: (Trang 32)
Bảng 1.5. So sánh mức độ truy cập thông tin của các platform - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.5. So sánh mức độ truy cập thông tin của các platform (Trang 33)
Bảng 1.7. So sánh khả năng cung cấp phiên bản gọn nhẹ của các platform - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.7. So sánh khả năng cung cấp phiên bản gọn nhẹ của các platform (Trang 34)
Bảng 1.8. So sánh khả năng dùng sẵn của các platform - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Bảng 1.8. So sánh khả năng dùng sẵn của các platform (Trang 35)
Sơ đồ tổng quát của một hệ đa agent tích hợp thông tin được thể hiện trong hình  2.1, trong đó: - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Sơ đồ t ổng quát của một hệ đa agent tích hợp thông tin được thể hiện trong hình 2.1, trong đó: (Trang 43)
Hình 2.2 là một số nhận xét về các bộ công cụ trên dựa trên một số tiêu chí  đánh giá: kiến trúc phần mềm và sự phát triển công cụ, sự tương thích với các bộ công  cụ khác, cách biểu diễn tri thức, các dịch vụ inference tích hợp vào bộ công cụ và khả  năn - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Hình 2.2 là một số nhận xét về các bộ công cụ trên dựa trên một số tiêu chí đánh giá: kiến trúc phần mềm và sự phát triển công cụ, sự tương thích với các bộ công cụ khác, cách biểu diễn tri thức, các dịch vụ inference tích hợp vào bộ công cụ và khả năn (Trang 50)
Hình 2.3. Cách tiếp cận đơn ontology. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Hình 2.3. Cách tiếp cận đơn ontology (Trang 52)
Hình 2.4. Cách tiếp cận đa ontology. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Hình 2.4. Cách tiếp cận đa ontology (Trang 53)
Hình 2.5. Cách tiếp cận lai. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Hình 2.5. Cách tiếp cận lai (Trang 54)
Hình 2.6. Các bước xây dựng cấu trúc ontology. - ứng dụng agent phần mềm trong tích hợp thông tin về phương tiện giao thông
Hình 2.6. Các bước xây dựng cấu trúc ontology (Trang 56)

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

w