機器人技術是科學與技術的獨特結合,可生產模仿人類行為的機器。
2000 年代初,汽車製造廠中 90% 的機器人取代人類執行重複性任務。 現在,機器人可以給房屋吸塵,甚至可以在餐館提供服務。
機器人通常由三種類型的組件組成: 機械本體; 電動骨架,最後是用代碼製成的大腦。
這些組件允許機器人收集數據(通常來自傳感器),通過編程邏輯做出決策以適應行為並完成任務。
機器人可能有三種類型的程序; 遠程控制(RC), 人工智能 (人工智能)或混合。
RC 程序需要人的干預,人可以向機器人發出執行代碼的啟動和/或停止信號。 程序由各種類型的算法組成,每種算法都有不同的功能。
什麼是算法?
算法是機器人可以用來執行某些指令的一系列代碼行。 它將開發人員的想法翻譯成機器人可以理解的語言。
算法可以用多種符號來表達,包括偽代碼、流程圖、 編程語言,或控製表。
在本文中,我們將討論這些程序中使用的一些常見算法類型。
機器人技術中使用的算法類型
1. 隨時A*算法
A*算法是一種路徑搜索算法,用於尋找兩點之間的最優路徑,即成本最小的路徑。
Anytime A*算法具有靈活的時間成本,即使中斷也能返回最短路徑,因為它先生成非最優解,然後對其進行優化。
這允許更快地做出決策,因為機器人可以基於之前的計算而不是從頭開始。
它如何運作?
它通過形成一棵“樹”來實現這一點,該“樹”從起始節點延伸直到觸發終止標準,這意味著有一條成本較低的路徑可用。
二維網格由障礙物組成,起始單元和目標單元被精確定位。
該算法通過 f 定義節點的“值”,f 是參數 g(從起始節點移動到相關節點的成本)和 h(從相關節點移動到目標節點的成本)之和。
應用
許多遊戲和基於網絡的地圖都使用這種算法來有效地找到最短路徑。 它還可用於移動機器人。
您還可以解決複雜的問題,例如 牛頓-拉夫遜 迭代應用於求數字的平方根。
它還用於軌跡問題來預測空間中物體的運動和碰撞。
2.D*算法
D*、Focused D* 和 D* Lite 是增量搜索算法,用於查找兩點之間的最短路徑。
然而,它們是 A* 算法和新發現的混合體,使他們能夠向地圖添加未知障礙物的信息。
然後他們可以根據新信息重新計算路線,就像火星漫遊者一樣。
它如何運作?
D*算法的工作原理與A*類似,該算法首先定義f、h並創建一個開列表和閉列表。
此後,D*算法使用其鄰近節點的g值來確定當前節點的g值。
每個鄰居節點對當前的g值進行猜測,並將最短的g值調整為新的g值。
應用
D* 及其變體廣泛用於移動機器人和 自主車輛 導航。
此類導航系統包括在機遇號和勇氣號火星探測器上測試的原型系統以及榮獲“機遇號”和“勇氣號”火星探測器的導航系統 DARPA城市挑戰.
3. PRM算法
PRM(即概率路線圖)是基於給定地圖上的空閒和占用空間的可能路徑的網絡圖。
它們用於復雜的規劃系統,也用於尋找繞過障礙物的低成本路徑。
PRM 使用地圖上機器人設備可能移動的點的隨機樣本,然後計算最短路徑。
它如何運作?
PRM 由構建和查詢階段組成。
在第一階段,繪製路線圖來近似環境中可能的運動。 然後創建一個隨機配置並將其連接到一些鄰居。
開始和目標配置在查詢階段連接到圖。 然後通過以下方式獲得路徑 迪傑斯特拉最短路徑 查詢。
應用
PRM 用於局部規劃器,其中算法計算兩點(即初始點和目標點)之間的直線路徑。
該算法還可用於改進路徑規劃和碰撞檢測應用。
4. 零矩點(ZMP)算法
零力矩點(ZMP 技術)是機器人用來保持總慣性與地板反作用力相反的算法。
該算法使用計算 ZMP 的概念並將其應用於平衡雙足機器人。 在光滑的地板表面上使用這種算法似乎可以讓機器人行走得好像沒有任何力矩一樣。
ASIMO(本田)等製造公司使用這種技術。
它如何運作?
使用角動量方程規劃行走機器人的運動。 它確保產生的關節運動保證機器人的動態姿勢穩定性。
這種穩定性通過預定義穩定區域邊界內的零力矩點(由算法計算)的距離來量化。
應用
零力矩點可用作評估 iRobot PackBot 等機器人在坡道和障礙物中導航時防止翻倒的穩定性的指標。
5.比例積分微分(PID)控制算法
比例積分微分控製或 PID 創建傳感器反饋迴路,通過計算誤差值來調整機械組件的設置。
這些算法結合了所有三個基本係數,即比例、積分和導數,從而產生控制信號。
它實時工作並在需要時進行修正。 這可以在 自動駕駛汽車.
它如何運作?
PID控制器利用比例、積分和微分三個控制項對其輸出的影響來進行精確和最優的控制。
該控制器連續計算誤差值作為所需設定值和測量的過程變量之間的差異。
然後,它通過調整控制變量進行校正,以最大限度地減少隨時間變化的誤差。
應用
該控制器可以控制具有可測量輸出、該輸出的已知理想值以及將影響可測量輸出的過程輸入的任何過程。
控制器在工業中用於調節溫度、壓力、力、重量、位置、速度和任何其他存在測量的變量。
結論
因此,這些是機器人技術中最常用的一些算法。 所有這些算法都非常複雜,混合了物理、線性代數和統計來繪製動作和運動。
然而,隨著技術的進步,機器人算法將變得更加複雜。 機器人將能夠完成更多任務並獨立思考。
如果您喜歡這篇文章, 訂閱 HashDork 周刊 通過電子郵件進行更新,我們在其中分享最新的人工智能、機器學習、深度學習、編程和未來技術新聞。
發表評論