這里我們使用Anacondda的Python編程環境,使用Visual Studio Code軟件進行開發。
Anaconda是專業為了方便于使用Python進行數據挖掘研究而制作的一個應用包,涵蓋了在各種數據挖掘研究涉及領域中使用的Python庫,而且自帶了專業用來處理軟件環境中依賴問題的conda包系統。
主要優點是實現了外包管理與環境管理的各種功能,而且可以非常容易地處控制多版本Python共存、轉換以及各種第三方包使用上的問題。
Anaconda使用工具/命令conda來實現對package和environment的控制,其中就曾經包括了python和相應的配套開發工具。
Anaconda自帶人工智能環境,這里我們需要用到的numpy矩陣計算環境、pandas分析環境、matplotlib數據可視化環境等等會自動安裝,無需手動配置。
VSCode,全名Visual Studio Code,是由微軟公司研發出的一種輕量級程序編寫器,免費、開放且能力強勁。
它支持了基本上所有主要的程序語言的語法高光度、智能編碼補滿、自設定熱鍵、括號匹配、編碼片段、編碼對比Diff、GIT等功能,同時支援插件擴展功能,并根據個人網站發展或者云端使用發展做了調整。
該軟件跨平臺,支持Win、Mac和Linux,啟動界面如所示。
VS Code編程環境具備項目視圖和調試工具,可以讓我們更高效的進行代碼分析與驗證。VS Code會自動檢測我們系統當前環境進行加載選擇。
這里為了方便后續開發,我將數據可視化部分寫成類庫的模式,在后續算法驗證當中,僅需輸入數據調用即可,類庫程序如圖所示。
圖表可視化部分是Plotting類,主要作用就是添加坐標點進行顯示。這里以queue隊列的數據形式進行存儲,如圖所示。
路線規劃算法的基本概念為:移動機器人在有障礙物的周圍環境中根據相應的評價準則,尋求一個由初始狀態至達到目標狀態之間的無碰路線。路徑規劃算法的還有一個劃分的方式,即可分為全局路徑規劃和局部路徑規劃。
全局路徑規劃是基于環境全局的信息,這包含了機器人在當前狀況下檢測不到的所有信號。全局規劃把環境信息存放到一幅圖中,并利用這張圖尋找可能的路線。
由于全局算法通常要求花費大量的運算時間,因此不適合于高速多變的動態環境,并且由于全局路徑規劃必須要預先掌握全局的環境信息,也不適合于未知環境下的規劃任務。
局部路徑計算系統只考慮了機器人的瞬時環境信號,使得計算數量減少,效率明顯提高。但局部路徑規劃算法,有時并不一定可以讓機器人直接抵達目的地點,從而導致了計算全局不收斂。
對移動機器人來說,兼顧非完全微分約束的路徑規劃問題是該領域的難點所在。
非完整微分約束影響了機器人系統的運動速度并且約束也無法去積分,因此無法把這些束縛轉換為簡化的幾何束縛。
根據隨機采集的路徑規劃方法,尤其是快速隨機搜索樹方法,可以將各種約束集成在算法本身之中,因此可以很有效的解決有非完整微分約束的路徑規劃問題。
在深入研究自己自主規劃課題之前,應先形成相對比較完善的自主規劃系統,然后再以這個系統為指導,對自己自主規劃的各種具體課題加以研究。
本節擬針對獨立人工智能機器人的思考方法、行動方式、任務行動等特征,形成與之相適應的自主性體育運動規劃系統。
并根據人工智能機器人的數量種類和規模,把自主性運動計劃細分成單一人工智能機器人的運動計劃和多人工智能機器人協同的運動計劃二種規劃系統。
文章重點涉及了以下幾個常見的運動規劃算法:圖搜索法、RRT算法、人工勢場法、BUG算法等,并對部分方法的自身問題也進行了一些改進研究。
此次設計方案以算法的驗證為主,通過查閱相關文獻,根據相關文獻資料確定此次設計實驗的算法,推導算法的實現過程,最終通過代碼進行實現數據可視化分析來完成本文的工作,如圖所示。
此次設計先對圖搜索算法、RRT及RTT改進算法、BUG算法、人工勢場法進行理論的分析和闡述,通過Python編程+Matplotlib數據可視化的方式來對路徑搜索算法進行可視化的展示和分析。
這個研究工作主要是指通過對ROS機器人系統所進行的仿真實驗,而ROS技術(Robot Operating
System,下文簡寫“ROS”)則是指一個廣泛應用在人工智能方面開放的多元操作系統。
它提供了控制系統所需要的全部特性,如硬件抽象性,系統底層的控制,對常用功能的應用,進程的數據傳遞,和包處理等。
它還具有用來檢索、翻譯、匯編、和跨計算機執行代碼所必需的工具和庫函數的功能。
在ROS系統下可以通過Gazebo物理仿真+Rviz三維數據可視化的方式對算法進行分析。在ROS中實現自己的路徑規劃算法需要以plugin的方式,并且繼承nav_core::BaseGlobalPlanner接口。
仿真測試部分在Gazebo環境下搭建機器人模型,通過仿真系統將激光雷達數據、里程計數據、姿態數據進行模擬,傳感器數據傳遞到navigation導航框架當中實現路徑規劃及自主導航功能。
-
編程
+關注
關注
88文章
3626瀏覽量
93802 -
人工智能
+關注
關注
1792文章
47387瀏覽量
238901 -
python
+關注
關注
56文章
4798瀏覽量
84799
發布評論請先 登錄
相關推薦
評論