Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
636,91 KB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM 🙡🕮🙣 ĐỒ ÁN Đề tài: Huấn luyện AI chơi game Tetris Giáo viên hướng dẫn: Huỳnh Tuấn Anh Sinh viên thực hiện: Dư Chế Anh - 18520445 Thi Thanh Chương -18520539 Thành phố Hồ Chí Minh, tháng năm 2021 ĐỒ ÁN TETRIS AI TETRIS AI TÀI LIỆU BÁO CÁO DỰ ÁN Date: 28/06/2021 Authors: - Dư Chế Anh Thi Thanh Chương Contacts: - 18520445@gm.uit.edu.vn – 18520539@gm.uit.edu.vn ĐỒ ÁN TETRIS AI NHẬN XÉT ĐỒ ÁN TETRIS AI LỜI CẢM ƠN Cảm ơn thầy Huỳnh Tuấn Anh cung cấp cho nhóm chúng em nói riêng sinh viên lớp nói chung đề tài đồ án thú vị ạ, nhóm chúng em có kiến thức kinh nghiệm làm việc nhóm thú vị Trong q trình làm việc, khó tránh sai sót từ nhỏ đến lớn, mong thầy cô quan tâm góp ý tận tình giúp nhóm chúng em phát triển Cảm ơn thầy cô ạ! ĐỒ ÁN TETRIS AI Contents GIỚI THIỆU Mục đích tài liệu: Đề tài: Vấn đề: Hướng giải quyết: Mục tiêu: KẾ HOẠCH VÀ PHÂN TÍCH Kế hoạch Phân tích Thực thi 10 Tetris: 10 Bot: 10 AI 11 NGHIÊN CỨU 12 Case #1: Ai train seed 13 Case #2: AI train nhiều seed 14 Case #3: AI với fitness train seed 15 Case #4: AI tự train vs AI tự train 17 KẾT LUẬN 19 THAM KHẢO 20 Records 21 Record1 21 Record 21 Record 22 Record 23 Record 23 ĐỒ ÁN TETRIS AI GIỚI THIỆU Mục đích tài liệu: Tài liệu xây dựng với mục đích giới thiệu đề tài, ghi nhận phân tích q trình tiếp nhận giải vấn đề, từ ban đầu hoàn thành đồ án Đề tài: Huấn luyện AI chơi game Tetris Vấn đề: Tetris mà tựa game cần ý nhiều input Các sinh viên thực đề tài khơng có kinh nghiệm với học máy trí tuệ nhân tạo Hướng giải quyết: Sử dụng ngơn ngữ lập trình Python cho dự án, số lượng tài liệu hướng dẫn lớn Sử dụng Reinforcement learning để huấn luyện cho AI (huấn luyện tăng cường) Mục tiêu: Tạo AI đạt 1,000,000 điểm tetris ĐỒ ÁN TETRIS AI KẾ HOẠCH VÀ PHÂN TÍCH Kế hoạch Bước Mục đích Nghiên cứu Nghiên cứu Python ứng dụng AI Thực thi Tạo bot chơi Tetris, bot feed thông số đầu vào Huấn luyện Biến bot thành AI, bot tự huấn luyện để lấy thơng số đầu vào Phân tích - Tetris: Mục tiêu trò chơi di chuyển khối gạch rơi từ từ xuống kích thước hình chữ nhật 20 hàng x 10 cột (trên hình) Chỗ có gạch khơng di chuyển tới vị trí Người chơi xếp khối hình cho khối hình lấp đầy hàng ngang để ghi điểm hàng ngang biến (Source: Wikipedia) - Cách cá nhân thơng thường chơi Tetris: • Đảm bảo độ cao tối thiểu: Khi viên gạch Tetris chạm đến độ cao tối đa, người chơi thua cuộc, nên ta phải đảm bào chọn vị trí đặt gạch ta tối ưu độ cao chúng • Đảm bảo người chơi clear số hàng nhiều (ghi điểm nhiều nhất): Người chơi ghi điểm game clear hàng, nên điểm cách độ hiệu AI ĐỒ ÁN TETRIS AI • Đảm bảo số lượng lỗ cột nhỏ nhất: Các lỗ hàng gây cản trở cho việc ghi điểm clear nhiều hàng lúc nên phải đảm bảo cho việc • Đảm bảo cột có độ lệch khơng lớn: Nếu độ lệch cột gần lớn chúng giới hạn số lượng gạch đặt chúng nên cần phải tối ưu thông số Bumpiness = |3-5| + |5-6| + |6-5| + |5-4| + |4-5| = ĐỒ ÁN TETRIS AI - AI phù hợp: Sau nhiều lần nghiên cứu tài liệu video hướng dẫn nhóm đến định chọn Genetic Algorithm (thuật toán di truyền) để sử dụng cho hệ thống • • Giới thiệu thuật toán di truyền: Là mơ hình mơ thuyết chọn lọc tự nhiên Darwin Quy trình thực thi thuật tốn di truyền: Tạo quần thể với số lượng cá thể cho trước mang thơng số ngẫu nhiên Tính fitness cho cá thể quần thể (fitness hàm tính độ phù hợp cho hệ thống, tetris fitness trả số điểm số line clear) Chọn các thể có fitness cao để lai tạo Các cá thể lai tạo tạo cá thể mới, có thơng số ngẫu nhiên (có thể lớn nhỏ cá thể bố mẹ) Các cá thể vừa lai tạo có tỉ lệ nhỏ bị đột biến, cá thể bị đột biến, thơng số cá thể có thay đổi Sau tổng hợp cá thể tốt đời cá thể lai tạo, tổng hợp lại để tạo thành quần thể Lặp lại trình đạt nhu cầu người lập trình, ta thu kết lấy cá thể có kết tốt ĐỒ ÁN TETRIS AI Thực thi Tetris: Vì đồ án huấn luyện AI chơi game tetris nên nhóm bỏ qua bước phát triển game tetris cách clone tetris repo github phát triển tính AI thêm vào repo (info) Repo có chức bản, đọc dễ hiểu có khả chỉnh sửa cao Bot: Trong q trình phân tích nhóm đưa thông số cần đảm bảo với người chơi tetris thơng thường, là: Độ cao tại, số dòng clear, số lượng lỗ cột, độ lệch cột Để chơi tetris người chơi phải cân nhắc thông số (ở tốc độ người) để đưa định hợp lý, máy tính tương tự, ta đưa thông số vào cho AI để chúng định xem nên tiến hành bước Nhưng thơng số thơi chưa đủ, chúng quan trọng, người chơi clear dịng quan trọng thảy người chơi quan trọng việc hạn chế lỗ cột đảm bảo độ cao Vì để đưa lựa chọn xác, ta phải cho thông số cân nặng (weight) Từ ta đưa cách tính điểm: a=Aggregate Height b=Lines Clear c=Holes d=Bumpiness score = a*w1 + b*w2 + c*w3 + d*w4 Với w1 – w4 weight tương ứng với thông số Và xử lý, ta đọc tất vị trí phù hợp với viên gạch tại, tính score cho vị trí, chọn vị trí có score tốt để đặt viên gạch 10 ĐỒ ÁN TETRIS AI Sau tạo nên hàm tính tốn cần thiết, ta việc cho chúng weights phù hợp May mắn thay có dự án có weights sẵn cho thơng số tương tự nên ta áp dụng chúng vào bot bot hoạt động Weights= [-0.510066, 0.760666, -0.35663, -0.184483] (source) AI Đầu tiên nhóm tạo class chứa hàm thuật tốn tiến hóa Trong hàm tính fitness quần thể trả điểm số cá thể quần thể với số lượng gạch giới hạn (piecelimit) Sau áp dụng mơ hình thuật tốn tiến hóa để dự án tự đưa weights phù hợp 11 ĐỒ ÁN TETRIS AI NGHIÊN CỨU Lưu ý: • • • Các kết nghiên cứu sau tiến hành với fastmode=True (các viên gạch rơi ngay) không hiển thị GUI để đảm bảo độ xác kết (hiển thị GUI ảnh hưởng đến kết tùy theo sức mạnh phần cứng) Weight lấy từ ví dụ mạng huấn luyện nhiều chơi tetris liên tục tuần liền, clear triệu lines mà khơng có dấu hiệu thua cuộc, nên nhóm thấy mốc so sánh tốt Kiểm tra file readme.md github repo muốn tiến hành thực thi lại thí nghiệm sau Để đánh giá kết nghiên cứu, so sánh kết dùng weight huấn luyện với dùng weight ví dụ mạng Weight mạng ta gọi demo_weight = [-0.510066, 0.760666, -0.35663, -0.184483] Weight ta train gọi trained_weight 12 ĐỒ ÁN TETRIS AI Case #1: Ai train seed Đặc điểm: ▪ ▪ Các viên gạch thứ tự gạch xuất giống (dùng seed) AI train với seed=1 Fitness đo số điểm đạt Kết huấn luyện (record1) Cá thể SL Đời SL lai SL gạch Max fitness Weight cá thể tốt 5 100 7072 [-1.23962156, -1.19593245, -1.23643526, 1.21559287] Bảng so sánh STT seed Số lượng gạch Trained fitness Demo fitness Train fitness/demo fitness 1.1 100 7072 7588 0.931998 1.2 200 21975 25253 0.870194 1.3 100 1403 7601 0.184581 1.4 random 100 4594 7665 0.599348 1.5 random 100 2916 7804 0.373655 1.6 infinite 61900 >2.000.000 (stopped) (lost) Phân tích case#1: - AI huấn luyện qua đời, đời gồm cá thể, với giới hạn gạch 100 - Ở 1.1, thông số set tương tự lúc AI huấn luyện, nên điểm số cho đạt 93% so với demo_weight - Ở 1.2, số lượng gạch tăng lên nhiều so với lúc huấn luyện nên tỉ lệ mang so sánh 87% so với demo_weight - Ở 1.3, 1.4, 1.5, trained_weight cho số điểm thấp rõ rệt so với demo_weight (ở 1.3 ta đạt 18%) Kết luận case#1: - Cần có thêm nhiều cá thể đời, thêm nhiều đời cho quần thể - Huấn luyện với seed định tối ưu thời gian (nếu ta kiểm thử seed đó), khả cao phát sinh vấn đề sử dụng AI thực tiễn 13 ĐỒ ÁN TETRIS AI Case #2: AI train nhiều seed Đặc điểm: ▪ ▪ Các viên gạch thứ tự gạch xuất ngẫu nhiên AI train với seed=random Fitness đo số điểm đạt Kết huấn luyện (record2) Cá thể SL Đời SL lai SL gạch Max fitness Weight cá thể tốt 10 10 500 169,382 [-0.95302473, 0.18715282, -2.16764887, 0.34569755] Bảng so sánh STT seed Số lượng gạch Trained fitness Demo fitness Train fitness/demo fitness 2.1 500 29,795 146,396 0.203523 2.2 500 1,612 146,398 0.011011 2.3 500 159,545 145,229 1.098575 2.4 500 18,009 151,914 0.118547 2.5 500 37,861 144,788 0.261493 infinite 247.437 (lost) >3.000.00 (stopped) 2.6 Phân tích case #2: - AI huấn luyện qua 10 đời, đời gồm 10 cá thể,với giới hạn gạch 500 - Ta thua 247,437 điểm hàng 2.6 (không giới hạn gạch), không đạt yêu cầu Kết luận case#2: - Khi thực chiến cá thể có giới hạn gạch seed khác - Huấn luyện AI với seed ngẫu nhiên có khả tạo AI tốt - Ngoại trừ 2.3, trained_weight ln đạt tỉ lệ thấp so với demo_weight (2.2 đạt 1,1%) - Huấn luyện AI với seed ngẫu nhiên cần nhiều cá thể đời cần qua nhiều đời để đạt khả ứng dụng cao (khi so với ứng dụng case #2) - Ở 2.3 ta đạt 110% 14 ĐỒ ÁN TETRIS AI Case #3: AI với fitness train seed Đặc điểm: ▪ ▪ Các viên gạch thứ tự gạch xuất xác định seed AI train với seed=1 Fitness đo bằng: số lượng line xóa*1000 + số lượng gạch đặt Kết huấn luyện (record3) Cá thể SL Đời SL lai SL gạch Max fitness Weight cá thể tốt 5 300 118300 [-0.31534278, 0.2462788, -1.93889201, 0.48623653] Bảng so sánh Lưu ý: ▪ Ở bảng ta thêm thông số nằm sau fitness weight, hiệu fitness, viên gạch tetris có khối nhỏ, cần 10 khối nhỏ để tạo thành hàng ngang, cách tính fitness là: số lượng line xóa*1000 + số lượng gạch đặt, theo lý thuyết, đặt 300 viên gạch: ->fitness tối đa đạt là: 300*0.4*1000 + 300 =120,300 ▪ ▪ Ta giới thiệu thêm thông số nằm sau fitness weight tỉ lệ chúng so với fitness tối đa thông số chúng Với train số lượng gạch vô hạn chúng giám sát kèm với UI nên số điểm thấp số điểm tối đa STT seed Số lượng gạch 3.1 300 Theoretical maximum 120,300 3.2 600 240,600 3.3 1,000 401,000 Trained fitness Demo fitness 118,300 117,300 (98.3%) (97.5%) 236,600 237,600 (98.3%) (98.7%) 399,000 400,000 (99.5%) (99.7%) Train fitness/ demo fitness 1.008 0.995 0.997 15 ĐỒ ÁN TETRIS AI 3.4 3.5 2 500 Infinite 200,500 Infinite 198,500 196,500 (99%) (98%) 1,535,862 1,049,655 (99%,thua line 3862) (98.5%, thua line 2655) 1.010 1.463 Phân tích case #3: ▪ ▪ ▪ ▪ AI huấn luyện qua đời, đời gồm cá thể, với giới hạn gạch 300 Khi thực chiến với demo_weight cá thể có giới hạn gạch seed khác Kết mang so sánh với demo_fitness thật xuất sắc, qua tổng cộng 25 cá thể mà AI ngang so với demo_fitness 4/5 test chạm ngưỡng 146% hiệu dùng seed khơng giới hạn gạch Có khác biệt lớn thay đổi công thức tính fitness Kết luận case#3: ▪ ▪ Huấn luyện AI tetris muốn đạt hiệu cao, nhanh chóng ta tính fitness số lượng line clear, tốt tính điểm, cơng thức tính điểm số lượng line clear = [1,2,3,4] có số điểm [40,100,300,1200], cơng thức tính điểm chơi ưu tiên clear nhiều line lúc, mang lại nguy hiểm cho AI độ cao trung bình đẩy lên để ưu tiên clear nhiều line AI với fitness theo số line clear ưu tiên clear line trước, dẫn đến độ cao trung bình thấp, khiến chúng sống lâu Cần có kiểm chứng thực lực AI với fitness khác 16 ĐỒ ÁN TETRIS AI Case #4: AI tự train vs AI tự train Đặc điểm: ▪ ▪ ▪ ▪ Khi so sánh với AI so sánh số điểm đạt Các viên gạch thứ tự gạch xuất xác định seed AI train seed = Ta train AI đối đầu với Fitness AI đo bằng: số lượng line xóa*1000 + số lượng gạch đặt Kết huấn luyện AI (record4) Cá thể SL Đời SL lai SL gạch Max fitness Weight cá thể tốt 5 300 119,300 [-0.40254199, 0.83214954, -1.22852379, 0.60817082] Fitness AI đo số điểm đạt Kết huấn luyện AI (record5) Cá thể SL Đời SL lai SL gạch Max fitness Weight cá thể tốt 5 300 59,075 [-0.99519968, 0.51426722, -1.50641223, 0.66819176] Bảng so sánh Lưu ý: ▪ Với train số lượng gạch vơ hạn chúng giám sát kèm với UI nên số điểm thấp số điểm tối đa mà chúng đạt STT seed Số lượng gạch AI AI Score Score AI score/AI score 4.1 100 7,551 7,620 0.990944882 4.2 300 55,769 59,075 0.944037241 4.3 600 203,548 225,613 0.902199785 4.4 Infinite 2,134,832 495,705 (lost) (lost) 4.306658194 17 ĐỒ ÁN TETRIS AI 4.5 Infinite 337,842 1,550,578 (lost) (lost) 0.217881332 Phân tích case #4: ▪ ▪ ▪ AI huấn luyện qua đời, đời gồm cá thể, với giới hạn gạch 300 Khi train AI sử dụng số điểm đạt AI tối ưu clear nhiều hàng cung lúc hơn, 4.1 4.2 4.3, AI đạt điểm số cao Nhưng muốn AI tồn lâu AI tồn tốt (4.4) Kết luận case #4: ▪ ▪ ▪ AI huấn luyện với fitness ưu tiên clear nhiều hàng lúc (AI 2) có hiệu tốt số lượng gạch cho phép AI huấn luyện với fitness ưu tiên độ cao cột (AI 1) có khả tồn tốt (4.4) Nếu muốn đánh giá AI seed khác nên thử nhiều seed kết phụ thuộc vào seed (4.5) 18 ĐỒ ÁN TETRIS AI KẾT LUẬN Sau nghiên cứu huấn luyện nhóm có nhiều kiến thức tạo AI có khả chơi Tetris 34,000,000 điểm AI huấn luyện qua 20 đời, gồm 20 cá thể, 5000 gạch giới hạn huấn luyện hồn chỉnh vịng 13h (Video) Sau hoàn thành đồ án tiến hành nghiên cứu, nhóm biết thêm nhiều nội dung liên quan đến AI nói chung AI cho game Tetris nói riêng Các kiến thức dùng cho học tập dự án sau này, nhóm vui chọn đề tài tốt mang lại nhiều kiến thức bổ ích Cảm ơn thầy cô bạn đọc qua báo cáo 19 ĐỒ ÁN TETRIS AI THAM KHẢO Tetris game: https://gist.github.com/silvasur/565419/7e044a90eb97eb67d600b2fb776000b a36f6fcc9 Demo weights & charts: Tetris AI – The (Near) Perfect Bot | Code My Road (wordpress.com) Genetic algorithm: https://towardsdatascience.com/genetic-algorithmimplementation-in-python-5ab67bb124a6 20 ĐỒ ÁN TETRIS AI Records Record1 new population: [[-0.12589704 -1.34197848 -0.06709601 0.3200456 ] [-1.23962156 -1.19593245 -0.75849727 -1.21559287] [ 1.07378825 0.1164188 -1.30261983 1.92559758] [-1.062422 -1.78877925 0.62026639 -1.46762026] [-0.27343832 -1.98723154 1.81341477 1.11719358]] Original Generation fitnesses: [257, 3647, 256, 558, 135] Generation fitnesses: [3647, 558, 795, 1863, 428] Generation fitnesses: [3647, 1863, 4989, 1863, 4989] Generation fitnesses: [4989, 4989, 7072, 7072, 4025] Generation fitnesses: [7072, 7072, 2946, 7072, 4989] Generation fitnesses: [7072, 7072, 5635, 4025, 4869] Best solution: [-1.23962156 -1.19593245 -1.23643526 -1.21559287] best solution fitness: 7072 Record new population: [[-0.36033681 0.27601282 0.53840525 0.05282673] [ 0.53552701 -0.51392713 -0.737155 -0.34569755] [ 0.91680168 -0.10872061 -0.8428988 -0.79516539] [-0.95302473 0.18715282 0.10498858 -0.1459121 ] [ 0.42588522 0.10440791 0.73048244 0.15893209] [ 0.19346333 -0.959116 0.50918438 0.00269006] [-0.25760762 -0.26413225 0.38128662 0.09112444] [-0.91848655 -0.10188107 -0.27684545 0.0634764 ] [ 0.41675761 -0.04812963 0.42923271 -0.03727684] [-0.5583668 0.87129382 0.27870917 0.02245596]] Original Generation fitnesses: [129, 565, 391, 154016, 119, 117, 100, 265, 141, 255] 21 ĐỒ ÁN TETRIS AI Generation fitnesses: [121631, 469, 138103, 121, 148502, 129, 133175, 506, 153663, 134] current best [-0.95302473 0.18715282 -0.38422874 -0.34569755] Generation fitnesses: [149836, 157954, 156179, 156516, 155680, 147348, 146984, 150102, 147736, 153386] current best [-0.95302473 0.18715282 -1.11446077 -0.34569755] Generation fitnesses: [146975, 147132, 146514, 151658, 12936, 151628, 136977, 149282, 19929, 88325] current best [-0.95302473 0.18715282 -1.85092342 -0.34569755] Generation fitnesses: [170107, 158058, 140054, 151453, 145574, 2949, 136085, 159224, 76696, 155764] current best [-0.95302473 0.18715282 -1.85092342 -0.34569755] Generation fitnesses: [79757, 42186, 154283, 160948, 146836, 1159, 153866, 3638, 152591, 169382] current best [-0.95302473 0.18715282 -2.16764887 -0.34569755] Best solution: [-0.95302473 0.18715282 -2.16764887 -0.34569755] best solution fitness: 169382 Record new population: [[-0.31534278 0.2462788 -0.55076098 -0.73178723] [ 0.99695293 -0.29059119 -0.53770487 -0.96082544] [-0.001084 0.0704489 0.94301807 0.55202953] [-0.94000427 -0.03486777 -0.61674877 -0.48623653] [ 0.47391941 -0.43178742 0.84252522 -0.15626129]] Original Generation fitnesses: [78236, 1023, 16, 47158, 14] Generation fitnesses: [41146, 107300, 30118, 29116, 118300] current best [-0.31534278 0.2462788 -1.31614839 -0.48623653] Generation fitnesses: [117300, 114300, 12069, 100284, 10059] current best [-0.31534278 0.2462788 -1.31614839 -0.48623653] Generation fitnesses: [115300, 114300, 117300, 112300, 13072] current best [-0.31534278 0.2462788 -0.97926943 -0.48623653] Generation fitnesses: [114300, 113300, 111300, 115300, 56183] current best [-0.31534278 0.2462788 -1.93889201 -0.48623653] 22 ĐỒ ÁN TETRIS AI Generation fitnesses: [118300, 117300, 117300, 116300, 118300] current best [-0.31534278 0.2462788 -1.93889201 -0.48623653] Best solution: [-0.31534278 0.2462788 -1.93889201 -0.48623653] best solution fitness: 118300 Record new population: [[-0.88319204 -0.69847013 0.28717479 0.60853124] [-0.12275299 -0.14480655 0.87347775 0.15159102] [ 0.90889062 0.29639745 0.89318931 -0.99309231] [-0.21858926 -0.53570015 -0.37034827 -0.60817082] [-0.40254199 0.83214954 0.340375 0.57362504]] Original Generation fitnesses: [17, 12, 18, 14077, 22] Generation fitnesses: [14077, 22, 17, 114300, 14] current best [-0.40254199 0.83214954 -0.8896612 -0.60817082] Generation fitnesses: [114300, 14077, 12071, 23100, 119300] current best [-0.40254199 0.83214954 -1.22852379 -0.60817082] Generation fitnesses: [119300, 114300, 117300, 94277, 94277] current best [-0.40254199 0.83214954 -1.22852379 -0.60817082] Generation fitnesses: [119300, 117300, 117300, 119300, 119300] current best [-0.40254199 0.83214954 -1.22852379 -0.60817082] Generation fitnesses: [119300, 119300, 119300, 117300, 119300] current best [-0.40254199 0.83214954 -1.22852379 -0.60817082] Best solution: [-0.40254199 0.83214954 -1.22852379 -0.60817082] best solution fitness: 119300 Record new population: [[ 0.19585127 -0.9264338 0.27480114 -0.31096539] [ 0.99071723 -0.62228411 0.00677708 0.29658396] [-0.99519968 0.51426722 -0.62563145 -0.55191613] [ 0.835203 0.4954197 0.88405925 -0.85152596] 23 ĐỒ ÁN TETRIS AI [-0.69418774 0.19499202 -0.71301293 -0.66819176]] Original Generation fitnesses: [172, 122, 56402, 137, 20042] Generation fitnesses: [56402, 20042, 55717, 27571, 55717] current best [-0.99519968 0.51426722 -0.62563145 -0.55191613] Generation fitnesses: [56402, 55717, 55088, 4724, 55748] current best [-0.99519968 0.51426722 -0.62563145 -0.55191613] Generation fitnesses: [56402, 55748, 54153, 55748, 55717] current best [-0.99519968 0.51426722 -0.62563145 -0.55191613] Generation fitnesses: [56402, 55748, 55717, 55717, 53916] current best [-0.99519968 0.51426722 -0.62563145 -0.55191613] Generation fitnesses: [56402, 55748, 55748, 51674, 59075] current best [-0.99519968 0.51426722 -1.50641223 -0.66819176] Best solution: [-0.99519968 0.51426722 -1.50641223 -0.66819176] best solution fitness: 59075 24 ... thể lai tạo, tổng hợp lại để tạo thành quần thể Lặp lại trình đạt nhu cầu người lập trình, ta thu kết lấy cá thể có kết tốt ĐỒ ÁN TETRIS AI Thực thi Tetris: Vì đồ án huấn luyện AI chơi game tetris. .. lực AI với fitness khác 16 ĐỒ ÁN TETRIS AI Case #4: AI tự train vs AI tự train Đặc điểm: ▪ ▪ ▪ ▪ Khi so sánh với AI so sánh số điểm đạt Các viên gạch thứ tự gạch xuất xác định seed AI train seed... (4.5) 18 ĐỒ ÁN TETRIS AI KẾT LUẬN Sau nghiên cứu huấn luyện nhóm có nhiều kiến thức tạo AI có khả chơi Tetris 34,000,000 điểm AI huấn luyện qua 20 đời, gồm 20 cá thể, 5000 gạch giới hạn huấn luyện