Robot Dễ Thương Nhất Thế Giới Bây Giờ Dạy Bạn Lập Trình

Ngay khi mở hộp, robot dễ thương Cozmo của Anki chơi trò chơi, bump fist và sử dụng đôi mắt kỹ thuật số màu xanh lớn của nó để truyền đạt phạm vi cảm xúc rộng lớn. Và bộ não của nó sử dụng máy học, nên nó trở nên thông minh hơn khi bạn chơi với nó.
Một bản cập nhật cho phép Cozmo bắt đầu dạy bạn những kỹ năng mới. Ứng dụng mới Coding Lab của Anki sử dụng Cozmo để dạy trẻ em (và người lớn có tâm hồn trẻ) cách lập trình.
Cozmo không được thiết kế để dạy, nhưng đó là điều làm cho robot nhỏ xinh này trở nên tốt như vậy. Các nhà sáng lập của Anki đã dành bốn năm để trang bị Cozmo với công nghệ như nhận dạng khuôn mặt, máy học và lập kế hoạch đường đi tự động. (Bộ não thực sự chạy thông qua một động cơ kết nối đám mây qua điện thoại hoặc máy tính bảng của bạn.) Có vẻ như những dòng mã 1,6 triệu dòng này là một công cụ mạnh mẽ để làm rõ bí ẩn về robot học.

“Chúng tôi nhận ra Cozmo rất giống một hệ điều hành như iOS hoặc Android, nhưng dành cho robot,” nói Hanns Tappeiner, Tổng giám đốc và đồng sáng lập viên của Anki. Công ty mở ra hệ điều hành đó vào năm ngoái với một bộ công cụ phát triển phần mềm cho phép các nhà nghiên cứu robot chuyên nghiệp lập trình Cozmo để chơi tic-tac-toe hoặc đặt báo thức. Các lập trình viên kết nối con robot nhỏ với đám mây nhận dạng hình ảnh của Google, biến nó thành một đứa trẻ 2 tuổi bối rối. “Nó sẽ đi quanh nói, 'Ồ kính mát, Ồ lon Coke,'” Tappeiner nói.
Sử dụng ngôn ngữ kịch bản Python, các nhà nghiên cứu có thể lập trình Cozmo làm gần như bất cứ điều gì. Nhưng Anki thiết kế Cozmo cho trẻ em, không phải cho các nhà nghiên cứu robot. “Những gì chúng tôi nhận ra là không có lý do gì mà chúng ta không thể làm chức năng hoàn toàn giống nhau có sẵn cho đối tượng chính của chúng tôi,” ông nói. “Vì vậy không dành cho một nhà nghiên cứu tại Carnegie Mellon, mà dành cho một đứa trẻ 8 tuổi.”
Điều đó đòi hỏi dịch tất cả mã nguồn từ Python sang Scratch, một ngôn ngữ lập trình đơn giản mà MIT đã phát triển cho việc sử dụng trong các trường tiểu học và trung học cơ sở. Ngày nay, gần như tất cả chức năng của Cozmo đều được gói gọn trong các khối mã đồ họa mà người dùng kéo và thả vào giao diện ứng dụng. Điều này giúp dễ dàng cho việc khiến Cozmo thực hiện những việc như lăn về phía trước rồi rẽ trái. Lặp lại khối mã đó bốn lần và bạn đã dạy Cozmo làm một hình vuông trên bàn bếp của bạn.
Nguyên tắc đó có thể lập trình các hành vi phức tạp hơn. Mục tiêu, Tappeiner nói, là hướng dẫn người dùng qua những khái niệm lập trình cơ bản nhất và dẫn họ đến các ngôn ngữ tiên tiến như Python và C++. “Chúng tôi muốn đào tạo người dùng từ sớm,” ông nói. “Bắt đầu càng sớm, sau này bạn càng dễ hiểu rõ cách thức hoạt động của những thứ này.”