Sau khi học hỏi kinh nghiệm phát triển từ các cao thủ như @zhuoning293 và @NetLayerLabs, tôi thử tự phát triển một hệ thống mô phỏng chiến lược robot được xây dựng bằng các cổng logic.
Dự án mô phỏng và thử nghiệm được phát triển dựa trên giao thức TapeOut — TapeRover.

Từ thiết kế trang web, tạo bản đồ, mạch cổng logic, bối cảnh mô phỏng, quy tắc thiết kế, tham số thử nghiệm, xác minh quy tắc cho đến triển khai hợp đồng thông minh, tất cả đều do một mình tôi thực hiện — tất nhiên là có nhờ AI. Tôi mất gần một tháng, riêng thiết kế logo cũng tốn 6 ngày.
Logo được thiết kế rất tinh xảo: một chú báo máy với mạch điện lồng bên trong, ánh mắt sắc như điện, oai phong lẫm liệt, toát lên cảm giác công nghệ và sức mạnh.

TapeRover là gì?
TapeRover là một phòng thí nghiệm về các chiến lược an toàn có thể xác minh cho robot. Hiện tại, nhân vật chính là một chiếc xe giao hàng trong khuôn viên được mô phỏng trên trang web. Người dùng có thể chọn hoặc chỉnh sửa bản đồ, mô phỏng các điều kiện đường sá phức tạp như khúc cua, đường hẹp, ổ gà và đoạn đường ngập nước; thiết lập các điều kiện như chướng ngại vật tĩnh hoặc di động, người đi bộ và mức pin; rồi quan sát xe tiến lên, giảm tốc, quay về hoặc dừng lại.

Các tình huống giao thông cũng có thể minh họa một số quy tắc đi đường cơ bản, chẳng hạn như đèn giao thông, người đi bộ qua vạch sang đường, dừng nhường đường, giới hạn tốc độ, cũng như biển cấm đi và cấm rẽ. Trang web sẽ hiển thị quyết định cho phép đi, giảm tốc hoặc dừng xe tùy theo điều kiện của tình huống. Đây là các dữ liệu đầu vào mô phỏng có cấu trúc trên trang web, không phải hệ thống tự động nhận diện biển báo giao thông ngoài đời thực hay xác minh đầy đủ luật giao thông.

Dự án còn có một thiết kế đặc biệt: chuyển các quy tắc an toàn thành mạch gồm các cổng logic NAND. Khi xe thực hiện nhiệm vụ, trang web sẽ hiển thị các đầu vào của mạch, trạng thái của các cổng và đầu ra cuối cùng. Nhờ vậy, sau khi thấy “xe dừng lại”, người dùng có thể hỏi tiếp: Điều kiện nào đã kích hoạt lệnh dừng? Quyết định lần này có tuân theo các quy tắc đã công bố trước không?

Dự án hiện cũng cung cấp các công cụ so sánh chiến lược, phát lại quyết định và xác minh. Người dùng có thể cho hai bộ tham số chạy trong cùng một tình huống để so sánh kết quả, hoặc kiểm tra xem các quy tắc có nhất quán với những tổ hợp đầu vào khác nhau hay không.

Dự án phù hợp để làm gì?
Học các quy tắc an toàn cho robot. Người mới bắt đầu có thể hiểu các khái niệm như tránh chướng ngại vật, dừng khẩn cấp và quay về khi pin yếu thông qua bản đồ và chiếc xe; trực quan hơn nhiều so với chỉ xem công thức.

Mô phỏng điều kiện đường sá phức tạp và các quy tắc giao thông cơ bản. Thay đổi điều kiện đường sá, đèn tín hiệu và yêu cầu nhường đường trong các tình huống có khúc cua, chướng ngại vật và giao lộ, rồi quan sát khi nào xe được đi, giảm tốc hoặc dừng lại.

Thiết kế và so sánh chiến lược. Nhà phát triển có thể thay đổi bản đồ, kích thước xe hoặc tham số quy tắc để quan sát cách xe hoạt động trong những điều kiện khác nhau, đồng thời dùng bản ghi phát lại để thảo luận vì sao một quyết định cụ thể được đưa ra.

Kiểm chứng ý tưởng trước khi mua phần cứng. Ngay cả khi không có bo mạch phát triển, cảm biến hay động cơ, bạn vẫn có thể làm thử nghiệm trên trang web trước. Dự án cũng cung cấp quy tắc C cho thiết bị và tài liệu thử nghiệm để đối chiếu trên máy tính; sau này, khi chế tạo xe đồ chơi chạy chậm hoặc robot giáo dục, bạn có thể bổ sung phần cứng từng bước.

Trình diễn mạch trên chuỗi có thể đối chiếu. Người dùng có thể gửi netlist an toàn lên phòng thí nghiệm trên chuỗi được hỗ trợ, sau đó đọc lại bản ghi mạch và đối chiếu với các quy tắc được dùng trên trang web. Ở đây, “tapeout” nghĩa là gửi bản ghi mạch lên chuỗi, chứ không phải sản xuất một con chip vật lý.

Có thể khám phá những lĩnh vực ứng dụng nào?
· Xe đồ chơi để bàn hoặc robot giáo dục.
· Bản sao số cho việc giao hàng trong khuôn viên hoặc tuần tra trong nhà.
· Nghiên cứu cấp phép chuyển động cho thiết bị di động.
· Nền tảng thử nghiệm chiến lược có thể xác minh.
Ví dụ, một nhóm nghiên cứu có thể dùng dự án này để thảo luận cách xe giao hàng trong khuôn viên nên xử lý khi gặp người đi bộ; nhà phát triển có thể dùng cùng một bộ dữ liệu thử nghiệm để so sánh đầu ra của các quy tắc trên trang web với chương trình chạy trên máy tính. Người chơi phần cứng có thể dùng dự án này để kết nối bo mạch phát triển ESP-32 và chế tạo xe đồ chơi tự hành.
Tuy nhiên, xe ngoài đời thực vẫn cần cảm biến đáng tin cậy, hệ thống phanh, nút dừng khẩn cấp vật lý và thử nghiệm tại hiện trường. Một quyết định đúng trên trang web không thể trực tiếp chứng minh rằng chiếc xe vật lý sẽ an toàn trên đường thực tế.

Hiện tại, trang web đã cho phép tạo phòng thí nghiệm trên chuỗi của riêng mình, thiết lập chiến lược và tham số riêng, đồng thời thực hiện tapeout. Vài ngày nữa tôi sẽ tải dự án lên DeWeb.
Trang web chính thức:
https://taperover.vercel.app/

#TapeOut #TapeRover