Research Article

Wind and Payload Disturbance Rejection Control Based on Adaptive Neural Estimators: Application on Quadrotors

Pseudocode 1

Net=configureNet()
Dataset=
For i=1 totoff#Generating the dataset for off-line learning
inputNet=[out1(i-1),… out1(i-n1), out2(i-1),…, outM(i-1)…. outM(i-nM)]
ParM(i)=model(out1(i-1),….., outM(i-1)])
Element=parM(i), inputNet
Dataset=Dataset Element
endFor
Net=offlineTraining(Net, Dataset)
For i=toffto tend#on-line learning
inputNet=[out1(i-1),… out1(i-n1), out2(i-1),…, outM(i-1)…. outM(i-nM)]
ParS(i)=simulate(Net, inputNet)
[out1(i),….., outM(i)]=executeUAV(ParS(i))#Execute UAV + Controller
ParM(i)=model(out1(i-1),….., outM(i-1)])
IfParM(i) then
Element=parM(i), inputNet
Net=onlineTraining(Net, Element)
endIf
endFor