亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于強化學習的四旋翼無人機控制律設計

        2021-03-16 10:54:58劉小雄張興旺黃劍雄
        計算機測量與控制 2021年2期
        關鍵詞:旋翼角度神經網絡

        梁 晨,劉小雄,張興旺,黃劍雄

        (西北工業(yè)大學 自動化學院, 西安 710072)

        0 引言

        近些年來隨著科技的提升,旋翼無人機行業(yè)發(fā)展迅猛,應用場景越來越廣闊,由于四旋翼具有可垂直起降、低成本和結構簡單的特性,因此在公共安全、民用航拍、消防急救、農業(yè)植保以及軍事領域具有十分廣泛的用途。目前四旋翼無人機正在朝著易攜帶、多功能和更加安全高效的方向發(fā)展。

        由于四旋翼是典型欠驅動非線性強耦合系統(tǒng)[1],四旋翼的速度和位置控制都依賴于姿態(tài)的控制,因此四旋翼的姿態(tài)控制一直是研究的熱點之一[2-4]。然而四旋翼在飛行過程中容易受到環(huán)境的干擾,旋翼槳葉之間的氣動干擾,存在電機快速旋轉時產生的陀螺力矩以及旋翼質量分布不均等問題,這使得對四旋翼的精確建模尤為困難,從而導致依賴精確建模的傳統(tǒng)控制算法[5]難以達到控制要求。

        強化學習又稱為增強學習,自從20世紀初便被提出來了,經過將近一個多世紀的發(fā)展,強化學習與心理學、智能控制、優(yōu)化理論、計算智能、認知科學等學科有著密切的聯系,是一個典型的多學科交叉領域。近些年來,得益于高速計算機、深度學習以及大數據技術的發(fā)展,強化學習得到了越來越廣泛的關注,尤其是深度強化學習技術,被學術界認為是最有可能實現人工智能的算法,已經成為最受學者們關注的前沿技術之一。

        2016年AlphaGo成功戰(zhàn)勝了人類頂級棋手,使得深度強化學習得到了廣泛的關注,之后的AlphaGo Zero,更是使得強化學習技術成為人工智能領域最熱門的技術之一。強化學習技術不僅在博弈類游戲上取得了巨大成功,而且在控制領域也已有了新的突破,如在兩輪車的控制[6]、倒立擺的控制[7]上均取得了較好的進展。本文提出一種將強化學習[8]與神經網絡結合起來的端到端的控制方法,該方法只關心系統(tǒng)的輸入輸出,不關心系統(tǒng)內部過程,通過智能體與環(huán)境的不斷交互,反饋獎懲信息來優(yōu)化控制參數,從而避免了對四旋翼進行精確建模等問題。該方法輸入為姿態(tài)角與姿態(tài)角速率,經過神經網絡,計算出四旋翼的動作值函數,再通過貪婪策略對動作進行選取,得到四旋翼各個槳葉的拉力。通過強化學習的方法對神經網絡進行訓練,最終使得神經網絡可以收斂。最終通過在強化學習算法工具包OpenAI Gym中建立四旋翼的模型,用本文設計的控制算法對該模型進行仿真控制,結果證明了該算法的有效性。

        1 四旋翼動力學模型的建立

        如圖1所示,本文對“X”型結構的四旋翼進行動力學模型的建立。在慣性系中應用牛頓第二定律,可得四旋翼飛行器在合外力F作用下的線運動和合外力矩M作用下的角運動方程:

        圖1 四旋翼結構圖

        (1)

        通過對槳葉動力學模型的分析和電機模型的建立,可以求得槳葉產生的力矩、旋翼慣性反扭力矩以及陀螺效應力矩。根據機體系與地面系的旋轉關系可求得歐拉角速率與機體三軸角速率的關系:

        (2)

        當四旋翼姿態(tài)變化很小時,通過求解式(1),得到四旋翼飛行器的角運動方程:

        (3)

        其中:φ、θ、ψ為滾轉角、俯仰角、偏航角;p、q、r為滾轉角速率、俯仰角速率、偏航角速率;Ix、Iy、Iz分別為四旋翼飛行器繞x、y、z軸的轉動慣量,Jr為每個槳葉的轉動慣量;ΩG為陀螺力矩轉速;

        根據圖1的四旋翼結構,定義UT、Uφ、Uθ、Uψ分別為四旋翼高度、滾轉通道、俯仰通道以及偏航通道的控制輸入,F1、F2、F3、F4分別為4個槳葉提供的拉力,則有:

        (4)

        其中:d表示旋翼轉軸到x軸或y軸的距離;CM為反扭力矩系數,CT為升力系數。

        2 基于強化學習的四旋翼姿態(tài)控制結構

        圖2為強化學習的基本圖,強化學習是通過智能體與環(huán)境的不斷交互來更新控制策略的。一開始,智能體隨機選擇一個動作A作用于環(huán)境,環(huán)境模型通過該動作使得整個系統(tǒng)達到一個新的狀態(tài),并且通過回報函數給智能體一個反饋。這樣不斷循環(huán)下去,智能體與環(huán)境持續(xù)地交互,從而產生更多的數據樣本。智能體根據與環(huán)境交互而產生的數據樣本來改變自身的動作選擇策略。通過不斷地試錯,智能體最終會學到一個最優(yōu)的策略。

        圖2 強化學習基本框圖

        從強化學習的基本原理中我們可以看出來,強化學習與監(jiān)督學習和非監(jiān)督學習有一些本質上的區(qū)別。如傳統(tǒng)的監(jiān)督學習中,數據樣本是一些帶有標簽的靜止訓練集,只要樣本數據之間的差異足夠明顯,就能夠訓練一個不錯的模型。而強化學習則是一個連續(xù)決策的過程,在強化學習中,智能體沒有直接的指導信息,而是通過環(huán)境反饋的立即回報來修正自身的策略,智能體需要不斷地與環(huán)境進行交互從而實時地獲取訓練數據,通過這種試錯的方式來獲得最佳的策略。

        本文采用基于值函數逼近的無模型強化學習算法Deep Q-Network[9]來對四旋翼姿態(tài)進行控制。DQN算法是在Q-Learning算法的基礎上進行的改進,在Q-Learning算法中,維護一張表Q-Table它的每一列代表一個動作,每一行代表一個狀態(tài),這張表記錄了每個狀態(tài)下采取不同動作所獲得的最大長期獎勵期望,通過這張表就可以知道每一步的最佳動作是什么。但是在狀態(tài)空間維度十分龐大甚至連續(xù)時,Q-Table不能存儲下所有的狀態(tài),因此DeepMind對Q-Learning進行了改進,便得到了DQN算法,其改進主要體現在以下幾個方面:

        1)DQN利用卷積神經網絡進行值函數的逼近;

        2)DQN利用了經驗回放訓練強化學習的學習過程;

        3)DQN中獨立設置了目標網絡來單獨處理時間差分算法中的TD偏差。

        DQN算法流程如圖3所示,在DQN算法中,有幾個比較重要的環(huán)節(jié):環(huán)境、當前值網絡與目標值網絡、動作庫、經驗池以及回報函數。環(huán)境模型在上一節(jié)中已經建立,其余的將在本節(jié)進行建立。

        圖3 DQN算法流程

        1)動作庫:本文中動作庫是俯仰、滾轉、偏航三通道的控制量Uφ、Uθ、Uψ。

        2)值函數神經網絡:在DQN中,存在兩個結構完全相同的逼近值函數的神經網絡:一個是當前值函數神經網絡,另一個是目標值函數神經網絡。當前值函數與目標值函數的差作為部分依據修正神經網絡的參數,當前值函數神經網絡每一步都更新,而目標值函數神經網絡每隔一定的步數更新。本文采用三層BP神經網絡作為值函數神經網絡,輸入維度為2,對應單個通道的角度與角速率,輸出維度對應單個通道的動作庫維度。

        網絡參數的更新如下所示:

        Q(s,a;θ)]·▽Q(s,a;θ)

        (5)

        其中:θ為網絡參數;α為學習速率;r為立即回報;γ為折扣因子;s和a分別為狀態(tài)與動作。

        3)經驗池:由于強化學習是建立在馬爾科夫決策過程的基礎上的,因此通過強化學習得到的樣本數據之間存在著相關性,而神經網絡的前提是樣本之間獨立同分布?;诖?,建立一個經驗池,將通過強化學習得到的數據存在經驗池中,訓練時從經驗池中隨機均勻采取一些樣本進行訓練,以此來打破數據樣本之間存在的相關性。

        4)回報函數:本文研究內容是四旋翼的姿態(tài)控制,以滾轉角φ單通道為例,設計回報函數如下:

        (6)

        當角度偏差或角速度比較大時,對智能體懲罰比較大,反之則懲罰較小。強化學習會對智能體朝著使得累積回報最大的方向進行訓練。

        3 四旋翼姿態(tài)控制律設計

        基于以上分析,設計基于無模型強化學習算法DQN的四旋翼控制律,模型參數如表1所示。

        表1 模型參數

        具體設計如下:

        由于三通道的控制律結構一致,因此以下僅以滾轉通道為例進行介紹。依據第二章四旋翼姿態(tài)控制結構,需要建立兩個結構相同但參數不同的神經網絡,即目標網絡和現實網絡,定義目標網絡的參數為θ-,現實網絡的參數為θ。本文采用三層BP神經網絡對值函數進行擬合,神經網絡輸入層有兩個神經元,分別為俯仰角偏差與俯仰角速率;隱藏層有10個神經元;輸出層有20個神經元,對應俯仰通道的動作值函數。

        設置經驗池大小為5 000,經驗池中每一個樣本存儲智能體的上一步狀態(tài)st、當前狀態(tài)st+1、環(huán)境給予的立即回報r以及在當前狀態(tài)下所選取的動作a,當樣本數據大于5 000時,可以認為前面的數據已經不具備參考價值,刪除掉最早的數據。

        圖4 經驗池

        規(guī)定每次訓練時從經驗池中隨機均勻抽取50條樣本進行訓練。因為訓練時系統(tǒng)使用ε貪婪策略進行動作的選取,所以為使系統(tǒng)一開始具備較強的探索能力,盡最大可能探索到范圍以內的所有狀態(tài),不至于收斂到局部最優(yōu),實驗中將ε貪婪值初始化為0,每隔1 000步,貪婪值增加0.01,最大增加到0.95。

        在實驗中,給定初始角度偏差為5°,同時初始化角速度為0°/s,開始訓練智能體。訓練采取回合制,為防止智能體收斂到局部最優(yōu),為每一個回合設定最大仿真步數,當角度偏差超過設定范圍或者本回合步數超過最大步數時,本回合結束,開始下一回合訓練。實驗中,對仿真回合不做限制,但是每一個回合將輸出損失與參數模型,實驗中可以隨時終止訓練并將模型導出。

        綜上所述,以貪婪策略作為滾轉通道控制量的選取策略,即滾轉通道控制量取值為值函數中值最大的元素所對應的動作,即:

        (7)

        4 仿真結果與分析

        根據第3小節(jié)所描述的實驗方法進行實驗,仿真步驟如下所示:

        1)初始化一些必要的參數,如動作庫、貪婪值、初始角度偏差、經驗池大小、每次訓練所采的樣本數等;

        2)開始訓練,訓練時動作的選取采用ε貪婪策略。每回合訓練時輸出損失與參數模型,當損失達到一定要求之后,停止訓練,保存參數模型。對俯仰、滾轉、偏航通道分別進行如上所示的訓練并保存好參數模型;

        3)將參數模型輸入到最終的仿真模型中,并通過式(4)反解出每個電機的拉力,從而實現對四旋翼的姿態(tài)控制。

        仿真電腦CPU為Intel i5-7500,內存8.00 GB,在ubuntu16.04系統(tǒng)下,采用OpenAI Gym工具包進行仿真,訓練效果如圖5所示。

        圖5 損失函數曲線

        從損失函數曲線中可以看出,在強化學習的訓練下,神經網絡基本上從4 000步開始就已經收斂了,而到10 000步左右時出現小幅的波動,這是因為貪婪策略取值最大為0.95,系統(tǒng)依然有5%的概率隨機選取動作,這會導致目標網絡與現實網絡之間的偏差增大,進而導致損失函數的增加。實驗中,選取了第4 000步時的模型參數作為最終的模型參數。

        圖6 初始值為正時Δφ的變化

        將訓練好的模型輸入系統(tǒng)控制結構中,并對角度觀測量加入[0.1,0.1]上的隨機噪聲,初始化φ為5°,設置期望值為0度進行仿真實驗。如圖6所示,系統(tǒng)基本上能夠在1 s以內達到控制目標,并且穩(wěn)定在目標值左右。

        圖7 初始值為負時Δφ的變化

        將Δφ的初始值為-5時訓練得到的模型參數,重新輸入到飛機模型中,得到曲線如圖7所示。

        由以上分析,將訓練好的網絡模型輸入到飛機模型中,控制器輸入為期望角度值,將當前角度值與期望角度值做差,當角度偏差為正時通過第一個網絡模型進行控制,當角度偏差為負時通過第二個網絡模型進行控制。

        圖8為φ的控制效果圖,將系統(tǒng)初始角度與期望角度分別設置為5°和0°,并在第5 s、10 s、15 s時分別改變系統(tǒng)的期望角度,可以看到,系統(tǒng)基本可以跟上控制指令。

        圖8 φ的控制效果圖

        同理,俯仰角和偏航角的控制結構與滾轉角一致,俯仰通道與偏航通道的控制效果如下:

        圖9、圖10分別為俯仰角和偏航角的控制效果圖。將俯仰角的初始值和期望值分別設置為-5°和0°,然后在5 s、10 s、15 s時分別改變俯仰角期望值為5°、0°和-5°,得到曲線如圖9(c)所示。同理將偏航角的初始值與期望值分別設置為10°和0°,然后在5 s、10 s、15 s時分別改變偏航角的值為10°、0°和-10°,得到曲線如圖10(c)所示。

        圖9 俯仰角的控制效果圖

        圖10 偏航角的控制效果圖

        綜合以上曲線可以看出,在單獨控制一個通道時,基于DQN的控制律基本可以快速準確地跟蹤上指令信號的改變。接著將三通道的控制量通過下式求出各槳葉所提供的拉力,從而達到控制四旋翼飛行器的目的。

        (8)

        其中:Ac為系數矩陣。

        圖11為將各通道控制量經過控制分配之后得到的四旋翼姿態(tài)控制效果圖。

        圖11 四旋翼姿態(tài)角控制效果

        實驗中,將四旋翼三軸姿態(tài)角均初始化為0°,角度觀測量均加入[-0.1,0.1]上的隨機噪聲,通過在不同時刻給定四旋翼不同的指令信號,使得四旋翼達到不同姿態(tài),最終效果如圖11所示。

        從圖11中可以看出,控制器基本上可以使得四旋翼的姿態(tài)跟上指令信號,但同時伴隨有一定的震蕩,還會有一定的誤差。這是因為DQN中,動作空間并不是連續(xù)的,在一些狀態(tài)下,智能體所需要選擇的最優(yōu)動作并不存在于動作空間中,這時智能體只能選擇動作空間中最接近最優(yōu)動作的動作,這就造成了四旋翼姿態(tài)必然會伴隨有一定的震蕩和誤差。因此想要減小震蕩并消除誤差,這能增加動作空間的維度,將動作空間設置的更加稠密,這樣智能體選擇的動作就會更加接近最優(yōu)值。

        5 結束語

        本文針對“X”型結構的四旋翼非線性運動模型,提出基于無模型強化學習算法DQN的四旋翼姿態(tài)控制律設計[10]。首先對俯仰角、滾轉角以及偏航角分別進行控制律設計,當三通道控制律達到控制要求之后,通過控制分配求出4個槳葉的拉力,進而達到控制四旋翼姿態(tài)的目的。實驗結果表明基于無模型強化學習的控制律能夠在不知道被控對象模型的情況下,控制四旋翼實時跟蹤上參考指令的變化。

        猜你喜歡
        旋翼角度神經網絡
        神奇的角度
        改進型自抗擾四旋翼無人機控制系統(tǒng)設計與實現
        大載重長航時油動多旋翼無人機
        神經網絡抑制無線通信干擾探究
        電子制作(2019年19期)2019-11-23 08:42:00
        基于STM32的四旋翼飛行器的設計
        電子制作(2019年9期)2019-05-30 09:41:48
        一個涉及角度和的幾何不等式鏈的改進
        角度不同
        37°女人(2017年8期)2017-08-12 11:20:48
        人啊
        滇池(2017年7期)2017-07-18 19:32:42
        四旋翼無人機動態(tài)面控制
        基于神經網絡的拉矯機控制模型建立
        重型機械(2016年1期)2016-03-01 03:42:04
        色婷婷久久精品一区二区| 欧美激情区| 日韩国产精品一本一区馆/在线| 91中文字幕精品一区二区| 穿着白丝啪啪的av网站| 日本真人做人试看60分钟| 亚洲精品国精品久久99热一| 亚洲国产精品久久久性色av| 一本大道加勒比东京热 | 在线观看视频免费播放| 国产精品毛片va一区二区三区| 女人被男人躁得好爽免费视频| 中文无码成人免费视频在线观看| 777久久| 91桃色在线播放国产| 高清国产一级毛片国语| 久青青草视频手机在线免费观看| 亚洲长腿丝袜中文字幕| 国产午夜激无码av毛片不卡| 久久99精品国产麻豆不卡| 亚洲国产av一区二区三区四区| 欧美日韩国产乱了伦| 久草视频华人在线观看| 国产交换精品一区二区三区| 中文精品久久久久人妻不卡| 影视先锋av资源噜噜| 永久免费看免费无码视频| 国内精品女同一区二区三区| 亚洲男女内射在线播放| 男男性恋免费视频网站| 免费无码中文字幕A级毛片| 亚洲一区二区三区av天堂| 日日噜噜夜夜狠狠久久丁香五月 | 18禁止进入1000部高潮网站| 88久久精品无码一区二区毛片| 亚洲av美女在线播放啊| 久久老熟女乱色一区二区| 免费午夜爽爽爽www视频十八禁| 国产激情内射在线影院| 国产v综合v亚洲欧美大天堂 | 91九色熟女潮喷露脸合集|