本申請(qǐng)是2014年9月30日提交的美國(guó)臨時(shí)申請(qǐng)No.62/057,633的非臨時(shí)專利申請(qǐng),該美國(guó)臨時(shí)申請(qǐng)的全部?jī)?nèi)容通過(guò)引用被包括在本文中。
背景技術(shù):
:(1)
技術(shù)領(lǐng)域:
本發(fā)明涉及一種控制器適應(yīng)(adaptation)系統(tǒng),并且更具體地,涉及一種給予系統(tǒng)(諸如自主和/或用戶控制的汽車或飛機(jī))的控制器快速地適應(yīng)系統(tǒng)的動(dòng)力學(xué)的變化的能力的控制器適配器。(2)相關(guān)技術(shù)的描述動(dòng)力系統(tǒng)通常經(jīng)由控制器操作??刂破鞯娜蝿?wù)是在自主系統(tǒng)上評(píng)估操作參數(shù)(諸如周圍環(huán)境等)并執(zhí)行命令,以在操作參數(shù)的界限內(nèi)執(zhí)行任務(wù)并進(jìn)行操作。已經(jīng)開(kāi)發(fā)了用于控制自主系統(tǒng)的多種系統(tǒng)和方法。例如,模型預(yù)測(cè)控制(參見(jiàn)所結(jié)合的參考文獻(xiàn)列表,參考文獻(xiàn)1)計(jì)算最佳控制命令來(lái)實(shí)現(xiàn)給定控制目標(biāo)(例如,將汽車保持在車道中),但是這種計(jì)算取決于系統(tǒng)動(dòng)力學(xué)的前向(forward)模型,并且使該模型適應(yīng)突變要求另一種方法。諸如支持向量回歸(參見(jiàn)參考文獻(xiàn)2)、高斯過(guò)程(參見(jiàn)參考文獻(xiàn)3)以及主成分分析(參見(jiàn)參考文獻(xiàn)4)的機(jī)器學(xué)習(xí)方法通常要求大量數(shù)據(jù)來(lái)重新學(xué)習(xí)功能關(guān)系。在線學(xué)習(xí)方法利用每個(gè)單獨(dú)數(shù)據(jù)點(diǎn)使內(nèi)部模型逐漸適應(yīng)(參見(jiàn)參考文獻(xiàn)5至7),但是不能適應(yīng)突變。系統(tǒng)動(dòng)力學(xué)的預(yù)期變化可能很大,特別是在損害之后。由于這種變化,在線學(xué)習(xí)模型通常不能足夠快速地適應(yīng)突變。因此,存在一種對(duì)根據(jù)由于系統(tǒng)動(dòng)力學(xué)的突變導(dǎo)致的稀疏數(shù)據(jù)提供適應(yīng)的快速控制器適配器的持續(xù)需求。技術(shù)實(shí)現(xiàn)要素:描述一種用于根據(jù)稀疏數(shù)據(jù)適應(yīng)以控制動(dòng)力系統(tǒng)而不管動(dòng)力的不期望改變的神經(jīng)模型預(yù)測(cè)控制(MPC)控制器。系統(tǒng)可能是自主和/或用戶控制的汽車或飛機(jī)或其子組件(或者任何其它自主系統(tǒng))。換句話說(shuō),在一些實(shí)施方式中,自主系統(tǒng)是能夠操作以用于執(zhí)行各種任務(wù)(諸如飛行(在飛機(jī)的情況下)、或駕駛(在汽車的情況下)或者抓取(在機(jī)器人的情況下))的設(shè)備(plant)、或者是能夠操作以用于執(zhí)行任務(wù)的任何其它合適系統(tǒng)。所述MPC控制器包括被配置為執(zhí)行多個(gè)操作的一個(gè)或更多個(gè)非暫時(shí)性電子處理器(例如,一個(gè)或更多個(gè)處理器以及存儲(chǔ)器,所述存儲(chǔ)器是在其上編碼有可執(zhí)行指令的非暫時(shí)性計(jì)算機(jī)可讀介質(zhì),使得當(dāng)執(zhí)行所述指令時(shí),所述一個(gè)或更多個(gè)處理器執(zhí)行多個(gè)操作)。如上所述,所述一個(gè)或更多個(gè)非暫時(shí)性電子處理器被配置為執(zhí)行多個(gè)操作,包括:在基本控制器中接收設(shè)備的當(dāng)前狀態(tài)的測(cè)量結(jié)果,并且基于所述設(shè)備的所述當(dāng)前狀態(tài)的所述測(cè)量結(jié)果生成控制信號(hào);在前向模塊中接收所述設(shè)備的所述當(dāng)前狀態(tài)的所述測(cè)量結(jié)果以及所述控制信號(hào),以生成前向模塊預(yù)測(cè);在前向模塊校正器中從所述基本控制器接收所述設(shè)備的所述當(dāng)前狀態(tài)的所述測(cè)量結(jié)果以及所述控制信號(hào),以生成對(duì)所述前向模塊預(yù)測(cè)的附加校正(additivecorrection)以生成預(yù)測(cè)設(shè)備狀態(tài);生成多對(duì)控制信號(hào)和相應(yīng)預(yù)測(cè)設(shè)備狀態(tài)的為長(zhǎng)度L的控制序列,直至已經(jīng)生成Ns個(gè)控制序列為止;以及基于所述Ns個(gè)控制序列來(lái)生成下一個(gè)設(shè)備控制信號(hào)。在另一方面,所述MPC控制器使得所述設(shè)備驅(qū)動(dòng)或執(zhí)行所述下一個(gè)控制信號(hào)。在又一方面,對(duì)預(yù)測(cè)設(shè)備狀態(tài)限定代價(jià)函數(shù),使得通過(guò)在所述Ns個(gè)控制序列中的每個(gè)控制序列中的所述預(yù)測(cè)設(shè)備狀態(tài)當(dāng)中找到使所述代價(jià)函數(shù)最小化的預(yù)測(cè)設(shè)備狀態(tài)以生成最小化序列,然后從所述最小化序列中選擇第一設(shè)備控制信號(hào)來(lái)確定所述下一個(gè)控制設(shè)備信號(hào)。生成所述最小化序列的所述基本控制器是在下一個(gè)時(shí)間步幅(step)中使用的基本控制器。在又一方面,一個(gè)或更多個(gè)傳感器可以與基本控制器、前向模塊和前向模塊校正器通信連接,以生成所述設(shè)備的所述當(dāng)前狀態(tài)的所述測(cè)量結(jié)果。在又一方面,使用唯一隨機(jī)生成的基本控制器生成每個(gè)控制序列。另外,所述前向模塊校正器是神經(jīng)網(wǎng)絡(luò)。在另一方面,所述前向模塊校正器是多層感知器(multi-layerperceptron)。在又一方面,所述基本控制器是神經(jīng)網(wǎng)絡(luò)。最后,本發(fā)明還包括計(jì)算機(jī)程序產(chǎn)品和計(jì)算機(jī)實(shí)現(xiàn)方法。所述計(jì)算機(jī)程序產(chǎn)品包括存儲(chǔ)在非暫時(shí)性計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)可讀指令,所述計(jì)算機(jī)可讀指令可以通過(guò)具有一個(gè)或更多個(gè)處理器的計(jì)算機(jī)來(lái)執(zhí)行,使得當(dāng)執(zhí)行所述指令時(shí),所述一個(gè)或更多個(gè)處理器執(zhí)行本文中所列出的操作。另選地,所述計(jì)算機(jī)實(shí)現(xiàn)方法包括使得計(jì)算機(jī)執(zhí)行這種指令并執(zhí)行所產(chǎn)生的操作的動(dòng)作。附圖說(shuō)明從下面結(jié)合附圖對(duì)本發(fā)明的各個(gè)方面的詳細(xì)描述中,本發(fā)明的目的、特征和優(yōu)點(diǎn)將變得明顯,在附圖中:圖1是示出根據(jù)本發(fā)明的一些實(shí)施方式的系統(tǒng)的組件的框圖;圖2是具體實(shí)現(xiàn)本發(fā)明的一個(gè)方面的計(jì)算機(jī)程序產(chǎn)品的例示;圖3是根據(jù)本發(fā)明的實(shí)施方式的神經(jīng)模型預(yù)測(cè)控制(MPC)控制器的系統(tǒng)表示;圖4是示出如雙桿平衡問(wèn)題中使用的車擺系統(tǒng)的例示;圖5是示出車擺系統(tǒng)和神經(jīng)MPC控制器的例示;圖6是示出如由車擺系統(tǒng)中的前向模塊采用的示例性微分方程的例示;圖7是示出在損害車擺系統(tǒng)之后車體和桿(pole)的位置的圖表;圖8是示出在損害車擺系統(tǒng)之后車體和桿的速度的圖表;圖9是示出在損害車擺系統(tǒng)之后由神經(jīng)MPC控制器進(jìn)行的預(yù)測(cè)車擺系統(tǒng)狀態(tài)時(shí)的誤差的圖表;圖10是示出在各種等級(jí)的損害已經(jīng)發(fā)生之后車擺系統(tǒng)被成功控制達(dá)至少20秒的可能性的圖表;圖11是示出在各種等級(jí)的損害已經(jīng)發(fā)生之后車擺系統(tǒng)被成功控制達(dá)至少40秒的可能性的圖表;圖12是示出在各種等級(jí)的損害已經(jīng)發(fā)生之后車擺系統(tǒng)被成功控制達(dá)至少60秒的可能性的圖表;以及圖13是示出在不同前向模塊校正器網(wǎng)絡(luò)大小的范圍內(nèi)生存達(dá)20秒、40秒和60秒的生存時(shí)間的平均可能性的圖表。具體實(shí)施方式本發(fā)明涉及一種控制器適應(yīng)系統(tǒng),并且更具體地,涉及一種允許系統(tǒng)(諸如自主和/或用戶控制的汽車或飛機(jī))的控制器具有快速地適應(yīng)自主系統(tǒng)的動(dòng)力學(xué)的變化的能力的控制器適配器。給出下面的描述以使得本領(lǐng)域普通技術(shù)人員能夠制造并使用本發(fā)明,并且能夠?qū)⑵浒谔囟☉?yīng)用的情境中,各種修改以及在不同應(yīng)用中的各種使用對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,并且本文中限定的一般原理可以應(yīng)用于廣泛多個(gè)方面。因此,本發(fā)明不旨在限于所呈現(xiàn)的方面,而是符合與本文中所公開(kāi)的原理和新穎特征相一致的最寬范圍。在下面的詳細(xì)說(shuō)明中,為了提供對(duì)本發(fā)明的更全面理解,闡述了大量具體細(xì)節(jié)。然而,本發(fā)明可以在不必須限于這些具體細(xì)節(jié)的情況下被實(shí)踐,這對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的。在其它情況下,已知結(jié)構(gòu)和裝置以框圖形式而不是詳細(xì)地被示出,以便避免使本發(fā)明模糊不清。讀者的注意力在于與本說(shuō)明書同時(shí)提交的并且與本說(shuō)明書一起對(duì)公眾查閱開(kāi)放的全部文獻(xiàn),并且全部這種文獻(xiàn)的內(nèi)容通過(guò)引用被包含在本文中。除非另有明確說(shuō)明,本說(shuō)明書(包括任何所附權(quán)利要求、摘要和附圖)中公開(kāi)的全部特征可以由用作相同、等同或相似目的的另選特征代替。因此,除非另有明確說(shuō)明,所公開(kāi)的每個(gè)特征是通常系列的等同或相似特征的僅一個(gè)示例。此外,權(quán)利要求中的沒(méi)有明確陳述用于執(zhí)行指定功能的“裝置”或者用于執(zhí)行特定功能的“步驟”的任何元件將不會(huì)如35U.S.C.112章節(jié)第6款中規(guī)定的“裝置”或“步驟”條款那樣進(jìn)行解釋。特別地,在本文中的權(quán)利要求中使用“步驟”或“動(dòng)作”并不旨在引用35U.S.C.112章節(jié)第6款的規(guī)定。在詳細(xì)描述本發(fā)明之前,首先提供所引用文獻(xiàn)的列表。接下來(lái),提供本發(fā)明的各個(gè)主要方面的描述。隨后,介紹為讀者提供了本發(fā)明的一般理解。最后,提供本發(fā)明的各種實(shí)施方式的具體細(xì)節(jié),以給出具體方面的理解。(1)所結(jié)合的參考文獻(xiàn)的列表貫穿本申請(qǐng)引用了如下參考文獻(xiàn)。為了清楚和方便起見(jiàn),參考文獻(xiàn)作為對(duì)讀者的中心資源而在本文中列出。下面的參考文獻(xiàn)通過(guò)引用被包含在本文中,如同在本文中完全陳述一樣。通過(guò)引用相應(yīng)參考文獻(xiàn)標(biāo)號(hào),將參考文獻(xiàn)引用在本申請(qǐng)中。1.AllgowerZ.Nonlinearmodelpredictivecontrol.ProgressinSystemsTheory26.Birkhauser,2000.2.VapnikVN.Thenatureofstatisticallearningtheory.Springer-Verlag,NewYork,1995.3.RasmussenCE,WilliamsCKI.GaussianProcessesforMachineLearning.MITPress,2006.4.DiamantarasKI,KungSY.PrincipalComponentNeuralNetworks.JohnWiley&Sons,NewYork,1996.5.OjaE.Asimplifiedneuronmodelasaprincipalcomponentanalyzer.JournalofMathematicalBiology15(3):267-273,1982.6.OuyangS,BaoZ,LiaoGS.Robustrecursiveleastsquareslearningalgorithmforprincipalcomponentanalysis.IEEETransactionsonNeuralNetworks11(1):215-221,2000.7.Hoffmann,H.,Schaal,S.,andVijayakumar,S.Localdimensionalityreductionfornon-parametricregression.NeuralProcessingLetters,Vol.29,pp.109-131,2009.8.ElizondoE,BirkenheadR,GongoraM,etal.Analysisandtestofefficientmethodsforbuildingrecursivedeterministicperceptronneuralnetworks.NeuralNetworks,Vol.20,pp.1095-1108,2007.9.Fahlman,SandLebiere,C.Thecascade-correlationlearningarchitecture.InAdv.inNeuralInfo.ProcessingSystemsII,pp.524-532.SanFrancisco,CA:MorganKaufmann,1990.10.Frean,M.Theupstartalgorithm:Amethodforconstructingandtrainingfeedforwardneuralnetworks.NeuralComputation,2,198-209,1990.11.IslamM,SattarA,AminF,YaoX,andMuraseK.ANewAdaptiveMergingandGrowingAlgorithmforDesigningArtificialNeuralNetworks.IEEETransactionsonSystems,Man,andCybernetics,PartB:Cybernetics,Vol.39,pp.705-722,2009.12.Martin,C.E.AdaptingSwarmIntelligenceForTheSelf-AssemblyAndOptimizationOfNetworks(Dissertation).CollegePark,MD:UniversityofMaryland.2011.13.Gruau,F.,Whitley,D.,andPyeatt,L.Acomparisonbetweencellularencodinganddirectencodingforgeneticneuralnetworks.In\emph{Proceedingsofthe1stannualconferenceongeneticprogramming(GECCO'96)}(pp.81-89).Cambridge,MA:MITPress.1996.14.Jiang,F.,Berry,H.andSchoenauer,M.Supervisedandevolutionarylearningofechostatenetworks.\emph{LectureNotesinComputerScience(includingsubseriesLectureNotesinArtificialIntelligenceandLectureNotesinBioinformatics)},5199,215-224,2008.15.Wieland,A.Evolvingneuralnetworkcontrollersforunstablesystems.In\emph{Proceedingsoftheinternationaljointconferenceonneuralnetworks(IJCNN'91)},vol.2,(pp.667-673).NewYork:IEEE.1991.(2)主要方面本發(fā)明具有三個(gè)“主要”方面。第一個(gè)方面是控制動(dòng)力系統(tǒng)而不管動(dòng)力學(xué)的不期望變化的適應(yīng)性控制系統(tǒng)(被稱為“神經(jīng)模型預(yù)測(cè)控制(MPC)控制器”)。該系統(tǒng)通常是計(jì)算機(jī)系統(tǒng)操作軟件的形式,或者是“硬編碼”指令集的形式。該系統(tǒng)可以被結(jié)合到提供不同功能的各種裝置中。第二個(gè)主要方面是使用數(shù)據(jù)處理系統(tǒng)(計(jì)算機(jī))操作的通常為軟件形式的方法。該方法將算法或處理實(shí)現(xiàn)為編程語(yǔ)言并執(zhí)行所列出的操作。第三個(gè)主要方面是一種計(jì)算機(jī)程序產(chǎn)品(例如,將來(lái)自該方法的邏輯編譯或者直接實(shí)現(xiàn)為適于在所選硬件上執(zhí)行的形式)。該計(jì)算機(jī)程序產(chǎn)品通常表示存儲(chǔ)在諸如光學(xué)存儲(chǔ)裝置(例如壓縮盤(CD)或數(shù)字通用盤(DVD))或者諸如軟盤或磁帶的磁性存儲(chǔ)裝置的非暫時(shí)性計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)可讀指令。另外,計(jì)算機(jī)可讀媒體的非限制性示例包括硬盤、只讀存儲(chǔ)器(ROM)和閃存式存儲(chǔ)器。下面將更加詳細(xì)地描述這些方面。在圖1中提供了描述一些實(shí)施方式的系統(tǒng)(即,計(jì)算機(jī)系統(tǒng)100)的示例的框圖。計(jì)算機(jī)系統(tǒng)100被配置為執(zhí)行與程序或算法相關(guān)聯(lián)的計(jì)算、處理、操作和/或功能。一方面,本文中所論述的特定處理和步驟被實(shí)現(xiàn)為存在于計(jì)算機(jī)可讀存儲(chǔ)器單元內(nèi)并且由計(jì)算機(jī)系統(tǒng)100的一個(gè)或更多個(gè)處理器來(lái)執(zhí)行的一系列指令(例如,軟件程序)。當(dāng)被執(zhí)行時(shí),指令使得計(jì)算機(jī)系統(tǒng)100執(zhí)行特定動(dòng)作并表現(xiàn)出特定行為,例如本文中所描述的。計(jì)算機(jī)系統(tǒng)100可以包括被配置為傳輸信息的地址/數(shù)據(jù)總線102。另外,諸如處理器104(或多個(gè)處理器)的一個(gè)或更多個(gè)數(shù)據(jù)處理單元與地址/數(shù)據(jù)總線102耦接。處理器104被配置為處理信息和指令。一方面,處理器104是微處理器。另選地,處理器104可以是不同類型的處理器,例如并行處理器或現(xiàn)場(chǎng)可編程門陣列。計(jì)算機(jī)系統(tǒng)100被配置為利用一個(gè)或更多個(gè)數(shù)據(jù)存儲(chǔ)單元。計(jì)算機(jī)系統(tǒng)100可以包括與地址/數(shù)據(jù)總線102耦接的易失性存儲(chǔ)器單元106(例如,隨機(jī)存取存儲(chǔ)器(“RAM”)、靜態(tài)RAM、動(dòng)態(tài)RAM等),其中,易失性存儲(chǔ)器單元106被配置為存儲(chǔ)針對(duì)處理器104的信息和指令。計(jì)算機(jī)系統(tǒng)100還可以包括與地址/數(shù)據(jù)總線102耦接的非暫時(shí)性存儲(chǔ)器單元108(例如,只讀存儲(chǔ)器(“ROM”)、可編程ROM(“PROM”)、可擦除可編程ROM(“EPROM”)、電可擦除可編程ROM(“EEPROM”)、閃速存儲(chǔ)器等),其中,非暫時(shí)性存儲(chǔ)器單元108被配置為存儲(chǔ)針對(duì)處理器104的靜態(tài)信息和指令。另選地,計(jì)算機(jī)系統(tǒng)100可以諸如在“云”計(jì)算中執(zhí)行從在線數(shù)據(jù)存儲(chǔ)單元中檢索到的指令。一方面,計(jì)算機(jī)系統(tǒng)100還可以包括與地址/數(shù)據(jù)總線102耦接的一個(gè)或更多個(gè)接口,諸如接口110。一個(gè)或更多個(gè)接口被配置為使得計(jì)算機(jī)系統(tǒng)100能夠與其它電子裝置和計(jì)算機(jī)系統(tǒng)相連接。通過(guò)一個(gè)或更多個(gè)接口實(shí)現(xiàn)的通信接口可以包括有線(例如,串行電纜、調(diào)制解調(diào)器、網(wǎng)絡(luò)適配器等)和/或無(wú)線(例如,無(wú)線調(diào)制解調(diào)器、無(wú)線網(wǎng)絡(luò)適配器等)通信技術(shù)。一方面,計(jì)算機(jī)系統(tǒng)100可以包括與地址/數(shù)據(jù)總線102耦接的輸入裝置112,其中,輸入裝置112被配置為向處理器100傳輸信息和命令選擇。根據(jù)一方面,輸入裝置112是字母數(shù)字輸入裝置,諸如鍵盤,其可以包括字母數(shù)字鍵和/或功能鍵。另選地,輸入裝置112可以是除了字母數(shù)字輸入裝置以外的輸入裝置。一方面,計(jì)算機(jī)系統(tǒng)100可以包括與地址/數(shù)據(jù)總線102耦接的光標(biāo)控制裝置114,其中,光標(biāo)控制裝置114被配置為向處理器100傳輸用戶輸入信息和/或命令選擇。一方面,光標(biāo)控制裝置114使用諸如鼠標(biāo)、跟蹤球、跟蹤板、光學(xué)跟蹤裝置或觸摸屏的裝置來(lái)實(shí)現(xiàn)。盡管前面提到過(guò),在一方面,光標(biāo)控制裝置114諸如響應(yīng)于與輸入裝置112相關(guān)聯(lián)的特殊鍵和鍵序列命令的使用,經(jīng)由來(lái)自輸入裝置112的輸入被定向和/或激活。在另選方面,光標(biāo)控制裝置114被配置為通過(guò)語(yǔ)音命令被定向或引導(dǎo)。一方面,計(jì)算機(jī)系統(tǒng)100還可以包括與地址/數(shù)據(jù)總線102耦接的一個(gè)或更多個(gè)可選計(jì)算機(jī)可用數(shù)據(jù)存儲(chǔ)裝置,諸如存儲(chǔ)裝置116。存儲(chǔ)裝置116被配置為存儲(chǔ)信息和/或計(jì)算機(jī)可執(zhí)行指令。一方面,存儲(chǔ)裝置116是諸如磁性或光學(xué)磁盤驅(qū)動(dòng)器(例如,硬盤驅(qū)動(dòng)器“HDD”、軟盤、光盤只讀存儲(chǔ)器(“CD-ROM”)、數(shù)字通用盤(“DVD”))。根據(jù)一方面,顯示裝置118與地址/數(shù)據(jù)總線102耦接,其中,顯示裝置118被配置為顯示視頻和/或圖形。一方面,顯示裝置118可以包括陰極射線管(“CRT”)、液晶顯示器(“LCD”)、場(chǎng)發(fā)射顯示器(“FED”)、等離子體顯示器、或者適用于顯示視頻和/或圖形圖像和用戶可識(shí)別的字母數(shù)字字符的任何其它顯示裝置。本文中提出的計(jì)算機(jī)系統(tǒng)100是根據(jù)一方面的示例性計(jì)算環(huán)境。然而,計(jì)算機(jī)系統(tǒng)100的非限制性示例不嚴(yán)格限于計(jì)算機(jī)系統(tǒng)。例如,一方面提供計(jì)算機(jī)系統(tǒng)100表示可以根據(jù)本文中描述的各個(gè)方面使用的一種類型的數(shù)據(jù)處理分析。此外,還可以實(shí)現(xiàn)其它計(jì)算系統(tǒng)。確實(shí),當(dāng)前技術(shù)的精神和范圍不限于任何單一數(shù)據(jù)處理環(huán)境。因此,一方面,當(dāng)前技術(shù)的各個(gè)方面的一個(gè)或更多個(gè)操作使用諸如程序模塊的由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令來(lái)控制或?qū)崿F(xiàn)。在一種實(shí)現(xiàn)中,這種程序模塊包括被配置為執(zhí)行特殊任務(wù)或?qū)崿F(xiàn)特殊抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件和/或數(shù)據(jù)結(jié)構(gòu)。另外,一方面提供通過(guò)利用一種或更多種分布式計(jì)算環(huán)境來(lái)實(shí)現(xiàn)當(dāng)前技術(shù)的一個(gè)或更多個(gè)方面,諸如由通過(guò)通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理裝置來(lái)執(zhí)行任務(wù)的環(huán)境,或者諸如各種程序模塊均位于包括存儲(chǔ)器存儲(chǔ)裝置的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)媒體中的環(huán)境。例如,通常來(lái)說(shuō),該系統(tǒng)能夠被實(shí)現(xiàn)為被配置為執(zhí)行所列操作的一個(gè)或更多個(gè)非暫時(shí)性電子處理器。這種非暫時(shí)性電子處理器的一個(gè)示例是在其上編碼有可執(zhí)行指令以執(zhí)行所列操作的計(jì)算機(jī)處理器和存儲(chǔ)器。作為其它示例,非暫時(shí)性電子處理器可以是基于硬件的(物理)神經(jīng)網(wǎng)絡(luò)、或者在專用處理硬件(諸如圖形處理器單元(GPU)或現(xiàn)場(chǎng)可編程門陣列(FPGA))中實(shí)現(xiàn)的神經(jīng)網(wǎng)絡(luò)。在圖2中示出了具體實(shí)現(xiàn)本發(fā)明的一方面的計(jì)算機(jī)程序產(chǎn)品(即,存儲(chǔ)裝置)的示意圖。計(jì)算機(jī)程序產(chǎn)品被示出為軟盤200或諸如CD或DVD的光盤202。然而,如前所述,計(jì)算機(jī)程序產(chǎn)品通常表示存儲(chǔ)在任何可兼容的非暫時(shí)性計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)可讀指令。如關(guān)于本發(fā)明使用的術(shù)語(yǔ)“指令”通常指示要在計(jì)算機(jī)上執(zhí)行的一組操作,并且可以表示多段整個(gè)程序或者單獨(dú)可分離的軟件模塊?!爸噶睢钡姆窍拗菩允纠ㄓ?jì)算機(jī)程序代碼(源代碼或目標(biāo)代碼)和“硬編碼”電子設(shè)備(即,編碼到計(jì)算機(jī)芯片中的計(jì)算機(jī)操作)?!爸噶睢北淮鎯?chǔ)在任何非暫時(shí)性計(jì)算機(jī)可讀介質(zhì)上,諸如在計(jì)算機(jī)的存儲(chǔ)器中或者在軟盤、CD-ROM和閃存驅(qū)動(dòng)器上。在兩種中的任何一種情況下,指令都被編碼到非暫時(shí)性計(jì)算機(jī)可讀介質(zhì)上。(3)介紹本公開(kāi)提供一種控制動(dòng)力系統(tǒng)而不管動(dòng)力學(xué)的不期望變化的控制器適配器(在本文中被稱為“神經(jīng)模型預(yù)測(cè)控制(MPC)控制器”)。系統(tǒng)可能是自主和/或用戶控制的汽車或飛機(jī)或其子組件(或者任何其它自主系統(tǒng))。換句話說(shuō),自主和/或用戶可控制系統(tǒng)是能夠操作以用于執(zhí)行各種任務(wù)(諸如飛行(在飛機(jī)的情況下)、或駕駛(在汽車的情況下)、或者抓取(在機(jī)器人的情況下))的設(shè)備??刂破魇潜O(jiān)測(cè)設(shè)備的行為并計(jì)算影響設(shè)備的行為的控制命令的軟件和相關(guān)硬件。這里,不期望變化是不正常設(shè)備行為。正常設(shè)備行為例如是期望的且能夠被預(yù)編程到控制器中的行為。相反,本公開(kāi)針對(duì)的是由于故障或者設(shè)備的周圍環(huán)境的不期望變化(例如,光滑路面)而導(dǎo)致的設(shè)備的變化。一些實(shí)施方式的獨(dú)特方面在于,神經(jīng)MPC控制器與系統(tǒng)動(dòng)力學(xué)的前向模塊并行地使用僅具有幾個(gè)隱藏神經(jīng)元的神經(jīng)網(wǎng)絡(luò),并且將該神經(jīng)網(wǎng)絡(luò)與前向模塊二者整合到模型預(yù)測(cè)控制框架內(nèi)。神經(jīng)MPC控制器的優(yōu)點(diǎn)在于其使得自主系統(tǒng)(即,設(shè)備)能夠快速地適應(yīng)系統(tǒng)動(dòng)力學(xué)的變化。這些變化可能由例如不期望的故障等引起。對(duì)于一些實(shí)施方式,由于自主汽車或飛機(jī)在碰撞發(fā)生之前可能僅有幾秒鐘來(lái)作出反應(yīng),因此適應(yīng)必須快速。神經(jīng)MPC控制器能夠利用任何自主系統(tǒng)(包括自主飛機(jī)和汽車等)來(lái)實(shí)現(xiàn)。(4)各種實(shí)施方式的具體細(xì)節(jié)(4.1)系統(tǒng)架構(gòu)針對(duì)彈性控制的本發(fā)明(其被稱為神經(jīng)模型預(yù)測(cè)控制(MPC)控制器)允許受損設(shè)備的快速恢復(fù)或延緩故障。假設(shè)設(shè)備擁有控制器,控制器具有在正常操作條件下進(jìn)行對(duì)該設(shè)備的良好控制的適應(yīng)性參數(shù)。該控制器被稱為基本控制器。然而,一旦設(shè)備受損并且其參數(shù)變化,就需要能夠快速適應(yīng)修改的控制器架構(gòu)。圖3是神經(jīng)MPC控制器300的系統(tǒng)表示,該神經(jīng)MPC控制器300包括三個(gè)主要組件:靜態(tài)前向模塊302、適應(yīng)性基本控制器304和適應(yīng)性前向模塊校正器306。在接收到設(shè)備310的當(dāng)前狀態(tài)308作為輸入之后,神經(jīng)MPC控制器300在閉環(huán)中進(jìn)行操作,以生成包括多對(duì)控制信號(hào)316和所得到的預(yù)測(cè)設(shè)備狀態(tài)314的序列。該處理被重復(fù)預(yù)定義次數(shù)以生成一組信號(hào)狀態(tài)序列,每次都以最新測(cè)量的設(shè)備狀態(tài)308和隨機(jī)修改的基本控制器304策略開(kāi)始。如上所述,該架構(gòu)包括適應(yīng)性基本控制器304、靜態(tài)前向模塊302和適應(yīng)性前向模塊校正器306。基本控制器304接受設(shè)備狀態(tài)308的測(cè)量結(jié)果作為輸入,并且作為響應(yīng),生成控制信號(hào)316。前向模塊302接受設(shè)備狀態(tài)308的測(cè)量結(jié)果以及控制信號(hào)316作為輸入,并且產(chǎn)生下一個(gè)設(shè)備狀態(tài)的前向模塊預(yù)測(cè)312。前向模塊校正器306接受與前向模塊相同的輸入(即,設(shè)備狀態(tài)308的測(cè)量結(jié)果以及控制信號(hào)316),并且作為響應(yīng),生成對(duì)前向模塊輸出(即,前向模塊預(yù)測(cè)312)的附加校正318,從而生成預(yù)測(cè)設(shè)備狀態(tài)314。應(yīng)當(dāng)理解,能夠采用基本控制器304和前向模塊校正器306的任何合適實(shí)施方式,其非限制性示例包括使用神經(jīng)網(wǎng)絡(luò),這是因?yàn)樯窠?jīng)網(wǎng)絡(luò)允許簡(jiǎn)單、健壯且易于訓(xùn)練的實(shí)現(xiàn)。神經(jīng)MPC控制器300接收設(shè)備310的當(dāng)前狀態(tài)308的測(cè)量結(jié)果作為輸入,并且作為響應(yīng),其組件(基本控制器304、前向模塊302和前向模塊校正器306)一起工作以生成設(shè)備控制信號(hào)320。具體地,在控制處理的每個(gè)時(shí)間步幅期間,基本控制器304、前向模塊302和前向模塊校正器306在閉環(huán)中操作達(dá)預(yù)定時(shí)間段,以生成包括多對(duì)控制信號(hào)316和所得到的預(yù)測(cè)設(shè)備狀態(tài)314的序列。這些序列被用來(lái)使基本控制器304適應(yīng)并確定由神經(jīng)MPC控制器300生成的設(shè)備控制信號(hào)320。當(dāng)控制改變的/受損的設(shè)備時(shí),神經(jīng)MPC控制器300通過(guò)首先接受設(shè)備310的當(dāng)前狀態(tài)308的測(cè)量結(jié)果作為輸入來(lái)進(jìn)行操作。該初始測(cè)量結(jié)果被饋送到基本控制器304中,作為響應(yīng),該基本控制器304生成控制信號(hào)316。前向模塊302和前向模塊校正器306二者都接受設(shè)備310的測(cè)量狀態(tài)308以及控制信號(hào)316作為輸入,并且一起生成設(shè)備的下一個(gè)狀態(tài)的預(yù)測(cè)(即,預(yù)測(cè)設(shè)備狀態(tài)314)。此時(shí),神經(jīng)MPC控制器300在開(kāi)環(huán)中操作以生成多對(duì)控制信號(hào)316和相應(yīng)預(yù)測(cè)設(shè)備狀態(tài)314的為長(zhǎng)度L的序列。基本控制器304的權(quán)重被隨機(jī)地修改(下面進(jìn)行解釋)以創(chuàng)建新控制策略,并且再次從設(shè)備310的最新測(cè)量狀態(tài)308開(kāi)始,生成為長(zhǎng)度L的新控制序列。重復(fù)該處理,直至已經(jīng)生成Ns個(gè)控制序列為止,其中每個(gè)序列使用唯一隨機(jī)生成的基本控制器304生成。然后Ns個(gè)控制序列被用來(lái)確定應(yīng)用于設(shè)備310的下一個(gè)設(shè)備控制信號(hào)320、以及接下來(lái)將使用隨機(jī)生成的基本控制器304中的哪一個(gè)。具體地,假設(shè)存在在設(shè)備狀態(tài)的空間上限定的代價(jià)函數(shù),其指定任何給定狀態(tài)的質(zhì)量。這種代價(jià)函數(shù)的非限制性示例是位置和速度值從其目標(biāo)值偏離,例如對(duì)于雙桿平衡問(wèn)題,代價(jià)可以被限定如下:其中,x是車體(cart)位置,x\dot是車體速度,ta1是桿#1的角位置,ta1\dot是桿#1的角速度,以及指數(shù)2代表?xiàng)U#2變量。通過(guò)在Ns個(gè)控制序列中的每個(gè)控制序列中的最終狀態(tài)當(dāng)中找到使誤差函數(shù)最小化的狀態(tài),并且然后從最小化序列中選擇第一設(shè)備控制信號(hào)320來(lái)確定下一個(gè)設(shè)備控制信號(hào)320。此外,生成最小化序列的任一個(gè)基本控制器304都是在下一個(gè)時(shí)間步幅中使用的控制器。(4.2)系統(tǒng)適應(yīng)由于設(shè)備310的參數(shù)的變化,原始基本控制器304不再完全準(zhǔn)確。然而,通常其包含的一些信息將推廣到新設(shè)備,并且因此,期望通過(guò)以使用這種可推廣信息在新有效控制策略上快速收斂(converge)的方式來(lái)搜索通過(guò)基本控制器304實(shí)現(xiàn)的控制策略空間。為此,神經(jīng)MPC控制器300實(shí)現(xiàn)簡(jiǎn)單但有效的搜索策略,以用于修改基本控制器304的權(quán)重(策略)。在給定時(shí)間步幅,并且針對(duì)Ni個(gè)序列中的每個(gè),基本控制器304的每個(gè)權(quán)重wi根據(jù)如下公式被隨機(jī)地修改:wi←wi+0.1|wi|N(0,1),其中,N(0,1)是具有零均值和單位方差的正態(tài)分布。這樣,在控制處理的每個(gè)時(shí)間步幅,針對(duì)更好的控制策略搜索基本控制器304的權(quán)重空間的局部區(qū)域。該搜索處理的局部特性有助于保存在基本控制器304中表示的可推廣信息,同時(shí)仍然足夠靈活以在必要時(shí)對(duì)其權(quán)重做出充分改變。然而,僅使基本控制器304適應(yīng)是不足夠的。必須使前向模塊302適應(yīng)以校正其缺陷,否則被生成以使基本控制器304適應(yīng)并選擇下一個(gè)設(shè)備控制信號(hào)320的假設(shè)信號(hào)狀態(tài)序列(即,元素316和314)將不足夠準(zhǔn)確。在神經(jīng)MPC控制器300中,原始前向模塊302的參數(shù)是固定的;相反,使具有單個(gè)隱藏層的簡(jiǎn)單前饋網(wǎng)絡(luò)的權(quán)重適應(yīng)。該前向模塊校正器306網(wǎng)絡(luò)提供對(duì)前向模塊302的輸出的附加校正。例如,使vs(t)為設(shè)備310在時(shí)間t時(shí)的所測(cè)量狀態(tài)308,使Fc(t)為從基本控制器304得到的控制信號(hào)316,使為前向模塊302,以及使為前向模塊校正器306網(wǎng)絡(luò)的輸出318。給定vs(t)和Fc(t),前向模塊302被用來(lái)計(jì)算預(yù)測(cè)的下一個(gè)設(shè)備狀態(tài)314。實(shí)現(xiàn)前向模塊校正器的非限制性示例是具有一個(gè)隱藏層和在神經(jīng)元之間的加權(quán)連接的多層感知器。使為真,觀察下一個(gè)設(shè)備狀態(tài)。前向模塊校正器306網(wǎng)絡(luò)被訓(xùn)練以校正前向模塊302中的誤差。從這個(gè)要求看,誤差函數(shù)被限定如下:其中,是校正器網(wǎng)絡(luò)的權(quán)重。在每個(gè)時(shí)間步幅,關(guān)于計(jì)算的梯度,并且將梯度下降的一個(gè)步幅(step)應(yīng)用于前向模塊校正器306網(wǎng)絡(luò)的權(quán)重。由于神經(jīng)MPC控制器300嘗試控制受損設(shè)備,前向模塊校正器306和基本控制器304同時(shí)適應(yīng)設(shè)備的新操作參數(shù)。(4.3)示例性實(shí)現(xiàn)-雙桿平衡問(wèn)題為了進(jìn)一步理解,下面描述應(yīng)用于雙桿平衡問(wèn)題的示例性實(shí)現(xiàn)。應(yīng)當(dāng)理解,下面描述的實(shí)現(xiàn)僅用于例示性目的,并且本發(fā)明不旨在限于此。在該示例性實(shí)現(xiàn)中,神經(jīng)MPC控制器300被用作針對(duì)雙桿平衡問(wèn)題的彈性控制器。該問(wèn)題被選擇是因?yàn)槠湓诳刂祁I(lǐng)域中是具有挑戰(zhàn)性且廣泛使用的基準(zhǔn)測(cè)試任務(wù)。如圖4中所示,雙桿平衡問(wèn)題是經(jīng)典的基本測(cè)試控制問(wèn)題,特別是對(duì)于神經(jīng)網(wǎng)絡(luò)控制器來(lái)說(shuō)(參見(jiàn)參考文獻(xiàn)13至15)。任務(wù)是使被鉸接到沿著有限長(zhǎng)度的軌道406移動(dòng)的車體404的頂部的具有不同長(zhǎng)度的兩個(gè)桿400和402平衡??刂破髟噲D通過(guò)在與軌道406平行的方向上向車體404的任一側(cè)施加力來(lái)將桿400和402保持為直立。為此,控制器必須將車體404保持在離軌道406的中心指定距離內(nèi),并且其必須將每個(gè)桿400和402都保持在與垂直的規(guī)定角度極限之內(nèi)。該系統(tǒng)的狀態(tài)通過(guò)車體404相對(duì)于軌道406的中心的位置x、較大桿402和較小桿400相對(duì)于垂直的角位置θ1和θ2來(lái)限定。控制力Fc在與軌道406平行的方向上被施加到車體404側(cè)。在該示例中并且如圖5中所示,神經(jīng)MPC控制器300被實(shí)現(xiàn)為用Java書寫的模擬環(huán)境。如圖5和圖6中所示,控制車擺系統(tǒng)的動(dòng)力學(xué)的常微分方程600的系統(tǒng)構(gòu)成前向模塊302?;究刂破?04被實(shí)現(xiàn)為具有6個(gè)輸入節(jié)點(diǎn)、具有雙曲正切傳遞函數(shù)的10個(gè)隱藏節(jié)點(diǎn)、具有雙曲正切傳遞函數(shù)的1個(gè)輸出節(jié)點(diǎn)、以及不具有偏差單元的前饋神經(jīng)網(wǎng)絡(luò)。使用已知為通過(guò)自組裝的群智能網(wǎng)絡(luò)優(yōu)化(SINOSA)的粒子群優(yōu)化和自組裝的組合來(lái)對(duì)基本控制器304進(jìn)行離線訓(xùn)練(參見(jiàn)例如參考文獻(xiàn)12)。使用50個(gè)控制序列(Ns=50)使基本控制器304適應(yīng),每個(gè)控制序列的長(zhǎng)度L=50。用來(lái)確定“獲勝”控制序列的誤差函數(shù)是車體404以及桿400和402的位置和速度的平方的總和。該誤差函數(shù)指定車擺系統(tǒng)的理想狀態(tài)為以下情況:車體404位于軌道406的中心,兩個(gè)桿400和402完全直立,并且不存在移動(dòng)。前向模塊校正器306被實(shí)現(xiàn)為具有7個(gè)輸入節(jié)點(diǎn)、6個(gè)線性輸出節(jié)點(diǎn)且不具有偏差單元的前饋神經(jīng)網(wǎng)絡(luò)。嘗試隱藏層中的各種數(shù)量的節(jié)點(diǎn),其都具有雙曲正切傳遞函數(shù)。使用具有學(xué)習(xí)率為0.05的基本梯度下降訓(xùn)練前向模塊校正器306。在每次試驗(yàn)開(kāi)始,全部權(quán)重被隨機(jī)初始化為間隔為[-1,1]的值,并且輸出權(quán)重通過(guò)0.004/Nh因子被按比例縮放,其中,Nh是隱藏層中的神經(jīng)元的數(shù)量。進(jìn)行這種按比例縮放以將前向模塊校正器306的初始影響限制在前向模塊302預(yù)測(cè),但是0.05的相當(dāng)大學(xué)習(xí)率確保了其能夠快速適應(yīng)以校正前向模塊302中的不準(zhǔn)確。如上所述,提供雙桿平衡實(shí)現(xiàn)作為合適實(shí)現(xiàn)的非限制性示例,但是本文中描述的系統(tǒng)不旨在限于這種實(shí)現(xiàn)。例如,系統(tǒng)能夠應(yīng)用于自主系統(tǒng)或非自主系統(tǒng)以維持穩(wěn)定性,諸如應(yīng)用于遠(yuǎn)程操作的無(wú)人機(jī)或者由人駕駛的汽車。在關(guān)于車擺系統(tǒng)的示例性實(shí)現(xiàn)中,基本控制器通過(guò)神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)?;叵肫鸹究刂破髂軌蛟谡7鞘軗p操作條件下控制車體(或其它系統(tǒng))。然而,基本控制器可以僅簡(jiǎn)單地是控制系統(tǒng)的人類。進(jìn)一步地,車擺示例提供用于如下平衡系統(tǒng):受控的參數(shù)是基于通過(guò)針對(duì)車體的有限范圍約束被施加到車體的力的兩個(gè)桿的位置。然而,該系統(tǒng)可以被應(yīng)用以對(duì)任何合適參數(shù)進(jìn)行操作和控制,諸如維持遭受損害的正在飛行的無(wú)人機(jī)的上升和/或取向,或者通過(guò)ABS控制維持車輛取向以用于維持直線行駛或者過(guò)彎道。該系統(tǒng)被設(shè)計(jì)為延伸到那些物理系統(tǒng)。在那些情況下,一種情況是具有被設(shè)計(jì)用于在正?;驑?biāo)準(zhǔn)操作條件下控制那些特殊系統(tǒng)的基本控制器,并且該系統(tǒng)將在一旦該系統(tǒng)已經(jīng)遭受損害或者經(jīng)歷一些類型的不期望修改時(shí)應(yīng)用。因此,設(shè)備可以是例如輪式或履帶式車輛、具有一個(gè)或更多個(gè)轉(zhuǎn)子和/或機(jī)翼的無(wú)人機(jī)等。該設(shè)備還可以是位置或移動(dòng)能夠在機(jī)器內(nèi)(例如在制造設(shè)備中或者有腿移動(dòng)中)被控制的任何物體。這種可控設(shè)備參數(shù)包括如下各項(xiàng)中的一個(gè)或更多個(gè):線性或角位置(例如,通過(guò)致動(dòng)器)或速度(例如,通過(guò)控制電機(jī)或推進(jìn)裝置)、或者行駛路徑(例如,通過(guò)控制電機(jī)(推進(jìn))以及轉(zhuǎn)向或方向控制)。(4.3.1)實(shí)驗(yàn)結(jié)果下面提供測(cè)試神經(jīng)MPC控制器的實(shí)驗(yàn)的結(jié)果。全部如下實(shí)驗(yàn)都利用相同基本控制器開(kāi)始,該基本控制器被訓(xùn)練以當(dāng)其參數(shù)被設(shè)置為最常用值時(shí)對(duì)車擺系統(tǒng)進(jìn)行控制(參見(jiàn)參考文獻(xiàn)14,車擺系統(tǒng)參數(shù)值的示例)。如在大多數(shù)的過(guò)去工作中,使用步幅大小為0.01秒的四階龍格-庫(kù)塔(Runge-Kutta)方法來(lái)數(shù)字地求解控制系統(tǒng)的動(dòng)力學(xué)的方程。結(jié)果,使用相同方法對(duì)原始前向模塊進(jìn)行整合。在模擬期間,每隔0.02秒將車擺系統(tǒng)的狀態(tài)給予控制器,此時(shí)控制力被更新?;究刂破髂軌虮3治词軗p車擺系統(tǒng)接近平衡狀態(tài)。為了模擬突然損害,將較大桿的長(zhǎng)度和質(zhì)量減小,車擺系統(tǒng)的狀態(tài)被擾亂而遠(yuǎn)離兩個(gè)桿都是直立的、車體位于軌道的中心并且沒(méi)有移動(dòng)的平衡狀態(tài)。神經(jīng)MPC控制器控制車擺系統(tǒng)的能力在六個(gè)不同損害等級(jí)被測(cè)試:較大桿的長(zhǎng)度和質(zhì)量減小25%、30%、35%、40%、45%和50%。車擺系統(tǒng)的初始狀態(tài)被隨機(jī)地提取并且獨(dú)立于均勻概率分布x,θ1,θ2∈U[-0.01,0.01]和這里,x是車體的位置,θ1和θ2是桿的位置,并且是各自速度。較大桿的長(zhǎng)度減小越多,從損害中恢復(fù)就越困難。確定損害等級(jí)小于25%,即使與平衡狀態(tài)的偏差更大,原始基本控制器也能夠防止系統(tǒng)出現(xiàn)故障。圖7至圖9示出了在30%損害之后重新獲得對(duì)車擺系統(tǒng)的控制的使用具有3個(gè)隱藏神經(jīng)元的前向模塊校正器網(wǎng)絡(luò)的神經(jīng)MPC控制器的示例性結(jié)果。圖7示出在損害已經(jīng)發(fā)生之后車體和桿的位置。在初始過(guò)渡周期之后,神經(jīng)MPC控制器充分學(xué)習(xí)了受損系統(tǒng)的新行為并且能夠找到車體和桿的中心。車體位置以米為單位,桿位置以弧度為單位。另選地,圖8示出在損害已經(jīng)發(fā)生之后車體和桿的速度。再次,在初始過(guò)渡周期之后,神經(jīng)MPC控制器充分學(xué)習(xí)了受損系統(tǒng)的新行為并且能夠使其動(dòng)力穩(wěn)定。車體速度以為單位,并且桿速度以為單位。圖9示出通過(guò)神經(jīng)MPC控制器預(yù)測(cè)的車擺系統(tǒng)的狀態(tài)的誤差。前向模塊校正器網(wǎng)絡(luò)快速地學(xué)習(xí)以校正前向模塊中的不準(zhǔn)確,從而允許神經(jīng)MPC控制器重新獲得對(duì)系統(tǒng)的控制。誤差被限定為是通過(guò)神經(jīng)MPC控制器預(yù)測(cè)的下一個(gè)狀態(tài)與在下一次觀察到的實(shí)際狀態(tài)之差的范數(shù)(norm)。在圖7和圖8中,能夠看到車體和桿的位置和速度在損害已經(jīng)發(fā)生之后的前兩秒時(shí)間期間明顯發(fā)生變化,但是由于神經(jīng)MPC控制器適應(yīng)了系統(tǒng)的變化,上述位置和速度快速地朝向零收斂。這種適應(yīng)在圖9中反映,其中,在損害已經(jīng)發(fā)生之后的前兩秒期間,該誤差表現(xiàn)出從零的較大偏離,但是由于前向模塊校正器網(wǎng)絡(luò)學(xué)習(xí)以校正前向模塊中的不準(zhǔn)確,該誤差快速地收斂至零。對(duì)于每個(gè)等級(jí)的損害,利用1個(gè)、2個(gè)、3個(gè)、4個(gè)、5個(gè)、10個(gè)、15個(gè)、20個(gè)、30個(gè)和40個(gè)隱藏神經(jīng)元測(cè)試前向模塊校正器網(wǎng)絡(luò)。對(duì)于每個(gè)等級(jí)的損害和每個(gè)校正器網(wǎng)絡(luò)大小,進(jìn)行200次試驗(yàn),其中每次試驗(yàn)都以車擺系統(tǒng)的不同隨機(jī)選擇的初始狀態(tài)和針對(duì)隨機(jī)數(shù)生成器的唯一種子開(kāi)始。進(jìn)行每次試驗(yàn),直至車擺系統(tǒng)發(fā)生故障或者進(jìn)行了3000個(gè)時(shí)間步幅為止,這等同于3000*0.02s=1分鐘的模擬時(shí)間。例如,圖10示出了當(dāng)在前向模塊校正器網(wǎng)絡(luò)中使用具有3個(gè)或10個(gè)神經(jīng)元的神經(jīng)MPC控制器或者僅使用基本控制器而沒(méi)有前向模型適應(yīng)時(shí),針對(duì)各個(gè)等級(jí)的損害在20秒之后車擺系統(tǒng)保留在成功域中的可能性。圖11和圖12分別示出針對(duì)40秒和60秒生存時(shí)間的相同統(tǒng)計(jì)。在全部三種情況下,神經(jīng)MPC控制器基本上優(yōu)于原始基本控制器。即使在最低等級(jí)的損害下,在原始基本控制器的控制下車擺系統(tǒng)也故障得相當(dāng)快。相反,神經(jīng)MPC控制器通常能夠在較低等級(jí)的損害時(shí)完全重獲對(duì)系統(tǒng)的控制并且在較高等級(jí)的損害時(shí)表現(xiàn)出更長(zhǎng)的生存時(shí)間。此外,3個(gè)隱藏神經(jīng)元和10個(gè)隱藏神經(jīng)元的情況都表現(xiàn)得很好,這表明當(dāng)我們?cè)谠记跋蚰K中發(fā)掘先驗(yàn)給定功能關(guān)系時(shí)能夠使用相對(duì)小的網(wǎng)絡(luò)。當(dāng)在前向模塊校正器網(wǎng)絡(luò)中使用不同數(shù)量的隱藏神經(jīng)元時(shí),對(duì)神經(jīng)MPC控制器的性能進(jìn)行比較。例如,圖13示出了針對(duì)不同校正器網(wǎng)絡(luò)大小的范圍生存達(dá)20秒、40秒和60秒的生存時(shí)間的平均可能性。對(duì)于給定校正器網(wǎng)絡(luò)大小和生存時(shí)間,對(duì)全部六個(gè)等級(jí)的損害取平均值。具有更大校正器網(wǎng)絡(luò)的控制器平均來(lái)說(shuō)性能更好。然而,改進(jìn)開(kāi)始于圍繞10個(gè)隱藏神經(jīng)元的漸近線,并且利用2個(gè)或3個(gè)那么少的隱藏神經(jīng)元獲得良好的結(jié)果。因此,鑒于上述結(jié)果,很顯然神經(jīng)MPC控制器在使動(dòng)力系統(tǒng)的基本控制器快速地適應(yīng)動(dòng)力學(xué)的不期望變化方面是有效的。當(dāng)前第1頁(yè)1 2 3