Tìm hiểu trí tuệ nhân tạo và xây dựng ứng dụng minh họa

32 7 0
Tìm hiểu trí tuệ nhân tạo và xây dựng ứng dụng minh họa

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM ĐỖ NGỌC THÀNH LƯU ĐỨC BẢO BÁO CÁO ĐỒ ÁN TÌM HIỂU TRÍ TUỆ NHÂN TẠO VÀ XÂY DỰNG ỨNG DỤNG MINH HỌA KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM TP HỒ CHÍ MINH, 2021 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN KHOA CÔNG NGHỆ PHẦN MỀM ĐỖ NGỌC THÀNH - 18520358 LƯU ĐỨC BẢO - 18520485 BÁO CÁO ĐỒ ÁN TÌM HIỂU TRÍ TUỆ NHÂN TẠO VÀ XÂY DỰNG ỨNG DỤNG MINH HỌA KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM GIẢNG VIÊN HƯỚNG DẪN TS.HUỲNH NGỌC TÍN TP HỒ CHÍ MINH, 2021 LỜI CẢM ƠN Khoảng thời gian thực đề tài khoảng thời gian đầy thử thách chúng em Để hoàn thành đề tài này, chúng em xin gửi lời cảm ơn sâu sắc đến TS Huỳnh Ngọc Tín, thầy tận tình giúp đỡ tài liệu chuyên môn lẫn lời khuyên góp ý kịp thời để tạo điều kiện để chúng em hồn thành khóa luận cách tốt Ngoài ra, chúng em xin chân thành cảm ơn đến tất thầy cô trường Đại học Cơng nghệ Thơng tin nói chung thầy khoa Cơng nghệ Phần mềm nói riêng dạy dỗ truyền đạt cho em kiến thức kinh nghiệm suốt trình em học tập trường Đại học Công nghệ Thông tin để em vận dụng vào đề tài Một lần chúng em xin chân thành cảm ơn chúc quý thầy cô anh chị sức khỏe thành cơng sống Tp Hồ Chí Minh, tháng 12 năm 2021 Sinh Viên thực đề tài Đỗ Ngọc Thành Lưu Đức Bảo ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: Tìm hiểu Trí tuệ Nhân tạo xây dựng ứng dụng minh họa Cán hướng dẫn: TS Huỳnh Ngọc Tín Thời gian thực hiện: Từ ngày 16/9/2021 đến ngày 20/12/2012 Sinh viên thực hiện: Đỗ Ngọc Thành - 18520358 Lưu Đức Bảo - 18520485 Nội dung đề tài Mục tiêu: Tìm hiểu trí tuệ nhân tạo, nghiên cứu số thuật tốn trí tuệ nhân tạo áp dụng để giải số toán Phương pháp thực hiện: - Phân tích đề tài - Nghiên cứu, tìm hiểu số báo, kiến thức - Nghiên cứu công nghệ, thư viện để áp dụng - Cài đặt mơi trường phát triển - Phát triển hồn thiện sản phẩm Kết mong đợi: Nắm kiến thức trọng tâm hồn thiện mơ hình đáp ứng nhu cầu toán đề Kế hoạch thực hiện: STT Công việc thực Thời gian thực Tìm hiểu phân tích đề tài 24/9/2021 đến 27/9/2021 Tìm kiếm phân tích tài liệu liên quan 28/9/2021 đến 12/10/2021 Tìm hiểu Machine Learning phương 13/10/2021 đến 4/11/2021 pháp Q-learning Reinforcement Learning Tìm hiểu Genetic Algorithm thuật toán di truyền NEAT Áp dụng thuật toán Q-learning vào xây dựng trí tuệ nhân tạo mơi trường ảo Huấn luyện lưu trữ kết 5/11/2021 đến 17/11/2021 Áp dụng thuật toán di truyền NEAT tạo AI chơi trò chơi Flappy Bird Huấn luyện lưu trữ kết 18/11/2021 đến 2/12/2021 Hiện thực hoá tài liệu 3/12/2021 đến 10/12/2021 Tập hợp, phân tích đánh giá kết đạt 11/12/2021 đến 20/12/2021 DANH MỤC BẢNG Bảng 3.1 Kết thực nghiệm Q-Learning AI 16 Bảng 4.1 Kết thực nghiệm NEAT AI 20 DANH MỤC MỘT SỐ THUẬT NGỮ AI (Artificial Intelligence) Trí tuệ nhân tạo Reactive Machine Cơng nghệ AI phản ứng Limited Memory Trí nhớ có hạn Machine Learning Học máy (là lĩnh vực AI) Reinforcement learning Học tập củng cố LSTM (Long Short Term Memory) Bộ nhớ ngắn hạn dài E-GAN (Evolutionary Generative Adversarial Networks) Mạng đối nghịch tạo sinh tiến hóa Theory of Mind Lý thuyết tâm lý Self-awareness Tự nhận thức Q-Learning Một thuật toán Reinforcement learning Q-Matrix Ma trận Q-Learning State Trạng thái Action Hành động Reward Phần thưởng NEAT (NeuroEvolution of Augmenting Topologies) Một thuật toán AI dựa thuyết di truyền tiến hóa MỤC LỤC GIỚI THIỆU ĐỀ TÀI Chương 1: TỔNG QUAN ĐỀ TÀI 1.1 Dẫn nhập 1.2 Mục tiêu 1.3 Nội dung thực 1.4 Kết đạt 1.5 Cấu trúc báo cáo Chương TÌM HIỂU VỀ TRÍ TUỆ NHÂN TẠO 2.1 Khái niệm trí tuệ nhân tạo 2.2 Các dạng trí tuệ nhân tạo 2.2.1 Reactive Machine 2.2.2 Limited Memory 2.2.3 Theory of Mind 2.2.4 Self-awareness 2.3 Loại hình trí tuệ nhân tạo 2.3.1 Narrow AI 2.3.2 Artificial General Intelligence 2.4 Lịch sử hình thành phát triển Chương 3: TÌM HIỂU REINFORCEMENT LEARNING VÀ ÁP DỤNG XÂY DỰNG TRÍ TUỆ NHÂN TẠO TRÊN MƠI TRƯỜNG ẢO CĨ SẴN 3.1 Reinforcement Learning 3.2 Q-Learning 3.3 Xây dựng trí tuệ nhân tạo môi trường ảo áp dụng Q-Learning 3.3.1 Mô tả tốn 3.3.2 Cài đặt mơi trường gym 3.3.3 Thực toán 3.3.4 Kết 3.3.5 Kết luận 2 3 5 5 7 8 13 13 13 14 14 15 15 16 16 Chương 4: TÌM HIỂU THUẬT TỐN DI TRUYỀN TIẾN HĨA VÀ ÁP DỤNG XÂY DỰNG TRÍ TUỆ NHÂN TẠO CHƠI TRÒ CHƠI ĐƠN GIẢN 17 17 4.1 Di truyền Tiến hóa 4.2 NEAT 17 4.3 Xây dựng trí tuệ nhân tạo chơi trị chơi Flappy Bird áp dụng NEAT 18 18 4.3.1 Mơ tả tốn 4.3.2 Cài đặt môi trường 18 4.3.2.1 Cài đặt PyGame 4.3.2.2 Xây dựng trò chơi Flappy Bird 4.3.2.3 Cài đặt NEAT 4.3.3 Thực toán 4.3.4 Kết 4.3.5 Kết luận 18 18 19 19 20 21 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận Hướng phát triển 22 TÀI LIỆU THAM KHẢO Tiếng Anh Internet 23 22 22 23 23 GIỚI THIỆU ĐỀ TÀI Lĩnh vực Trí tuệ Nhân tạo(AI) có tiềm cải thiện sống người cách giúp giải số thách thức hiệu công việc Hơn hết ứng dụng AI gặt hái lợi ích lớn cho cơng chúng lĩnh vực đa dạng chăm sóc sức khỏe, giao thơng, mơi trường, tư pháp hình hịa nhập kinh tế Hiệu thân phủ tăng lên quan xây dựng lực sử dụng AI để thực sứ mệnh họ nhanh hơn, nhạy hiệu Trong tương lai, AI tiếp tục đóng góp vào tăng trưởng kinh tế công cụ có giá trị để cải thiện giới, miễn ngành công nghiệp, xã hội dân phủ hợp tác để phát triển khía cạnh tích cực cơng nghệ, quản lý rủi ro thách thức, đồng thời đảm bảo người có hội tham gia xây dựng nâng cao trí tuệ nhân tạo nhận lợi ích Như đóng góp vào việc chuẩn bị cho tương lai Trí tuệ Nhân tạo đóng vai trò ngày tăng, chúng em thực đề tài nhằm nghiên cứu tìm hiểu rõ trí tuệ nhân tạo thuật tốn di truyền để đào tạo AI ● Năm 1950, Các sinh viên đại học Harvard Marvin Minsky Dean Edmonds xây dựng SNARC, mạng nơron máy tính ● Năm 1950, Claude Shannon xuất báo "Programming a Computer for Playing Chess." ● Năm 1950, Isaac Asimov xuất "Three Laws of Robotics." ● Năm 1952, Samuel phát triển chương trình tự học để chơi cờ ● Năm 1954, Thí nghiệm dịch máy Georgetown-IBM tự động dịch 60 câu tiếng Nga lựa chọn cẩn thận sang tiếng Anh ● Năm 1956, Cụm từ Artificial Intelligence đặt "Dartmouth Summer Research Project on Artificial Intelligence." Được dẫn dắt John McCarthy, hội nghị xác định phạm vi mục tiêu Al, nhiều người coi đời trí tuệ nhân tạo biết ngày ● Năm 1956, Allen Newell Herbert Simon viết Logic Theorist(LT), chương trình lý luận ● Năm 1958, John McCarthy phát triển ngơn ngữ lập trình Al Lisp xuất báo "Programs with Common Sense" Bài báo đề xuất Advice Taker, hệ thống Al hoàn chỉnh với khả học hỏi kinh nghiệm hiệu người ● Năm 1959, Allen Newell, Herbert Simon J.C Shaw phát triển General Problem Solver(GPS), chương trình thiết kế để bắt chước cách giải vấn đề người ● Năm 1959 Herbert Gelernter phát triển chương trình Geometry Theorem Prover ● Năm 1959 Arthur Samuel sử dụng thuật ngữ Machine learning làm việc IBM ● Năm 1959 John McCarthy Marvin Minsky thành lập Dự án Trí tuệ Nhân tạo MIT Những năm 1960: ● Năm 1963 John McCarthy bắt đầu Phịng thí nghiệm AI Stanford ● Năm 1966 Báo cáo Automatic Language Processing Advisory Committee (ALPAC) phủ Hoa Kỳ nêu chi tiết thiếu tiến nghiên cứu dịch máy, sáng kiến ​ ​ lớn Chiến tranh Lạnh với hứa hẹn dịch tiếng Nga tự động tức thời Báo cáo ALPAC dẫn đến việc hủy bỏ tất dự án MT phủ tài trợ ● Năm 1969, Các hệ thống chuyên gia thành công phát triển DENDRAL, MYCIN, thiết kế để chẩn đoán nhiễm trùng máu, tạo Stanford Những năm 1970: ● Năm 1972, Ngơn ngữ lập trình logic PROLOG tạo ● Năm 1973, Báo cáo “Lighthill Report”, trình bày chi tiết thất vọng nghiên cứu AI, phủ Anh công bố dẫn đến việc cắt giảm nghiêm trọng nguồn tài trợ cho dự án trí tuệ nhân tạo ● Năm 1974-1980, Sự thất vọng với tiến độ phát triển AI dẫn đến việc cắt giảm đáng kể khoản tài trợ học tập DARPA Kết hợp với báo cáo ALPAC trước "Lighthill Report" năm trước, nguồn tài trợ trí tuệ nhân tạo bị cạn kiệt gian hàng nghiên cứu Giai đoạn gọi "First AI Winter." Những năm 1980: ● Năm 1980, Các tập đoàn thiết bị kỹ thuật số phát triển R1 (còn gọi XCON), hệ thống chuyên gia thương mại thành công Được thiết kế để định cấu hình đơn đặt hàng cho hệ thống máy tính mới, R1 khởi động bùng nổ đầu tư vào hệ thống chuyên gia kéo dài phần lớn thập kỷ, kết thúc hiệu "First AI Winter" ● Năm 1982, Bộ Thương mại Quốc tế Công nghiệp Nhật Bản khởi động dự án Hệ thống Máy tính Thế hệ Thứ năm (FGCS) đầy tham vọng 10 Mục tiêu FGCS phát triển hiệu suất giống siêu máy tính tảng để phát triển AI ● Năm 1983, Để đáp lại FGCS Nhật Bản, phủ Hoa Kỳ khởi động Sáng kiến ​ ​ Điện toán Chiến lược để cung cấp nghiên cứu DARPA tài trợ lĩnh vực máy tính tiên tiến trí tuệ nhân tạo ● Năm 1987-1993, Khi cơng nghệ máy tính cải thiện, lựa chọn thay rẻ xuất thị trường máy Lisp sụp đổ vào năm 1987, mở "Second AI Winter." Trong thời kỳ này, hệ thống chuyên gia đắt để trì cập nhật, cuối khơng cịn ưa chuộng Những năm 1990: ● Năm 1991, Lực lượng Hoa Kỳ triển khai DART, công cụ lập kế hoạch kế hoạch hậu cần tự động, Chiến tranh vùng Vịnh ● Năm 1992, Nhật Bản chấm dứt dự án FGCS với lý không đạt mục tiêu đầy tham vọng vạch trước thập kỷ ● Năm 1993, DARPA kết thúc Sáng kiến ​ ​ Điện tốn Chiến lược sau chi gần tỷ la không đạt kỳ vọng ● Năm 1997, Deep Blue IBM đánh bại nhà vô địch cờ vua giới Gary Kasparov Những năm 2000: ● Năm 2005, STANLEY, xe tự lái, giành chiến thắng thi DARPA Grand Challenge ● Năm 2005, Quân đội Hoa Kỳ bắt đầu đầu tư vào robot tự động "Big Dog" Boston Dynamics "PackBot" iRobot ● Năm 2008, Google tạo đột phá nhận dạng giọng nói giới thiệu tính ứng dụng iPhone Từ năm 2010-2014: ● Năm 2011, Watson IBM vượt qua cạnh tranh Jeopardy! 11 ● Năm 2011, Apple phát hành Siri, trợ lý ảo hỗ trợ AI thông qua hệ điều hành iOS ● Năm 2012, Andrew Ng, người sáng lập dự án Google Brain Deep Learning, cung cấp mạng lưới thần kinh cách sử dụng thuật toán học sâu 10 triệu video YouTube đào tạo Mạng nơ-ron học cách nhận mèo mà không cần biết mèo gì, mở kỷ nguyên đột phá cho mạng nơ-ron tài trợ Deep Learning ● Năm 2014, Google tạo xe tự lái vượt qua kiểm tra lái xe cấp tiểu bang ● Năm 2014, Alexa Amazon, Virtual Home phát hành Từ năm 2015 nay: ● Năm 2016, AlphaGo Google DeepMind đánh bại nhà vô địch cờ vây giới Lee Sedol Sự phức tạp trò chơi Trung Quốc cổ đại coi trở ngại lớn cần phải giải AI ● Năm 2016, "robot citizen" đầu tiên, robot hình người tên Sophia, tạo Hanson Robotics có khả nhận dạng khuôn mặt, giao tiếp lời nói biểu khn mặt ● Năm 2018, Google phát hành công cụ xử lý ngôn ngữ tự nhiên BERT, giảm bớt rào cản việc dịch hiểu ứng dụng machine learning ● Năm 2018, Waymo mắt dịch vụ Waymo One, cho phép người dùng khắp Vùng thị Phoenix u cầu đón khách từ phương tiện tự lái công ty ● Năm 2020, Baidu phát hành thuật toán LinearFold AI cho nhóm khoa học y tế làm việc để phát triển loại vắc-xin giai đoạn đầu đại dịch SARS-CoV-2 Thuật toán dự đốn trình tự RNA virus 27 giây, nhanh 120 lần so với phương pháp khác 12 Chương 3: TÌM HIỂU REINFORCEMENT LEARNING VÀ ÁP DỤNG XÂY DỰNG TRÍ TUỆ NHÂN TẠO TRÊN MƠI TRƯỜNG ẢO CĨ SẴN 3.1 Reinforcement Learning Reinforcement Learning mơ hình học máy nằm Limited Memory AI Thay cung cấp liệu, Reinforcement Learning tự khám phá mơi trường đưa kết Reinforcement Learning tạo nhờ khái niệm “Con người học tập qua sai lầm kinh nghiệm khứ, để máy tính làm điều tương tự” Phần quan trọng Reinforcement Learning xác định cách trao thưởng cho tác nhân hoạt động môi trường Mục tiêu tác nhân thu thập nhiều phần thưởng Vì phải thưởng cho tác nhân để tác nhân biết làm 3.2 Q-Learning Q-Learning kỹ thuật đơn giản mạnh mẽ học máy liên quan đến học ma trận Thuật toán Q-Learning xác định cách cập nhật giá trị ma trận định hành động trạng thái Ý tưởng sau đào tạo ma trận, xác định tác nhân nên thực hành động dựa trạng thái ma trận ưu tiên cột có giá trị cao làm hành động Q-Matrix bắt đầu với giá trị số ngẫu nhiên Đó tác nhân chưa tìm hiểu điều mơi trường Tác nhân học hỏi cách khám phá môi trường dựa vào kết quả/ phần thưởng mà thực trạng thái khác Có hai cách để tác định hành động mà cần thực trạng thái chọn ngẫu nhiên hành động sử dụng Q-Matrix để tìm hành động đưa kết tốt Khi bắt đầu khám phá môi trường mới, tác nhân chủ yếu chọn ngẫu nhiên hành động để khám phá môi trường Càng khám phá nhiều tác nhân hướng sử dụng giá trị học lưu Q-Matrix để đưa hành động chọn ngẫu nhiên Có nghĩa tác nhân sau khám phá mơi trường ngày đưa định thường xuyên Tác nhân cần có cân việc thực hành động ngẫu nhiên dựa vào Q-Matrix để đưa hành động để đảm bảo không bị mắc kẹt 13 Sau hành động mới, tác nhân ghi lại trạng thái phần thưởng nhận sau thực hành động Sau giá trị mà tác nhân ghi lại cập nhật Q-Matrix theo công thức: Q[state, action] = Q[state, action] + ∝*(reward + ٧*max(Q[new state,:]-Q[state, action])) Trong đó: ∝ tỷ lệ học tập, số xác định mức độ phép thay đổi Q-Matrix ٧ hệ số chiết khấu sử dụng để cân mức độ tập trung vào phần thưởng tương lai 3.3 Xây dựng trí tuệ nhân tạo mơi trường ảo áp dụng Q-Learning 3.3.1 Mơ tả tốn Sử dụng thuật tốn Q-Learning để đào tạo tác nhân hoạt động môi trường đến từ Open AI Gym, cụ thể mơi trường FrozenLake-v0 Bài tốn u cầu điều khiển tác nhân hoạt động mơi trường lưới, có bắt đầu, được, ô khiến tác nhân rơi xuống nước ô mục tiêu mà tác nhân cần đến Tác nhân di chuyển theo hướng trái, phải, lên, xuống Tác nhân thưởng đến ô mục tiêu Cụ thế, tác nhân hoạt động mơi trường có dạng: S F F F F H F H F F F H H F F G Trong đó: S : điểm bắt đầu, an toàn 14 F : bề mặt đóng băng, an tồn H : hố, rơi xuống vào G : đích đến Vậy, yêu cầu toán giúp tác nhân từ điểm bắt đầu (S), qua bề mặt đóng băng (F), né hố (H) mục tiêu đến đích (G) 3.3.2 Cài đặt mơi trường gym Gym công cụ để phát triển so sánh thuật toán reinforcement learning Thư viện gym tập hợp tốn - mơi trường - kiểm tra sử dụng để tìm thuật toán reinforcement learning pip install gym 3.3.3 Thực toán Điều cần làm xây dựng Q-Matrix trống sử dụng để lưu trữ cập nhật giá trị Theo đề có x 4= 16 nên có 16 trạng thái hành động (lên, xuống, trái, phải) Việc làm xác định số để sử dụng để cập nhật Q-Matrix thông báo cho tác nhân biết nên dừng lại Vì tác nhân chạy ngẫu nhiên nên cần làm lại tác nhân chạy nhiều mà không kết Sau cần cho tác nhân biết lựa chọn hành động sau trạng thái khác Tác nhân cần chọn hành động hai phương pháp: chọn ngẫu nhiên lựa chọn theo Q-Matrix Vì cần giá trị (giá trị ngẫu nhiên) để tác nhân tính toán nên lựa chọn theo phương pháp Giá trị bắt đầu giảm tác nhân đến đích, số bé tác nhân ưu tiên sử dụng Q-Matrix Cuối cần phải cập nhật Q-Matrix sau hành động tác nhân theo công thức Q-Learning 15 3.3.4 Kết Đợt Số lượt chạy Đến đích Giá trị ngẫu nhiên 0 1 100 16 0.366 100 66 0.134 100 87 0.049 100 95 0.018 100 100 0.006 Bảng 3.1 Kết thực nghiệm Q-Learning AI 3.3.5 Kết luận Sau đợt chạy với số lượt chạy đợt 100, tác nhân hoàn thành việc tới đích với tỷ lệ lên tới 100% Điều có nghĩa đợt chạy tác nhân chạy đến đích mà khơng mắc phải sai lầm Từ đạt mục tiêu mà tốn đề 16 Chương 4: TÌM HIỂU THUẬT TỐN DI TRUYỀN TIẾN HĨA VÀ ÁP DỤNG XÂY DỰNG TRÍ TUỆ NHÂN TẠO CHƠI TRÒ CHƠI ĐƠN GIẢN 4.1 Di truyền Tiến hóa Ý tưởng thuật tốn di truyền tiến hóa xuất phát từ thuyết tiến hóa Darwin Theo thuyết tiến hóa Darwin quần thể có nhiều cá thể khác nhau, qua trình chọn lọc tự nhiên, cá thể mạnh sống sinh hệ cá thể yếu bị loại bỏ Trong thuật tốn di truyền tiến hóa thành phần có mối liên hệ với nhau: ● Quần thể: Một quần thể ban đầu có cá thể định với đặc tính khác nhau, đặc tính giúp định khả thích nghi môi trường ● Chọn lọc tự nhiên: Theo thời gian cá thể yếu hơn, khơng có khả sinh tồn bị loại bỏ Cuối lại cá thể có đặc tính ưu việt giữ lại ● Đột biến: Cá thể sinh kế thừa đặc tính cá thể cha trước có khả đột biến để có đặc tính ưu việt cá thể cha ● Tiến hóa: Khơng phải cá thể đột biến có đặc tính ưu việt cá thể cha trước Chọn lọc tự nhiên lọc cá thể đột biến sống thích nghi tốt cá thể khác quần thể Khi sử dụng thuật tốn di truyền tiến hóa có hai điều cần phải lưu ý phân biệt cá thể vượt trội so với cá thể khác cân tỷ lệ đột biến cá thể 4.2 NEAT NEAT thuật toán di truyền tiến hóa tạo mạng thần kinh nhân tạo Nó mơ dựa theo q trình tiến hóa di truyền NEAT khơng cần liệu có sẵn đào tạo AI NEAT đào tạo AI cách tạo nhiều gen, gen bao gồm danh sách gen nút gen kết nối kết nối với đầu vào hệ thống đưa kết 17 sau xử lý qua gen nút Thơng qua đột biến, gen với kích thước khác tạo Các hoạt động tái tạo đột biến thêm gen nút gen kết nối Vì thuật tốn ngày phức tạp Khi đạt đến mức cá thể vượt trội tiêu chí đặt vượt ngưỡng người dùng định, thuật tốn kết thúc 4.3 Xây dựng trí tuệ nhân tạo chơi trò chơi Flappy Bird áp dụng NEAT 4.3.1 Mơ tả tốn Flappy Bird trị chơi điện thoại Nguyễn Hà Đông phát triển Trong trò chơi, người dùng điều khiển chim tránh né chướng ngại vật dành điểm Trò chơi Flappy Bird kết thúc chim chạm vào chướng ngại vật Bài toán yêu cầu xây dựng AI điều khiển chim trò chơi Flappy Bird cho vượt nhiều chướng ngại vật 4.3.2 Cài đặt môi trường 4.3.2.1 Cài đặt PyGame PyGame thư viện ngơn ngữ Python Nó sử dụng để phát triển trò chơi 2D tảng nơi người dùng sử dụng tập hợp module Python để phát triển trò chơi pip install pygame 4.3.2.2 Xây dựng trò chơi Flappy Bird Flappy Bird trò chơi đơn giản nên nhóm tự xây dựng trị chơi tương tự phiên gốc Các thành phần trò chơi gồm có: ● Con chim: ngày rớt xuống nhảy lên khoảng cách định Nếu chim chạm vào ống cống mặt đất, trò chơi kết thúc 18 ● Ống cống: gồm hai ống cống ống cống ống cống Hai ống cống cách khoảng cách định Độ cao cống ngẫu nhiên khoảng cho trước Ống cống di chuyển qua bên trái bị xóa qua hình ● Mặt đất: phía ống cống chim Mặt đất di chuyển qua bên trái bị xóa qua hình ● Hình nền: nằm phía sau chim, ống cống mặt đất Không ảnh hưởng đến thành phần khác ● Điểm số: có giá trị ban đầu 0,mỗi lần chim qua ống cống điểm số tăng lên đơn vị 4.3.2.3 Cài đặt NEAT NEAT thuật toán sử dụng di truyền tiến hóa phát triển python pip install neat-python 4.3.3 Thực tốn Để áp dụng NEAT vào trị chơi, cần cho NEAT số đầu vào Ở nhóm sử dụng ba đầu vào độ cao chim, khoảng cách từ chim đến ống cống trên, khoảng cách từ chim đến ống cống Sau NEAT đưa đầu để định chim có nhảy hay khơng nhảy Sau vượt qua ống cống, chim xác định với ống cống Vì để NEAT phát triển nhanh nên thay chim trị chơi gốc, nhóm dùng danh sách gồm 10 chim để NEAT điều khiển Thuật toán điều là: Trong hệ, NEAT xây dựng gen cho 10 chim sau dùng gen lấy nhiều điểm để phát triển cho chim hệ 19 4.3.4 Kết Lần chạy Thế hệ Số lượng chim Điểm cao 1 10 10 10 4 10 10 10 10 3 10 10 10 10 10 10 2 10 10 10 10 10 10 10 10 10 Bảng 4.1 Kết thực nghiệm NEAT AI 20 4.3.5 Kết luận Vì độ khó trị chơi khơng thay đổi theo thời gian nên lấy mốc hoàn thành 10 điểm Sau lần thử nghiệm trung bình vào khoảng hệ thứ NEAT cho gen xuất sắc giúp chim vượt qua chướng ngại vật Hồn thành u cầu tốn 21 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận Các nội dung nhóm thực trình nghiên cứu đề tài: ● Tìm hiểu nghiên cứu lịch sử phát triển trí tuệ nhân tạo ● Tìm hiểu thuật tốn Q-learning phương pháp Reinforcement learning ● Áp dụng thuật tốn Q-learning để xây dựng trí tuệ nhân tạo mơi trường ảo ● Nghiên cứu thuật tốn di truyền NEAT xây dựng trí tuệ nhân tạo chơi trò chơi Flappy Bird NEAT Hướng phát triển Với kết đạt sau hướng phát triển mà nhóm đề ra: ● Nghiên cứu thuật toán di truyền đa dạng áp dụng thực nhiều tốn khác ● Tìm hiểu thuật toán nâng cao thuật toán di truyền Elitist Twin Removal Genetic Algorithm (ETRGA) nhằm nâng cao hiệu suất tính tốn q trình chọn lọc di truyền 22 TÀI LIỆU THAM KHẢO Tiếng Anh [1] Tom Taulli (2019) Artificial Intelligence Basics A Non-Technical Introduction [2] Lasse Rouhiainen (2018) Artificial Intelligence: 101 Things You Must Know Today About Our Future Internet [3] Pariwat Ongsulee (2018) Artificial intelligence, machine learning and deep learning https://ieeexplore.ieee.org/abstract/document/8259629 [4] Christopher J.C.H Watkins, Peter Dayan (1992) Q-Learning https://link.springer.com/content/pdf/10.1007/BF00992698.pdf [5] Kenneth O Stanley, Risto Miikkulainen (2002) Efficient evolution of neural network topologies http://nn.cs.utexas.edu/downloads/papers/stanley.cec02.pdf [6] Executive Office of the President National Science and Technology Council Committee on Technology (2016) Preparing for the future of AI https://obamawhitehouse.archives.gov/sites/default/files/whitehouse_files/microsites/o stp/NSTC/preparing_for_the_future_of_ai.pdf 23 ... NEAT áp dụng xây dựng mơ hình Trí tuệ Nhân tạo Chương TÌM HIỂU VỀ TRÍ TUỆ NHÂN TẠO 2.1 Khái niệm trí tuệ nhân tạo Trí tuệ nhân tạo lĩnh vực nghiên cứu khoa học máy tính liên quan đến xây dựng máy... Chương 2: Tìm hiểu Trí tuệ Nhân tạo Tìm hiểu khái niệm, dạng Trí tuệ Nhân tạo, lịch sử hình thành phát triển ● Chương 3: Tìm hiểu Reinforcement Learning áp dụng xây dựng Trí tuệ Nhân tạo mơi trường... ảo có sẵn Tìm hiểu thuật tốn Q-Learning áp dụng xây dựng mơ hình Trí tuệ Nhân tạo ● Chương 4: Tìm hiểu thuật tốn Di truyền Tiến hóa xây dựng Trí tuệ Nhân tạo chơi trị chơi đơn giản Tìm hiểu thuật

Ngày đăng: 08/03/2022, 21:38

Mục lục

    GIỚI THIỆU ĐỀ TÀI

    Chương 1: TỔNG QUAN ĐỀ TÀI

    1.3. Nội dung thực hiện

    1.4. Kết quả đạt được

    1.5. Cấu trúc báo cáo

    Chương 2. TÌM HIỂU VỀ TRÍ TUỆ NHÂN TẠO

    2.1. Khái niệm trí tuệ nhân tạo

    2.2. Các dạng trí tuệ nhân tạo

    2.3. Loại hình trí tuệ nhân tạo

    2.4. Lịch sử hình thành và phát triển

Tài liệu cùng người dùng

Tài liệu liên quan