Người máy là sự kết hợp độc đáo của khoa học và công nghệ nhằm tạo ra những cỗ máy bắt chước hành động của con người.
Vào đầu những năm 2000, 90% robot trong các nhà máy sản xuất ô tô thay thế con người thực hiện các công việc lặp đi lặp lại. Giờ đây, robot có thể hút bụi nhà và thậm chí phục vụ trong nhà hàng.
Một robot thường bao gồm ba loại thành phần; cơ thể máy móc; bộ xương điện, và cuối cùng là bộ não được tạo ra từ mã.
Các thành phần này cho phép robot thu thập dữ liệu (thường từ các cảm biến), đưa ra quyết định thông qua logic được lập trình để điều chỉnh hành vi và hoàn thành nhiệm vụ.
Robot có thể có ba loại chương trình; Điều khiển từ xa (RC), Trí tuệ nhân tạo (AI), hoặc Kết hợp.
Các chương trình RC yêu cầu sự can thiệp của con người, người có thể đưa ra tín hiệu bắt đầu và / hoặc dừng để rô bốt thực thi mã. Các chương trình bao gồm nhiều loại thuật toán khác nhau, mỗi loại có một chức năng khác nhau.
Thuật toán là gì?
Thuật toán là một chuỗi các dòng mã mà rô bốt có thể sử dụng để thực hiện các lệnh nhất định. Nó chuyển các ý tưởng của nhà phát triển sang một ngôn ngữ mà robot có thể hiểu được.
Các thuật toán có thể được thể hiện bằng nhiều loại ký hiệu, bao gồm mã giả, lưu đồ, ngôn ngữ lập trình, hoặc các bảng điều khiển.
Trong bài viết này, chúng tôi sẽ thảo luận về một số loại thuật toán phổ biến được sử dụng trong các chương trình này.
Các loại thuật toán được sử dụng trong robot
1. Bất kỳ lúc nào A * Thuật toán
Thuật toán A * là một thuật toán tìm kiếm đường đi được sử dụng để tìm đường đi tối ưu nhất giữa hai điểm, tức là với chi phí nhỏ nhất.
Bất cứ lúc nào A * Algorithm có chi phí thời gian linh hoạt và có thể trả về đường đi ngắn nhất ngay cả khi nó bị gián đoạn vì nó tạo ra một giải pháp không tối ưu trước và sau đó tối ưu hóa nó.
Điều này cho phép ra quyết định nhanh hơn vì robot có thể xây dựng dựa trên các tính toán trước đó thay vì bắt đầu từ đầu.
Học như thế nào?
Nó thực hiện điều này bằng cách hình thành một 'cây' kéo dài từ nút bắt đầu cho đến khi các tiêu chí kết thúc được kích hoạt, có nghĩa là có sẵn một con đường ít tốn kém hơn.
Lưới 2D được tạo ra với các chướng ngại vật và ô bắt đầu và ô mục tiêu được thiết kế theo chiều nhọn.
Thuật toán xác định 'giá trị' của một nút bằng f là tổng các tham số g (chi phí di chuyển từ nút bắt đầu đến nút được đề cập) và h (chi phí di chuyển từ nút được đề cập đến nút đích).
Ứng dụng
Rất nhiều trò chơi và bản đồ dựa trên web sử dụng thuật toán này để tìm đường đi ngắn nhất một cách hiệu quả. Nó cũng có thể được sử dụng cho rô bốt di động.
Bạn cũng có thể giải quyết các vấn đề phức tạp như Newton – Raphson phép lặp được áp dụng để tìm căn bậc hai của một số.
Nó cũng được sử dụng trong các bài toán về quỹ đạo để dự đoán chuyển động và va chạm của một vật thể trong không gian.
2. Thuật toán D *
D *, D * và D * Lite tiêu điểm là các thuật toán tìm kiếm tăng dần để tìm đường đi ngắn nhất giữa hai điểm.
Tuy nhiên, chúng là sự kết hợp của các thuật toán A * và những khám phá mới cho phép họ thêm thông tin vào bản đồ của mình cho những chướng ngại vật chưa biết.
Sau đó, họ có thể tính toán lại một tuyến đường dựa trên thông tin mới, giống như Mars Rover.
Học như thế nào?
Hoạt động của D * Algorithm tương tự như A *, đầu tiên thuật toán xác định f, h và tạo một danh sách mở và đóng.
Sau đó, Thuật toán D * xác định giá trị g của nút hiện tại bằng cách sử dụng giá trị g của các nút lân cận của nó.
Mỗi nút lân cận đưa ra phỏng đoán về giá trị g hiện tại của một nút và giá trị g ngắn nhất được điều chỉnh thành giá trị g mới.
Ứng dụng
D * và các biến thể của nó được sử dụng rộng rãi cho rô bốt di động và xe tự trị dẫn đường.
Các hệ thống định vị như vậy bao gồm một hệ thống nguyên mẫu được thử nghiệm trên tàu Mars rovers Cơ hội và Tinh thần và hệ thống định vị đã giành được Thách thức đô thị DARPA.
3. Thuật toán PRM
PRM, hay lộ trình xác suất, là một đồ thị mạng lưới các đường đi có thể có dựa trên các không gian trống và bị chiếm dụng trên một bản đồ nhất định.
Chúng được sử dụng trong các hệ thống lập kế hoạch phức tạp và cũng để tìm ra các con đường chi phí thấp xung quanh các chướng ngại vật.
PRM sử dụng một mẫu ngẫu nhiên các điểm trên bản đồ của họ nơi thiết bị rô bốt có thể di chuyển và sau đó tính toán đường đi ngắn nhất.
Học như thế nào?
PRM bao gồm giai đoạn xây dựng và truy vấn.
Trong giai đoạn đầu, một lộ trình được vẽ biểu đồ gần đúng với các chuyển động có thể có trong một môi trường. Một cấu hình ngẫu nhiên sau đó được tạo và kết nối với một số hàng xóm.
Cấu hình bắt đầu và mục tiêu được kết nối với biểu đồ trong giai đoạn truy vấn. Đường dẫn sau đó thu được bởi một Con đường ngắn nhất của Dijkstra truy vấn.
Ứng dụng
PRM được sử dụng trong các nhà lập kế hoạch cục bộ, trong đó thuật toán tính toán một đường thẳng giữa hai điểm, cụ thể là điểm ban đầu và điểm mục tiêu.
Thuật toán cũng có thể được sử dụng để cải thiện các ứng dụng lập kế hoạch đường đi và phát hiện va chạm.
4. Thuật toán Zero Moment Point (ZMP)
Zero Moment Point (kỹ thuật ZMP) là một thuật toán được sử dụng bởi robot để giữ cho tổng quán tính ngược với phản lực của sàn.
Thuật toán này sử dụng khái niệm tính toán ZMP và áp dụng nó để cân bằng robot hai chân. Sử dụng thuật toán này trên bề mặt sàn nhẵn dường như cho phép robot đi lại như thể không có giây phút nào.
Các công ty sản xuất như ASIMO (Honda) sử dụng kỹ thuật này.
Học như thế nào?
Chuyển động của rô bốt đi bộ được lập kế hoạch bằng cách sử dụng phương trình mômen động lượng. Nó đảm bảo rằng chuyển động khớp được tạo ra đảm bảo sự ổn định tư thế động học của robot.
Độ ổn định này được định lượng bằng khoảng cách của điểm không mô men (được tính toán bằng thuật toán) trong ranh giới của vùng ổn định được xác định trước.
Ứng dụng
Điểm zero moment có thể được sử dụng làm thước đo để đánh giá độ ổn định chống lại sự cố lật của robot như iRobot PackBot khi điều hướng đường dốc và chướng ngại vật.
5. Thuật toán điều khiển vi phân tích phân tỷ lệ (PID)
Điều khiển vi sai tích phân tỷ lệ hoặc PID, tạo một vòng phản hồi cảm biến để điều chỉnh cài đặt cho các thành phần cơ khí bằng cách tính toán giá trị lỗi.
Các thuật toán này kết hợp cả ba hệ số cơ bản, tức là tỷ lệ, tích phân và đạo hàm để tạo ra tín hiệu điều khiển.
Nó hoạt động trong thời gian thực và áp dụng các chỉnh sửa khi cần thiết. Điều này có thể được nhìn thấy trong xe tự lái.
Học như thế nào?
Bộ điều khiển PID sử dụng ba thuật ngữ điều khiển là ảnh hưởng tỷ lệ, tích phân và đạo hàm trên đầu ra của nó để áp dụng điều khiển chính xác và tối ưu.
Bộ điều khiển này liên tục tính toán một giá trị lỗi là sự khác biệt giữa điểm đặt mong muốn và một biến quá trình đo được.
Sau đó, nó áp dụng một hiệu chỉnh để giảm thiểu lỗi theo thời gian bằng cách điều chỉnh biến điều khiển.
Ứng dụng
Bộ điều khiển này có thể kiểm soát bất kỳ quá trình nào có đầu ra có thể đo lường, giá trị lý tưởng đã biết cho đầu ra đó và đầu vào của quá trình sẽ ảnh hưởng đến đầu ra có thể đo lường.
Bộ điều khiển được sử dụng trong công nghiệp để điều chỉnh nhiệt độ, áp suất, lực, trọng lượng, vị trí, tốc độ và bất kỳ biến nào khác mà phép đo tồn tại.
Kết luận
Vì vậy, đây là một số thuật toán phổ biến nhất được sử dụng trong chế tạo người máy. Tất cả các thuật toán này khá phức tạp với một hỗn hợp vật lý, đại số tuyến tính và thống kê được sử dụng để vạch ra các hành động và chuyển động.
Tuy nhiên, khi công nghệ tiến bộ, các thuật toán của người máy sẽ ngày càng trở nên phức tạp hơn. Các robot sẽ có thể hoàn thành nhiều nhiệm vụ hơn và suy nghĩ nhiều hơn cho bản thân.
Nếu bạn thích bài viết này, đăng ký HashDork's Weekly cập nhật qua email, nơi chúng tôi chia sẻ tin tức mới nhất về AI, ML, DL, Lập trình & Công nghệ tương lai.
Bình luận