Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 73 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
73
Dung lượng
0,93 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG - VŨ HẢI HIỆU PHƯƠNG PHÁP HUẤN LUYỆN ĐA TÁC TỬ VỚI SỰ CÓ MẶT CỦA TÁC TỬ THEO DÕI Chuyên ngành: Khoa học máy tính LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH MỞ ĐẦU Lý chọn đề tài Trong năm gần đây, việc nghiên cứu triển khai ứng dụng công nghệ đa tác tử trở thành hướng trọng tâm ngành Khoa học máy tính Mặc dù công nghệ bắt đầu phát triển mạnh từ năm 90 kỷ XX thể rõ nét tính hiệu tầm ảnh hưởng tích cực ngành khoa học máy tính nói riêng lĩnh vực có ứng dụng công nghệ thông tin nói chung Đối với lĩnh vực tự động hóa công nghiệp, điều khiển giám sát, phân phối lượng hay game đại, chúng thể tính chất phức tạp, bất định mô hình thay đổi xu hướng xây dựng hệ thống theo hướng công nghệ đa tác tử tất yếu Mặt khác thấy rõ ràng máy tính không hệ thống hoạt động riêng lẻ nữa, xu hướng điều khiển phân tán vấn đề cốt lõi mà nhà phát triển ứng dụng cần quan tâm tới Lượng công việc máy tính đảm nhiệm thay người ngày nhiều, ngày trao quyền cho máy tính nhiều hơn, máy tính định tình quan trọng thay người Để thực tốt công việc thay người, máy tính cần phải thông minh, linh hoạt môi trường hoạt động Trong vài năm gần đây, vấn đề máy học nghiên cứu nhiều, công trình nghiên cứu mang tính móng cho lĩnh vực liên tục đời từ ứng dụng đưa vào thực tiễn phát triển theo Một vấn đề thuộc lĩnh vực máy học giải pháp huấn luyện tác tử đa tác tử, vấn đề rộng đầy thách thức, vấn đề mang tính lý thuyết sở không ngừng bổ sung hoàn thiện Trước bước vào môi trường hoạt động thực mình, tác tử cần phải trải qua qua trình huấn luyện hay nói cách khác học cách định để đem lại kết tốt Với mong muốn tìm hiểu công nghệ tác tử, tác tử thông minh, tương tác phối hợp hệ đa tác tử đặc biệt phương pháp huấn luyện cho hệ đa tác tử, định chọn đề tài “Phương pháp huấn luyện đa tác tử với có mặt tác tử theo dõi” Lịch sử vấn đề Bản chất huấn luyện tác tử đa tác tử nói chung trình cho tác tử hành động môi trường chúng, lấy chuỗi kết quả, kết phân tích, đánh giá cuối bảng lượng giá sinh từ kết Bảng lượng giá mức độ quan trọng hành động tác tử kết trình huấn luyện giúp tác tử định hành động trạng thái môi trường hoạt động Một thuật toán huấn luyện tác tử xem móng cho nhiều nghiên cứu sau thuật toán huấn luyện đơn tác tử Q-Learning Watkins Dayan xây dựng năm 1992 [18] Có nhiều thuật toán khác cải tiến từ Q-Learning mang lại hiệu lớn Ví dụ thuật toán Nash Q-Learning Junling Hu Michael P Wellman phát triển [11], giải thuật dựa tảng Q-Learning, lý thuyết cân Nash lý thuyết trò chơi, với kết hợp giải thuật cho phép huấn luyện với số lượng tác tử không gian trạng thái tương đối lớn Ở Việt Nam, tiếp cận với công nghệ tác tử số tác giả cho kết đáng ghi nhận kể tác Từ Minh Phương với giải thuật Q-Phân tán [19]; Nguyễn Linh Giang với giải thuật Q- mờ cho hệ đa tác tử [10], kết tác giả đem lại giá trị khoa học đáng kể tảng kết dựa Q-Learning Trong luận văn này, nghiên cứu đơn tác tử, hệ đa tác tử ứng dụng thuật toán Q-Learning truyền thống việc huấn luyện đa tác tử với có mặt tác tử theo dõi Các ứng dụng cho thuật toán Q-Learning truyền thống thường ứng dụng cho đơn tác tử trạng thái đích cần đạt tới cố định Trong đề tài này, cố gắng áp dụng Q-Learning cho hệ đa tác tử với trạng thái đích liên tục thay đổi Mục đích đối tượng nghiên cứu 3.1 Mục đích nghiên cứu Thực đề tài này, mục đích luận văn tổng hợp tài liệu công nghệ tác tử cách đầy đủ, khái quát có hệ thống Mặt khác, ứng dụng thuật toán huấn luyện tác tử vào số dạng toán khác nhau, cài đặt thử nghiệm đánh giá mức độ hiệu thuật toán QLearning việc huấn luyện đa tác tử 3.2 Đối tượng nghiên cứu Bên cạnh vấn đề tổng quan đơn tác tử hệ đa tác tử, đối tượng nghiên cứu đề tài sâu vào nghiên cứu vấn đề sau: Tác tử thông minh loại kiến trúc tác tử thông minh Tương tác tác tử hệ đa tác tử Các tác tử phối hợp với theo quy tắc hệ đa tác tử Thuật toán Q-Learning ứng dụng Cấu trúc luận văn Ngoài phần mở đầu kết luận, phần nội dung luận văn gồm có chương: Chương 1: Tổng quan tác tử hệ đa tác tử Chương 2: Phối hợp tương tác hệ đa tác tử Chương 3: Phương pháp huấn luyện đa tác tử với có mặt tác tử theo dõi cài đặt thử nghiệm CHƯƠNG 1: TỔNG QUAN VỀ TÁC TỬ VÀ ĐA TÁC TỬ 1.1 Tác tử 1.1.1 Định nghĩa tác tử Cho đến nay, có nhiều cách định nghĩa tác tử, ý kiến trái chiều nguyên nhân chủ yếu xuất phát từ yêu cầu khác số ứng dụng cụ thể Những mâu thuẫn điều xảy nhiều ngành khoa học máy tính Chính ý kiến đa chiều nhà chuyên môn cho thấy phong phú khả ứng dụng lý thuyết công nghệ phần mềm hướng tác tử Định nghĩa thường sử dụng phát biểu sau: “Tác tử (Agent) hệ thống tính toán hoạt động tử chủ môi trường đó, có khả cảm nhận tác động vào môi trường” [6] Chúng ta quan tâm đến số điểm quan trọng sau định nghĩa • Vấn đề đầu tiên, tác tử hệ thống tính toán, hệ thống phần cứng, phần mềm kết hợp phần cứng phần mềm Đối với tác tử phần mềm chương trình máy tính, luồng thực hiệu (Thread), tác tử phần cứng thông thường Robot, thiết bị giám sát giao thông • Vấn đề thứ hai, nói đến tác tử tồn hoạt động môi trường, định nghĩa nhấn mạnh khả cảm nhận tác động lại môi trường cách trực tiếp làm thay đổi môi trường Tác tử nhận thông tin tử môi trường qua quan cảm nhận tác động lại môi trường qua quan tác động Các tác tử phần cứng quan cảm nhận thường thiết bị cảm biến (cảm biến nhiệt, âm), thiết bị nhận dạng hay đơn camera, quan tác động thường phận học, quang học, âm Đối với tác tử phần mềm môi trường hoạt động máy tính hay mạng máy tính Việc cảm nhận tác động vào môi trường tác tử thực thông qua lời gọi hệ thống • Vấn đề thứ ba, tính tự chủ (tự trị) tác tử, thuộc tính quan trọng tác tử, mang tính đặc trưng tác tử Sự tự chủ khả hành động không cần đến can thiệp người dùng hay tác nhân khác Tác tử tự kiểm soát hành vi suốt trình hoạt động, trước vấn đề sinh môi trường hoạt động chúng tự đưa định cho hành động Mặt khác tính tự chủ biểu khả học tác tử Như vậy, với đặc điểm tồn hành động tự chủ môi trường tác tử độc lập thực nhiệm vụ thay cho người tử khác [9] Hình 1.1: Kiến trúc chung tác tử 1.1.2 Các đặc điểm khác tác tử Ngoài đặc điểm quan trọng tác tử nhắc tới định nghĩa, tác tử có thêm đặc điểm sau: Khả tự học: Là khả thu thập kiến thức từ kinh nghiệm thu lượm được, kết việc tự học phải giúp cho tác tử hành động tốt hơn, hiệu Tính thích ghi: Là khả tồn hoạt động hiệu môi trường thay đổi Khả di chuyển: Là khả di chuyển mã nguồn tác tử từ máy tính sang máy tính khác hay nút mạng sang nút mạng khác đồng thời giữ nguyên trạng thái 1.1.3 Môi trường hoạt động tác tử Tác tử xây dựng để hoạt động môi trường đó, tính chất, đặc điểm môi trường mối quan hệ tác tử với môi trường yếu tố định đến việc nghiên cứu triển khai ứng dụng Hầu hết nghiên cứu khẳng định tác tử môi trường có quan hệ sau: tác tử cảm nhận môi trường, suy luận sau thực hành động tác động vào môi trường Quá trình lặp lại hết vòng đời tác tử Chính gắn bó mật thiết môi trường tác tử vấn đề phân loại môi trường hoạt động tác tử đặt 1.1.3.1 Môi trường tiếp cận đầy đủ tiếp cận đầy đủ Môi trường gọi tiếp cận đầy đủ tác tử thu thập đầy đủ xác thông tin trạng thái môi trường thông qua quan cảm nhận Môi trường tiếp cận đầy đủ môi trường tương đối đơn giản Môi trường tiếp cận đầy đủ môi trường có độ phức tạp từ trung bình đến phức tạp, ví dụ: Thế giới thực vật lý, Internet 1.1.3.2 Môi trường xác định không xác định Nếu trạng thái môi trường hoàn toàn xác định trạng thái hành động tác tử thời điểm t môi trường gọi xác định Như vậy, trước hành động tác tử biết trước kết Đối với trường hợp môi trường không xác định, hành động cho kết khác nhau, trí cho kết không mong muốn Với loại môi trường không xác định thường gây khó khăn trọng việc thiết kế tác tử 1.1.3.3 Môi trường phân đoạn không phân đoạn Trong môi trường có phân đoạn hoạt động tác tử chia theo thời gian thành đoạn riêng biệt, không phụ thuộc vào Hiệu hành động đoạn phụ thuộc vào đoạn tác tử xét không phụ thuộc vào đoạn khác Môi trường không phân đoạn thường phức tạp tác tử phải quan tâm đến đoạn có liên quan tới đoạn xét 1.1.3.4 Môi trường tĩnh động Môi trường động môi trường thay đổi tác tử suy diễn để lựa chọn chiến lược hành động Môi trường tĩnh ngược lại, tác tử không cần quan tâm đến môi trường giới hạn thời gian trước định cho chiến lược hành động Qua ta thấy việc triển khai ứng dụng môi trường tĩnh thuận lợi môi trường động 1.1.3.5 Môi trường rời rạc liên tục Nếu số lượng cảm nhận hành động tác tử môi trường hữu hạn xác định môi trường rời rạc Ngược lại trường hợp môi trường liên tục Qua phân loại môi trường thấy với đặc điểm môi trường khác kéo theo yêu cầu thiết kế tác tử khác để đảm bảo hoạt động hiệu xác tác tử Việc xác định môi trường hoạt động tác tử bước quan trọng bước phải làm trình thiết kế tác tử 1.1.4 Tác tử thông minh 1.1.4.1 Tác tử thông minh gì? Tác tử thông minh tác tử có khả hoạt động linh hoạt mềm dẻo để thực nhiệm vụ giao [6] Tính linh hoạt tác tử thể ba đặc điểm sau: - Tính phản xạ: Là khả phản ứng kịp thời với thay đổi môi trường - Tính chủ động: Tác tử chủ động hành động mình, tự tìm phương án hành động tối ưu nhằm đạt kết tốt - Tính cộng đồng: Là khả tương tác giữu người dùng tác tử khác để lấy thông tin cung cấp thông tin cho đối tác Nếu xét đặc điểm riêng lẻ ba đặc điểm phương pháp lập trình cũ Trong thực tế có nhiều hệ thống phần mềm không xây dựng theo hướng tác tử mang đặc điểm Tuy nhiên, xây dựng phần mềm tác tử thông minh cần phải hội đủ đặc điểm 1.1.4.2 Cảm nhận, suy diễn tác động vào môi trường 1.1.4.2.1 Cảm nhận môi trường Việc cảm nhận môi trường giúp cho tác tử biết tình trạng môi trường diễn nào, từ tác tử đưa định hành động Đối với tác tử phần cứng (Robot) việc cảm nhận môi trường thường camera, thiết bị cảm ứng; tác tử phần mềm việc cảm nhận môi trường thường thông điệp từ hệ điều hành Những thông tin mà tác tử cảm nhận từ môi trường tất có ích, việc chọn lọc thông tin yêu cầu đặt cho chế cảm nhận môi trường tác tử 1.1.4.2.2 Suy diễn (cơ chế định) Quá trình định tác tử mô tả sau Giả sử thời gian chia thành khoảng rời rạc t0, t1, , tn Tại thời điểm tác tử phải lựa chọn hành động từ tập hữu hạn hành động tác tử Nhờ quan cảm nhận tác tử thu cảm nhận môi trường Giả sử thời điểm t0, t1, tn cảm nhận tác tử môi trường p0, p1, ,pn với pi thuộc P, P tập cảm nhận có tác tử Tại thời điểm ti, tất cảm nhận tác tử chuỗi cảm nhận si = < p0, p1, , pi> Giả sử tập hành động tác tử A = {a1, a2, , an} Tại thời điểm ti tác tử chọn hành động A Việc tác tử lựa chọn hành động phụ thuộc vào chuỗi cảm nhận Si thời điểm ti Tác tử suy diễn trước định hành động chia làm nhiều dạng, việc phân chia phụ thuộc vào cách thức cảm nhận hành động tác tử Ta phân loại sau: - Tác tử phản xạ: Là tác tử hành động dựa cảm nhận mà không cần quan tâm đến chuỗi cảm nhận trước đó.Ví dụ phận cảm ứng hệ thống cửa tự động Bộ phận hoạt động dựa nguyên tắc trạng thái môi trường chia làm hai dạng, có người người, có người cửa tự động mở Nguyên lý hoạt động loại tác tử nằm kiến trúc phản xạ, loại kiến trúc không sử dụng chế suy diễn phức tạp Kiến trúc phản xạ biết đến nhiều kiến trúc gộp (subsumption architecture) Rodney Brooks đề xuất lần năm 1986 Kiến trúc gộp mô tả sau: • Quá trình định tác tử thực dựa tập hàm hành động gọi hành vi thực nhiệm vụ (task accomplishment behaviours) Mỗi hành vi thực chất hàm hành động Mỗi hành vi tổ chức môđun có mục đích thực nhiệm vụ định Trong kiến trúc nguyên Brooks, môđun hành vi cài đặt máy trạng thái hữu hạn Hành vi tác tử biểu diễn luật quy tắc đơn giản dạng: tình Hành động Mỗi luật ánh xạ từ trạng thái cảm nhận thành hành động Vì chế định tác tử nhiều môđun hành vi gộp lại nên kiến trúc có tên kiến trúc gộp 3.2.2.2 Bài toán Bài toán tháp Hà Nội toán kinh điển, sử dụng nhiều việc thể vấn đề liên quan đến số giải thuật đệ quy hay trí tuệ nhân tạo Trong đề tài này, xem xét toán góc độ huấn luyện tác tử Bài toán phát biểu sau: Có ba tháp tên A, B C; Có ba đĩa khác kích cỡ mang tên S (Small), M (Medium), L (Large) Ở thời điểm ban đầu tất ba đĩa nằm tháp A Mục tiêu đặt di chuyển đĩa từ tháp A đến trạng thái kết thúc tháp C Quy định lần di chuyển đĩa không phép đặt đĩa nhỏ nằm đĩa lớn Để biểu diễn toàn không gian trạng thái toán Tháp Hà Nội người ta có nhiều cách: dùng ký hiệu, dùng hình vẽ trực quan, Để đơn giản toán, ta thể phần không gian trạng thái toán hình 3.9, ví dụ ta không quan tâm đến trạng thái khác gồm 17 trạng thái hình vẽ 3.9 Vấn đề đặt cho tác tử trạng thái phần không gian trạng thái xét, sách tối ưu để đến trạng thái kết thúc Có nhiều cách để sách tối ưu toán Tuy nhiên, ví dụ xem xét góc độ huấn luyện tác tử 58 Hình 3.9: Không gian trạng thái toán Tháp Hà Nội Giải toán: Trước tiên ta đồ thị hóa không gian trạng thái đặt giá trị hàm thưởng hình 3.10 sau: Hình 3.10: Hình biểu diễn giá trị phần thưởng 59 Chúng ta thực bước ví dụ 3.2.2.1 bảng Q hội tụ giá trị hình 3.11 Hình 3.11: Bảng lượng giá cho toán tháp Hà Nội Khi giả sử tác tử trạng thái 1, sách hành động tối ưu 1→3→5→7→6→9→14→16→17 3.3 Phương pháp huấn luyện cho hệ đa tác tử Đối với hệ đa tác tử, trạng thái môi trường giá trị phần thưởng không phụ thuộc vào hành động tác tử mà phụ thuộc nhiều vào hành vi tác tử lại hệ đa tác tử Lúc nhiệm vụ tác tử hệ đa tác tử phải học cách hành động cho phù hợp với hành vi tác tử khác hệ đa tác tử Phần nghiên cứu số phương pháp huấn luyện đa tác tử dùng phương pháp ứng dụng vào game đơn giản 3.3.1 Phương pháp huấn luyện đa tác tử tập trung vào tác tử Phương pháp tập trung huấn luyện vào tác tử nhất, tác tử gọi tác tử trung tâm (tác tử học) Tác tử trung tâm mang đặc trưng 60 khác với tác tử khác hệ đa tác tử hành động tác tử hành động không gian hành động chung hệ đa tác tử Qua trình huấn luyện tác tử trung tâm tìm sách hành động tối ưu lúc sách thành phần tác tử trung tâm gửi cho tác tử tương ứng Giả sử hệ đa tác tử gồm n tác tử tập hành động riêng hợp lệ đơn tác tử A1, A2, , An, ta có A = ( ܣଵ × ܣଶ × … × ܣ ) không gian hành động chung hệ đa tác tử Như vậy, hành động chung hệ đa tác tử thời điểm t có dạng a = (a1, a2, ,an) với ∀ܽ ∈ ܣ , ݅ = … ݊ Thuật toán huấn luyện tập trung vào tác tử tương tự thuật toán huấn luyện cho đơn tác tử mô tả sau Khởi tạo Q(a,s)=0 Cập nhật bảng Q theo quy tắc Thuật toán học tập trung vào tác tử có chất giống thuật toán Q-Learning cho đơn tác tử cặp trạng thái - hành động (s,a) xuất vô hạn lần Q hội tụ giá trị xác định Để làm rõ vấn đề nêu xét toán Kiến tha mồi tổ Bài toán cho dạng sau: Một lưới ô vuông gồm 25 ô, đánh số số 25 theo quy luật từ trái sang phải, từ xuống (như hình 3.12) Có hai kiến tha mồi tổ, kiến có hai tác động vào miếng mồi để làm miếng mồi di chuyển theo hướng Các tác động hai kiến vào miếng mồi hành động riêng chúng, ký Ai= {ܽଵ , ܽଶ }, i=1,2 Tổ hợp hành động riêng hai kiến ta số hành động chung sau A = {(ܽଵଵ, ܽଵଶ), {(ܽଵଵ , ܽଶଶ), {(ܽଵଶ , ܽଵଶ), {(ܽଵଶ, ܽଶଶ )}, để đơn giản ta đặt A={F1, F2, F3, F4} 61 Theo hình 3.13, hành động chung F1 đNy miếng mồi lên trên, hành động chung F2 đNy sang phải, hành động chung F3 đNy sang trái hành động chung F4 làm miếng mồi xuống Yêu cầu đặt cho hai kiến là: có miếng mồi vị trí 25 ô vuông, phối hợp hành động với để tha miếng mồi tổ S1 F1 F2 F3 F4 Tổ Kiến Hình 3.12: Kiến tha mồi tổ Giải toán Trước tiên ta có nhận xét toán gồm 25 trạng thái, trạng thái đích trạng thái S25 Tại thời điểm t, hai tác tử phải định để tạo thành hành động chung Fi Hành động chung làm miếng mồi dịch chuyển bốn hướng Hàm phần thưởng R hành động chung hệ hai tác tử toán cho theo nguyên tắc: Những cặp trạng thái - hành động trực tiếp dẫn tới trạng thái kết thúc 100 điểm, cặp trạng thái - hành đông không trực tiếp dẫn tới trạng thái kết thúc điểm Cách lập bảng Q tương tự ví dụ phần 3.2.2.1, giả sử miếng mồi vị trí trạng thái S13, hành động chung tác tử mang mồi tổ F4 → F4 → F2 →F2 điều tương đương với hành động riêng hai tác tử + Tác tử hành động theo chiến lược: ܽଵଵ → ܽଵଵ → ܽଵଵ → ܽଵଵ + Tác tử hành động theo chiến lược: ܽଵଶ → ܽଵଶ → ܽଶଶ → ܽ ଶଶ 62 3.3.2 Tác tử theo dõi Có nhiều cách hiểu phát biểu tác tử theo dõi, nguyên nhân chủ yếu mục đích loại ứng dụng nhà phát triển phần mềm Trong luận văn xem xét tác tử theo dõi tác tử quan sát hành động hệ đa tác tử, thu thập thông tin trạng thái hệ đa tác tử, dựa sở thông tin thu tác tử theo dõi hành động Hành động tác tử cộng tác, chạy trốn phá hoại Ví dụ toán kiến tha mồi, hai kiến miệt mài tha mồi tổ có nhân vật thứ ba xuất hiện, nhân vật muốn cướp mồi hai kiến, nhân vật thứ ba đóng vai trò tác tử theo dõi hành động phá hoại Tác tử theo dõi tác tử thông minh, có khả học người chơi điều khiển Tùy theo nhu cầu ứng dụng mà tác tử theo dõi có đặc tính nhiệm vụ riêng 3.3.3 Huấn luyện đa tác tử với có mặt tác tử theo dõi 3.3.3.1 Bài toán “Xe tăng tránh bom” Bài toán cho dạng trò chơi sau: Cho lưới ô vuông gồm 25 ô đánh số từ S1 đến S25 Hai người lính ôm bom ba gồm có hành động riêng Ai = {ܽଵ , ܽଶ} với i=1,2 Tổ hợp hành động riêng ta hành động chung A = {F1, F2, F3, F4} (tương tự toán “Kiến tha mồi tổ”) Hai người lính phối hợp với ôm bom lao vào xe tăng (2 tác tử thông minh), xe tăng (tác tử theo dõi người chơi điều khiển) tìm cách chạy trốn khỏi đường công người lính Phương thức di chuyển xe theo bốn hướng tương tự như hai người lính Nếu thời điểm xe tăng không bị bom húc phải đến cửa thoát người chơi thắng Ngược lại, người chơi bị xem thua 63 S1 Xe tăng F1 F2 F3 F4 Cửa thoát Hình 3.13: Xe tăng chạy bom Bài toán có số điểm gống toán kiến tha mồi tổ Cách thức hành động phối hợp hành động riêng để tạo thành hành động chung tác tử giống nhau, tác tử phối hợp với để đạt đến trạng thái đích Tuy nhiên, toán có đặc điểm khác trạng thái đích hai tác tử cần đạt đến luôn biến đổi, điều khiến chiến lược hai tác tử phối hợp phải liên tục thay đổi theo Chiếc xe tăng người chơi điều khiển có hai mục đích tránh xa bom chui vào thoát, rõ ràng theo quan điểm chúng ta, xe tăng đóng vai trò tác tử theo dõi Mỗi lần xe tăng di chuyển đồng nghĩa với việc mục tiêu tác tử phải thay đổi theo, việc học tác tử lại phải thực lại 3.3.3.2 Thuật toán MAQ-Learing (Multi-Agent Q-Learning) Thuật toán huấn luyện cho hệ đa tác tử với có mặt tác tử theo dõi phát biểu dạng giả mã sau: Algorithm MAQ-Learning Input: - Giá trị α, γ - Đặt n ∈ ۼđủ lớn số vòng huấn luyện; - Đặt giá trị cho ma trận phần thưởng R; - Trạng thái đích ban đầu 64 Output: - Bảng Q(s,a) với trạng thái đích cuối Method B1: Khởi tạo ma trận Q(a,s) với giá trị 0; B2: Cập nhật lại ma trận phần thưởng B3: For i=0 to n Lựa chọn ngẫu nhiên trạng thái khởi tạo s0; While • Nếu trạng thái đích thay đổi Begin Cập nhật lại trạng thái đích; Go to B1 End; • Chọn ngẫu nhiên hành động tập hành động hợp lệ trạng thái tại; • Cập nhật bảng Q theo quy tắc • Đặt s=s’; End While End For End Algorithm Thuật toán có độ phức tạp tính toán cỡ O(n3) Có thay đổi nhỏ thuật toán so với Q-learning bước dò tìm trạng thái đích, tác tử thay đổi chiến lược trạng thái đích thay đổi (quay lại bước B1) Khi đó, giá trị hàm phần thưởng hoàn toàn thay đổi, việc cập nhật lại giá trị ma trận phần thưởng việc làm tối cần thiết Vì tác tử theo dõi di chuyển 25 trạng thái toàn không gian trạng thái nên ma trận phần 65 thưởng biểu diễn theo sau lần thay đổi Thực chất thuật toán Q-Lerning truyền thống, nhiên thêm vào chi tiết huấn luyện lại cho hệ tác tử trạng thái đích thay đổi, chi tiết thêm vào làm cho khối lượng tính toán hệ thống tăng lên lượng đáng kể 3.4 Chương trình demo Chương trình demo cài đặt cho toán “Xe tăng tránh bom”, chương trình demo sử dụng thuật toán MAQ-Learning Ngôn ngữ cài đặt cho toán Visual Basic.Net 2005, ngôn ngữ lập trình bậc cao, giúp nhà phát triển ứng dụng tiết kiệm nhiều công sức xây dựng phần mềm Mặt khác, ngôn ngữ hỗ trợ mạnh phương pháp lập trình hướng đối tượng đặc biệt lập trình đa luồng (Multil-Thread) Trong toán này, hai tác tử người lính tác tử xe tăng phân làm ba luồng, ba luồng chạy độc lập giao tiếp với thông qua giao thức chung hệ thống Cơ chế hoạt động hệ thống sau: - Tác tử xe tăng người chơi điều khiển, cảm nhận, định hành động tác tử người chơi định Giả sử thời điểm định, người chơi cho xe chạy sang trái, phải, lê trên, xuống đứng yên Mỗi lần thay đổi vị trí xe tăng hệ thống thông báo trực tiếp cho tác tử người lính 66 Hình 3.14: Giao diện chương trình demo - Hai tác tử người lính có tác tử trung tâm, tác tử tác tử học Việc nắm bắt vị trí xe tăng toàn suy diễn để đưa định hai tác tử tác tử thực Sau suy diễn (thông qua MAQ-Learning) tìm sách chung cho hai tác tử, tác tử gửi phương án hành động tác tử lại cho nó, cụ thể xâu ký tự điều khiển Sau hai tác tử đủ thông tin chiến lược hành động, tác tử gửi ký tự điều khiển đến bom, nhận đủ ký tự điều khiển tác tử người lính bom di chuyển theo luật toán đặt Quá trình kết thúc xe tăng chạy thoát bị đâm phải Nhận xét đánh giá: Thuật toán tiến hành cài đặt thử nghiệm cho toán “Xe tăng tránh bom” (có demo kèm theo), hai tác tử ôm bom tìm hành động riêng để tạo thành hành động chung nhằm tiếp cận gần mục tiêu Thời gian chờ 67 định hành động hai tác tác tử trước tác tử theo dõi di chuyển phụ thuộc vào tốc độ hội tụ thuật toán Trong toán hai tác tử hoàn toàn cộng tác đặt lợi ích chung lên hết, lợi ích riêng cho tác tử 3.5 Kết luận Trong chương này, Chúng nêu định nghĩa trình định Markov, mô hình tảng cho thuật toán huấn luyện tác tử Trên sở MDP thuật toán Q-Learning MAQ-Learning trình bày chi tiết thông qua dạng toán điển hình cho hệ đa tác tử Tuy kết nhiều hạn chế song MAQ-Learning đáp ứng số toán có không gian trạng thái vừa nhỏ 68 KẾT LUẬN Những đóng góp luận văn Luận văn tổng hợp vấn đề mang tính lý thuyết cô đọng tác tử, tác tử thông minh, hệ đa tác tử, phối hợp tương tác hệ đa tác tử Luận văn đưa số ví dụ ứng dụng thuật toán QLearning cho đơn tác tử áp dụng Q-learning việc huấn luyện đa tác tử Mặt khác, áp dụng Q-Learning việc huấn luyện đa tác tử thông quan thuật toán Q-Learning Chương trình demo cài đặt thuật toán MAQ-Learning cho thấy thuật toán hoàn toàn sử dụng cho dạng toán huấn luyện đa tác tử với có mặt tác tử theo dõi Những hạn chế luận văn Đối với toán có không gian trạng thái lớn việc biểu diễn thông tin giá trị tăng cường Q bảng thông thường không thích hợp Phương pháp huấn luyện cho hệ đa tác tử với có mặt tác tử theo theo dõi với thuật toán MAQ-Learning nói chung đáp ứng yêu cầu cho toán hệ đa tác tử mang tính cộng tác với Tuy vậy, số dạng toán có không gian trạng thái số lượng tác tử lớn thuật toán bộc lộ hạn chế từ việc xử lý tập trung thông tin vào tác tử Thông tin trạng thái, hành động phần thưởng phải xử lý tập trung tạo thành khối lượng tính toán lớn từ gây tình trạng tải cho tác tử trung tâm Điều làm ảnh hưởng tới tốc độ hội tụ bảng Q dẫn tới làm chậm định hành động cho tác tử hệ thống Có hai phương pháp biểu diễn hiệu dùng mạng Nơron định Tuy nhiên, luận văn hai phương pháp điều kiện đề cập đến vấn đề mang tính lý thuyết lớn 69 Hướng phát triển luận văn - Tập trung nghiên cứu sâu sở toán học giải thuật huấn luyện đơn tác tử, đa tác tử - Biểu diễn bảng Q (bảng hướng dẫn) mạng nơ ron định để giải toán lớn - Nghiên cứu sâu lý thuyết trò chơi, lý thuyết cân Nash - Cải tiến thuật toán Q-Learnig truyền thống sở toán học kết hợp với lý thuyết cân Nash, lý thuyết trò chơi mạng nơ ro 70 TÀI LIỆU THAM KHẢO ĐOÀN VĂN BAN, Lập trình hướng đối tượng với Java, NXB Khoa học kỹ thuật, 2003 HU, M.P WELLMAN, Multiagent reinforcement earning: theoretical framework and an algorithm, n Proc of the 15th International Conference on Machine Learning, San Francisco, Morgan Kaufman, 1998 HUHNS M AND SINGH M., Reading in agent, Morgan Kaufmann, San Francisco, USA, 1998 JENNINGS N.R., SYCARA K., WOOLDRIDGE M., A Roadmap of Agent Research and Development, journal of autonomous Agents and Multilagent Systems, 1998 L.P KAEBLING, M.L LITTMAN, A.W MOORE, Reinforcement learning: A survey, Journal of Artificial Intelligence Research, Vol 4, pp 237-285, Morgan Kaufman, 1996 LÊ TẤN HÙNG, TỪ MINH PHƯƠNG, HUỲNH QUYẾT THẮNG, Tác tử công nghệ phần mềm hướng tác tử, NXB Khoa học kỹ thuật, 2005 MARTIJN VAN OTTERLO, Reinforcement Learning for Intelligent Agents, University of Twente, 2007 MEGAN SMITHM, Markov Decision Processes & Reinforcement Learning, Lehigh University, 2006 MICHAEL BOWLING, Multiagent Learning in the Presence of Agents with Limitations, School of Computer Science Carnegie Mellon University, 2003 10 NGUYỄN LINH GIANG, Bài toán định Markov với số bước hữu hạn thuật toán học Q mờ, Đại học Bách khoa Hà Nội, 2005 11 Junling Hu & Michael P Wellman , Nash Q-Learning , ,2003 12 PATTIE MAES, Agents that Reduce Work and Information Overload, Communication of the ACM, 1994 13 R.H CRITES, A.G BARTO, Elevator group ontrol using multiple reinforcement learining Machine learning, vol 33, Kluwer Acad., 1998 71 14 RICHARD S SUTTON & ANDREW G BARTO, Reinforcement Learning: An Introduction, MIT Press, 1998 15 SATINDER P SINGH, Learning to solve Markovian Decision Processes, University of Massachusetts, 1994 16 SEO Y.W AND ZHANG B.T., Personalized web-document filtering using reinforcement learning, Applied Artificial Intelligence, 2001 17 STEELS L., Cooperation between distributed agent through selforganization, Proceedings of MAAMAW-89, Elsevier, Amsterdam, 1990 18 TOM O’NEILL, GLASER, ALDRIDGE, Q-Learning and Collection Agents, CSC242, Dept of Computer Science, University of Rochester, 2006 19 TỪ MINH PHƯƠNG,Thuật toán Q- Phân tán chọ hệ đa tác tử, Học viện Công nghệ Bưu Viễn thông, 2003 20 WATKINS, C J C H, DAYAN P, Q-learning Machine Learning.Vol No 3, 1992 21 WEISS G., Multil-agent systems A modern approach to distributed artificial intelligence, MIT Press, Cambridge, Massachusetts, USA, 1999 22 WOLDRIDGE M., Anintroduction to multilagent systems, West Succex England, 2002 72 [...]... hệ đa tác tử chính là giải pháp thích hợp để giải quyết vấn đề 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, trong quá trình tương tác đó hệ đa tác tử tạo ra cho hệ thống những đặc điểm mà đơn tác tử không thể tạo ra được [6] 1.2.2 Nhiệm vụ của hệ đa tác tử 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 đó Sự. .. tương tác giữa những tác tử trong hệ đa tác tử là không biết trước và chỉ được xác định trong quá trình hoạt động của hệ thống Quan hệ giữa các tác tử trong hệ đa tác tử là phối hợp chứ không nhất thiết là hợp tác Trong quá trình hoạt động của hệ thống một tác tử này có thể gửi yêu cầu cho các tác tử khác, các tác tử nhận được yêu cầu có thể đồng ý hoặc từ chối Tất cả những quyết định của các tác tử trong... khoa học với cơ sở toán học chặt chẽ và được ứng dụng cho nhiều ngành khác nhau trong đó có hệ đa tác tử Đối với hệ đa tác tử, lý thuyết trò chơi cung cấp nhiều công cụ lý thuyết cho phép phân tích, đánh giá hành vi của các tác tử trong cùng một hệ đa tác tử suốt quá trình tồn tại và tương tác với nhau của chúng Sự tương tác trong hệ tác tử chỉ được xây dựng dựa trên hai điều kiện: thứ nhất, tác tử hành... có lý trí, tức là quyết định của từng tác tử phải tối ưu hoá hàm mục tiêu của tác tử đó; thứ hai, tác tử hành động có chiến lược, tức là khi ra quyết định, tác tử có tính tới hành động của tác tử khác trong hệ thống 2.1.1 Hệ đa tác tử và trò chơi chiến lược Để phân tích quá trình ra quyết định cho hệ tác tử, các tác tử trong hệ thống được xem xét như những thành viên tham gia vào một trò chơi Tuỳ theo. .. nhất về tác tử và hệ đa tác tử, các cơ chế hoạt động và khả năng ứng dụng của công nghệ tác tử cũng đã được đề cập tới Mục đích chính của hệ đa tác tử là sự tương tác và phối hợp giữa các tác tử với nhau để đem lại kết quả mong muốn Cách thức các tác tử tương tác và phối hợp với nhau như thế nào sẽ là những vấn đề chính được chúng tôi nghiên cứu trong chương 2 của luận văn 13 CHƯƠNG 2:TƯƠNG TÁC VÀ PHỐI... biểu như sau: 18 Giả sử có n tác tử trong một hệ đa tác tử, gọi a-i là hành động chung của tất cả tác tử trừ tác tử thứ i và (a-i, ai) là hành động chung được tạo thành từ a-i và hành động ai của tác tử i Như vậy hành động chung a-i thực chất là một tập hợp các hành động riêng bao của bao gồm n-1 tác tử Hành động có ưu thế được định nghĩa như sau Định nghĩa 2.1 Hành động ai của tác tử i được gọi là ưu... thành từ sự phối hợp của các nơron đơn giản 2.2.2 Sự cần thiết phải phối hợp Sau đây là một số lí do vì sao phối hợp lại cần thiết đối với hệ đa tác tử Hành động của mỗi tác tử trong cùng một hệ phụ thuộc vào hành động của một hay nhiều tác tử khác, chúng phụ thuộc vào nhau trong hai trường hợp: 1) 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 hai tác tử cùng di... một cách tối ưu và có hiệu quả cao nhất Theo một giải pháp đơn giản nhất, mỗi tác tử có một bảng riêng lưu thông tin về khả năng của tác tử khác Khi cần chia việc, tác tử sẽ căn cứ vào bảng này để cử ra tác tử phù hợp Mặc dù đơn giản nhưng phương pháp này không thích nghi với thay đổi trạng thái trong hệ thống Giả sử, sau khi tìm trong bảng nói trên, tác tử phát hiện ra một số tác tử có thể thực hiện... động chung của tất cả tác tử tham gia Một điểm quan trọng là tác tử không biết trước hành động của tác tử khác mà chỉ có thể dự đoán tác tử khác sẽ hành động thế nào Một điều kiện quan trọng khi phân tích trò chơi chiến lược là hành động của tác tử thoả mãn hai yêu cầu sau Thứ nhất, tác tử tham gia trò chơi hành động có lí trí, tức là cố gắng đạt phần thưởng lớn nhất Thứ hai, tác tử hành động có chiến... nặng theo một quỹ đạo cho 23 trước, mỗi lực tác động của từng tác tử tại một thời điểm luôn cần có sự phối hợp sao cho vật nặng không đi lệch khỏi quỹ đạo; 2) Hành động của các 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 nhằm làm tránh tình trạng hỗn loạn trong hệ đa tác ... tử đặc biệt phương pháp huấn luyện cho hệ đa tác tử, định chọn đề tài Phương pháp huấn luyện đa tác tử với có mặt tác tử theo dõi Lịch sử vấn đề Bản chất huấn luyện tác tử đa tác tử nói chung... quan tác tử hệ đa tác tử Chương 2: Phối hợp tương tác hệ đa tác tử Chương 3: Phương pháp huấn luyện đa tác tử với có mặt tác tử theo dõi cài đặt thử nghiệm CHƯƠNG 1: TỔNG QUAN VỀ TÁC TỬ VÀ ĐA TÁC... nguyên lý tương tác phối hợp tác tử hệ đa tác tử Mặt khác, thiếu xây dựng hệ thống đa đa tác tử thông minh 42 CHƯƠNG 3: PHƯƠNG PHÁP HUẤN LUYỆN ĐA TÁC TỬ VỚI SỰ CÓ MẶT CỦA TÁC TỬ THEO DÕI 3.1 Quá