Bối cảnh và vấn đề nghiên cứu
Trong lĩnh vực trí tuệ nhân tạo, sự phát triển của học sâu (Deep Learning) và học tăng cường (Reinforcement Learning - RL) đã mở ra nhiều hướng giải quyết cho các bài toán điều hướng tự động. Bài toán giải mê cung (Maze solving) là một bài toán nền tảng, có giá trị ứng dụng thực tiễn cao trong điều khiển chuyển động của robot, hệ thống định vị vệ tinh, quy hoạch lộ trình giao thông cũng như tối ưu hóa luồng vận chuyển hàng hóa tự động giữa các điểm trong kho bãi.
Khóa luận xuất phát từ nghiên cứu tiền đề "Design Hardware Accelerator for Dyna-Q Algorithm to Solve 5x5 Maze Problem" của nhóm tác giả Hiếu, Thiện, Phúc. Nghiên cứu trước đây ứng dụng giải thuật Dyna-Q-Learning để tìm đường đi ngắn nhất trên ma trận kích thước 5x5. Tuy nhiên, giải thuật Dyna-Q bộc lộ hạn chế nghiêm ngặt khi mở rộng kích thước mê cung do hiện tượng bùng nổ không gian trạng thái trong bảng tra cứu (lookup table). Nhằm vượt qua giới hạn này, nhóm tác giả đề xuất giải pháp thay thế Dyna-Q-Learning bằng Deep-Q-Learning (kết hợp mạng nơ-ron xấp xỉ hàm giá trị với học tăng cường) để giải quyết bài toán tìm đường đi tối ưu trên không gian mê cung kích thước 10x10.
Mục tiêu và nhiệm vụ nghiên cứu của đề tài được xác định gồm ba nội dung chính:
- Nghiên cứu, phân tích nền tảng lý thuyết về Học tăng cường (Reinforcement Learning), mạng nơ-ron nhân tạo (Neural Network), giải thuật Deep-Q-Learning, thuật toán lan truyền ngược (Backpropagation) và phương pháp tối ưu hóa Gradient Descent Momentum (GDM).
- Nghiên cứu, phân tích, thiết kế kiến trúc phần cứng và hiện thực giải thuật giải bài toán tìm đường đi ngắn nhất trong mê cung 10x10 bằng ngôn ngữ mô tả phần cứng Verilog HDL (RTL).
- Hiện thực, kiểm chứng và đánh giá thiết kế trên kit phần cứng FPGA Xilinx Virtex-7 VC707 dưới dạng lõi IP tích hợp trong hệ thống vi hệ thống trên chip (SoC).
Về đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Tác nhân tự hành (Agent) hoạt động trong môi trường mê cung kích thước 10x10.
- Phạm vi tri giác và không gian: Môi trường mê cung gồm 100 ô trạng thái có bố trí tường chắn (ô quái) và ô đích (kho báu). Tác nhân chỉ nhận diện thông tin của duy nhất ô mà nó đang đứng (không có tầm nhìn quan sát các ô phía trước).
- Phạm vi công nghệ và thời gian: Khóa luận kỹ sư ngành Kỹ thuật Máy tính, hoàn thành năm 2022 tại Trường Đại học Công nghệ Thông tin - Đại học Quốc gia Thành phố Hồ Chí Minh, thực thi trên nền tảng phần mềm Python, ModelSim, Xilinx Vivado và kit FPGA Virtex-7 VC707.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết của đề tài xây dựng dựa trên sự kết hợp giữa học tăng cường và mạng nơ-ron tích hợp:
- Học tăng cường (Reinforcement Learning): Mô hình hóa tương tác giữa Tác nhân (Agent) và Môi trường (Environment) thông qua cơ chế thử và sai (trial-and-error). Các thành phần cơ bản bao gồm Trạng thái (State), Hành động (Action), Phần thưởng (Reward), Chính sách (Policy) và Tập tương tác (Episode).
- Quy trình ra quyết định Markov (Markov Decision Process - MDP): Biểu diễn bài toán dưới dạng bộ tứ $(S, A, R, P)$ dựa trên tính chất Markov (không nhớ), trong đó trạng thái kế tiếp chỉ phụ thuộc vào trạng thái hiện tại và hành động được thực thi.
- Giải thuật Deep-Q-Learning: Giải quyết bài toán mở rộng trạng thái bằng cách sử dụng mạng nơ-ron thay cho bảng tra cứu lookup table truyền thống để xấp xỉ hàm giá trị $Q(s, a)$. Đầu vào của mạng là 100 trạng thái của mê cung, đầu ra là 4 giá trị Q tương ứng với 4 hành động. Kỹ thuật phát lại kinh nghiệm (Experience Replay) lưu trữ các bộ chuyển đổi $[s, a, r, s']$ vào bộ nhớ đệm và tiến hành lấy mẫu ngẫu nhiên thành các batch để huấn luyện mạng, giúp đa dạng hóa dữ liệu và loại bỏ nguy cơ quá khớp (overfitting) do các trạng thái liên tiếp có tính tuần tự.
- Hàm mất mát và tối ưu hóa: Sử dụng hàm sai số bình phương trung bình (Mean Square Error - MSE hay L2 Loss). Thuật toán tối ưu Gradient Descent Momentum (GDM) với hệ số $\gamma = 0.9$ được sử dụng để cập nhật trọng số và bias thông qua lan truyền ngược (Backpropagation) dựa trên quy tắc chuỗi (chain rule), giúp vượt qua các điểm cực tiểu cục bộ (local minimum).
- Hàm kích hoạt (Activation Function): Sử dụng hàm ReLU ($f(x) = \max(0, x)$) tại các tầng ẩn nhằm tăng tốc độ hội tụ (nhanh hơn 6 lần so với hàm Tanh) và tiết kiệm chi phí phần cứng do không phải tính toán hàm số mũ phức tạp.
- Định dạng dữ liệu: Tất cả các tính toán ma trận trọng số, sai số và giá trị Q đều được thực thi theo chuẩn số thực dấu chấm động 32-bit (Floating-Point 32-bit IEEE 754).
Phương pháp nghiên cứu thực tế gồm hai giai đoạn:
- Mô phỏng thuật toán bằng phần mềm: Sử dụng ngôn ngữ Python để mô hình hóa giải thuật Deep-Q-Learning trong mê cung 10x10; đồng thời áp dụng giải thuật tìm kiếm theo chiều rộng Lee (Lee Algorithm) trên phần mềm làm chuẩn đối đối chứng độ chính xác của đường đi ngắn nhất.
- Thiết kế và kiểm chứng phần cứng: Hiện thực thiết kế ở mức thanh ghi (Register-Transfer-Level - RTL) bằng ngôn ngữ Verilog HDL. Mô phỏng chức năng và kiểm tra dạng sóng thời gian trên ModelSim, sau đó tổng hợp logic, triển khai định tuyến (Place & Route) và nạp thử nghiệm trên phần cứng FPGA Virtex-7 VC707 thông qua phần mềm Xilinx Vivado.
Thiết kế và triển khai
Hệ thống phần cứng hoàn chỉnh gồm 4 khối chức năng chính: Khối Môi trường (Environment), Khối Tác nhân (Agent), Khối Lan truyền ngược (Backprop) và Khối Hành động ngắn nhất (Shortest action).
| Khối chức năng |
Vai trò và nhiệm vụ kỹ thuật trong kiến trúc phần cứng |
Environment |
Lưu trữ mảng trạng thái mê cung 10x10 (100 ô); tiếp nhận hành động từ Agent; tính toán và trả về trạng thái kế tiếp (nextstate), điểm thưởng (reward) và cờ báo kết thúc (isgameon). |
Agent |
Tiếp nhận trạng thái từ Environment; tính toán 4 giá trị Q thông qua 2 tầng Fully Connected (FC1, FC2); quyết định xuất hành động ngẫu nhiên hay tối ưu qua khối Policy Generator. |
Backprop |
Lưu trữ các bộ chuyển đổi kinh nghiệm (transition); lấy mẫu ngẫu nhiên 32 tập dữ liệu; tính toán đạo hàm hàm mất mát và cập nhật trọng số, bias cho mạng nơ-ron bằng thuật toán GDM. |
Shortest action |
Ghi nhận chuỗi hành động trong chế độ run_episode; so sánh tổng số bước đi với kỷ lục hiện tại để lưu trữ đường đi ngắn nhất đến đích qua 50 episode. |
Cơ chế phân định điểm thưởng và mã hóa ô trong khối Environment được thiết lập cụ thể:
| Trường hợp di chuyển của tác nhân |
Điểm thưởng nhận được (Reward) |
| Bước đi bình thường (từ ô trắng sang ô trắng) |
-50 |
Đi vào ô đã từng đi qua (visited) |
-200 |
| Đi vào ô tường chắn (ô quỷ) hoặc va vào biên mê cung |
-1000 |
| Đi đến ô có kho báu (ô đích) |
+1000 |
Mê cung 10x10 được biểu diễn bằng các mã trạng thái: số 0 thể hiện ô bình thường, số 1 thể hiện ô tường (ô quỷ), số 2 là ô kho báu và số 4 là vị trí hiện tại của tác nhân. Khi tác nhân chạm đích, trạng thái kết thúc (terminal_state) được định nghĩa bằng 100 giá trị số thực dấu chấm động 32-bit 32'b10111111100000000000000000000000 (tương ứng giá trị -1.0).
Kiến trúc các khối con chi tiết:
- Phân rã khối
Environment: Gồm control_env, ram_state_map, mux21, state_map, mem_visited, mux41 và total_check_step. Trong đó, total_check_step tích hợp in_state_map, in_mem_visited và check_step để kiểm tra va chạm, xác định ô đã đi qua và gán thưởng.
- Phân rã khối
Agent: Tầng FC1 nhận 100 trạng thái đầu vào, xuất 16 trạng thái ẩn; tầng FC2 nhận 16 trạng thái ẩn, xuất 4 giá trị Q (tương ứng 4 hành động: 00 - phải, 01 - trái, 10 - xuống, 11 - lên). Khối tính toán Fully Connected sử dụng bộ nhân và bộ cộng dấu chấm động 32-bit kết hợp khối ReLU. Khối Policy Generator sử dụng thanh ghi dịch phản hồi tuyến tính random_lfsr tạo số ngẫu nhiên 8-bit để so sánh với số lượng episode hiện tại, điều khiển bộ ghép kênh mux21 chuyển đổi giữa khám phá ngẫu nhiên và khai thác giá trị Q cực đại (POLICY MAX).
- Phân rã khối
Backprop: Chứa bộ đệm lưu trữ chuyển trạng thái. Khi tích lũy đủ 32 transition, khối TD ERROR kích hoạt bộ sinh ngẫu nhiên để chọn 32 mẫu, tính toán sai số TD và đạo hàm hàm mất mát. Các khối TD UPDATE OP và TD UPDATE IP áp dụng quy tắc chuỗi để tính đạo hàm theo trọng số và bias cho tầng đầu ra và tầng đầu vào. Sau đó, 4 khối UPDATE WEIGHT OP, UPDATE BIAS OP, UPDATE WEIGHT IP, UPDATE BIAS IP thực hiện thuật toán GDM để cập nhật trực tiếp vào bộ nhớ của Agent và Backprop.
Nội dung chính theo từng chương
Chương 1: Giới thiệu tổng quan đề tài
Chương 1 phân tích bối cảnh bùng nổ của trí tuệ nhân tạo, sự phát triển của Deep Learning và vị trí của học tăng cường trong các bài toán tự hành. Tác giả khảo sát nghiên cứu trước đây về việc thiết kế bộ tăng tốc phần cứng cho thuật toán Dyna-Q giải mê cung 5x5 của nhóm tác giả Hiếu, Thiện, Phúc; chỉ ra điểm nghẽn giới hạn kích thước của thuật toán này do dung lượng bảng tra cứu Q-value tăng theo cấp số nhân. Từ đó, chương 1 xác định hướng nghiên cứu đề tài là ứng dụng Deep-Q-Learning để thay thế Dyna-Q nhằm mở rộng không gian giải quyết mê cung lên kích thước 10x10, thiết lập mục tiêu thiết kế phần cứng RTL trên ngôn ngữ Verilog và triển khai trên FPGA Virtex-7 VC707.
Chương 2: Cơ sở lý thuyết
Chương 2 cung cấp toàn bộ nền tảng toán học và thuật toán được sử dụng trong đề tài. Nội dung trình bày chi tiết về quy trình ra quyết định Markov (MDP), hàm giá trị $Q(s, a)$, công thức sai khác thời gian Temporal Difference (TD), và nguyên lý hoạt động của mạng nơ-ron truyền thẳng đa tầng. Tác giả đi sâu phân tích hạn chế của bảng tra cứu Q-learning khi số trạng thái lớn (ví dụ không gian 10.000 trạng thái và 1.000 hành động đòi hỏi bảng tra 10 triệu ô), dẫn chứng sự cần thiết của Deep-Q-Learning cùng cơ chế Experience Replay để chống quá khớp. Bên cạnh đó, các công thức toán học của hàm mất mát sai số bình phương trung bình (MSE), thuật toán tối ưu Gradient Descent Momentum, hàm kích hoạt ReLU cùng hiện tượng "Dying ReLU" và phương pháp tính lan truyền ngược (Backpropagation) qua từng lớp nơ-ron được diễn giải đầy đủ.
Chương 3: Thiết kế tổng quan
Chương 3 xây dựng sơ đồ khối tổng thể của hệ thống gồm 4 phân vùng chức năng: Environment, Agent, Backprop và Shortest action. Tác giả thiết lập chu trình vận hành của hệ thống: Environment cung cấp trạng thái cho Agent, Agent suy luận hành động chuyển sang cho Environment thực thi; các dữ liệu chuyển trạng thái được tích lũy vào Backprop để lấy mẫu cập nhật trọng số và bias sau mỗi chu kỳ 32 mẫu. Chương này cũng chuẩn hóa quy trình thiết kế 5 bước: (1) Tìm hiểu giải thuật; (2) Mô phỏng kiểm chứng thuật toán bằng Python; (3) Hiện thực RTL cho các khối chính; (4) Tích hợp khối và xây dựng bộ điều khiển trung tâm; (5) Mô phỏng dạng sóng trên ModelSim và thực hiện Post-Implementation trên Xilinx Vivado.
Chương 4: Thiết kế chi tiết
Chương 4 là chương trọng tâm kỹ thuật, mô tả chi tiết giao tiếp tín hiệu, sơ đồ logic và chức năng của từng khối thành phần ở mức RTL. Tác giả trình bày cấu trúc chi tiết của khối Environment và khối xử lý Total_check_step, bao gồm cơ chế đọc/ghi bộ nhớ trạng thái mê cung và bộ nhớ mem_visited để kiểm soát các ô đã đi qua. Tiếp đó, cấu trúc khối Agent được phân tích với 2 lớp kết nối đầy đủ (FC1, FC2), chi tiết hóa việc xử lý dấu chấm động 32-bit và cơ chế chọn hành động của Policy Generator. Khối Backprop được phân rã thành các bộ tính toán đạo hàm TD ERROR, TD UPDATE OP, TD UPDATE IP cùng các khối cập nhật tham số sử dụng GDM. Cuối cùng, nguyên lý hoạt động của khối Shortest action được mô tả thông qua cơ chế so sánh và lưu vết số lượng hành động nhỏ nhất sau mỗi episode kết thúc.
Chương 5: Hiện thực thiết kế, mô phỏng và nạp ứng dụng của thiết kế vào FPGA
Chương 5 trình bày toàn bộ kết quả thực nghiệm và kiểm chứng hệ thống. Đầu tiên, tác giả mô phỏng thuật toán trên môi trường Python để xác nhận tác nhân tìm được đường đi ngắn nhất đến ô kho báu sau khi huấn luyện, đồng thời đối chiếu trực tiếp với kết quả từ giải thuật kinh điển Lee Algorithm để kiểm tra tính chính xác của lộ trình. Tiếp theo, các kết quả mô phỏng RTL trên phần mềm ModelSim được công bố thông qua các dạng sóng thời gian của khối Environment, quá trình truyền thẳng (Forward), và các tín hiệu cập nhật trọng số (newweightOP, newweightIP), bias mới (newbiasOP, newbiasIP). Kết quả dạng sóng phần cứng được đối chiếu trùng khớp hoàn toàn với kết quả tính toán trên phần mềm Python. Cuối cùng, tác giả trình bày việc tổng hợp thiết kế thành lõi IP trên công cụ Xilinx Vivado, tích hợp vào mô hình SoC kết nối bus và triển khai tạo bitstream trên kit phần cứng FPGA Virtex-7 VC707.
Chương 6: Kết luận và hướng phát triển của đề tài
Chương 6 tổng kết các kết quả đạt được của khóa luận trong việc hiện thực thành công kiến trúc phần cứng cho giải thuật Deep-Q-Learning giải mê cung 10x10. Tác giả nêu rõ các trở ngại kỹ thuật đã gặp phải, chủ yếu liên quan đến độ phức tạp tính toán của các khối số thực dấu chấm động 32-bit và việc đồng bộ dữ liệu giữa các bộ nhớ đệm. Đồng thời, chương này đề xuất các định hướng nâng cấp tiếp theo của đề tài.
Kết quả và đóng góp
Kết quả thực nghiệm của khóa luận được xác lập trên cả hai phương diện phần mềm và phần cứng:
- Tính chính xác của thuật toán: Mô hình phần mềm Python và thiết kế phần cứng RTL đều huấn luyện thành công tác nhân tìm được đường đi ngắn nhất trong mê cung 10x10. Kết quả đường đi và các hành động thực thi của tác nhân trùng khớp hoàn toàn với kết quả kiểm chứng của giải thuật tìm đường kinh điển Lee Algorithm.
- Kiểm chứng thiết kế RTL: Dạng sóng mô phỏng của quá trình tính toán lan truyền xuôi (
Forward), hàm mất mát và các giá trị trọng số mới (newweightOP, newweightIP), bias mới (newbiasOP, newbiasIP) trên ModelSim phản ánh độ chính xác số học tuyệt đối so với mô hình tham chiếu trên Python.
- Hiện thực phần cứng trên FPGA: Thiết kế được đóng gói thành công thành khối IP chuẩn, kết nối hoàn chỉnh trong hệ thống SoC trên phần mềm Vivado, thực hiện tổng hợp, gán chân, tạo bitstream và kiểm tra mức tiêu thụ tài nguyên, công suất trên bo mạch phần cứng Xilinx Virtex-7 VC707.
Đóng góp của khóa luận so với các nghiên cứu trước:
- Vượt qua giới hạn kích thước của nghiên cứu tiền đề: Khóa luận đã giải quyết thành công bài toán mê cung kích thước 10x10 (gồm 100 ô trạng thái), vượt trội so với giới hạn mê cung 5x5 (25 trạng thái) sử dụng giải thuật Dyna-Q của nhóm tác giả Hiếu, Thiện, Phúc.
- Khắc phục triệt để bùng nổ bộ nhớ: Bằng việc đưa mạng nơ-ron xấp xỉ hàm giá trị Q và kỹ thuật Experience Replay lên phần cứng RTL, hệ thống triệt tiêu sự phụ thuộc vào bảng tra cứu bộ nhớ dung lượng lớn khi không gian trạng thái mở rộng.
- Tối ưu hóa tri giác cục bộ: Tác nhân tìm ra lộ trình ngắn nhất đến kho báu chỉ dựa trên thông tin tọa độ của duy nhất ô hiện tại, không đòi hỏi phần cứng phải thu nhận hay xử lý tầm nhìn bao quát các ô phía trước.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế của đề tài được tác giả ghi nhận:
- Độ phức tạp phần cứng cao: Việc sử dụng toàn bộ các phép tính toán ma trận, hàm mất mát và cập nhật tham số theo định dạng số thực dấu chấm động 32-bit (FP32) đòi hỏi nhiều tài nguyên tính toán số học trên FPGA.
- Phạm vi thử nghiệm: Hệ thống mới kiểm nghiệm dừng lại ở quy mô mê cung 10x10 với số lượng 50 episode huấn luyện và tối đa 100 bước đi mỗi episode.
- Mức độ triển khai thực tế: Đề tài đã hoàn thành mô phỏng RTL, tổng hợp IP và tạo bitstream trên kit FPGA Virtex-7 VC707 nhưng chưa ghép nối trực tiếp với cơ cấu chấp hành phần cứng của cánh tay robot hoặc xe tự hành thực tế.
Hướng nghiên cứu và phát triển tiếp theo:
- Mở rộng kiến trúc phần cứng để xử lý các không gian mê cung có kích thước và độ phức tạp lớn hơn 10x10.
- Nghiên cứu tối ưu hóa việc sử dụng tài nguyên phần cứng và cải thiện tốc độ xử lý, xem xét tối ưu hóa định dạng dữ liệu số học (như số dấu phẩy tĩnh hoặc giảm số bit dấu chấm động) và cấu trúc đường ống pipeline.
- Chuyển giao và tích hợp lõi IP phần cứng lên hệ thống robot di động thực tế để thực hiện điều khiển điều hướng thời gian thực trong môi trường vật lý.
Giá trị tham khảo
Khóa luận là tài liệu kỹ thuật có giá trị tham khảo chuyên sâu cho sinh viên, học viên cao học và kỹ sư thuộc các chuyên ngành Kỹ thuật Máy tính, Thiết kế Vi mạch, Điện tử - Viễn thông và Khoa học Máy tính. Tài liệu đặc biệt hữu ích cho những đề tài nghiên cứu về bộ tăng tốc phần cứng cho trí tuệ nhân tạo (AI Hardware Accelerator) và hiện thực học tăng cường sâu (Deep Reinforcement Learning) trên nền tảng FPGA.
Các nội dung có giá trị tham chiếu cao nhất trong công trình bao gồm:
- Thiết kế chi tiết mức RTL của khối Lan truyền ngược (
Backprop) sử dụng phương pháp tối ưu hóa Gradient Descent Momentum hoàn toàn bằng phần cứng.
- Kỹ thuật xây dựng bộ đệm phát lại kinh nghiệm (Experience Replay Buffer) và cơ chế lấy mẫu ngẫu nhiên 32 mẫu thông qua thanh ghi dịch phản hồi tuyến tính (LFSR).
- Quy trình chuẩn hóa kiểm thử đối chiếu từ mô hình thuật toán trên Python, giải thuật Lee Algorithm, mô phỏng chức năng trên ModelSim cho đến đóng gói lõi IP SoC trên phần mềm Xilinx Vivado.
Câu hỏi thường gặp
1. Tác nhân (Agent) nhận được những thông tin đầu vào nào từ môi trường để tìm đường đi trong mê cung?
Tác nhân chỉ tiếp nhận duy nhất thông tin về kích thước mê cung và tọa độ trạng thái của ô mà nó đang đứng (được mã hóa thành vector 100 trạng thái đầu vào, thể hiện bằng số thực dấu chấm động 32-bit). Tác nhân hoàn toàn không nhìn thấy hoặc nhận biết thông tin của các ô nằm ở phía trước.
2. Hệ thống quy định mức điểm thưởng và phạt (Reward) cụ thể như thế nào cho từng hành động của tác nhân?
Điểm thưởng được khối total_check_step trong Environment tính toán theo 4 mức cố định: phạt -50 điểm cho mỗi bước đi bình thường (phí tối thiểu di chuyển từ ô trắng sang ô trắng); phạt -200 điểm nếu đi vào ô đã từng đi qua; phạt -1000 điểm nếu đi vào ô tường chắn (ô quỷ) hoặc đi ra ngoài biên mê cung; và thưởng +1000 điểm khi tác nhân đi vào ô có kho báu (ô đích).
3. Khối Backprop bắt đầu kích hoạt quá trình cập nhật trọng số cho mạng nơ-ron vào thời điểm nào và sử dụng phương pháp gì?
Khối Backprop chỉ bắt đầu kích hoạt quá trình cập nhật trọng số khi bộ nhớ đệm đã lưu trữ đủ 32 bộ chuyển trạng thái (transition). Khi đó, khối TD ERROR sẽ lấy mẫu ngẫu nhiên 32 tập dữ liệu, tính toán đạo hàm hàm mất mát MSE và sử dụng thuật toán Gradient Descent Momentum (GDM) kết hợp quy tắc chuỗi để cập nhật đồng thời các ma trận trọng số và vector bias mới cho cả tầng ẩn và tầng đầu ra của mạng nơ-ron trong Agent và Backprop.
4. Tại sao nhóm tác giả lại thay thế giải thuật Dyna-Q-Learning bằng Deep-Q-Learning?
Nghiên cứu tiền đề sử dụng Dyna-Q-Learning phải lưu trữ bảng tra cứu Q-value dạng ma trận trạng thái - hành động. Khi kích thước mê cung mở rộng, số lượng trạng thái tăng nhanh khiến kích thước bảng tra vượt quá tầm kiểm soát và tiêu tốn bộ nhớ nghiêm trọng (chẳng hạn 10.000 trạng thái và 1.000 hành động tạo ra bảng tra 10 triệu ô). Deep-Q-Learning sử dụng mạng nơ-ron để xấp xỉ hàm giá trị Q, giúp giải quyết triệt để vấn đề dung lượng bộ nhớ khi xử lý mê cung 10x10.
5. Kết quả tìm đường đi ngắn nhất của thiết kế phần cứng được kiểm chứng độ chính xác với giải thuật nào?
Độ chính xác của đường đi ngắn nhất được nhóm tác giả kiểm chứng bằng cách so sánh trực tiếp kết quả huấn luyện với lộ trình tìm kiếm tối ưu của giải thuật Lee (Lee Algorithm) – một giải thuật kinh điển dựa trên tìm kiếm theo chiều rộng (BFS) để tìm đường đi ngắn nhất trong ma trận trên mô hình phần mềm.
Kết luận
Khóa luận tốt nghiệp của sinh viên Nguyễn Duy Thanh và Trần Nguyễn Minh Triết đã nghiên cứu, thiết kế và hiện thực thành công kiến trúc phần cứng chuyên dụng cho giải thuật Deep-Q-Learning giải bài toán tìm đường đi ngắn nhất trong mê cung 10x10. Hệ thống đã khắc phục được rào cản bùng nổ không gian bộ nhớ của giải thuật Dyna-Q truyền thống trên mê cung 5x5 thông qua việc kết hợp mạng nơ-ron nhân tạo và cơ chế Experience Replay trên mức RTL. Toàn bộ thiết kế được kiểm chứng độ chính xác số học thông qua việc đối chiếu với giải thuật Lee trên phần mềm, đồng thời hoàn thành quá trình đóng gói lõi IP, kết nối SoC và tạo bitstream trên nền tảng FPGA Xilinx Virtex-7 VC707, cung cấp một giải pháp tham khảo giá trị cho các hướng nghiên cứu bộ tăng tốc phần cứng trí tuệ nhân tạo.