国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多因子量化選股模型的采摘機器人學習策略研究

2024-01-09 09:46
農(nóng)機化研究 2024年4期
關(guān)鍵詞:多因子學習策略螞蟻

趙 睿

(中共鶴壁市委黨校,河南 鶴壁 458030)

0 引言

采摘農(nóng)作物是一種重復且繁瑣的工作,對勞動力需求很大。雖然小麥、玉米和大麥等基本糧食都由收割機來完成收割任務(wù),但對于采摘水果和蔬菜等作物則需要采摘機器人來完成。為此,基于多因子量化選股模型對采摘機器人學習策略進行制定,實現(xiàn)了對采摘機器人的路徑規(guī)劃,對采摘機器人的研究具有一定參考價值。

1 多因子量化選股模型研究

指數(shù)增強基金是利用數(shù)字模型和算法計算出交易決策,給基金經(jīng)理作為調(diào)倉參考。其核心思路是:在保證超額波動率的情況下,采用多因子選股模型建立投資組合,選擇一些對股票收益影響大的因子,通過這些因子實現(xiàn)對收益率高的股票進行投資,實現(xiàn)超額完成目標指數(shù)的收益。當前環(huán)境下,采用多因子模型構(gòu)建選股策略是非常普遍的做法,其多因子量化模型流程如圖1所示。

1.1 確定候選的影響因子

影響股票投資策略的因子有很多,候選因子的選擇也相應(yīng)較多。其可以是基本指標,如市盈率PE(Price earnings ratio,即P/E ratio)和平均市凈率PB(Price to book ratio);也可以是技術(shù)指標,如動量、換手率、成交量、相對強弱指數(shù)和隨機指數(shù)等;又或者是其他宏觀方面的指標等。選擇哪些因子作為候選因子,是根據(jù)經(jīng)濟環(huán)境和投資經(jīng)驗決定的,而選擇有效因子是增強選股模型收益的核心因素。

圖1 多因子量化模型流程圖Fig.1 The flow chart of multi-factor quantitative model

1.2 數(shù)據(jù)預(yù)處理

在前期收集股票因子的過程中,這個數(shù)據(jù)會存在噪聲、量綱不一致和缺失等問題,需要對數(shù)據(jù)進行預(yù)處理,剔除掉不合適的數(shù)據(jù),讓數(shù)據(jù)模型更具有適應(yīng)性,從而滿足選股模型的需求。對股票因子進行預(yù)處理的方法很多,如對數(shù)據(jù)進行清理、集成、變化和規(guī)約等。本文是將多因子量化選股模型應(yīng)用于采摘機器人路徑規(guī)劃中,數(shù)據(jù)完整性顯得尤為重要。因此,采用缺失處理、離群值處理,標準化和中性化等4種方法對因子數(shù)據(jù)進行預(yù)處理。

1.3 數(shù)據(jù)預(yù)處理

股票市場上的影響因子成千上萬,每個因子伴隨市場環(huán)境具有不同的作用。本文采用XGBoost模型方法對能影響股票收率的因子進行分析研究。

1)XGBoost模型方法理論基礎(chǔ)。XGBoost模型方法是采用梯度提升樹的智能算法,可以自動判斷獲取到的特征因子的重要性,并利用提升樹對這些特征進行選擇和分類。本文就是在算法框架上使用XGBoost模型方對重要的候選因子進行篩選。

XGBoostt模型方法是利用不斷添加新樹并學習新函數(shù)方法對上一次預(yù)測結(jié)果進行重新擬合,從而通過特征分裂組成新的樹。XGBoostt模型方法的核心是:在確定第t-1顆樹時,對下一棵樹的葉子結(jié)構(gòu)權(quán)重ω和第t棵樹進行預(yù)測,其目標函數(shù)表達式為

(1)

其中,l為損失函數(shù);Ω(ft)為正則項;c為常數(shù)項;f(x)為其中一顆回歸樹;yi為整個累加模型的輸出。

對式(1)進行二階泰勒處理后得

(2)

(3)

采用正則化項對式(2)進行展開,可得

(4)

對式(4)進行求導,求出葉子結(jié)構(gòu)權(quán)重ωj的最優(yōu)值為

(5)

帶入式(4),可得

(6)

其中,γ為葉子的個數(shù)。

式(6)是判斷一棵樹結(jié)果是否滿足要求的標準,分數(shù)越小,表示結(jié)構(gòu)越好。其可以用來作為最佳切分點的判斷,也可以用來在確定是否還需要在此基礎(chǔ)上進行新的分裂。其分裂的增益表達式為

(7)

式(7)是整個XGBoost模型方法的根據(jù),其是左子、右子和不分割等3部分的分數(shù),通過該式可以在一定程度上對樹結(jié)構(gòu)分裂程度上進行控制。

XGBoost模型方法處理流程為:①確定輸入條件,即當前節(jié)點的數(shù)據(jù)集;②確定輸出條件,即特征維度;③根據(jù)最高分進行分割輸出。XGBoost模型方法具體的流程圖如圖2所示。

1.4 構(gòu)建多因子量化選股模型

多因子量化選股模型主要包括打分法和回歸法兩種構(gòu)建方法,本文采用前者。其主要思路是:選擇一些對股票收益影響大的預(yù)測因子,再根據(jù)股票對這些因子進行排序,并在相對位置進行打分;隨后,根據(jù)每個因子的權(quán)重比例對每個因子進行計算,得出個股的綜合分數(shù),并進行降序排列,挑選出分數(shù)高的股票作為投資的組合。但是由于行業(yè)變化和投資環(huán)境的變化,很多因子會出現(xiàn)不穩(wěn)定的情況,隨著時間而逐漸失去作用,所以在打分模型中需對于選用的因子進行不斷的評價和改進,剔除不良和因子和加入新的有效因子。若每次都根據(jù)因子計算的個股綜合分數(shù)重新建立投資組合,這樣換手率會很大高,從而大大增加交易成本,所以還會利用半衰期IC加權(quán)方法構(gòu)建模型,提前先確定每個因子影響力的長短,然后隔一段周期才進行大的調(diào)倉。

圖2 XGBoost模型方法流程圖Fig.2 The flow chart XGBoost model method

2 采摘機器人學習策略模型

采用學習策略模型對采摘機器人路徑進行規(guī)劃,環(huán)境場景通過柵格法建立二維地圖。在環(huán)境場景中,障礙物、起始點、終止點都是在初始時刻確定好,在整個過程中都不會發(fā)生變化。采摘機器人路徑規(guī)劃流程如圖3所示。

圖3 采摘機器人路徑規(guī)劃流程圖Fig.3 The flow chart of picking robot path planning

對二維地圖進行柵格化處理中,一般通過對x軸和y軸方向分別進行柵格化。圖4是對二維環(huán)境進行柵格化,黑色和白色分別為障礙物和無障礙物區(qū)域。

圖4 柵格地圖模型示意圖Fig.4 The schematic diagram of grid map model

3 基于多因子量化蟻群算法的采摘機器人路徑規(guī)劃

3.1 多因子量化的蟻群算法

蟻群算法以基于動物靈感的一種算法,其由Italy學者Dorigo等人提出,核心思想是實時對螞蟻行走路上的信息素進行更新,并通過最優(yōu)反饋實現(xiàn)算法的收斂。該方法被廣泛應(yīng)用在復雜組合優(yōu)化問題上,如旅行商問題、車間調(diào)度、路徑優(yōu)化、無線傳感器網(wǎng)絡(luò)控制等。為了實現(xiàn)對采摘機器人路徑規(guī)劃,本文將多因子量化方法應(yīng)用在蟻群算法上,對其進行改進。改進包括兩個方向:①對蟻群信息素的更新方法進行改進;②利用多因子量化中的XGBoost模型方法,對蟻群算法中當前位置到下一位置的轉(zhuǎn)移概率進行改進。

蟻群信息素采用多因子量化的學習策略進行實時更新,將蟻群移動路徑上任何一點的信息素作為多因子量化學習策略的長期收益來求解。任意時刻對任意柵格的信息素采用多因子量化學習策略進行全局更新。

設(shè)定蟻群算法立即獎賞函數(shù)規(guī)則為:當螞蟻順利到達目標終點后,會獲得+10的立即獎賞;而到達非目標終點的位置,則獲得+1的累計獎賞。

設(shè)定蟻群算法遷移函數(shù)規(guī)則為:采摘機器人從下向上運動時,x軸坐標不變,y軸方向依次-1,往其反方向時則相反;采摘機器人從右向左運動時,y軸坐標保持不變,x軸方向依次-1,往其反方向時也相反。

采用多因子量化的學習策略對蟻群信息素進行實時更新的算法為:

1)輸入:路徑探索因子為ε,折扣率為γ,步長因子為α,情節(jié)最大值為ET,最大時間步為ETS。

2)參數(shù)初始化:二維地圖柵格化的狀態(tài)空間為X,動作包括5種,即向下(-1)、向上(+1)、向左(-1)、向右(+1)和原地(0);初始化時所有的動作收益值Q都是0,即Q0(x,u)=0;初始化狀態(tài)為x=x0。

Repeat(ET)

Loop(ETS)

Step2:根據(jù)路徑探索因子ε的值,設(shè)定1-ε的概率會選擇最優(yōu)動作α,而選擇其他動作的概率為ε。

Step3:根據(jù)選擇的動作和實時狀態(tài),根據(jù)蟻群算法遷移函數(shù)將其遷移到后續(xù)狀態(tài)x′,并根據(jù)獎賞函數(shù)設(shè)置立即獎賞為r。

Step4:根據(jù)多因子量化方法,對各個狀態(tài)出的收益值進行更新,并剔除不合格的狀態(tài),Q值更新為Q(x,u)=Q(x,u)+α(r+γQ(x′,u′)-Q(x,u))。

Step5:更新螞蟻的當前狀態(tài):x←x′。

Step7:更新下一狀態(tài)會執(zhí)行的動作:α←α′。

Step8:更新當前時步;

End Loop

更新當前情節(jié)

End Repeat

3)輸出:各狀態(tài)動作處的收益值Q。

3.2 轉(zhuǎn)移概率的改進

為了增加策略的多樣性,在轉(zhuǎn)移概率中引入了隨機機制,如同多因子量化的學習策略中的ε。設(shè)定隨機參數(shù)s∈(0,1),每個時間步t會產(chǎn)生的一個隨機數(shù)st∈(0,1)。當s≤st時,可以計算轉(zhuǎn)移概率來確定移動到下一個的位置;而當s>st時,則查看周邊可以移動的位置,去除障礙物無法移動和已經(jīng)移動的位置,隨機選擇一個可性位置。

(8)

其中,rand(allowedt)表示可行位置從非障礙物到未經(jīng)過的位置集合allowedt中的選擇。

對于任何一個可行節(jié)點j,其轉(zhuǎn)移概率表達式為

(9)

其中,λ(i,j)為(i,j)區(qū)域內(nèi)的蟻群信息素;μ(i,j)=1/d(i,j);d(i,j)為(i,j)區(qū)域內(nèi)的面積;t為螞蟻已經(jīng)移動過的列表。

3.3 采摘機器人路徑規(guī)劃

基于多因子量化蟻群算法的采摘機器人路徑規(guī)劃,其求解流程如圖5所示。

圖5 基于多因子量化蟻群算法流程圖Fig.5 The flow chart of ant colony algorithm based on multi-factor quantization

具體步驟如下:

Step1:搭建采摘機器人的二維環(huán)境地圖模型。

Step2:對蟻群算法參數(shù)進行初始化。

Step3:將所有螞蟻放置在起點A。

Step4:所有蟻群根據(jù)制定的規(guī)則和概率在節(jié)點間移動,并對每個螞蟻的移動次數(shù)進行統(tǒng)計。

Step5:采用多因子量化方法對信息表進行更新。若有螞蟻的移動次數(shù)小于設(shè)定的最大次數(shù),但沒有到達目標點,則回到Step4重新開始;若有螞蟻的移動次數(shù)大于或等于設(shè)定的最大次數(shù),但沒有達到目標點,則清除所有數(shù)據(jù),并將其放于起點。

Step6:統(tǒng)計成功到達目標點的螞蟻路徑P,并查看是否滿足要求。

Step7:對比所有符合要求的螞蟻路徑P,選出最優(yōu)值。

Step8:輸出采摘機器人最優(yōu)路徑,也就是螞蟻的最優(yōu)路徑。

4 仿真實驗

為了驗證基于多因子量化選股模型的采摘機器人學習策略的可靠性,采用MatLab 8.0對其進行了仿真實驗。實驗中,設(shè)定采摘機器人運動區(qū)域為一個二維平面,所有障礙物及其形狀都是已知的。初始化設(shè)置螞蟻總數(shù)為8000,移動次數(shù)NC=300,起始點為A,目標終點為B,要求是求出一條從起點到終點的無碰撞最優(yōu)路徑。仿真結(jié)果如圖6所示。

圖6 Matlab仿真結(jié)果圖Fig.6 The Simulation diagram of MatLab

由圖6可知:基于多因子量化選股模型的蟻群算法為采摘機器人規(guī)劃了一條長度最短、轉(zhuǎn)彎次數(shù)最少的最優(yōu)路徑,移動過程中沒有發(fā)生碰撞。這證明,該算法對改善采摘機器人移動路徑效果明顯,使規(guī)劃的路徑更合理。

5 結(jié)論

將多因子量化選股模型和蟻群算法相結(jié)合,設(shè)計了一種改進的蟻群算法,并對采摘機器人的路徑規(guī)劃進行了研究。該算法具有一定的學習策略,可以根據(jù)實際作業(yè)區(qū)域為采摘機器人設(shè)計最優(yōu)的作業(yè)路徑。實驗結(jié)果表明:該算法為采摘機器人規(guī)劃了一條長度最短、轉(zhuǎn)彎次數(shù)最少的最優(yōu)路徑,移動過程中沒有發(fā)生碰撞,改善采摘機器人移動路徑效果明顯,使規(guī)劃的路徑更合理。

猜你喜歡
多因子學習策略螞蟻
基于BP神經(jīng)網(wǎng)絡(luò)的多因子洪水分類研究
基于打分法的多因子量化選股策略研究
我們會“隱身”讓螞蟻來保護自己
基于多因子的ZigBee安全認證機制
高中生數(shù)學自主學習策略探討
螞蟻
一種使用反向?qū)W習策略的改進花粉授粉算法
螞蟻找吃的等
基于微博的移動學習策略研究
自主學習策略在寫作教學中的應(yīng)用
怀安县| 宿松县| 遵义市| 察雅县| 瑞昌市| 阿瓦提县| 马山县| 衡水市| 南充市| 肥乡县| 清新县| 库伦旗| 莲花县| 宁化县| 大新县| 察雅县| 宁明县| 红河县| 巴中市| 明星| 嘉峪关市| 定结县| 应用必备| 高邑县| 滦南县| 郴州市| 海安县| 正宁县| 资阳市| 凉城县| 宣汉县| 浦江县| 澄江县| 汾阳市| 福清市| 贵南县| 怀安县| 翼城县| 彩票| 凤山市| 甘德县|