4.2. Đánh giá kết quả thực nghiệm 4.2.1. Ưu điểm 4.2.1. Ưu điểm
− Tỉ lệ các AI hồn thành vịng đua cao.
− AI biết sử dụng thành thạo kỹ thuật drift trên những khúc cua khó.
− AI biết ưu tiên nhặt vật phẩm tăng tốc, né vậy phẩm làm giảm tốc độ của xe.
− Các AI mức độ Khó nhìn chung đáp ứng được kỳ vọng đặt ra.
− Khơng có sự chênh lệch quá nhiều về Cumilative Rewards giữa các xe => Độ tốt AI giữa các biến thể xe là gần như nhau.
4.2.2. Nhược điểm
− Quy mô thực nghiệm nhỏ do giới hạn về phần cứng, thơng số chưa thể biểu diễn hồn tồn độ hiệu quả của AI.
− Kết quả lượt đua cịn phụ thuộc vào vị trí xuất phát của xe.
52
− Những va chạm hỗn loạn ở đầu lượt đua có thể khiến xe bị chệch hướng và đi ngược chiều. Mặc dù tỉ lệ này là nhỏ, đây vẫn là một thiếu sót ảnh hưởng đến độ tốt của AI trong thực tế.
4.2.3. Hướng khắc phục
− Tinh chỉnh hệ thống thưởng phạt và huấn luyện lại.
53
CHƯƠNG 5:
KẾT LUẬN & HƯỚNG PHÁT TRIỂN
5.1. Kết luận
Thơng qua q trình thực hiện và nghiên cứu đề tài , tôi đã học được thêm nhiều kiến thức:
− Các kiến thực cơ bản về máy học, Reinforcement Learning và thuật toán PPO.
− Các kiến thức về lập trình và thiết kế game, đặc biệt là lập trình và thiết kế trên nền tảng Unity.
Đồng thời, áp dụng những kiên thức đã học và đạt được những kết quả:
− Báo cáo toàn văn về đề tài Ứng dụng Machine Learning trong việc huấn luyện AI cho game đua xe.
− Xây dựng thành cơng quy trình huấn luyện AI game đua xe bằng thư viện ML- Agents trên Unity.
− Xây dựng thành công sản phẩm là một game đua xe cơ bản có AI áp dụng Reinforcement Learning.
5.2. Hướng phát triển
Sau đây là những hướng phát triển được đề ra cho tương lai với những kết quả đã đạt được:
− Tăng độ phức tạp của môi trường (thêm đường đua mới, đường đua nhiều hướng, đường tắt, chướng ngại vật trên đường, v.v…)
− Phát triển game hỗ trợ trên các nền tảng di động như Android, iOS.
− Kết hợp thuật tốn cân bằng game vào trong q trình huấn luyện AI (tự giảm reward khi thấy AI vượt quá xa player).
54
− Phát triển hệ thống online multiplayer trong game.
− Thêm các yếu tố thưởng rải rác (sparse-reward) vào trong game cũng như môi trường huấn luyện như vật phầm tăng sức mạnh hay đệm tăng tốc.
55
TÀI LIỆU THAM KHẢO
[1] A. Koster, “Theory of Fun for Game Design”, 2nd edition. O'Reilly Media Inc., 2013
[2] “Kart racing game”, Wikipedia, last edited on Mar. 1 2021 [Online] – Available:
https://en.wikipedia.org/wiki/Kart_racing_game
[3] A. Mohamed, “Artificial Intelligence In Racing Games”, University of Burmingham [Online] – Available:
https://www.cs.bham.ac.uk/~ddp/AIP/RacingGames.pdf
[4] Early Arcade Classics: 1985-1987 Developer Interviews, shmuplations.com [Online] – Available: http://shmuplations.com/earlyarcade/
[5] Y. Sazaki, A. Primanita and M. Syahroyni, “Pathfinding Car Racing Game Using Dynamic Pathfinding Algorithm and Algorithm A*”, 3rd International Conference on Wireless and Telematics (ICWT). IEEE, 2017 [Online] – Available:
https://ieeexplore.ieee.org/document/8284160
[6] Y. Ohyagi and K. Satou, “Racing game program and video game device”, U.S. Patent 7278913, Oct. 9, 2007 [Online] – Available:
https://patents.google.com/patent/US7278913B2/en
[7] Anon, “Rubber Band AI (Concept)” [Online] – Available:
https://www.giantbomb.com/rubber-band-ai/3015-35/
[8] M. Sayer, “5 Games Totally Ruined By Rubberbanding AI” , Paste Media Group, 2016 [Online] – Available: https://www.pastemagazine.com/games/racing-games/5-
games-totally-ruined-by-rubberbanding-ai/#need-for-speed
[9] “What is Drifting?” [Online] – Available:
56
[10] B. Baker et al., “Emergent Tool Use from Multi-Agent Interaction”, OpenAI, 2019 [Online] – Available: https://openai.com/blog/emergent-tool-use/
[11] H. Heidenreich, “Reinforcement Learning (Part 1) – The Mario Bros Example” [Online] – Available: https://cai.tools.sap/blog/the-future-with-reinforcement-learning-
part-1/
[12] S. Bhatt, “5 Things You Need to Know about Reinforcement Learning”, KDNuggets [Online] – Available: https://www.kdnuggets.com/2018/03/5-things-
reinforcement-learning.html
[13] J. Hui, “RL — Proximal Policy Optimization (PPO) Explained” [Online] – Available: https://jonathan-hui.medium.com/rl-proximal-policy-optimization-ppo-
explained-77f014ec3f12
[14] T. Haarnoja et al., “Soft Actor Critic—Deep Reinforcement Learning with Real- World Robots”, The Berkeley Artificial Intelligence Research Blog [Online] – Available: https://bair.berkeley.edu/blog/2018/12/14/sac/
[15] S. Gujar, “Trust Region Policy Optimization (TRPO) and Proximal Policy Optimization (PPO)”, Medium, Apr. 21, 2018 [Online] – Available:
https://medium.com/@sanketgujar95/trust-region-policy-optimization-trpo-and- proximal-policy-optimization-ppo-e6e7075f39ed
[16] M.Wulfmeier, P. Ondrúska and I. Posner, “Maximum Entropy Deep Inverse Reinforcement Learning”, University of Oxford, Mar. 11, 2016 [Online] – Available:
https://arxiv.org/pdf/1507.04888.pdf
[17] J. Schulman, F. Wolski, P. Dhariwal, A. Radford amd O. Klimov, “Proximal Policy Optimization Algorithms”, OpenAI, Aug. 28 2017 [Online] – Available:
57
[18] “Unity Machine Learning Agents”, Unity [Online] – Available:
https://unity.com/products/machine-learning-agents
[19] “EasyRoads3D v3 Manual”, UnityTerrainTools.com [Online] – Available:
https://www.easyroads3d.com/v3/manualv3.html
[20] “Wii U – Mario Kart 8”, The Model Resources [Online] – Available:
https://www.models-resource.com/wii_u/mariokart8/
[21] SkyBox Series Free by Avionx, Unity Asset Store [Online] – Available:
https://assetstore.unity.com/packages/2d/textures-materials/sky/skybox-series-free- 103633
[22] Yughues Free Sand Materials by Nobiax/ Yughues, Unity Asset Store [Online] – Available: https://assetstore.unity.com/packages/2d/textures-materials/floors/yughues-