Tải bản đầy đủ - 0 (trang)
TỔNG QUAN VỀ HỆ THỐNG ĐA TÁC TỬ

TỔNG QUAN VỀ HỆ THỐNG ĐA TÁC TỬ

Tải bản đầy đủ - 0trang

20

Vấn đề quan trọng mà một tác tử đối mặt là chúng phải quyết định

những hành động nào được thực hiện để thỏa mãn những mục tiêu thiết kế nó.

Kiến trúc tác tử thực ra là kiến trúc phần mềm cho hệ thống sinh quyết định

được thiết kế trong một mơi trường.

2.1.2 Mơi trường

Như đã nói ở trên, kiến trúc tác tử thực ra là kiến trúc phần mềm cho hệ

thống sinh quyết định được thiết kế trong một môi trường. Tính phức tạp của

tiến trình sinh quyết định tùy thuộc vào thuộc tính của mơi trường. Theo

Russell và Norvig [20] thì mơi trường có thể được phân loại dựa vào các

thuộc tính sau:

 Có thể truy cập và khơng thể truy cập (Accessible and Inaccessible):

một mơi trường có thể truy cập là một mơi trường mà tác tử có thể thu

được những thơng tin chính xác, đầy đủ, mới nhất về mơi trường đó.

Mơi trường thế giới thực (Internet hay môi trường vật lý) là những môi

trường không thể truy cập.

 Xác định và không xác định (Deterministic and Non-deterministic): một

môi trường xác định là một môi trường mà mỗi hành động của tác tử

đều cho một kết quả duy nhất đối với môi trường. Trên thực tế, hầu hết

các môi trường là không xác định.

 Tĩnh và động (Dynamic and Static): môi trường tĩnh là môi trường mà

không đổi ngoại trừ được tác tử tác động vào. Ngược lại, môi trường

động là môi trường mà thay đổi vượt q tầm kiểm sốt của tác tử (mơi

trường vật lý, Internet).

 Rời rạc và liên tục (Discrete and Continuous): môi trường rời rạc là mơi

trường có hữu hạn các trạng thái. Ví dụ trò chơi cờ tướng là một mơi

trường rời rạc (mặc dù số trạng thái rất lớn).

 Môi trường phân đoạn và không phân đoạn (Episodic and

Nonepisodic): với một mơi trường phân đoạn thì kinh nghiệm của tác tử

được chia thành các đoạn. Mỗi đoạn bao gồm nhận thức và hành động



21

của tác tử. Chất lượng của các hành động của tác tử phụ thuộc vào chính

các đoạn của nó. Bởi vì dãy các đoạn khơng phụ thuộc vào hành động

xảy ra ở đoạn trước. Môi trường phân đoạn thì đơn giản đối với tác tử vì

nó khơng cần “suy nghĩ” trước.



2.1.3 Tác tử thông minh

Một số lượng lớn hệ thống tính tốn phù hợp với định nghĩa tác tử như ở

phần trên và do vậy có thể coi là tác tử. Tuy nhiên, các nghiên cứu về tác tử

thường quan tâm đặc biệt tới tác tử thông minh (intelligent agent), được định

nghĩa như sau:

Tác tử thông minh là tác tử có khả năng hoạt động linh hoạt và mềm dẻo

để thực hiện mục tiêu được giao.

So với tác tử nói chung, đặc điểm quan trọng của tác tử thơng minh là

linh hoạt. Tính linh hoạt của tác tử được xác định bởi các đặc điểm sau:

* Tính phản xạ: tính phản xạ là khả năng tác tử có thể nhận biết được

mơi trường (qua bộ phận cảm nhận nào đó) và dựa vào đó, tác tử đáp ứng kịp

thời những thay đổi xảy ra trong môi trường.

* Tính chủ động (hành động có mục đích): khơng chỉ phản xạ, tác tử còn

phải biết chủ động tìm kiếm khả năng hành động hướng tới thực hiện mục

tiêu được giao.

* Tính cộng đồng: Các tác tử khơng chỉ hướng tới đích riêng của mình

mà còn có khả năng tương tác với các tác tử khác trong hệ thống để hướng tới

đích chung của hệ thống. Các hoạt động tương tác này rất đa dạng bao gồm

phối hợp, thương lượng, cạnh tranh…

* Khả năng tự học: tự học hoặc học tự động là khả năng của tác tử thu

thập các kiến thức mới từ kinh nghiệm thu lượm được, chẳng hạn qua các lần

thành công và thất bại. Kết quả tự học phải làm cho tác tử hành động tốt hơn,

hiệu quả hơn.



22

Ngoài các đặc điểm đã được nhắc tới ở những định nghĩa trên và được

coi là quan trọng nhất, tác tử có thể có thêm một hoặc một vài đặc điểm sau:

* Tính thích nghi: thích nghi là khả năng của tác tử tồn tại và hoạt động

hiệu quả khi mơi trường thay đổi. Mặc dù có nhiều nét liên quan với tính phản

xạ, khả năng thích nghi của tác tử khó thực hiện và đòi hỏi nhiều thay đổi

trong quá trình suy diễn của tác tử hơn. Tính thích nghi có thể thực hiện nhờ

khả năng tự học từ kinh nghiệm của tác tử.

* Khả năng di chuyển: là khả năng của tác tử (phần mềm) di chuyển

giữa các máy tính hoặc các nút khác nhau trong mạng đồng thời giữ nguyên

trạng thái và khả năng hoạt động của mình. Các tác tử có đặc điểm này được

gọi là tác tử di động.

2.1.4 Tác tử và đối tượng

Để hiểu rõ hơn khái niệm tác tử, chúng ta hãy so sánh tác tử và đối

tượng. Trong phương pháp hướng đối tượng, các đối tượng được định nghĩa

là các thực thể tính tốn đóng gói bao gồm các trạng thái, các hành động hay

phương thức trong trạng thái đó và các đối tượng liên lạc với nhau thông qua

việc gửi các thơng điệp.

Xét theo quan điểm hệ thống, có thể xem mỗi tác tử cũng là một đối

tượng nhưng ở mức trừu tượng cao hơn. Với định nghĩa tác tử đã được đề cập

ở mục 2.1.1 thì các đối tượng và các tác tử có các điểm khác biệt sau:

- Tác tử có tính tự chủ cao hơn đối tượng. Điều này thể hiện ở chỗ các

tác tử có thể tự quyết định hành động của mình mà khơng phải là thực hiện

hành động theo yêu cầu của tác tử khác. Ngược lại, các đối tượng chỉ thực sự

hoạt động khi nhận được lời gọi hàm từ các đối tượng khác. Trong các ngơn

ngữ lập trình hướng đối tượng như Java, các đối tượng có các thành phần

riêng kiểu private không thể truy nhập từ các đối tượng khác. Tuy nhiên, các

đối tượng lại không thể tự chủ về mặt hành vi của mình. Một đối tượng với



23

thành phần public có thể được truy cập bởi các đối tượng khác và chỉ khi một

đối tượng khác sử dụng các lời gọi tới các thành phần public này thì nó mới

thực sự hoạt động.

- Tác tử có tính hướng đích, mỗi tác tử có một đích riêng và đích của các

tác tử trong một hệ thống có thể thống nhất hay khơng tương thích với nhau.

Trong khi đó các đối tượng khơng có mục đích riêng, chúng cùng chia sẻ mục

đích chung của cả hệ thống. Do đó, các tác tử thường phải thương lượng với

nhau trong quá trình tương tác.

- Tác tử có các hành vi linh hoạt dựa trên các đặc trưng như tính chủ

động, khả năng phản ứng và khả năng xã hội đã trình bày ở trên. Còn các đối

tượng thì khơng có các kiểu hành vi này.

- Mỗi tác tử có một hoặc nhiều luồng điều khiển riêng. Trong hệ hướng

đối tượng cũng có điều khiển theo kiểu luồng nhưng không yêu cầu mỗi đối

tượng là có luồng riêng mà ngược lại có thể có nhiều đối tượng chung một

luồng. Bản chất của sự khác nhau này cũng là đặc trưng quan trọng về mức độ

tự chủ của tác tử so với đối tượng.

2.2. HỆ ĐA TÁC TỬ

2.2.1 Khái niệm hệ đa tác tử

Do ứng dụng ngày càng phức tạp, khả năng giải quyết vấn đề của những

tác tử riêng lẻ không đáp ứng được yêu cầu đặt ra hoặc tác tử trở nên quá

phức tạp. Trong trường hợp đó, hệ đa tác tử là giải pháp thích hợp. Hệ đa tác

tử là hệ thống bao gồm nhiều tác tử có khả năng tương tác với nhau. Việc kết

hợp nhiều tác tử cho phép tạo ra các hệ thống có những đặc điểm mà các tác

tử xét riêng lẻ khơng có.

Nghiên cứu về hệ đa tác tử có nguồn gốc từ một hướng nghiên cứu của

trí tuệ nhân tạo – trí tuệ nhân tạo phân tán [21]. Hệ đa tác tử nghiên cứu hành

vi của tập hợp các tác tử làm việc cùng nhau để giải quyết một nhiệm vụ nào



24

đó. Tương tác giữa những tác tử này không biết trước và chỉ xác định trong

quá trình hệ thống hoạt động. Tác tử trong các hệ thống có thể thuộc về những

cá nhân và tổ chức khác nhau với những mục tiêu mâu thuẫn. Quan hệ giữa

tác tử chỉ là phối hợp chứ không nhất thiết là hợp tác. Ngoài ra nếu như giải

quyết vấn đề phân tán được thiết kế theo kiểu trên – xuống, tức là q trình

phân tích đi từ tổng thể xuống những thành phần con, thì hệ tác tử trong nhiều

trường hợp được xây dựng theo mơ hình dưới – lên. Các tác tử tự chủ riêng lẻ

được trang bị thêm cơ chế liên lạc, thay đổi cơ chế suy diễn cho phép thực

hiện phối hợp để tạo thành hệ đa tác tử.

* Hệ thống đa tác tử có các đặc điểm chính sau:

 Thơng tin hoặc khả năng giải quyết vấn đề của từng tác tử là hạn chế,

không đầy đủ.

 Khơng có sự điều khiển tập trung cho toàn hệ thống.

 Dữ liệu được phân tán trên những thành phần khác nhau của hệ

thống.

 Q trình tính tốn được thực hiện khơng đồng bộ.

* Những ưu điểm chính của hệ đa tác tử:

 Cho phép giải quyết các vấn đề phức tạp đối với từng tác tử riêng lẻ,

những bài tốn đòi hỏi tài ngun tính tốn q lớn, hoặc những vấn đề đòi

hỏi phân tán để tránh tắc nghẽn và tăng tính ổn định.

 Cho phép tích hợp các chương trình, hệ thống có sẵn. Các hệ thống có

sẵn cần được nâng cấp và khả năng tích hợp với các hệ thống mới, việc sửa

đổi các hệ thống cũ rất tốn kém hoặc thậm chí khơng thực hiện được. Hệ đa

tác tử cho phép tích hợp các hệ thống cũ bằng cách tạo ra các tác tử bao. Các

tác tử bằng cơ chế liên lạc của mình có thể đóng vai trò giao diện, cầu nối,

cho phép các hệ thống khơng tương thích tích hợp với nhau.

 Cho phép mơ hình hóa một cách tự nhiên và trực giác nhiều vấn đề có

cấu trúc giống với hệ đa tác tử. Ví dụ như hệ thống tra cứu kiến thức tốn học



25

có thể hình dung một cách tự nhiên như hệ đa tác tử, mỗi tác tử đại diện cho

một tri thức lĩnh vực toán khác nhau như: Tốn rời rạc, Tốn đồ thị, Đại số

tuyến tính, Hình học, Giải tích....

 Cho phép giải quyết các vấn đề trong đó thơng tin hoặc tri thức có tính

phân tán.

 Khả năng mở rộng: hệ đa tác tử là hệ mở vì có thể có thêm các tác tử

mới hoặc bớt đi các tác tử khi chúng hoàn thành nhiệm vụ. Khả năng này phù

hợp với tính mở trong yêu cầu của các hệ phần mềm hiện nay.

 Khả năng bảo trì: do hệ đa tác tử gồm nhiều tác tử, mỗi tác tử là một

module có tính tự chủ cao nên hệ đa tác tử là hệ dễ bảo trì.

 Tính linh hoạt: các tác tử trong hệ đa tác tử với khả năng khác nhau có

thể tương tác với nhau để cùng giải quyết một vấn đề chung. Một tác tử trong

hệ thường không phải chờ tác tử khác mà chủ động tương tác để tìm ra thơng

tin cần thiết nhằm giải quyết vấn đề của nó.

* Những vấn đề liên quan đến hệ đa tác tử: việc thiết kế và cài đặt hệ đa

tác tử nảy sinh nhiều vấn đề cần giải quyết. Các vấn đề thường được nhắc đến

và cũng là mục đích các nghiên cứu liên quan đến hệ đa tác tử bao gồm:

 Cách biểu diễn, phân rã bài toán, phân chia bài toán con đến các tác tử

trong hệ thống cũng như tổng hợp kết quả thành phần.

 Tổ chức tương tác, liên lạc giữa các tác tử, sử dụng giao thức liên lạc

và ngôn ngữ giao tiếp nào, nội dung trao đổi là gì và thời gian liên lạc ra sao.

 Trong khi từng tác tử ra quyết định và hành động cục bộ vẫn phải đảm

bảo tính thống nhất, hiệu quả của cả hệ thống.

 Để có thể hợp tác với nhau, mỗi tác tử phải có thơng tin và hình dung

nhất định về các tác tử khác.

 Giải quyết các vấn đề có thể có trong q trình hoạt động của hệ thống.

 Cân bằng giữa khối lượng tính tốn cục bộ và phí tổn liên lạc giữa các

tác tử trong hệ thống.



26

 Xây dựng công cụ, phương pháp thiết kế và cài đặt các hệ đa tác tử cho

các ứng dụng thực tiễn.

2.2.2 Tương tác trong hệ đa tác tử

Hệ đa tác tử bao gồm nhiều tác tử tự chủ có thể hoạt động trên những

máy tính khác nhau. Tuy nhiên, các tác tử thường phải trao đổi, tương tác với

nhau, chính các tương tác trong hệ đa tác tử quyết định kiến trúc của hệ thống

đó. Các dạng tương tác này phức tạp hơn rất nhiều so với các tương tác trong

hệ đối tượng. Các tác tử tương tác với nhau bằng cách gửi thông điệp. Bản

chất của các thông điệp này cũng là những lời gọi hàm như trong hệ hướng

đối tượng nhưng các lời gọi trong tương tác giữa các tác tử có nhiều khác biệt

so với tương tác giữa các đối tượng:

• Các tham số có thể có kiểu được định nghĩa trong một cấu trúc ngữ nghĩa

gọi là ontology.

• Các tham số được viết theo một dạng thông điệp truyền thông được định

nghĩa bởi một ngôn ngữ truyền thông tác tử (như KQML hoặc FIPAACL).

• Nội dung của thơng điệp trong tương tác đa tác tử có thể rất phức tạp như

một chuỗi các hành động hoặc các yêu cầu…

Vai trò của tương tác trong hệ đa tác tử có thể được tổng kết như sau:





Thông qua tương tác, mỗi tác tử sẽ thu thập thơng tin và tri thức nhằm



đạt được đích (goal) riêng của mình và hướng tới đích chung của cả hệ thống.

Tương tác tạo nên tính động cho hệ đa tác tử. Qua tương tác, hệ thống có thể

được mở rộng hay thu hẹp một cách dễ dàng, nhất là với các hệ đa tác tử sử

dụng tác tử trung gian.





Q trình tương tác khơng chỉ diễn ra giữa các tác tử mà còn có thể



diễn ra giữa các hệ tác tử khác nhau. Khi đó, khả năng phối hợp giữa các hệ

thống để giải quyết các vấn đề phức tạp tăng lên nhiều lần.



27

Tương tác giữa các tác tử quyết định kiến trúc và hoạt động của hệ đa







tác tử đó. Thơng qua việc xem xét các tương tác cần có giữa các tác tử, người

thiết kế hệ thống có thể xây dựng kiến trúc hệ thống và phân tách nhiệm vụ

một cách rõ ràng cho từng tác tử.

 Tương tác giữa các tác tử giúp tích hợp các nguồn thơng tin trong hệ

thống. Trong hệ tích hợp thơng tin, mỗi tác tử đại diện cho một nguồn thông

tin nhất định. Các nguồn thông tin này thường là không đồng nhất, được biểu

diễn theo những cách khác nhau. Thông qua tương tác, thơng tin giữa các

nguồn đó sẽ được tích hợp để tổng hợp được những thơng tin cần thiết.

Ba vấn đề sau đây cần quan tâm khi nghiên cứu về tương tác trong hệ đa

tác tử:

1. Mơ hình tương tác: Tuỳ thuộc vào mục đích của hệ thống cụ thể mà

người phát triển hệ thống phải lựa chọn một mơ hình tương tác phù hợp, mơ

hình tương tác này sẽ quy định kiến trúc của hệ thống cũng như hành vi của

các tác tử trong hệ thống.

2. Ngôn ngữ truyền thông sử dụng trong các thông điệp: Khi hoạt động

trong cùng một hệ thống với nhau các tác tử phải sử dụng chung một ngôn

ngữ truyền thông. Ngôn ngữ này không chỉ quy định cấu trúc thông điệp mà

còn quy định các dạng thơng điệp hỏi và trả lời trong các phiên hội thoại.

3. Ontology và sử dụng ontology trong tương tác đa agent: Mỗi tác tử

trong hệ thống là một thành phần phần mềm riêng biệt, do đó, miền tri thức

quan tâm của các tác tử trong một hệ thống có thể khác nhau. Để các tác tử có

thể hiểu nhau trong q trình trao đổi thì hệ thống phải sử dụng ontology

nhằm biểu diễn các khái niệm mô tả miền và mối quan hệ giữa các khái niệm

đó.

2.2.3 Phối hợp và tầm quan trọng đối với hệ đa tác tử

a. Phối hợp



28

Mục đích chính của việc xây dựng và ứng dụng hệ đa tác tử là kết hợp

khả năng của nhiều tác tử để giải quyết một số nhiệm vụ. Trong một hệ thống

có nhiều thành viên với đặc điểm tự chủ như vậy, nếu mỗi thành viên hành

động theo cách của mình, khơng tương tác hợp lý với những thành viên khác

thì tồn hệ thống sẽ hoạt động rời rạc, không ăn ý; thành viên của hệ thống,

thay vì đóng góp vào giải quyết cơng việc chung, có thể cản trở lẫn nhau, làm

ảnh hưởng tới hoạt động của thành viên khác. Hệ thống khi đó sẽ hoạt động

kém hiệu quả, cho kết quả ngược với mong đợi. Để giải quyết vấn đề này, khi

thiết kế và xây dựng hệ đa tác tử cần đặc biệt quan tâm đến vấn đề phối hợp.

Phối hợp là tổ chức và quản lý quan hệ phụ thuộc trong hành động của

các tác tử sao cho toàn hệ thống hoạt động một cách thống nhất.

Quá trình phối hợp phải cho phép đáp ứng những yêu cầu sau:

- Đảm bảo các phần việc của nhiệm vụ chung được sắp xếp trong kế

hoạch của ít nhất một tác tử (đảm bảo cơng việc sẽ được ai đó thực hiện).

- Tác tử tương tác với nhau sao cho hoạt động của tác tử được kết hợp

với nhau để tạo thành kết quả chung.

- Các yêu cầu đó phải được thực hiện trong một thời gian hữu hạn với số

lượng tài nguyên tính toán hợp lý.

b. Sự cần thiết phải phối hợp

Hành động của mỗi tác tử phụ thuộc vào hành động của các tác tử khác.

Hành động của tác tử phụ thuộc vào nhau trong hai trường hợp:

+ Quyết định của tác tử này ảnh hưởng đến quyết định của tác tử khác,

chẳng hạn, khi đá bóng việc tiền đạo chạy lên phía trước sẽ ảnh hưởng tới

quyết định của tiền vệ chuyền bóng lên thay vì chuyền ngang.



29

+ Hành động của tác tử có thể mâu thuẫn với nhau, ví dụ nếu nhiều tác

tử - robot có nhu cầu di chuyển qua một cửa trong khi cửa chỉ cho phép từng

tác tử đi qua thì có thể dẫn tới va chạm.

Phối hợp cho phép tránh tình trạng hỗn loạn. Trong hệ thống bao gồm

nhiều tác tử, mỗi tác tử chỉ có hình dung cục bộ về mơi trường và hành động

của mình, hành động của nhiều tác tử có thể mâu thuẫn với nhau, tình trạng

hỗn loạn là rất tự nhiên là khơng thể tránh khỏi nếu khơng có cơ chế phối hợp.

Phối hợp cho phép đạt được những ràng buộc tổng thể. Ràng buộc tổng

thể là ràng buộc mà nhóm tác tử cần thỏa mãn trong quá trình hoạt động. Nếu

mỗi tác tử làm việc riêng rẽ và đều cố gắng tối ưu hàm mục tiêu riêng của

mình thì các ràng buộc này sẽ bị phá vỡ.

Không cá thể nào có khả năng thực hiện cơng việc một mình do hạn chế

về tài nguyên, khả năng hoặc thông tin. Việc tạo ra một tác tử vạn năng gồm

những thành phần có khả năng thực hiện mọi nhiệm vụ có thể khơng thực tế

hoặc kém hiệu quả, do đó, phối hợp nhiều tác tử có khả năng giải quyết vấn

đề độc lập là giải pháp tối ưu.

c. Phối hợp trong hệ đa tác tử

Phối hợp trong hệ đa tác tử xuất hiện trong thời gian hệ thống hoạt động.

Do vậy tác tử phải có khả năng phát hiện yêu cầu phối hợp và thực hiện phối

hợp như một phần trong hoạt động của mình. Đặc điểm này khác với các hệ

thống phân tán truyền thống trong đó q trình phối hợp giữa các thành phần

được dự đốn trước trong q trình thiết kế.

Để thực hiện phối hợp, tác tử có thể liên lạc với nhau. Tuy nhiên liên lạc

không phải là điều kiện bắt buộc cho phối hợp. Phối hợp không thơng qua liên

lạc có thể thực hiện nếu mỗi tác tử có được mơ hình hành động của tác tử

khác.

d. Quan hệ giữa các hành động



30

Hành động của tác tử trong hệ thống có thể có những mối quan hệ phụ

thuộc với nhau. Khi xây dựng cơ chế phối hợp cần chú ý đến những quan hệ

này. Quan hệ giữa hành động thực hiện bởi các tác tử khác nhau được chia

thành hai loại chính: tiêu cực và tích cực.



Hình 2.2: Các dạng quan hệ giữa các hành động



Hai hoặc nhiều hành động có quan hệ tiêu cực hay quan hệ mâu thuẫn

với nhau nếu việc thực hiện hành động này gây trở ngại cho việc thực hiện

đồng thời hành động khác. Nguyên nhân của quan hệ tiêu cực có thể do mâu

thuẫn về mục tiêu hành động hay do hạn chế về tài nguyên. Ngược lại, quan

hệ tích cực là quan hệ cho phép hành động này được lợi từ việc thực hiện

hành động khác. Việc kết hợp hành động có quan hệ tích cực cho kết quả tốt

hơn so với thực hiện những hành động này một cách độc lập. Quan hệ tích

cực được phân chia tiếp thành một số dạng sau:

 Quan hệ bình đẳng là quan hệ khi một hành động không gắn với một tác

tử cụ thể và do đó có thể được thực hiện bởi bất cứ tác tử nào.

 Quan hệ gộp là quan hệ khi một hành động A của tác tử X là một phần

trong hành động B của tác tử Y, do vậy khi Y thực hiện hành động B của

mình, hành động A cũng được thực hiện theo.



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

TỔNG QUAN VỀ HỆ THỐNG ĐA TÁC TỬ

Tải bản đầy đủ ngay(0 tr)

×