高頌愛(ài),王少偉
(1.承德醫(yī)學(xué)院,河北 承德 067000;2.天津體育學(xué)院,天津300381;3.河北師范大學(xué),河北 石家莊 050024)
乒乓球運(yùn)動(dòng)在世界各地都非常受歡迎,是一項(xiàng)趣味性、觀(guān)賞性和競(jìng)技性極強(qiáng)的運(yùn)動(dòng)。在日常訓(xùn)練過(guò)程中,乒乓球機(jī)器人可以幫助運(yùn)動(dòng)員進(jìn)行練習(xí),提高運(yùn)動(dòng)員的訓(xùn)練效率,并節(jié)約人工陪練的訓(xùn)練成本[1]。對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè)可以幫助乒乓球教練員和運(yùn)動(dòng)員的判斷和分析,提高運(yùn)動(dòng)員的競(jìng)技能力[2]。乒乓球機(jī)械發(fā)球軌跡預(yù)測(cè)涉及了機(jī)器人控制學(xué)、機(jī)器人運(yùn)動(dòng)學(xué)和深度學(xué)習(xí)等學(xué)科,其研究意義和研究?jī)r(jià)值較高。
文獻(xiàn)[3]對(duì)運(yùn)動(dòng)數(shù)據(jù)進(jìn)行采集,根據(jù)采集的數(shù)據(jù)建立運(yùn)動(dòng)學(xué)模型,對(duì)運(yùn)動(dòng)轉(zhuǎn)向特性進(jìn)行分析,結(jié)合Levenberg-Marquardt方法和擴(kuò)展卡爾曼濾波方法對(duì)運(yùn)動(dòng)參數(shù)進(jìn)行估計(jì),根據(jù)參數(shù)估計(jì)結(jié)果完成軌跡預(yù)測(cè),該方法沒(méi)有分析目標(biāo)在運(yùn)動(dòng)過(guò)程中受到的重力影響,降低了預(yù)測(cè)結(jié)果的精度。文獻(xiàn)[4]采用鏡像法獲取運(yùn)動(dòng)的起始角,分析起始角與運(yùn)動(dòng)軌跡之間存在的關(guān)系,在此基礎(chǔ)上建立軌跡預(yù)測(cè)模型,利用采集的運(yùn)動(dòng)數(shù)據(jù)對(duì)模型參數(shù)進(jìn)行計(jì)算,最后利用軌跡預(yù)測(cè)模型完成軌跡預(yù)測(cè),該方法在預(yù)測(cè)過(guò)程中沒(méi)有考慮空氣阻力,預(yù)測(cè)精度較低。文獻(xiàn)[5]通過(guò)構(gòu)建NGSIM數(shù)據(jù)集,提取運(yùn)動(dòng)特征,在長(zhǎng)短期記憶網(wǎng)絡(luò)中輸入運(yùn)動(dòng)特征,完成軌跡預(yù)測(cè),該方法在數(shù)據(jù)缺失的情況下無(wú)法準(zhǔn)確的完成軌跡預(yù)測(cè)。
為解決上述方法中存在的問(wèn)題,提出乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法。
乒乓球機(jī)械發(fā)球通常為旋轉(zhuǎn)球,一般情況下分為側(cè)旋、下旋和上旋,由流體力學(xué)理論可知,在飛行過(guò)程中帶有旋轉(zhuǎn)的乒乓球會(huì)受到浮力、空氣阻力和重力的影響,同時(shí)乒乓球上下兩側(cè)在空氣粘滯作用下也會(huì)受到側(cè)壓力的影響,這個(gè)側(cè)壓力即為馬格努斯力[6]。
(1)乒乓球受到的重力與地面垂直,通常為豎直向下的,通過(guò)下式對(duì)乒乓球受到的重力G進(jìn)行計(jì)算:
式中:g—重力加速度;m—乒乓球的質(zhì)量。對(duì)上式進(jìn)行分析可知,質(zhì)量與重力呈正相關(guān)。
(2)乒乓球受到的空氣阻力與乒乓球運(yùn)動(dòng)方向相反,用Gd表示乒乓球受到的阻力,可通過(guò)下式計(jì)算得到:
式中:VD—空氣阻力因子;b—乒乓球在運(yùn)動(dòng)過(guò)程中的線(xiàn)速度;ρ—空氣密度;||b||—乒乓球線(xiàn)速度對(duì)應(yīng)的絕對(duì)值;t—乒乓球的半徑;S—乒乓球在運(yùn)動(dòng)過(guò)程中的迎風(fēng)面積。
(3)乒乓球旋轉(zhuǎn)軸與其受到的馬格努斯力Gm之間為垂直關(guān)系:
式中:VL—空氣阻力因子;ξ—乒乓球在運(yùn)動(dòng)過(guò)程中的角速度;F—乒乓球直徑。
根據(jù)乒乓球的反彈系數(shù)在豎直方向中對(duì)反彈系數(shù)進(jìn)行計(jì)算。設(shè)Lη代表的是反彈系數(shù),其計(jì)算公式如下:
式中:h—在H高度釋放乒乓球時(shí)反彈的最大高度。
當(dāng)乒乓球在z軸的初始速度vz0為正值時(shí),乒乓球在z軸方向從起始位置運(yùn)動(dòng)到最高點(diǎn)的時(shí)間用tH表示,可在時(shí)間定義域的基礎(chǔ)上計(jì)算得到。當(dāng)乒乓球在z軸的初始速度vz0為負(fù)值時(shí),利用下式對(duì)時(shí)間tH進(jìn)行計(jì)算:
式中:lf—空氣阻力系數(shù)。在上式的基礎(chǔ)上對(duì)碰撞前乒乓球的最大高度H進(jìn)行計(jì)算:
根據(jù)上述分析可知,在z軸方向中反彈后乒乓球的速度通常為正。反彈后乒乓球運(yùn)動(dòng)到最大高度h所用的時(shí)間th可通過(guò)下式計(jì)算得到:
僅知道參數(shù)h,無(wú)法得到反彈后乒乓球的初速度。為此,乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法采用位置負(fù)反饋方法對(duì)反彈后乒乓球的初速度v0進(jìn)行計(jì)算:
式中:Lp—比例系數(shù),其主要作用是調(diào)整速度。根據(jù)初速度v0對(duì)乒乓球最大高度h1進(jìn)行計(jì)算,根據(jù)結(jié)果對(duì)反彈后乒乓球的初速度進(jìn)行調(diào)整。
設(shè)tL代表的是最高點(diǎn)處的乒乓球降落到落點(diǎn)所用的時(shí)間,其表達(dá)式如下:
式中:Xball—乒乓球的中心。
乒乓球自旋速度、視覺(jué)測(cè)量誤差和空氣阻力都會(huì)影響碰撞前后乒乓球的速度變化[7-8]。反彈模型在實(shí)際應(yīng)用過(guò)程中,可用一階多項(xiàng)式表示X、Y方向中乒乓球的速度變化:
式中:Vxh—乒乓球碰撞后在X方向中的速度;Vyh—乒乓球碰撞后在Y方向中的速度;Vxq—乒乓球碰撞前在Y方向中的速度;Vyq—乒乓球碰撞前在Y方向中的速度;nx、ny—反彈參數(shù)。
這里采用遞歸神經(jīng)元網(wǎng)絡(luò)對(duì)軌跡進(jìn)行預(yù)測(cè)。遞歸神經(jīng)網(wǎng)絡(luò)由輸出層、隱層和輸入層構(gòu)成,LSTM單元存在于遞歸神經(jīng)網(wǎng)絡(luò)的隱層中[9]。
每個(gè)單元都由輸出門(mén)、核心節(jié)點(diǎn)、遺忘門(mén)和輸入門(mén)構(gòu)成。
用ct表示當(dāng)前時(shí)刻遞歸神經(jīng)網(wǎng)絡(luò)的輸入值,上一時(shí)刻Cell節(jié)點(diǎn)在LSTM單元中的輸出用dt-1c表示,設(shè)nt-1h代表的是上一時(shí)刻中,其他節(jié)點(diǎn)在LSTM單元中的輸出。因此非線(xiàn)性激活加權(quán)處理后的其他節(jié)點(diǎn)輸出、Cell輸出和當(dāng)前輸出獲得輸入門(mén)輸出nt
l:
式中:f—非線(xiàn)性激活函數(shù),乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法選用Sigmoid 函數(shù)[10];eil—針對(duì)輸入門(mén),輸入項(xiàng)對(duì)應(yīng)的權(quán)重參數(shù);ehl—其他節(jié)點(diǎn)輸出項(xiàng)在上一時(shí)刻對(duì)應(yīng)的權(quán)重參數(shù);ecl—Cell輸出項(xiàng)在上一時(shí)刻對(duì)輸入門(mén)對(duì)應(yīng)的參數(shù)權(quán)重。
同理,遺忘門(mén)在當(dāng)前時(shí)刻的輸出nt ?與輸入門(mén)計(jì)算方式相同:
通過(guò)上一時(shí)刻其他節(jié)點(diǎn)和Cell的輸出,當(dāng)前時(shí)刻遺忘門(mén)和輸入門(mén)的輸出以及當(dāng)前時(shí)刻的輸出,獲得Cell節(jié)點(diǎn)在當(dāng)前時(shí)刻單元中的輸出:
式中:g—Sigmoid函數(shù)。
在上式計(jì)算結(jié)果的基礎(chǔ)上,獲得LSTM單元在遞歸神經(jīng)網(wǎng)絡(luò)中的總輸出:
式中:h—Sigmoid函數(shù)。將上式計(jì)算結(jié)果引入下式中,獲得單元在網(wǎng)絡(luò)中的輸出ntc:
為對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè),乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法構(gòu)建的遞歸神經(jīng)網(wǎng)絡(luò)應(yīng)該具有LSTM單元,將t時(shí)刻乒乓球的三維空間位置輸入遞歸神經(jīng)網(wǎng)絡(luò)中,輸出t+ 1時(shí)刻乒乓球的空間位置,完成軌跡預(yù)測(cè)。
在TensorFlow平臺(tái)構(gòu)建的遞歸神經(jīng)網(wǎng)絡(luò),如圖1所示。
圖1 遞歸神經(jīng)網(wǎng)絡(luò)Fig.1 Recurrent Neural Network
采用遞歸神經(jīng)網(wǎng)絡(luò)對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè),獲得乒乓球機(jī)械發(fā)球軌跡預(yù)測(cè)流程圖,如圖2所示。
圖2 軌跡預(yù)測(cè)流程圖Fig.2 Flow Chart of Trajectory Prediction
為驗(yàn)證乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法的整體有效性,需要對(duì)乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法進(jìn)行測(cè)試。
分別采用乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法、文獻(xiàn)[3]方法和文獻(xiàn)[4]方法對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè),獲得對(duì)比結(jié)果,如圖3所示。分析圖3可知,采用所提方法對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè)時(shí),獲得的預(yù)測(cè)軌跡與實(shí)際軌跡基本相符,x軸和y軸的誤差極小,可忽略不計(jì)。文獻(xiàn)[3]方法和文獻(xiàn)[4]方法對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè)時(shí),獲得的預(yù)測(cè)軌跡在x軸和y軸方向中均存在誤差,表明以上兩種方法無(wú)法準(zhǔn)確的對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè)。通過(guò)上述測(cè)試結(jié)果,驗(yàn)證所提方法具有較高的預(yù)測(cè)精度,因?yàn)樗岱椒▽?duì)軌跡進(jìn)行預(yù)測(cè)之前,對(duì)乒乓球的受力特征進(jìn)行了分析,在此基礎(chǔ)上對(duì)軌跡進(jìn)行預(yù)測(cè),提高了預(yù)測(cè)精度。
圖3 不同方法的軌跡預(yù)測(cè)結(jié)果Fig.3 Trajectory Prediction Results of Different Methods
在預(yù)測(cè)過(guò)程中引入干擾,對(duì)所提方法、文獻(xiàn)[3]方法和文獻(xiàn)[4]方法的軌跡進(jìn)行預(yù)測(cè),獲得預(yù)測(cè)結(jié)果,如圖4所示。
圖4 引入干擾后的測(cè)試結(jié)果Fig.4 Test Results After Introducing Interference
分析圖4可知,引入干擾后,所提方法的預(yù)測(cè)結(jié)果沒(méi)有受到影響,文獻(xiàn)[3]方法和文獻(xiàn)[4]方法的預(yù)測(cè)結(jié)果偏差增大,表明文獻(xiàn)[3]方法和文獻(xiàn)[4]方法受干擾的影響較大。在預(yù)測(cè)過(guò)程中存在數(shù)據(jù)缺失現(xiàn)象,數(shù)據(jù)缺失會(huì)對(duì)軌跡預(yù)測(cè)精度產(chǎn)生影響,采用所提方法、文獻(xiàn)[3]方法和文獻(xiàn)[4]方法在數(shù)據(jù)缺失情況下對(duì)乒乓球機(jī)械發(fā)球軌跡進(jìn)行預(yù)測(cè),對(duì)比不同方法的預(yù)測(cè)精度,獲得測(cè)試結(jié)果,如表1所示。
表1 不同方法的預(yù)測(cè)精度Tab.1 Forecast Accuracy of Different Methods
分析表1可知,隨著數(shù)據(jù)缺失程度的增加,所提方法、文獻(xiàn)[3]方法和文獻(xiàn)[4]方法的預(yù)測(cè)精度不斷降低,表明上述方法的預(yù)測(cè)精度受數(shù)據(jù)缺失的影響較大,在相同數(shù)據(jù)缺失程度下對(duì)比上述方法的測(cè)試結(jié)果發(fā)現(xiàn),所提方法在相同條件下獲得的預(yù)測(cè)精度均高于文獻(xiàn)[3]方法和文獻(xiàn)[4]方法,表明所提方法具有良好的預(yù)測(cè)性能。
乒乓球機(jī)械發(fā)球軌跡預(yù)測(cè)隨著乒乓球機(jī)器人技術(shù)的發(fā)展受到了較多專(zhuān)家和學(xué)者的關(guān)注,乒乓球的旋轉(zhuǎn)方向、旋轉(zhuǎn)速度和運(yùn)動(dòng)速度都會(huì)對(duì)乒乓球的運(yùn)動(dòng)軌跡產(chǎn)生影響,目前乒乓球機(jī)械發(fā)球軌跡預(yù)測(cè)方法存在預(yù)測(cè)精度低的問(wèn)題,提出乒乓球機(jī)械發(fā)球軌跡智能預(yù)測(cè)方法,在乒乓球受力特點(diǎn)的基礎(chǔ)上對(duì)其軌跡進(jìn)行預(yù)測(cè),提高了軌跡預(yù)測(cè)結(jié)果的精度,為運(yùn)動(dòng)員的訓(xùn)練提供了便利。