沈婷婷
(山東科技大學,山東 青島 266590)
機械手主要由執行機構、驅動機構和控制系統三大部分組成。
利用現有數據建立機械手運動模型:

式(1)為模型的目標函數。
(1)初始化群體。每個機械手運動的逆解采用如下方式計算和生成:

式中[ ]為取整函數;R為[0,1]內的隨機數。
設置初始化進化代數為Gen=10。根據式(9)及式(10)生成一個初始種群作為第一代解。
(2)評價群體。
在本文中,適應度按如下公式計算:

(3)進行遺傳操作。①選擇。每次隨機選取兩個個體,分別計算其適應度,比較兩個個體適應度大小,從中選出適應度大的那個作為新個體,重復操作,直到選出的個體等于種群大小為止;②交叉。在文中采用單點交叉來計算新個體的基因。如不滿足,則重新選擇個體進行交叉操作;

③變異。根據模型約束條件,把突變點的位置限制在第1位到第n-1位之間。

對完成交叉操作的個體,還需根據式(13)再進行變異操作,從而得到最新一代種群。
(4)終止。當Gen=Maxgen時,遺傳算法終止;否則,Gen=Gen+1,轉到第3步,繼續循環。

圖1 MATLAB仿真結果
由仿真結果可以看到,改進后的遺傳算法在進化到20代之前就已經基本上達到了最優解。
針對平面關節型機器人的運動學進行建模分析,為了避免傳統機器人求逆解方法的多解性、解的不存在性以及需多解的選取的缺點,本文采用了改進的遺傳算法,算法的收斂速度更快,求解精度更高,穩定性更好。