Bài giảng Chương I: Agent và công nghệ agent

Phân lớp theo chiều dọc (vertical layering) Ưu nhược điểm  Sự phức tạp trong tương tác giữa các lớp đã được giảm.  Luồng điều khiển phải đi qua toàn bộ các lớp vì thế nếu một lớp nào đó hoạt động không ổn định sẽ ảnh hưởng đến toàn bộ hệ thống.

pdf46 trang | Chia sẻ: chaien | Lượt xem: 2172 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Chương I: Agent và công nghệ agent, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
AGENT VÀ CÔNG NGHỆ AGENT Chương I: Giáo viên: Hồ Kim Giàu HỌC VIỆN BƯU CHÍNH VIỄN THÔNG Khoa Công nghệ thông tin Nha Trang, tháng 10/2011 MỤC ĐÍCH MÔN HỌC  Cung cấp:  Khái niệm, đặc điểm, phân loại, kiến trúc về Agent  Các hệ Agent, đa Agent và Giao thức giao tiếp  Công cụ xây dựng các hệ Agent => Định hướng:  Phát triển phần mềm dựa Agent  Tiếp cận phân tích và phát triển phần mềm hướng Agent. YÊU CẦU Học về CNPM Lập trình hướng đối tượng Trí tuệ nhân tạo Ngôn ngữ lập trình C++, Visual Basic Đồ án môn học NỘI DUNG I. Đặc trưng của các hệ phần mềm phức tạp. II.Khái niệm agent và các đặc trưng của agent. III. So sánh agent và đối tượng . IV. Kiến trúc của agent. I. Đặc trưng của các hệ phần mềm phức tạp. Khối lượng công việc cần xử lý ngày càng lớn. Yêu cầu về tính chính xác ngày càng cao. Yêu cầu về tính mở và phân tán. Yêu cầu tính độc lập cao giữa các thành phần trong hệ thống. II.Khái niệm agent và các đặc trưng của agent  Theo từ điển Heritage của Mỹ: "... Agent là một đối tượng mà có ảnh hưởng hay có khả năng và có quyền để tác động hay đại diện cho một đối tượng khác."  Russel và Norvig: "Một agent có thể được xét tới bởi khả năng nhận thức về môi trường nó đang tồn tại qua bộ cảm biến (sensor) và khả năng tác động lên môi trường đó qua cơ quan phản ứng (effector )."  Theo Pattie Maes “Agent tự chủ là các hệ tính toán tồn tại trong môi trường động và phức tạp, tri giác và hành động tự chủ trong môi trường này, qua đó hình dung được nhiệm vụ hoặc mục đích của mình." AGENT ? => Agent là một hệ tính toán hoàn chỉnh hay chương trình được đặt trong một môi trường nhất định, có khả năng hoạt động một cách tự chủ và mềm dẻo trong môi trường đó nhằm đạt được mục đích đã thiết kế. AGENT ? II.Khái niệm agent và các đặc trưng của agent Một Agent là một đơn vị phần cứng hay phổ thông hơn là hệ thống máy tính dựa trên phần mềm có các thuộc tính sau: Autonomy (Tính tự chủ ) Reactivity (Tính phản ứng) Pro-activeness (Tính chủ động) Social Ability (Tính cộng đồng) II.Khái niệm agent và các đặc trưng của agent Các đặc trưng của agent Agent có thể hành động trong những khoảng thời gian tương đối dài. Không cần sự can thiệp của con người. Có khả năng kiểm soát nhất định đối với hành động và trạng thái bên trong của mình Agent được định nghĩa dựa trên tính tự chủ là “một thực thể có khả năng kiểm soát hành động một cách độc lập với các thực thể khác, trừ khi cần phải trao đổi thông tin vì agent không có đủ tri thức để hoàn thành công việc”. Tính tự chủ - Autonomy II.Khái niệm agent và các đặc trưng của agent Khả năng tri giác được môi trường (thế giới thực, người sử dụng, các agent khác, Internet...) phản ứng kịp thời trong một thời gian nhất định nào đó. Agent có khả năng phản ứng lại các tác động từ môi trường theo một cơ chế nào đó. Agent có khả năng suy diễn từ sự kiện và trạng thái trong để ra quyết định. Tính phản ứng (reactivity) II.Khái niệm agent và các đặc trưng của agent Agent không chỉ phản ứng lại môi trường, chúng có thể hành động có mục đích và chủ động tranh thủ thời cơ để đạt được mục đích đó. Agent có khả năng suy diễn và lập kế hoạch từ thông tin và tri thức mà nó thu nhận được. Từ mục tiêu, agent xác định các hành động cần thiết và nó thực hiện một cách linh hoạt, có tính toán và chủ đích cho đến lúc đạt được mục tiêu đề ra. Ví dụ: Agent cần hoàn thành mục tiêu x, nó lập kế hoạch bao gồm các trạng thái trung gian y,z... phải đi qua và xác định các hành động để chuyển từ trạng thái này sang trạng thái khác. Tính chủ động (pro-activeness) II.Khái niệm agent và các đặc trưng của agent Agent có thể tương tác với những agent khác hay con người để hoàn thành công việc riêng của mình hay trợ giúp các agent khác trong những hoạt động nào đó. Một vài mục tiêu có thể thu được với sự phối hợp của các agent khác. => MultiAgent (đa Agent) Tính cộng đồng (Social Ability ) II.Khái niệm agent và các đặc trưng của agent Tính linh hoạt: trong việc phản ứng lại các tác động từ môi trường bên ngoài. Agent không thực hiện các hành động một cách máy móc mà có sự lựa chọn thích hợp. Tính thích nghi: là khả năng tự thay đổi để thích ứng với môi trường và theo ý muốn của người sử dụng. Tính liên tục theo thời gian : Agent về mặt hệ thống là một tiến trình hoạt động liên tục. Các đặc điểm khác II.Khái niệm agent và các đặc trưng của agent Khả năng agent xuyên qua các mạng truyền thông điện tử. Cho phép gửi các chuỗi thông điệp thông qua mạng. Ví dụ: Nếu agent di động hoạt động tự chủ, người sử dụng không cần yêu cầu duy trì kết nối mạng liên tục. Thay vào đó, có thể cung cấp cho agent nhiệm vụ, gửi nó thông qua mạng và rời bỏ kết nối mạng. Khi agent thu được kết quả yêu cầu, tự động thông báo ngược trở lại bằng việc thiết lập kết nối mạng cho người sử dụng hoặc chờ sự lựa chọn mạng tiếp theo của người sử dụng. Tính di động II.Khái niệm agent và các đặc trưng của agent Object  Là các thực thể có thể tính toán được.  Được gói gọn trong một vài trạng thái Có thể thực hiện các hành động hay các phương thức để thay đổi trạng thái.  Liên lạc thông qua việc gửi các thông điệp III. So sánh agent và object? Agent có tính tự chủ:  Agent có khả năng tự chủ hơn object.  Tự quyết định có thực hiện hay không một hành động hay một yêu cầu từ một agent khác.  Agent là thông minh:  Khả năng linh động trong hành vi (phản xạ + tự chủ và cộng đồng).  Mô hình đối tượng chuẩn không có những kiểu hành vi như vậy; III. So sánh agent và object? Tuyến điều khiển  Chương trình hướng đối tượng có một tuyến điều khiển riêng lẻ.  Mỗi Object có một tuyến điều khiển riêng của mình. Agent:  Một hệ thống đa agent là đa tuyến.  Mỗi agent được giả sử là có ít nhất một tuyến điều khiển tự chủ. Object điều khiển thông qua các trạng thái bên trong nhưng không qua hành vi của nó. Các object khác có thể gọi các phương thức chung của nó. III. So sánh agent và object? IV. Kiến trúc của agent Pattie Maes  Một phương pháp học đặc biệt để xây dựng agents.  Nó chỉ rõ làm thế nào agent có thể được tách ra thành cấu trúc của 1 tập các modules thành phần và làm thế nào những modules đó có thể tương tác với nhau.  Toàn bộ tập modules và sự tương tác giữa chúng cho ta câu trả lời làm thế nào mà những dữ liệu cảm biến và trạng thái hiện tại của agent xác định actions và những trạng thái trong tiếp theo của agent.  Một kiến trúc bao gồm các kỹ thuật và thuật toán hỗ trợ cho phương pháp này. Định nghĩa 1 IV. Kiến trúc của agent Kaelbling  Một tập hợp đặc biệt các software (or hardware) modules, được thiết kế đặc trưng bởi những hộp với những mũi tên để chỉ ra dữ liệu và dòng điều khiển giữa các modules.  Một cách nhìn trừu tượng hơn với kiến trúc agent là một phương pháp chung để thiết kế được những modules riêng biệt cho những nhiệm vụ cụ thể. Định nghĩa 2 IV. Kiến trúc của agent Mô tả các trạng thái trong của agent. Cấu trúc dữ liệu của nó. Thao tác có thể thực hiện trên các cấu trúc. Luồng điều khiển giữa các cấu trúc dữ liệu. Kiến trúc agent khác nhau trên nhiều khía cạnh khác nhau về cấu trúc dữ liệu và thuật toán được biểu diễn bên trong agent. Kiến trúc Agent? IV. Kiến trúc của agent Deliberative (Kiến trúc suy diễn)  Logic-Based Architectures  Belief-desire-intension BDI (Suy luận thông minh) Reactive (Kiến trúc phản xạ) Hybrid (Kiến trúc lai) Layered architectures (Kiến trúc lớp) Phân loại kiến trúc Agent? IV. Kiến trúc của agent Dựa trên symbolic AI Kiến trúc mà quá trình ra quyết định được thực hiện nhờ suy diễn logic. Các phương pháp ra quyết định  Logical Reasoning  Pattern matching  Symbolic manipulation 1. Kiến trúc suy diễn IV. Kiến trúc của agent a. Symbolic description of World  Mục đích cần đạt tới  Tập miêu tả hành động  Tìm một chuỗi actions để đạt tới mục đích.  Sử dụng thuật toán đơn giản  Tạo kế hoạch 1. Kiến trúc suy diễn IV. Kiến trúc của agent b. Belief-desire-intension (BDI - Suy luận thông minh)  Kiến trúc dựa trên quá trình suy luận thông minh, trong đó quá trình ra quyết định được tiến hành từng bước, các hành động được thực hiện xuất phát từ yêu cầu của hàm mục tiêu đề ra.  Beliefs: Biểu diễn tập các thông tin mà agent biết về môi trường hiện tại của nó (và có thể một vài trạng thái trong),  Desires: Xác định động cơ của nó.  Intentions: Biểu diễn những quyết định phải hành động như thế nào để hoàn toàn đạt tới desires của nó (committed desires) 1. Kiến trúc suy diễn IV. Kiến trúc của agent b. Belief-desire-intension (BDI - Suy luận thông minh)  Beliefs = “hiểu biêt của agent”  Desires = “những mục đích của agent”  Intentions = “những mục đích cần hoàn thành” (tập con của desires) 1. Kiến trúc suy diễn IV. Kiến trúc của agent Các thành phần của agent BDI  Tập các niềm tin hiện tại (belief): biểu diễn tập các thông tin mà agent biết được về môi trường hiện tại của nó.  Hàm thu nhận tri thức từ môi trường (belief revision function) thu nhận thông tin mới, cùng với niềm tin đã có tạo ra những hiểu biết mới về môi trường  Hàm sinh các lựa chọn (option generation function): đưa ra các lựa chọn có thể có đối với agent (desire) dựa trên hiểu biết đang có về môi trường và mong muốn của nó. 1. Kiến trúc suy diễn IV. Kiến trúc của agent Các tuỳ chọn hiện tại (set of current options) biểu diễn tập các hành động mà agent có thể thực hiện. Hàm lọc (filter function): biểu diễn cho quá trình cân nhắc của agent để chọn ra mong muốn dựa trên những điều kiện đang có, đang biết. Tập các mong muốn (intention): biểu diễn mong muốn hiện tại của agent. Hàm chọn hành động để thực hiện (action selection function): xác định hành động sẽ được thực hiện. 1. Kiến trúc suy diễn IV. Kiến trúc của agent Những hạn chế của kiến trúc suy diễn Vấn đề Transduction Tốn nhiều thời gian để chuyển đổi tất cả những thông tin cần thiết thành symbolic representation, đặc biệt nếu môi trường thay đổi rất nhanh. Vấn đề representation Làm thế nào để world-model được biểu diễn một cách tượng trưng và làm thế nào để agent có thể suy diễn kịp thời với sự thay đổi thông tin. 1. Kiến trúc suy diễn IV. Kiến trúc của agent Là kiến trúc mà quá trình ra quyết định được cài đặt một cách trực tiếp, tức là sẽ có một ánh xạ trực tiếp từ tình huống tới hành động. Không suy luận phức tạp. Sự suy diễn phức tạp có thể dẫn đến không lời giải hay đáp ứng về mặt thời gian. 2. Kiến trúc phản xạ IV. Kiến trúc của agent Những kiến trúc thông minh có thể được tạo ra không cần symbolic (AI) representation. Behavior thông minh có thể được tạo ra không cần explicit abstract symbolic reasoning (AI) mechanisms. Tính thông minh là thuộc tính nổi bật trong hệ thống phức tạp. Behavior thông minh là kết quả của việc tương tác với môi trường. 2. Kiến trúc phản xạ IV. Kiến trúc của agent 2. Kiến trúc phản xạ IV. Kiến trúc của agent Các thành phần của Perception (tri giác): Ngữ nghĩa học của đầu vào agent. Tập kiến thức cơ sở. A specification of state transitions  Actions được tạo ra bởi ngữ nghĩa của đầu ra agent (reaction).  Tất cả vận dụng symbolic được thực hiện trong thời gian dịch. 2. Kiến trúc phản xạ IV. Kiến trúc của agent Ví dụ Bộ tản nhiệt đơn giản là agent phản xạ: S = {tooCold, okay} A = {heatingOn, heatingOff } action(okay) = heatingOff action(tooCold) = heatingOn 2. Kiến trúc phản xạ IV. Kiến trúc của agent Ưu điểm Đơn giản. Kinh tế. Kiểm soát được khả năng tính toán. Khả năng chịu lỗi cao. 2. Kiến trúc phản xạ IV. Kiến trúc của agent Các vấn đề của agent phản xạ Một lượng lớn thông tin cố định cần cho agent. Việc học? Có đặc thù là thủ công (handcraffed). Sự phát triển mất rất nhiều thời gian. Không thể xây dựng một hệ thống lớn? Chỉ được sử dụng cho những mục đích ban đầu? 2. Kiến trúc phản xạ IV. Kiến trúc của agent Nhược điểm Nếu agent không sử dụng mô hình giống như mô hình của môi trường trong đó nó hoạt động thì chúng phải có đầy đủ những thông tin cần thiết bên trong để có thể thực hiện các action thích hợp. Hầu hết các agent đều ra quyết định dựa trên các thông tin mang tính cục bộ của riêng mình. Các agent đều không có khả năng học từ những kinh nghiệm đã gặp phải cũng như nâng cao khả năng của hệ thống kể cả đã hoạt động trong một thời gian dài. 2. Kiến trúc phản xạ IV. Kiến trúc của agent Kết hợp tính phản xạ và tính suy diễn  Deliberative component: Subsystems tạo ra những kế hoạch và quyết định sử dụng symbolic reasoning.  Reactive component: Subsystems phản ứng lại sự kiện nhanh chóng mà không cần những reasoning phức tạp. Thành phần phản xạ có quyền ưu tiên hơn thành phần không phản xạ. 3. Kiến trúc lai - Hybrid IV. Kiến trúc của agent 3. Kiến trúc lai - Hybrid IV. Kiến trúc của agent Phân lớp theo chiều ngang Phân lớp theo chiều dọc  1 chiều  2 chiều 4. Kiến trúc lớp IV. Kiến trúc của agent 1. Phân lớp theo chiều ngang (horizontal layering)  Trong kiến trúc này tất cả các thành phần trên các lớp đều tiếp xúc trực tiếp tới đầu vào và đầu ra  Mỗi thành phần trên một lớp có thể coi là một agent. 4. Kiến trúc lớp IV. Kiến trúc của agent 1. Phân lớp theo chiều ngang (horizontal layering) Ưu, nhược điểm  Đơn giản. Nếu ta cần một agent có n cách cư xử khác nhau thì sẽ cài đặt mô hình này.  Tuy nhiên luôn có sự tranh giành trong việc ra quyết định, để đảm bảo sự tương thính ta thường đưa vào một hàm điều khiển trung tâm (mediator) để quyết định xem lớp nào đang điều khiển hoạt động của agent.  Giả sử trong mô hình của ta có n lớp và mỗi lớp có thể thực hiện m action khác nhau vậy có nghĩa là có thể có đến mn khả năng tương tác lẫn nhau.  Theo quan điểm thiết kế thì đây là một vấn đề khó và khi hoạt động có thể gây ra hiện tượng thắt cổ chai (bottleneck) trong quá trình ra quyết định. 4. Kiến trúc lớp IV. Kiến trúc của agent 2. Phân lớp theo chiều dọc (vertical layering)  Kiến trúc chỉ có hai thành phần tiếp xúc với đầu vào và đầu ra, ta có thể coi như là một agent.  Đơn giản hơn rất nhiều so với phân lớp theo chiều ngang.  Phân làm 2 loại:  Một chiều: Luồng điều khiển lần lượt đi qua từng lớp cho tới khi tới lớp cuối cùng sẽ tạo ra hành động cần thực hiện.  Hai chiều: Thông tin được đi theo một chiều (lên) và điều khiển được đi theo chiều khác (xuống). 4. Kiến trúc lớp IV. Kiến trúc của agent 2. Phân lớp theo chiều dọc (vertical layering) 4. Kiến trúc lớp IV. Kiến trúc của agent 2. Phân lớp theo chiều dọc (vertical layering) Ưu nhược điểm  Sự phức tạp trong tương tác giữa các lớp đã được giảm.  Luồng điều khiển phải đi qua toàn bộ các lớp vì thế nếu một lớp nào đó hoạt động không ổn định sẽ ảnh hưởng đến toàn bộ hệ thống. 4. Kiến trúc lớp IV. Kiến trúc của agent Chọn một kiến trúc Agent Thảo luận “Agent của tôi lưu trữ thông tin về môi trường. Dựa trên những hiểu biết đó nó tạo ra reasoning và planning.” “Agent của tôi quan sát môi trường. Nó nhận ra những thay đổi của môi trường, cái mà sẽ bắt đầu các hành vi của nó.” Agent suy diễnAgent phản xạ Hướng dẫn nghiên cứu 1. Agent là gì? Các đặc trưng về Agent. 2. Agent và Object khác nhau như thế nào? 3. Trình bày kiến trúc suy diễn. 4. Trình bày kiến trúc phản xạ. 5. Trình bày kiến trúc lớp.

Các file đính kèm theo tài liệu này:

  • pdf82688045_chuong_i_mo_dau_3953.pdf