Ứng dụng Manim trong trực quan hoá toán học: Định vị Robot và bài toán tương quan sai số

Nguyễn Thị Huệ – Hệ thống thông tin quản lý 01 – K68
  Bài viết này chia sẻ hướng nghiên cứu và quá trình xây dựng một video trực quan hóa toán học sử dụng thư viện Manim (Mathematical Animation Engine) để xây dựng các video hoạt hình toán học. Trong số đó, video “Sai số vị trí Robot Mối tương quan giữa sai số trên hai trục tọa độ (X, Y)” là video tôi muốn chia sẻ trong bài viết này, kết hợp lý thuyết thống kê chặt chẽ với ứng dụng kỹ thuật thực tế trong lĩnh vực robot học và tự động hóa.  

Manim – Công cụ lập trình hoạt hình toán học

Manim là một thư viện Python mã nguồn mở được phát triển bởi Grant Sanderson – người sáng lập kênh YouTube nổi tiếng 3Blue1Brown với phong cách trình bày toán học bằng hoạt hình. Điểm đặc biệt của Manim nằm ở chỗ: toàn bộ nội dung hình ảnh được sinh ra từ mã lệnh Python – từ đồ thị, công thức toán học, đến các chuyển động và hiệu ứng – thay vì được thiết kế thủ công trên phần mềm đồ họa. Điều này đòi hỏi người thực hiện phải đồng thời nắm vững cả lập trình lẫn nội dung toán học cần trình bày.   Tôi lựa chọn Manim như một phương tiện để truyền đạt một chủ đề vừa mang tính lý thuyết thống kê vừa gắn liền với ứng dụng kỹ thuật thực tế: bài toán định vị robot và tương quan sai số vị trí.  

Kênh Youtube nổi tiếng 3Blue1Brown

Bài toán đặt ra: Tại sao robot luôn lệch theo đường chéo?

Video mở đầu bằng một quan sát thực tiễn trong lĩnh vực tự động hóa: khi robot di chuyển đến một vị trí chỉ định, nó hiếm khi chỉ lệch theo một trục duy nhất – mà thường lệch theo một hướng chéo, nghĩa là sai số xảy ra đồng thời trên cả trục X lẫn trục Y.   Để giải thích hiện tượng này một cách chặt chẽ, video tiếp cận bài toán bằng ngôn ngữ của xác suất và thống kê. Ý tưởng cốt lõi là: vị trí thực tế mà robot dừng lại không phải một điểm cố định, mà thay đổi mỗi lần – do nhiều yếu tố ngẫu nhiên như độ dẻo của động cơ, ma sát sàn, rung lắc cơ khí.   Chúng ta có thể mô tả vị trí thực tế bằng hai con số: hoành độ (X) và tung độ (Y). Còn vị trí lý thuyết – nơi robot lẽ ra phải dừng lại là một điểm mục tiêu cố định vectơ kỳ vọng μ, còn sai số vị trí ε=(εX, εY) là hiệu giữa vị trí thực tế và nơi lẽ ra phải dừng.  

Hình ảnh minh họa sai số vị trị Robot

Xây dựng ma trận hiệp phương sai

Để mã hóa đầy đủ thông tin về sai số vị trí, video giới thiệu ba đại lượng thống kê cốt lõi.   Phương sai của X (σ2X) đo mức độ phân tán của sai số trên trục hoành quanh giá trị kỳ vọng. Giá trị càng lớn, robot càng hay lệch nhiều theo chiều ngang. Tương tự, phương sai của Y (σ2Y) đo độ phân tán tương ứng trên trục tung. Tuy nhiên, hai đại lượng này chỉ nói lên mỗi trục sai bao nhiêu – chứ không nói gì về mối quan hệ giữa hai trục.   Đó là lúc đại lượng thứ ba xuất hiện: Hiệp phương sai (σXY) – được định nghĩa là kỳ vọng của tích hai sai số E[εXY]. Nếu mỗi khi robot lệch nhiều theo Y, nó cũng lệch theo một hướng nhất định trên X, thì tích εXY sẽ có dấu nhất quán và kỳ vọng của nó sẽ khác không – đó chính là tương quan.  

Nguyên nhân vật lý : Tại sao hai hướng sai số lại liên hệ với nhau?

Video không dừng lại ở định nghĩa toán học mà đi sâu vào cơ cấu vật lý để giải thích nguồn gốc của tương quan tồn tại. Hãy tưởng tượng một robot chạy bằng hai bánh vi sai (bánh trái và bánh phải) nhận lệnh tiến thẳng. Nếu bánh phải bị trượt – do độ rão, dầu bôi không đều, hay sự mòn khác nhau – lực đẩy từ bánh phải sẽ yếu hơn bánh trái. Khi đó:
  • Robot sẽ đi thiếu khoảng cách trên trục Y (εY < 0)
  • Robot sẽ bị kéo lệch sang bên phải trên trục X (εX > 0)
Hai sai số xảy ra đồng thời và cùng chiều – đó là tương quan dương σXY > 0 và đồng thời giải thích lý do tại sao robot lệch chéo.   Để mã hóa toàn bộ thông tin này, ta dùng một ma trận hiệp phương sai Σ – một bảng số có 4 ô:
  • Ô trên trái: độ phân tán trên trục X (σ2X)
  • Ô dưới phải: độ phân tán trên trục Y (σ2Y)
  • Ô trên phải và dưới trái: mối tương quan giữa hai hướng σXY – đo mức độ hai trục ảnh hưởng lẫn nhau.
Ma trận này là ma trận đối xứng và nửa xác định dương.  

Hình ảnh minh họa công thức của ma trận hiệp phương sai Σ  

Ý nghĩa ứng dụng: Bộ lọc Kalman

Phần kết luận của video trả lời câu hỏi ban đầu một cách hoàn chỉnh: robot lệch chéo vì sai số hai trục không độc lập – chúng tương quan với nhau do bản chất cơ khí của hệ thống. Ma trận hiệp phương sai Σ mã hóa toàn bộ thông tin đó – cả độ lớn lẫn hướng tương quan.   Ứng dụng quan trọng nhất là trong bộ lọc Kalman – một thuật toán nổi tiếng được sử dụng rộng rãi trong robot học, tự hành, máy bay, v.v.Bộ lọc Kalman không chỉ giúp robot biết mình đang sai bao nhiêu, mà còn biết sai lệch đó ảnh hưởng đến nhau như thế nào – để từ đó điều chỉnh quỹ đạo chính xác hơn và tránh lạc hướng.   Video kết thúc bằng ba từ khóa cốt lõi: Localization (Định vị Robot), Error Correlation (Tương quan sai số) và Covariance Matrix (Ma trận hiệp phương sai), kèm một câu hỏi mở dành cho người xem: Nếu thay robot hai bánh vi sai bằng robot bốn bánh Mecanum thì sai số sẽ thay đổi thế nào?  

Ba từ khóa cốt lõi của video

Quá trình thực hiện và bài học rút ra

Trong quá trình triển khai, Manim đặt ra không ít thách thức kỹ thuật. Bước đầu cần làm quen với cách tổ chức Scene, quản lý các đối tượng toán học và điều phối thời gian hiệu ứng sao cho khớp với lời thoại. Phần trực quan hóa nâng cao – vẽ ma trận hiệp phương sai và các biểu đồ liên quan – đặc biệt yêu cầu sự kết hợp giữa đại số tuyến tính – cụ thể là phân tích trị riêng và vector riêng của Σ – với lập trình đồ họa trong Manim.   Video hoàn chỉnh trình bày mạch lạc từ định nghĩa bài toán, xây dựng mô hình thống kê, đến diễn giải kết quả – có thể dùng như một tài liệu tham khảo trực quan cho các chủ đề xác suất thống kê và kỹ thuật điều khiển.  

Lời kết

Ứng dụng Manim vào trực quan hóa toán học là một hướng nghiên cứu và thực hành đáng đầu tư, kết hợp hài hòa giữa tư duy toán học, kỹ năng lập trình, và khả năng trình bày. Quá trình này không chỉ giúp tôi nắm vững hơn các khái niệm xác suất thống kê mà còn nhận thức rõ hơn về tiềm năng của các công cụ trực quan hóa trong việc truyền đạt kiến thức toán học – một hướng đi đáng được quan tâm trong bối cảnh giáo dục STEM hiện nay.   Đường dẫn tới video: https://www.youtube.com/shorts/qYw2f68iMH0

Xem thêm