<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>On-line Reinforcement Learning for Tra jectory Following with Unknown Faults</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Insight-Centre for Data Analytics, University College Cork</institution>
          ,
          <addr-line>Cork</addr-line>
          ,
          <country country="IE">Ireland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Reinforcement learning (RL) is a key method for providing robots with appropriate control algorithms. Controller blending is a technique for combining the control output of several controllers. In this article we use on-line RL to learn an optimal blending of controllers for novel faults. Since one cannot anticipate all possible fault states, which are exponential in the number of possible faults, we instead apply learning on the e ects the faults have on the system. We use a quadcopter pathfollowing simulation in the presence of unknown rotor actuator faults for which the system has not been tuned. We empirically demonstrate the e ectiveness of our novel on-line learning framework on a quadcopter trajectory following task with unknown faults, even after a small number of learning cycles. The authors are not aware of any other use of on-line RL for fault tolerant control under unknown faults.</p>
      </abstract>
      <kwd-group>
        <kwd>Reinforcement Learning copter control</kwd>
        <kwd>Fault-tolerant Control</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        One of the most important uses of reinforcement learning (RL) is for controlling
robots, using reinforcement learning control (RLC). It has been shown, e.g., [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]
that RLC can provide a model-free method for learning control of a robot, e.g.,
a quadrotor.
      </p>
      <p>Model-free RLC assumes that the control system starts with no model and
solves the Bellman equation based on running experiments with appropriate
rewards, to create a matrix of values that serves as the model. Although
modelfree RLC can prove accurate, its main disadvantage is a long convergence time.
Since the policy space for robotic interactions can be extremely large, RLC
requires a large number of iterations to achieve convergence. In addition, if the
plant is unstable (as is that of a quadcopter), or safety is an issue, using RLC
can prove di cult in practice.</p>
      <p>The alternative approach is to use model-based RLC, which is also known as
iterative learning control (ILC). ILC re nes the reference or input signals of a
desired maneuver based on data from previous executions. This can be used to
update model parameters or extend an existing model.</p>
      <p>
        We assume that we have modelled the quadcopter with a linear
approximation of the underlying non-linear ight dynamics. Further, we assume that
unmodeled dynamics (in our case, faults) can be represented as linear
multiplicative term to the actuation dynamics. Given planned trajectory inputs uk,
each ILC iteration can be decomposed into two steps: (1) disturbance estimation,
where a Kalman lter computes the current estimate of the disturbance ; and
(2) input update,where we compute an improved quadrotor input, uk+1. Using
this framework, the input can be abstracted at any level; e.g., from robot thrust
and angular velocities [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] to the position commands for trajectory following [3{
5]. Experiments show that few iterations (on the order of 10-20) are needed to
characterize repeatable disturbances and improve tracking performance.
      </p>
      <p>The majority of applications of RL assume that learning is done o -line.
However, there are many situations in which a robot will encounter novel
situations and needs to adapt to those situations. We address that scenario in this
article. In particular, we examine a quadcopter that has been pre-programmed
with a set of controls and uses control blending to operate within a known control
environment. However, for novel scenarios the robot must adapt. We introduce
novel actuator faults into a quadcopter, and use ILC to learn new control laws.</p>
      <p>We have de ned the quadcopter to have a hierarchical control architecture.
The lower-level controllers use PID methods to control each of the quadcopters
three axis of movement. The higher-level controller uses blends of the lower-level
controllers to control ight trajectories. We have pre-de ned a set of control laws
for nominal and fault modes. We then subject the quadcopter to unseen fault
and then allow the quadcopter to repeat the novel conditions for the unseen
faults to learn new high-level control laws.</p>
      <p>This article proposes the rst use of ILC for learning novel fault-tolerant
control laws. We empirically demonstrate that we can learn new controls from
a small number of learning trials.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>This work builds on extensive prior work in RL, fault-tolerant control (FTC)
and Fault Detection and Isolation (FDI).</p>
      <p>
        A signi cant body of work exists for RL for robotics applications, dating
from [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. This work is related to work on trajectory following, e.g., [3{5]. For this
class of application, several instances of learning quadcopter control have been
achieved [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]; however we are not aware of prior work that uses Reinforcement
Learning to learn the optimal blending of controllers and achieve fault tolerant
control.
      </p>
      <p>
        In the area of FTC [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], a signi cant body of work has been developed and
applied to real-world systems. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] presents a recent overview of FTC, and [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]
presents FTC with relation of system safety. Traditional methods for FTC
employ a bank of observers coupled with dedicated controllers, and perform
discrete switching. This approach enables designers to tune the system to dedicated
faults, but the speed of the system hinges on the speed of FDI. More recent
approaches use mixing controllers, e.g., [
        <xref ref-type="bibr" rid="ref10 ref11">10, 11</xref>
        ], which blend the outputs of multiple
controllers and are less reliant on FDI.
      </p>
      <p>
        Fault-Tolerant Control (FTC) can be divided into two types, passive and
active. Passive fault tolerant controllers are designed o -line against prede ned
models for certain operating conditions and have no ability to react to
unanticipated faults. Passive FTC enables fast adaptation to faults, within the prede ned
operating conditions. Active FTC uses on-line data to recon gure the controller
to stabilise the plant. For a comprehensive study between the two approaches
see [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Both active and passive FTC rely on specifying the space of faults
that the system will encounter. For passive FTC, approaches such as blending
of controllers tuned to nominal and failure modes are used to maintain system
stability, e.g., [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Analogously, active FTC can rely on being able to detect
prespeci ed faults, such as using a bank of observers, with each observer tuned to a
particular fault, e.g. [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. For complex systems, it is impossible to pre-specify all
faults, since there are too many fault combinations to consider, and it may be
impossible to know all possible faults a priori. As a consequence, it is imperative
that a system designer understand the space of possible faults and their impact
on a system. Very little work has been conducted on exploring the space of faults
and their impact on active vs passive FTC.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Reinforcement Learning</title>
      <p>
        Reinforcement learning (RL) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] is a technique for learning control actions that
are optimal for particular states, using interactions of an agent with the
environment in which the agent obtains rewards for actions. Reinforcement learning
is typcially formalized as a Markov decision process (MDP), which is a tuple
M = hS; U; T; R; i, where
{ S is the set of possible world states,
{ U is the set of possible control actions,
{ T is a transition function T : S U ! P (S);
{ R is the reward function R : S U ! R,
{ and is a discount factor such that 0
1.
      </p>
      <p>
        Reinforcement learning learns a policy : S ! U , which de nes which
actions should be taken in each state. Q-learning [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] is a model-free reinforcement
learning technique that uses a Q-value Q(s; u) to estimate the expected future
discounted rewards for taking action u in state s. At each step, Q-learning applies
an update equation for Q(s; u) given by
      </p>
      <p>Q(st; ut)</p>
      <p>Q(st; ut) +
rt+1 +
max Q[st+1; ut]
u</p>
      <p>Q[st; ut]
where rt+1 is the reward observed after performing action ut in state st, is
the learning rate (0 1), and st+1 is the state that the agent transitions to
after performing action ut. After Q(st; ut) converges, the optimal action for the
agent in state st is arg maxu Q(st; u):</p>
      <p>In Q-learning and related algorithms, an agent maintains a table of Q[S; U ]
based on its history of interaction with the environment. An experience hs; u; r; s0i
provides one data point for the value of Q(s; u). The data point is that the agent
received the future value of r + V (s0), where V (s0) = maxu0 Q(s0; u0); this is the
actual current reward plus the discounted estimated future value. This new data
point is called a return. The agent can use the temporal di erence equation to
update its estimate for Q(s; u):
or, equivalently,</p>
      <p>Q[s; u]Q[s; u] + (r +
max Q[s0; u0]
u0
This section presents a summary of our results. We have shown that RL can
be used to dynamically learn how to stabilise a robot's trajectory given
previously unseen faults. We used a quadcopter to demonstrate how path-following
deviations can be reduced following learning epochs.</p>
      <p>We will rstly present the nal Q-Matrix (Figure 1) that was learned. Positive
and negative Q-values represent good and bad performance respectively. There
is a large amount of negative values which can be attributed to our reward
function, see Section 5.1. We say the matrix has converged perfectly if only
a single positive Q-Value exists per row. This is not evident in this matrix but
with adjustments to the reward function and enough learning epochs this matrix
would converge. Another interesting point to note is the magnitude of the
QValues. The rst row has signi cantly higher values than the rest. This is because
the rst row represents the lowest deviation rate and this row will get trained
for every fault since for the deviation rate to increase to the higher partitions
it must rst go through rst partition. To see the improvements in trajectory
following performance for a quadcopter, we compared the RLC with the original
quadcopter con guration. As far as the authors are aware there is currently no
baseline controller for unknown faults to compare against. In future we intend
to run comparisons against other FTC architectures. We use total trajectory
deviation in centimetres to gauge how much the tracking accuracy improved.
Table 1 shows this comparison for several magnitudes of unknown rotor faults.
We denote the number of learning cycles of RLC using . We noticed a 63-75%
decrease in the trajectory deviation after a small number of learning cycles.</p>
      <p>Figure 2 shows the time it took to re-stabilize the quadcopter along its
trajectory with acceptable deviation after each completed learning cycle. It is clearly
visible that after a small number of learning iterations the time to re-stabilize
drastically reduces but never converges to 0. The spikes in the graph show an
increase in the magnitude of a benchmark fault induced.</p>
    </sec>
    <sec id="sec-4">
      <title>Reinforcement Learning Blended Control</title>
      <p>
        This section describes the mapping of the RL approach to our experimental
domain, i.e. what the RL tuple hS; U; T; R; i means for our quadcopter domain.
For the experimental set-up we used an opensource Matlab implementation of a
quadcopter ight simulation [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. This implementation used 4 tuned PID
(Proportional Integral Derivative) controllers to control Roll, Pitch, Yaw and Altitude
(Figure 3 Right) respectively.
      </p>
      <p>Our objective with this simulation is to implement on-line reinforcement
learning for faults of unknown origin and magnitude. As far as the authors are
aware not much work has been done using RL to learn a blended controller for
unknown faults on-line. The simulations core task is trajectory following which
is de ned as a list of time indexed way point locations in the form of a triplet
(X , Y, t), presenting desired X and Y position at time t. Given the quadcopters
current position at time t as (x, y) the deviation from the trajectory can be
computed as:
t =
q
(X
x)2 + (Y
y)2</p>
      <p>The trajectory used is a square and can be seen in Figure 3 Left. We de ne a
single learning cycle for RL as a single execution of the shown trajectory with one
unknown faults. The faults are injected at the same point in the trajectory for
consistency. After every learning cycle we allow for time to fully stabilize along
its trajectory so no residual e ects from previous learning cycles will in uence
future learning quality. Since we have a cyclic trajectory we can continuously
repeat the learning cycles and analyse the performance improvements over time
and on-line. Each learning cycle can be de ned in terms of four phases, which
are:
1. Stabilize - Ensure nominal operating conditions.
2. Learning - Random fault in speci ed range and stabilizing using RL.
3. Stabilize - Ensure nominal operating conditions.
4. Evaluate - Test against a benchmark error to check improvement.</p>
      <p>The Stabilize phases simply ensure the quadcopter returns to its trajectory
with acceptable deviation rate and in nominal operating conditions before
proceeding to the following phases. The Learning phase consists of random fault
injection and stabilizing with RL. The Evaluation evaluates the current learned
policy against a benchmark fault to record the improvements learned over time,
Figure 2.</p>
      <p>RL States The space of unknown faults is simply too large to apply learning to
each fault individually. We hence classify the states S for our RL implementation
in terms of the e ect that unknown faults have on the trajectory following task.
For this metric we chose the deviation rate from the desired trajectory, which
we de ne as:
=
d X4
dt
i=0</p>
      <p>t i;</p>
      <p>M
= X 'i i:</p>
      <p>i=1
where i is the trajectory error between current and desired position at time
step t i. We then de ne S as a partition over the parameter space of into N
regions of equal size.</p>
      <p>RL Actions Our action space U is de ned in terms of blended control for which
we use a linear combination of prede ned controllers. In other words, given a
set of M prede ned controllers = f 1; ; M g and corresponding weights
f'1; ; 'M g, our applied blended control is given by
where PM</p>
      <p>i=1 'i = 1. We de ne our action space U as a partition of size P
over the parameter space of '. The granularity of this partition will dictate how
many di erent blended controllers are being learned on.</p>
      <p>We then de ne our Q-Matrix as Q(S; U ) and set N and P to 5 and 10
respectively. In other words we are learning the optimal blended controller for
each deviation-rate sub-partition. The size of the matrix increases drastically
with the size of the partitions. We hence chose small enough partition sizes to
concentrate the learning into a smaller region. The transition function T maps
the current state and action chosen to the new state. In our context T is already
given by the simulation itself.</p>
      <p>For RL to be able to learn on-line we must have some performance metric to
evaluate how well a controller performed during the fault recovery for each
separate learning cycle. For this metric we choose the time, , until the quadcopter
is stabilized on its desired trajectory.
(1)
RL Rewards Since we use as our performance metric we must also compute
a baseline value to compare this against, which indicates positive or negative
reward for the blended controller used. Since we have no prior knowledge about
the faults, we compute , a running average of . For each subspace of Si we
de ne i to allow larger errors more time to stabilize. We assign credit based on
the performance against the running average.</p>
      <p>C =</p>
      <p>
        Credit Assignment Problem The Credit Assignment Problem [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] refers to
the problem of identifying which action was the one deserving credit. In our
case the problem is identifying which partition Si should receive the credit
after a learning phase. This is because will naturally vary across multiple
subpartitions of S during a single learning cycle. We hence apply RL for each of
the sub-partitions. The blended controller used to control the system is changed
when transitions from its current Si to Si 1 or Si+1. Figure 4 shows various
signals and the bounds of each Si indicated as Levels from the quadcopter
simulation during a single learning cycle. The Green signal represents the changing .
We indicate the transition between sub-partitions of S with red arrows. Notice
the blue signal representing the applied control signal changes when the
deviation magnitude changes. However this implementation makes it di cult to assign
credit to a single subspace, since learning was potentially applied on multiple
subspaces. We combat this by assigning proportional credit to each subspace
depending on how long the value of stayed in each of the parameter subspaces.
That is, the credit assigned to each Si is:
      </p>
      <p>R(Si) = C
t
where t is the duration that was in the bounds of Si and C and are as
previously de ned.</p>
      <p>For this implementation we do not use , the future expected reward.
Estimating the expected deviation rate t+1 is challenging as the controller is
synthesised on-line and the faults are unknown. In future work we will extend the
reward function to include the term.</p>
      <p>Error Generation We focus solely on unknown rotor faults for this article for
simplicity but this framework works for any unknown faults that cause trajectory
deviations. More speci cally, we use a multiplicative term on the rotor speed
to represent the unknown fault. To achieve an even distribution of learning we
randomize , such 0 , where is the upper limit on the fault. We
incrementally increase after a number of learning cycles. This will give a
larger variance of deviations allowing the system to apply learning across all
sub-partitions. Figure 5 shows the rotor fault magnitudes used over 250 learning
cycles. Note this gure shows the benchmark errors used as well as randomized
errors for training.</p>
      <p>Simulation Details
For completeness we will give a full list of low level controllers and other
parameters used for the experiments. The PID controller coe cients for nominal
and fault (indicated by superscript N and F) controller for each control axis
(indicated by subscript ; ; ) can be seen in Table 3. It is worth noting that
these controllers are not tuned for any speci c fault; they are simply tuned with
a more "aggressive" coe cient. Figure 1 shows the matrix after 250 learning
cycles. We set the initial value for to 3% and increased this after every 50
learning iterations up to 7%. We apply the fault to the same rotor every time.
In this article we presented a novel reinforcement learning approach for
online, real-time learning for unknown faults. We empirically demonstrated the
e ectiveness of this approach on a Quadcopter trajectory following task. We
noticed a 63-75% decrease in the trajectory deviation due to an unknown fault
after a small number of learning cycles. In this set of experiments only rotor
faults where investigated but given appropriate controller pairs for blending the
authors believe this approach will work for other system disturbances such as
wind or sensor faults. Since we are learning on the disturbance space ,instead
of the fault parameter space, this learning approach will work for most faults
that cause a path deviation. The novelty of this approach is that the learning
phase can be conducted on-line and needs very few iterations before converging
compared to traditional RL methods. Further more, we are not aware of any
other RL based approach for FTC under novel faults. This could provide adaptive
FTC capabilities to systems that are not easily xable or recon gurable such as
satellites or space rovers. Our future work includes focusing on improving the
learning process and attempting training on a multitude of errors. For simplicity,
this article also only explores a two controller blending strategy but in theory
this is not a limitation. Larger sets of prede ned controllers for blending can be
trained using our described method but with a considerably larger number of
training phases which will also be explored in future work.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. Richard S Sutton, Andrew G Barto, and
          <string-name>
            <surname>Ronald J Williams</surname>
          </string-name>
          .
          <article-title>Reinforcement learning is direct adaptive optimal control</article-title>
          .
          <source>IEEE Control Systems</source>
          ,
          <volume>12</volume>
          (
          <issue>2</issue>
          ):
          <volume>19</volume>
          {
          <fpage>22</fpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Angela</surname>
            <given-names>P Schoellig</given-names>
          </string-name>
          , Fabian L Mueller,
          <article-title>and Ra aello DAndrea</article-title>
          .
          <article-title>Optimization-based iterative learning for precise quadrocopter trajectory tracking</article-title>
          .
          <source>Autonomous Robots</source>
          ,
          <volume>33</volume>
          (
          <issue>1-2</issue>
          ):
          <volume>103</volume>
          {
          <fpage>127</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Fabian L Mueller</surname>
          </string-name>
          ,
          <article-title>Angela P Schoellig, and Ra aello D'Andrea. Iterative learning of feed-forward corrections for high-performance tracking</article-title>
          .
          <source>In Intelligent Robots and Systems (IROS)</source>
          ,
          <year>2012</year>
          IEEE/RSJ International Conference on, pages
          <volume>3276</volume>
          {
          <fpage>3281</fpage>
          . IEEE,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Markus</given-names>
            <surname>Hehn</surname>
          </string-name>
          and
          <article-title>Ra aello D'Andrea. A frequency domain iterative feed-forward learning scheme for high performance periodic quadrocopter maneuvers</article-title>
          .
          <source>In Intelligent Robots and Systems (IROS)</source>
          ,
          <year>2013</year>
          IEEE/RSJ International Conference on, pages
          <volume>2445</volume>
          {
          <fpage>2451</fpage>
          . IEEE,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Jemin</given-names>
            <surname>Hwangbo</surname>
          </string-name>
          ,
          <string-name>
            <surname>Inkyu</surname>
            <given-names>Sa</given-names>
          </string-name>
          , Roland Siegwart, and
          <string-name>
            <given-names>Marco</given-names>
            <surname>Hutter</surname>
          </string-name>
          .
          <article-title>Control of a quadrotor with reinforcement learning</article-title>
          .
          <source>IEEE Robotics and Automation Letters</source>
          ,
          <volume>2</volume>
          (
          <issue>4</issue>
          ):
          <year>2096</year>
          {
          <fpage>2103</fpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Michael</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Koval Michael L. Littman</surname>
          </string-name>
          ,
          <string-name>
            <surname>Christopher</surname>
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Mansley</surname>
          </string-name>
          .
          <article-title>"Autonomous quadrotor control with reinforcement learning".</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Mogens</given-names>
            <surname>Blanke</surname>
          </string-name>
          , Michel Kinnaert, Jan Lunze, Marcel Staroswiecki, and
          <string-name>
            <given-names>J</given-names>
            <surname>Schro</surname>
          </string-name>
          <article-title>der. Diagnosis and fault-tolerant control</article-title>
          , volume
          <volume>691</volume>
          . Springer,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Ron</surname>
          </string-name>
          J Patton.
          <article-title>Fault-tolerant control</article-title>
          .
          <source>Encyclopedia of systems and control</source>
          , pages
          <volume>422</volume>
          {
          <fpage>428</fpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Xiang</given-names>
            <surname>Yu</surname>
          </string-name>
          and
          <string-name>
            <given-names>Jin</given-names>
            <surname>Jiang</surname>
          </string-name>
          .
          <article-title>A survey of fault-tolerant controllers based on safetyrelated issues</article-title>
          .
          <source>Annual Reviews in Control</source>
          ,
          <volume>39</volume>
          :
          <fpage>46</fpage>
          {
          <fpage>57</fpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>Matthew</given-names>
            <surname>Kuipers</surname>
          </string-name>
          and
          <string-name>
            <given-names>Petros</given-names>
            <surname>Ioannou</surname>
          </string-name>
          .
          <article-title>Multiple model adaptive control with mixing</article-title>
          .
          <source>IEEE Transactions on Automatic Control</source>
          ,
          <volume>55</volume>
          (
          <issue>8</issue>
          ):
          <year>1822</year>
          {
          <year>1836</year>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. Youmin Zhang and
          <string-name>
            <given-names>Jin</given-names>
            <surname>Jiang</surname>
          </string-name>
          .
          <article-title>"Integrated active fault-tolerant control using IMM approach"</article-title>
          .
          <source>Transactions on Aerospace and Electronic Systems</source>
          ,
          <volume>37</volume>
          (
          <issue>4</issue>
          ):
          <volume>1221</volume>
          {
          <fpage>1235</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>Jin</given-names>
            <surname>Jiang</surname>
          </string-name>
          and
          <string-name>
            <given-names>Xiang</given-names>
            <surname>Yu</surname>
          </string-name>
          .
          <article-title>"Fault-tolerant control systems: A comparative study between active and passive approaches"</article-title>
          .
          <source>Annual Reviews in Control</source>
          ,
          <volume>36</volume>
          :
          <fpage>60</fpage>
          {
          <fpage>72</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Kemal</surname>
          </string-name>
          <article-title>Buyukkabasakal, Baris Fidan, and Aydogan Savran. Mixing adaptive fault tolerant control of quadrotor UAV</article-title>
          .
          <source>Asian Journal of Control</source>
          ,
          <volume>19</volume>
          (
          <issue>5</issue>
          ):1{
          <fpage>14</fpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>Jan</given-names>
            <surname>Lunze</surname>
          </string-name>
          .
          <article-title>From fault diagnosis to recon gurable control: A uni ed concept</article-title>
          .
          <source>In Control and Fault-Tolerant Systems (SysTol)</source>
          ,
          <year>2016</year>
          3rd Conference on, pages
          <volume>413</volume>
          {
          <fpage>421</fpage>
          . IEEE,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15. Richard S Sutton and
          <string-name>
            <given-names>Andrew G</given-names>
            <surname>Barto</surname>
          </string-name>
          .
          <article-title>Reinforcement learning: An introduction</article-title>
          , volume
          <volume>1</volume>
          . MIT press Cambridge,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Christopher JCH</surname>
            Watkins and
            <given-names>Peter</given-names>
          </string-name>
          <string-name>
            <surname>Dayan</surname>
          </string-name>
          .
          <article-title>Q-learning</article-title>
          .
          <source>Machine learning</source>
          ,
          <volume>8</volume>
          (
          <issue>3</issue>
          - 4):
          <volume>279</volume>
          {
          <fpage>292</fpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Kumpati S Narendra</surname>
          </string-name>
          and Zhuo Han.
          <article-title>The changing face of adaptive control: the use of multiple models</article-title>
          .
          <source>Annual Reviews in Control</source>
          ,
          <volume>35</volume>
          (
          <issue>1</issue>
          ):1{
          <fpage>12</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18. Said G Khan, Guido Herrmann, Frank L Lewis,
          <string-name>
            <surname>Tony Pipe</surname>
            , and
            <given-names>Chris</given-names>
          </string-name>
          <string-name>
            <surname>Melhuish</surname>
          </string-name>
          .
          <article-title>Reinforcement learning and optimal adaptive control: An overview and implementation examples</article-title>
          .
          <source>Annual Reviews in Control</source>
          ,
          <volume>36</volume>
          (
          <issue>1</issue>
          ):
          <volume>42</volume>
          {
          <fpage>59</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>Weicun</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>Stable weighted multiple model adaptive control: discrete-time stochastic plant</article-title>
          .
          <source>International Journal of Adaptive Control and Signal Processing</source>
          ,
          <volume>27</volume>
          (
          <issue>7</issue>
          ):
          <volume>562</volume>
          {
          <fpage>581</fpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>D.</given-names>
            <surname>Hartman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Landis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mehrer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Moreno</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Kim</surname>
          </string-name>
          . Quadcopter Simulation.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21. RICHARD S. SUTTON.
          <article-title>TEMPORAL CREDIT ASSIGNMENT IN REINFORCEMENT LEARNING</article-title>
          .
          <source>PhD thesis</source>
          ,
          <year>1984</year>
          . Copyright - Database copyright ProQuest LLC;
          <article-title>ProQuest does not claim copyright in the individual underlying works; Last updated -</article-title>
          <year>2016</year>
          -05-11.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>