NASA/TM—2012–215972 

 

Design of Low Complexity Model Reference 

Adaptive Controllers 

Curt Hanson and Jacob Schaefer 

Dryden Flight Research Center, Edwards, California

Marcus Johnson and Nhan Nguyen 

NASA Ames Research Center, Mountain View, California 

 Click here: Press F1 key (Windows) or Help key (Mac) for help 

May 2012
NASA STI Program ... in Profile 

Since its founding, NASA has been dedicated 

to the advancement of aeronautics and space science. 

The NASA scientific and technical information (STI) 

program plays a key part in helping NASA maintain 

this important role. 

The NASA STI program operates under the auspices 

of the Agency Chief Information Officer. It collects, 

organizes, provides for archiving, and disseminates 

NASA’s STI. The NASA STI program provides access 

to the NASA Aeronautics and Space Database and its 

public interface, the NASA Technical Reports Server, 

thus providing one of the largest collections of 

aeronautical and space science STI in the world. 

Results are published in both non-NASA channels and 

by NASA in the NASA STI Report Series, which 

includes the following report types: 

 TECHNICAL PUBLICATION. Reports of 

completed research or a major significant phase of 

research that present the results of NASA 

Programs and include extensive data or theoretical 

analysis. Includes compilations of significant scientific and technical data 

and information deemed to be of continuing 

reference value. NASA counter-part of peerreviewed formal professional papers but has less 

stringent limitations on manuscript length and 

extent of graphic presentations. 

 TECHNICAL MEMORANDUM. 

Scientific and technical findings that are 

preliminary or of specialized interest, 

e.g., quick release reports, working 

papers, and bibliographies that contain minimal 

annotation. Does not contain extensive analysis. 

 CONTRACTOR REPORT. Scientific and 

technical findings by NASA-sponsored 

contractors and grantees. 

 CONFERENCE PUBLICATION. 

Collected papers from scientific and technical 

conferences, symposia, seminars, or other 

meetings sponsored or 

co-sponsored by NASA. 

 SPECIAL PUBLICATION. Scientific, 

technical, or historical information from NASA 

programs, projects, and missions, often 

concerned with subjects having substantial 

public interest. 

 TECHNICAL TRANSLATION. 

English-language translations of foreign 

scientific and technical material pertinent to 

NASA’s mission. 

Specialized services also include organizing 

and publishing research results, distributing 

specialized research announcements and feeds, 

providing information desk and personal search 

support, and enabling data exchange services. 

For more information about the NASA STI program, 

see the following: 

 Access the NASA STI program home page at 

http://www.sti.nasa.gov 

 E-mail your question to help@sti.nasa.gov 

 Fax your question to the NASA STI Information 

Desk at 443-757-5803 

 Phone the NASA STI Information Desk at 

443-757-5802 

 Write to: 

STI Information Desk 

NASA Center for AeroSpace Information 

7115 Standard Drive 

Hanover, MD 21076-1320 

 

This page is required and contains approved text that cannot be changed. 
NASA/TM—2012–215972 

 

Design of Low Complexity Model Reference 

Adaptive Controllers 

Curt Hanson and Jacob Schaefer 

Dryden Flight Research Center, Edwards, California 

Marcus Johnson and Nhan Nguyen 

NASA Ames Research Center, Mountain View, California 

 Insert conference information, if applicable; otherwise delete 

 Click here: Press F1 key (Windows) or Help key (Mac) for help 

National Aeronautics and 

Space Administration 

Dryden Flight Research Center 

Edwards, CA 93523-0273 

May 2012
 Enter acknowledgments here, if applicable. 

 Click here: Press F1 key (Windows) or Help key (Mac) for help 

Available from: 

NASA Center for AeroSpace Information 

7115 Standard Drive 

Hanover, MD 21076-1320 

443-757-5802 
1

Abstract 

Flight research experiments have demonstrated that adaptive flight controls can be an effective 

technology for improving aircraft safety in the event of failures or damage. However, the nonlinear, timevarying nature of adaptive algorithms continues to challenge traditional methods for the verification and 

validation testing of safety-critical flight control systems. Increasingly complex adaptive control theories 

and designs are emerging, but only make testing challenges more difficult. A potential first step toward 

the acceptance of adaptive flight controllers by aircraft manufacturers, operators, and certification 

authorities is a very simple design that operates as an augmentation to a non-adaptive baseline controller. 

Three such controllers were developed as part of a National Aeronautics and Space Administration flight 

research experiment to determine the appropriate level of complexity required to restore acceptable 

handling qualities to an aircraft that has suffered failures or damage. The controllers consist of the same 

basic design, but incorporate incrementally-increasing levels of complexity. Derivations of the controllers 

and their adaptive parameter update laws are presented along with details of the controllers’ 

implementations. 

Nomenclature 

Acronyms 

FAST full-scale advanced systems testbed 

IFCS intelligent flight control system 

IRAC intelligent resilient aircraft control 

MRAC model reference adaptive control 

NASA National Aeronautics and Space Administration 

NDI nonlinear dynamic inversion 

OCM optimal control modification 

onMRAC MRAC with normalization and OCM 

onMRAC+ MRAC with normalization, OCM and additional adaptive parameters 

RFI request for information 

SDC self designing controller 

sMRAC simple MRAC 

Mathematical Symbols 

ܣ matrix of state derivative coefficients 

ܤ matrix of input coefficients 

ܥ output error feedback compensator 

݂஺ applied aerodynamic and inertial moments 

݂መ

஺ estimate of applied aerodynamic and inertial moments 

ܪ angular momentum vector 

ܫ inertia matrix 

݇ reference model forward path gain 

݇ത uncertain forward path gain 

ܮఈ reference model apparent lift curve slope 

ܮതఈ uncertain apparent lift curve slope 

݉ number of control effectors 

ܯ vector of applied moments 

ܰ control weighting matrix
2

݌ roll rate 

݌ ௤individual element of the matrix solution to the pitch axis Lyapunov equation 

݌ ෤roll rate tracking error 

݌ሶ roll acceleration 

ሶ෤݌

 roll acceleration tracking error 

ܲ solution to the Lyapunov equation 

ݍ pitch rate 

ݍ ௤individual element of the pitch axis Lyapunov equation matrix 

ݍ ෤pitch rate tracking error 

ݍሶ pitch acceleration 

ሶ෤ݍ

 pitch acceleration error 

ܳ right-hand-side term of the Lyapunov equation 

ݎ reference model input 

ݎ௔௠௫ maximum achievable yaw rate 

ݎ̅ uncertain reference input 

ݎሶ yaw acceleration 

ܴ reference model 

ݏ Laplace operator 

 time ݐ

ݑ scalar control input 

ܸ Lyapunov function 

ܸሶ Lyapunov function derivative 

ݔ state vector 

ݔሶ state derivative vector 

ݔ ෤state error vector 

ሶ෤ݔ

 derivative of the state error vector 

ݕ output vector 

ߙ angle of attack 

ߛ adaptive parameter learning rate 

Γ matrix of adaptive parameter learning rates 

ߜ surface command vector 

ߜ ௣௔pilot roll stick input 

ߜ ௣௘pilot pitch stick input 

Δ moments due to external disturbances 

ߞ reference model damping ratio 

ߞ̅ uncertain damping ratio 

ߠ matched uncertainty parameter 

ߠ ෠matched uncertainty parameter adaptive estimate 

ߠ ෨matched adaptive parameter estimate error 

Θ vector of matched uncertainty parameters 

Θሶ vector of matched uncertainty parameter derivatives 

Θ෡ሶ

 vector of matched uncertainty parameter derivative estimates 

Θ෩ vector of matched uncertainty parameter estimate errors 

Θ෩ሶ vector of matched uncertainty parameter estimate error derivatives 

ߤ forward path gain uncertainty 

ߤ ௅apparent lift curve slope uncertainty 

ߥ optimal control modification tuning gain 

ߪ scalar time-varying uncertain disturbance 
3

ߪො scalar time-varying uncertain disturbance adaptive estimate 

ොሶߪ scalar time-varying uncertain disturbance adaptive estimate derivative 

ߪ ෤scalar time-varying uncertain disturbance adaptive estimate error 

ሶ෤ߪ

 scalar time-varying uncertain disturbance adaptive estimate error derivative 

߱ reference model undamped natural frequency 

߱ഥ uncertain undamped natural frequency 

Ω vector of body-axis rotational rates 

Ωሶ vector of body-axis rotational accelerations 

Subscripts 

0 trim 

ܽ adaptive augmentation 

ܿ compensator augmentation 

ܿ݉݀ command 

݁ݎݎ NDI reference model tracking error 

݉ MRAC reference model 

݌ roll axis 

ݍ pitch axis 

ݎ݂݁ NDI reference model 

ߜ surface commands 

ߠ matched uncertainties 

ߪ uncertain disturbance 

Superscript 

݊ number of reference model states 

Introduction 

Flight research of adaptive control algorithms has been sporadic over the past 50 years, providing 

relatively little flight data to guide present-day designers on their application to full-scale piloted aircraft. 

Examples that do exist include the first flight tests of a model reference adaptive controller on the F-94A 

aircraft (Lockheed Martin, Bethesda, Maryland) (ref 1), an experimental adaptive flight control system 

evaluated on the F-94C aircraft (Lockheed Martin, Bethesda, Maryland) (ref. 2), the implementation of an 

adaptive flight control system on the X-15 aircraft (North American Aviation Inc., Downy, California) 

(refs. 3, 4), testing of an indirect-adaptive self designing controller (SDC) on the F-16 VISTA (General 

Dynamics, now Lockheed Martin, Bethesda, Maryland) (ref. 5) and the intelligent flight control system 

(IFCS) research on the highly-modified National Aeronautics and Space Administration (NASA) F-15 

aircraft (McDonnell Douglas, now The Boeing Company, Chicago, Illinois) (refs. 6, 7) . By the mid2000s, experiments such as SDC and IFCS had demonstrated that adaptive flight controls can be an 

effective technology for improving aircraft safety in the event of failures or damage. However, the 

nonlinear, time-varying nature of adaptive systems continues to challenge traditional methods for the 

verification and validation of safety-critical flight control systems. 

In April of 2009, NASA’s Integrated Resilient Aircraft Control (IRAC) project disseminated a 

request for information (RFI) to the adaptive controls community seeking ideas for potential flight 

experiments (ref. 8). A workshop was held in Chicago in August of 2009 with representatives from 

industry, academia and other government agencies to discuss the wide variety of RFI responses received 

by NASA. Three focus areas were identified through this process. 
4

1. Simple, yet effective, adaptive control algorithms should be investigated to help address the issue 

 of verification and validation of adaptive flight controls to a safety-critical level. 

2. The appropriate level of pilot awareness and interaction with adaptive control systems should be 

 studied, including the potential for adverse interactions such as pilot-in-the-loop oscillations. 

3. Techniques should be matured for incorporating feedback information, both static and dynamic, 

 from an aircraft’s structure into the flight control system. 

The first, and to some extent, the second of these focus areas prompted the application of a low 

complexity, textbook-like direct model reference adaptive control (MRAC) scheme to the NASA FullScale Advanced Systems Testbed (FAST). FAST is a highly modified F-18 aircraft (McDonnell-Douglas, 

now The Boeing Company, Chicago, Illinois) that contains a research flight control system capable of 

housing advanced flight controls experiments. Full-scale piloted in-flight experimentation of adaptive 

systems has been shown to uncover implementation issues that may not be found through experiments 

with simulations or sub-scale, remotely piloted aircraft (refs 1, 4-7). Three variations of a low complexity 

MRAC design were evaluated for a healthy airplane and five simulated failure scenarios, characterized by 

a severe loss of damping in either the pitch or the roll axis, a loss of static pitch stability, a failed 

stabilator, and coupling from the roll axis into the pitch axis. 

A philosophy of “simpler is better” motivated the development of the low complexity MRAC 

formulation under the assumption that simplification leads to lower implementation and verification costs, 

and ultimately to a greater likelihood of acceptance by aircraft manufacturers, operators and certification 

authorities. Reduced complexity can also lead to a safer design by reducing the potential for 

implementation errors within the adaptive controller software. 

Evaluation of the relative complexity of various control techniques, including adaptive control 

methods, requires metrics for measuring complexity as it relates to design, implementation, software 

qualification, and flight testing. Various levels of reduced complexity were achieved for the three 

adaptive controllers through the incremental minimization of the following categories of elements 

common to most flight control systems. 

1. Mathematical constructs such as integrators and filters require initialization or internal state 

 limiting, and so their implementation requires special attention during design and testing. Other 

 examples include inverse functions which must be protected from divide- by-zero scenarios. 

2. Free design parameters such as gains, learning rates, and filter coefficients are elements of the 

 controller that must be tuned to achieve the desired combination of controller performance and 

 robustness. Increasing the number of free design parameters tends to complicate the design and 

 verification effort of the controller due to the potential for unforeseen interactions and the 

 increased difficulty of intuitively identifying cause and effect. 

3. Input / output plane dimensionality of the adaptive controller impacts control system analysis and 

 testing. Robustness analysis is typically performed at each feedback loop and each output. Noise, 

 latency, and sampling rate characteristics must be evaluated and analyzed for each input and 

 actuator dynamics included for each output. During development and testing, the failure mode of 

 each input and output must be characterized, and their effects considered. 

Three variations of a model reference adaptive control design were implemented as pilot-selectable 

augmentation modes to a non-adaptive baseline, nonlinear dynamic inversion (NDI) controller. This 
approach 

diagram o

parameter

design in

parameter

The n

inner-loop

robustnes

model-fol

introducin

NDI i

rotational 

change of

Equat

coupling 

into the a

deflection

is representa

of the integrat

r in each of th

creased the c

r in each axis.

Non

non-adaptive 

p includes a

s. NDI was c

llowing archi

ng simulated a

inverts the air

equations of

f momentum a

tion (1) is so

terms Ωሺݐሻ ൈ

applied aerod

ns ܤఋሺߜሺݐሻ െ

ative of a pi

ted NDI and 

he pitch and r

complexity o

.

Fi

nlinear Dyn

baseline is a

a proportiona

chosen for its

itecture and o

aircraft failur

rcraft equatio

f motion for 

and applied m

݀

ሺܪ ݐ݀

olved for the

ൈ ܫΩሺݐሻ and th

dynamic and

ߜ଴ሻ, and appl

ilot-initiated 

MRAC contr

roll axes, com

of the update

igure 1. MRA

namic Inv

a full, nonlin

al-plus-integr

s analyzabilit

on-board aero

res and damag

ons of motion

an aircraft ca

moments unde

ሺݐሻ ൌ ܫΩሶሺݐሻ ൅

e rotational a

he applied m

d inertial mom

lied moments

emergency m

rollers. The si

mputed using 

e law, while 

AC with NDI b

version Co

near dynamic

ral output er

y and open-s

odynamic loo

ge. 

n to compute 

an be written

er the assump

൅ Ωሺݐሻ ൈ ܫΩሺ

acceleration 

moments ∑ܯሺ

ments ݂஺, th

s due to distur

mode. Figure

implest desig

a basic gradie

the third inc

block diagram

ontroller D

c inversion in

rror feedbac

source archite

okup tables p

appropriate c

n using the re

ption of consta

ሺݐሻ ൌ ∑ܯሺݐሻ

vector ܫΩሶሺݐሻ

ሺݐሻ. The appl

e applied mo

rbances Δሺݐሻ.

e 1 shows th

gn consisted o

ent-based upd

cluded one a

m. 

Description

nner-loop co

ck compensa

ecture. Furthe

provide conve

control surfac

elationship b

ant inertias (r

ሻ as a functi

lied moments

oments due 

.

he top-level 

of a single ada

date law. A se

additional ada

n

ontroller. The

ator for imp

ermore, its ex

enient method

ce commands

etween the ra

ref. 9): 

ion of the in

s term is expa

to control su

5

block 

aptive 

econd 

aptive 

e NDI 

proved 

xplicit 

ds for 

s. The 

ate of 

(1)

nertial 

anded 

urface 
6

ܫΩሶሺݐሻ ൌ ݂஺൫ݕሺݐሻ൯൅ܤఋሺߜሺݐሻ െ ߜ଴ሻ െ Ωሺݐሻ ൈ ܫΩሺݐሻ െ Δሺݐሻ (2)

Here, ݕሺݐሻ is the output vector consisting of rotational body rates and the aerodynamic angles of 

attack and sideslip. The rotational acceleration vector Ωሶሺݐሻ on the left-hand side is replaced by the vector 

of desired rotational acceleration commands ݔሶ

௖௠ௗሺݐሻ. The aerodynamic and inertial moments are 

replaced with an estimate ݂መ

஺൫ݕሺݐሻ൯ computed from on-board aerodynamic lookup tables. Equation (2) is 

then solved for the control surface deflection vector ߜሺݐሻ necessary to achieve the commanded dynamics. 

When computing the commands, the disturbance term Δሺݐሻ is assumed to be zero because it is generally 

not known. 

ߜሺݐሻ ൌ ܤఋ

ିଵ ቀݔܫሶ

௖௠ௗሺݐሻ ൅ Ωሺݐሻ ൈ ܫΩሺݐሻ െ ݂መ

(3) ଴ߜ ൅ ሻ൯ቁݐሺݕ൫஺

Uncertainty in aerodynamic lookup tables or the presence of a non-zero disturbance Δሺݐሻ will produce 

errors in the inverted dynamics of equation (3). A proportional-plus-integral output error feedback 

compensator ܥ is added to reduce the inversion errors and improve model following. Similarly, adaptive 

feedback compensation can be added to account for larger errors due to failures or damage. Equation (4) 

gives the expanded acceleration command vector for each axis. Note that in equation (4) the ݔሶ

௥௘௙ሺݐሻ

terms are the outputs of the reference model in figure 1, the ݔሶ

௖ሺݐሻ terms are the outputs of the error 

compensator ܥ, and the ݔሶ

௔ሺݐሻ terms are the adaptive control contributions. Additional details on the NDI 

implementation can be found in Miller (ref. 10). 

ሶݔ

௖௠ௗሺݐሻ ൌ ݔሶ௥௘௙ሺݐሻ ൅ ݔሶ௖ሺݐሻ ൅ ݔሶ௔ሺݐሻ ൌ ቎݌ሶ

௥௘௙ሺݐሻ ൅ ݌ሶ௖ሺݐሻ ൅ ݌ሶ௔ሺݐሻ

ሶݍ

௥௘௙ሺݐሻ ൅ ݍሶ௖ሺݐሻ ൅ ݍሶ௔ሺݐሻ

ሶݎ

௥௘௙ሺݐሻ ൅ ݎሶ௖ሺݐሻ

቏

(4)

The NDI controls all three axes, although adaptive augmentation is applied only to the pitch and roll 

axes of the aircraft, as the characteristics of these axes tend to dominate the pilot’s perception of handling 

qualities for the proposed set of flight maneuvers. The relative benefits of incorporating yaw-axis 

adaptation were extensively debated by the design team. Ultimately, in keeping with the philosophy of 

simplification, yaw-axis adaptation was not included so that related performance deficiencies, if any, 

might be definitively revealed through flight test, at least for the proposed set of simulated failures and 

aircraft maneuvers.

General Description of the Low Complexity Model Reference Adaptive 

Controller 

Model reference adaptive control (MRAC) derives its name from the use of reference model 

dynamics to define a desired trajectory for the system outputs to follow (ref. 11). The reference model for 

the aircraft axis of interest is specified as a stable, linear time-invariant system: 

ሶݔ

(5) ሻݐሺݎ௠ܤ ൅ ሻݐሺ௠ݔ௠ܣ ൌ ሻݐሺ௠

The scalar reference input ݎሺݐሻ in equation (5) is a function of the time-varying pilot control 

command. Constant matrices ܣ ∋ ௠Թ௡ൈ௡ and ܤ ∋ ௠Թ௡ൈଵ are selected to give good aircraft handling 

qualities. The aircraft’s true dynamics, which are uncertain and possibly unstable, may be written as 

ݔሶሺݐሻ ൌ ݔܣሺݐሻ ൅ ܤ൫ݑሺݐሻ െ ߪሺݐሻ൯ (6)
7

where ܣ and ܤ are unknown and ߪሺݐሻ is a scalar, time-varying uncertain disturbance. The unknown 

aircraft dynamics and known reference model dynamics are related according to the MRAC matching 

conditions (ref. 11): 

(7) ்Θܤ െ௠ ܣ ൌ ܣ

 

(8) ௠ܤൌܤ

Several restrictions are apparent from the matching conditions in equations (7) and (8). The order ݊ of 

the reference model must match the order of the aircraft dynamics described by equation (6), which also 

defines the number of matched uncertainties in the parameter vector Θ. These uncertainties, commonly 

referred to as A-matrix uncertainties, are additive and parameterize changes to the aircraft’s pitch and roll 

dynamics. It is assumed that these uncertainties are either constant or that they vary slowly in comparison 

to the aircraft’s dynamics. The B-matrices are assumed to be identical so that any differences in control 

effectiveness are parameterized as exogenous disturbances, as discussed below. 

Parameterization of Pitch Axis Uncertainty 

The typical representation of an aircraft’s pitch-axis short-period dynamics is as a second-order 

transfer function (ref. 12). Let equation (9) represent the desired dynamics defined by the reference 

model, while the uncertain pitch dynamics (without external disturbances) are given by equation (10). 

ሻݏሺ௠ݍ

ߜ௣௘ሺݏሻ ൌ ݇௤߱௤

ఈሻܮ൅ݏଶሺ

௤߱൅ݏ௤߱௤ߞ2 ൅ ଶݏ

ଶ

(9)

 

ሻݏሺݍ

ߜ௣௘ሺݏሻ ൌ ݇ത௤߱ഥ௤

തఈሻܮ൅ݏଶሺ

̅ߞ2 ൅ ଶݏ

௤߱ഥ௤ݏ൅߱ഥ௤

ଶ

(10)

Equations (9) and (10) can be written in the state space form of equations (5) and (6), with the 

introduction of an unknown external disturbance Δ௤ in the aircraft’s true dynamics. 

൤

ሻݐሺ௠ݍ

ሶݍ

௠ሺݐሻ

൨ ൌ ൤ 0 1

െ߱௤

ଶ െ2ߞ௤߱௤

ሻݐሺ௠ݍ ׬൤ ൨

ሻݐሺ௠ݍ

൨ ൅ ቂ

0

1

ቃ ݇௤߱௤

ଶ ቀߜ௣௘ሺݐሻ ൅ ܮఈ׬ ߜ௣௘ሺݐሻቁ (11)

 

൤

ሻݐሺݍ

ሻݐሶሺݍ

൨ ൌ ൤ 0 1

െ߱ഥ௤

ଶ െ2ߞ̅

௤߱ഥ௤

ሻݐሺݍ ׬൤ ൨

ሻݐሺݍ

൨ ൅ ቂ

0

1

ቃ ቀ݇ത௤߱ഥ௤

ଶ ቀߜ௣௘ሺݐሻ ൅ ܮതఈ׬ ߜ௣௘ሺݐሻቁ െ Δ௤ቁ (12)

The MRAC matching condition in equation (7) can now be used to parameterize the pitch axis 

matched uncertainty using the A-matrices from equations (11) and (12), where ܤൌܤ ௤ൌ ሾ0 1ሿ் and 

Θ் ൌ Θ௤

் ൌ ሾߠ௤ଵ ߠ௤ଶሿ. Equation (13) shows that the uncertainty term ߠ௤ଵ corresponds to uncertainty in 

the short period natural frequency and that ߠ௤ଶ represents uncertainty in both the short period frequency 

and damping. 

൤ 0 1

െ߱ഥ௤

ଶ െ2ߞ̅

௤߱ഥ௤

൨ ൌ ൤ 0 1

െ൫߱௤

ଶ ൅ ߠ௤ଵ൯ െ൫2ߞ௤߱ ൅ ௤ߠ௤ଶ൯

൨ (13)

Define the reference input signal for the reference model according to equation (14) and for the 

uncertain pitch dynamics by equation (15). 
8

ݎ௤ሺݐሻ ൌ ݇௤߱௤

ଶ ቀߜ௣௘ሺݐሻ ൅ ܮఈ׬ ߜ௣௘ሺݐሻቁ (14)

 

ݎ௤̅ሺݐሻ ൌ ݇ത௤߱ഥ௤

ଶ ቀߜ௣௘ሺݐሻ ൅ ܮതఈ׬ ߜ௣௘ሺݐሻቁ (15)

The total input uncertainty is parameterized by writing the entire input expression ݎ௤̅ሺݐሻ െ Δ௤ሺݐሻ of 

equation (12) in terms of the known reference input ݎ௤ሺݐሻ and the uncertainty parameter ߪ௤ሺݐሻ: 

ݎ௤̅ሺݐሻ െ Δ௤ሺݐሻ ൌ ݎ௤ሺݐሻ െ ߪ௤ሺݐሻ (16)

Insight into ߪ௤ሺݐሻ can be found by re-arranging equation (16) and writing it in terms of the known 

components of equation (14) and uncertainty parameters for feed-forward gain uncertainty ߤ௤, the 

apparent lift curve slope uncertainty ߤ ௅and external disturbances Δ௤ሺݐሻ. 

ߪ௤ሺݐሻ ൌ ݇௤߱௤

ଶሾ1 െߤ௤ሿ൤

ఈܮ 1

௅ߤ െ ఈܮ 1

൨ ቈ ߜ௣௘ሺݐሻ

ሻݐሺ௘௣ߜ ׬

቉ ൅ Δ௤ሺݐሻ (17)

The feed-forward gain and apparent lift curve slope uncertainty parameters are defined in equations 

(18) and (19), respectively. It will be shown that the adaptive controller does not estimate each of these 

uncertainties independently, but rather computes the aggregate estimate ߪො௤ሺݐሻ. 

ߤ ௤ൌ ݇ത௤߱ഥ௤

ଶ

݇௤߱௤

ଶ (18)

 

ߤ ௅ൌ ሺܮఈ െ ܮതఈሻ (19)

Parameterization of Roll Axis Uncertainty 

A first-order transfer function is used to model the stability axis roll dynamics (ref. 10). Let equation 

(20) represent the known desired dynamics and equation (21) represent the unknown roll axis dynamics 

(again without external disturbances). 

ሻݏሺ௠݌

ߜ௣௔ሺݏሻ ൌ ቀ

௫௠௔ݎ

௣߱௣݇ ቁ ߙ

(20) ௣߱൅ݏ

ሻݏሺ݌

ߜ௣௔ሺݏሻ ൌ ቀ

௫௠௔ݎ

ߙ ቁ ݇ത௣߱ഥ௣

(21) ௣ഥ߱൅ݏ

Following the approach used in the pitch axis, equations (20) and (21) are written in state space 

notation, with the introduction of the external disturbance term Δ௣ሺݐሻ. 

ሶ݌

௠ሺݐሻ ൌ ൣെ߱௣൧݌௠ሺݐሻ ൅ ሾ1ሿ ൬

௫௠௔ݎ

ሻݐሺߙ

൰ ݇௣߱௣ߜ௣௔ሺݐሻ (22)

 

݌ሶሺݐሻ ൌ ൣെ߱ഥ௣൧݌ሺݐሻ ൅ ሾ1ሿ ቆ൬

௫௠௔ݎ

ሻݐሺߙ

൰ ݇ത௣߱ഥ௣ߜ௣௔ሺݐሻ െ Δ௣ሺݐሻቇ (23)
9

The MRAC matching condition of equation (7) is used to parameterize the roll axis uncertainty, 

where ܤൌܤ ௣ൌ ሾ1ሿ and ΘൌΘ௣ ൌ ߠ௣. 

െ߱ഥ௣ ൌ െ൫߱௣ ൅ ߠ௣൯ (24)

Define the reference input signal for the reference model according to equation (25) and for the 

uncertain roll dynamics according to equation (26). 

ݎ௣ሺݐሻ ൌ ൬

௫௠௔ݎ

ሻݐሺߙ

൰ ݇௣߱௣ߜ௣௔ሺݐሻ (25)

 

ݎ௣̅ሺݐሻ ൌ ൬

௫௠௔ݎ

ሻݐሺߙ

൰ ݇ത௣߱ഥ௣ߜ௣௔ሺݐሻ (26)

The total input uncertainty is parameterized by writing the entire input expression ݎ௣̅ሺݐሻ െ Δ௣ሺݐሻ of 

equation (23) in terms of the known reference input ݎ௣ሺݐሻ and the uncertainty parameter ߪ௣ሺݐሻ: 

ݎ௣̅ሺݐሻ െ Δ௣ሺݐሻ ൌ ݎ௣ሺݐሻ െ ߪ௣ሺݐሻ (27)

The uncertainty term ߪ ௣contains the term ߤ௣, which is a parameterization of uncertainty in the gain 

between the known and unknown reference input signals of equations (25) and (26), as well as the 

external roll disturbance Δ௣ሺݐሻ. 

ߪ௣ሺݐሻ ൌ ൬

௫௠௔ݎ

ሻݐሺߙ

൰ ݇௣߱௣൫1 െ ߤ௣൯ߜ௣௔ሺݐሻ ൅ Δ௣ሺݐሻ (28)

The roll feed forward gain uncertainty is defined as 

ߤ ௣ൌ ݇ത௣߱ഥ௣

݇௣߱௣ (29)

Adaptive Control Commands 

The scalar control input ݑሺݐሻ in equation (6) for the pitch axis is defined to be a combination of the 

scalar reference input and augmentation from the adaptive controller. 

ݑ௤ሺݐሻ ൌ ݎ௤ሺݐሻ ൅ ݍሶ

௔ሺݐሻ ൌ ݎ௤ሺݐሻ ൅ ൣߠ෠

෠ߠ ሻݐଵሺ௤

௤ଶሺݐሻ൧൤

ሻݐሺݍ ׬

ሻݐሺݍ

൨ ൅ ߪො௤ሺݐሻ (30)

Adaptive parameters ߠ෠

෠ߠ ,ሻݐଵሺ௤

௤ଶሺݐሻ and ߪො௤ሺݐሻ are estimates of the ߠ௤ଵ, ߠ௤ଶ and ߪ ௤uncertainties. The 

control input from equation (30) is substituted into the pitch axis form of equation (6) along with the 

matching condition of equation (13) to find 

൤

ሻݐሺݍ

ሻݐሶሺݍ

൨ ൌ ൤ 0 1

െ൫߱௤

ଶ ൅ ߠ௤ଵ൯ െ൫2ߞ௤߱ ൅ ௤ߠ௤ଶ൯

ሻݐሺݍ ׬൤ ൨

ሻݐሺݍ

൨

൅ ቂ

0

1

ቃ ൭ݎ௤ሺݐሻ ൅ ൣߠ෠

෠ߠ ሻݐଵሺ௤

௤ଶሺݐሻ൧൤

ሻݐሺݍ ׬

ሻݐሺݍ

൨ ൅ ߪො௤ሺݐሻ െ ߪ௤ሺݐሻ൱ (31)
10

Re-arrange to combine similar terms. 

൤

ሻݐሺݍ

ሻݐሶሺݍ

൨ ൌ ቈ 0 1

െ߱௤

ଶ െ ቀߠ௤ଵ െ ߠ෠

௤ଵሺݐሻቁ െ2ߞ௤߱ ௤െ ቀߠ௤ଶ െ ߠ෠௤ଶሺݐሻቁ

ሻݐሺݍ ׬൤ ቉

ሻݐሺݍ

൨

൅ ቂ

0

1

ቃ ൬ݎ௤ሺݐሻ െ ቀߪ௤ሺݐሻ െ ߪො௤ሺݐሻቁ൰ (32)

The control objective is that as adaptation takes place, ߠ෠

෠ߠ ,ଵ௤ߠ → ሻݐଵሺ௤

௤ଶሺݐሻ → ߠ௤ଶ and ߪොሺݐሻ → ߪሺݐሻ

so that the dynamics of equation (33) approach the desired reference dynamics of equation (11). 

൤

ሻݐሺݍ

ሻݐሶሺݍ

൨ ൌ ൤ 0 1

െ߱௤

ଶ െ2ߞ௤߱௤

ሻݐሺݍ ׬൤ ൨

ሻݐሺݍ

൨ ൅ ቂ

0

1

ቃ ݎ௤ሺݐሻ (33)

The roll axis scalar control input ݑ௣ሺݐሻ contains the reference input and two adaptive parameters. 

ݑ௣ሺݐሻ ൌ ݎ௣ሺݐሻ ൅ ݌ሶ

௔ሺݐሻ ൌ ݎ௣ሺݐሻ ൅ ߠ෠௣ሺݐሻ݌ሺݐሻ ൅ ߪො௣ሺݐሻ (34)

Under the control signal of equation (34) the roll axis dynamics can be written as 

݌ሶሺݐሻ ൌ ቂെ߱௣ െ ቀߠ ௣െ ߠ෠

௣ሺݐሻቁቃ ݌ሺݐሻ ൅ ሾ1ሿ ൬ݎ௣ሺݐሻ െ ቀߪ௣ሺݐሻ െ ߪො௣ሺݐሻቁ൰ (35)

Similar to the pitch axis, as ߠ෠

௣ → ߠ ௣and ߪො௣ → ߪ ௣the airplane roll axis dynamics match the desired 

reference model dynamics in equation (22). 

݌ሶሺݐሻ ൌ ൣെ߱௣൧݌ሺݐሻ ൅ ሾ1ሿݎ௣ሺݐሻ (36)

Basic Adaptive Parameter Update Laws 

The three adaptive control designs all employ variations of the same basic adaptive parameter update 

laws, developed in this section. 

Pitch Axis MRAC 

Pitch axis tracking error is computed by subtracting the aircraft response from the desired dynamics 

of the reference model. 

ሻݐሺ෤ݍ ׬൤ ൌ ሻݐሺ෤௤ݔ

ሻݐሺ෤ݍ

ሻݐሺ௠ݍ ׬൤൨ൌ

ሻݐሺ௠ݍ

ሻݐሺݍ ׬൤൨െ

ሻݐሺݍ

൨ (37)

Differentiate equation (37) and substitute equations (11), (14) and (32), making the following 

෨ߠ :definitions

௤ଵሺݐሻ ൌ ߠ௤ଵ െ ߠ෠

෨ߠ ,ሻݐଵሺ௤

௤ଶሺݐሻ ൌ ߠ௤ଶ െ ߠ෠௤ଶሺݐሻ and ߪ௤෤ሺݐሻ ൌ ߪ௤ሺݐሻ െ ߪො௤ሺݐሻ. 
11

൤

ሻݐሺ෤ݍ

ሶ෤ݍ

ሺݐሻ

൨ ൌ ൤ 0 1

െ߱௤

ଶ െ2ߞ௤߱௤

ሻݐሺ௠ݍ ׬൤ ൨

ሻݐሺ௠ݍ

൨ ൅ ቂ

0

1

ቃ ݎ௤ሺݐሻ

െ ൤ 0 1

െ߱௤

ଶ െ ߠ෨

௤ଵሺݐሻ െ2ߞ௤߱ ௤െ ߠ෨௤ଶሺݐሻ

ሻݐሺݍ ׬൤ ൨

ሻݐሺݍ

൨ െ ቂ

0

1

ቃ ቀݎ௤ሺݐሻ െ ߪ௤෤ሺݐሻቁ (38)

Equation (38) can be re-arranged to form the following expression for the pitch axis error dynamics. 

ሶ෤ݔ

௤ሺݐሻ ൌ ܣ೜௠

೜௠ܤ ൅ ሻݐሺ෤௤ݔ

Θ෩௤

்

೜௠ܤ ൅ ሻݐሺ௤ݔሻݐሺ

(39) ሻݐሺ෤௤ߪ

Define the following Lyapunov function according to equation (40), where ܲ௤ ൌ ܲ௤

் ∈ Թଶൈଶ and is 

positive definite. Note also that the positive definite matrix Γఏ೜

∈ Թଶൈଶ and that ߛఙ೜∈ Թା. The matrices 

Γఏ೜

 and ܲ௤ are defined in equations (41) and (42) respectively. 

ܸ௤ሺݐሻ ൌ ݔ௤෤

்ሺݐሻܲ௤ݔ௤෤ሺݐሻ ൅ Θ෩௤

்

ሺݐሻΓఏ೜

ିଵΘ෩௤ሺݐሻ ൅

௤෤ߪ

ଶሺݐሻ

(40) ೜ఙߛ

 

Γఏ೜ ൌ ቈ

ߛఏ೜భ 0

0 ߛఏ೜మ቉ (41)

 

ܲ௤ ൌ ቈ

௤݌௤݌ ଵଵ

ଵଶ

௤݌௤݌ ଵଶ

ଶଶ቉ (42)

Differentiate equation (40). 

ܸሶ

௤ሺݐሻ ൌ ݔ෤ሶ௤௤෤ݔ ൅ ሻݐሺ෤௤ݔ௤ܲሻݐሺ்

்ሺݐሻܲ௤ݔ෤ሶ

௤ሺݐሻ ൅ 2Θ෩௤

்

ሺݐሻΓఏ೜

ିଵΘ෩ሶ

௤ሺݐሻ ൅

ሶ෤ߪሻݐሺ෤௤ߪ2

௤ሺݐሻ

೜ఙߛ

(43)

Substitute ݔ෤ሶ

௤ሺݐሻ and ݔ෤ሶ௤

்ሺݐሻ from equation (39) to get equation (44). 

ܸሶ

௤ሺݐሻ ൌ ݔ௤෤

೜௠ܣሻݐሺ்

௤ݔ ൅ ሻݐሺ෤௤ݔ௤ܲ ்

்ሺݐሻΘ෩௤ሺݐሻܤ೜௠

೜௠ܤሻݐሺ෤௤ߪ ൅ ሻݐሺ෤௤ݔ௤ܲ ்

ሻݐሺ෤௤ݔ௤ܲ ்

௤෤ݔ ൅

೜௠ܣ௤ܲሻݐሺ்

௤෤ݔ ൅ ሻݐሺ෤௤ݔ

೜௠ܤ௤ܲሻݐሺ்

Θ෩௤

்

௤෤ݔ ൅ ሻݐሺ௤ݔሻݐሺ

೜௠ܤ௤ܲሻݐሺ்

ሻݐሺ෤௤ߪ

൅ 2Θ෩௤

்

ሺݐሻΓఏ೜

ିଵΘ෩ሶ

௤ሺݐሻ ൅

ሶ෤ߪሻݐሺ෤௤ߪ2

௤ሺݐሻ

(44) ೜ఙߛ

Rearrange equation (44) to combine like terms, recognizing that ݔ௤෤

்ሺݐሻܲ௤ܤ ೜௠is a scalar and may be 

moved appropriately within the expression. 

ܸሶ

௤ሺݐሻ ൌ ݔ௤෤

்ሺݐሻ ቀܣ೜௠

் ܲ௤ ൅ ܲ௤ܣ೜௠ቁ ݔ௤෤ሺݐሻ ൅ 2Θ෩௤

்

௤෤ݔሻݐሺ

೜௠ܤ௤ܲሻݐሺ்

ሻݐሺ௤ݔ

௤෤ݔሻݐሺ෤௤ߪ2 ൅

೜௠ܤ௤ܲሻݐሺ்

൅ 2Θ෩௤

்

ሺݐሻ߁ఏ೜

ିଵΘ෩ሶ

௤ሺݐሻ ൅

ሶ෤ߪሻݐሺ෤௤ߪ2

௤ሺݐሻ

(45) ೜ఙߛ

The Lyapunov stability criteria of ܸሶ

௤ሺݐሻ ൑ 0 is partially satisfied by equation (45) if the matrix ܲ௤ is 

computed according to the Lyapunov equation ܣ೜௠

் ܲ௤ ൅ ܲ௤ܣ ೜௠ൌ െܳ௤, where ܳ௤is positive definite 
12

matrix of tunable design parameters. The Lyapunov stability proof is completed by defining the following 

adaptive parameter update laws for substitution into equation (45). 

Θ෩ሶ

௤ሺtሻ ൌ ൬Θሶ௤ െ Θ෡ሶ௤ሺtሻ൰ ≅ െΘ෡ሶ௤ሺtሻ ൌ െ ቈ

ߛఏ೜భ 0

௤෤ݔ ቉మ೜ఏߛ 0

೜௠ܤ௤ܲሻݐሺ்

(46) ሻݐሺ௤ݔ

 

ሶ෤ߪ

௤ሺݐሻ ൌ ቀߪሶ௤ െ ߪොሶ௤ሺݐሻቁ ≅ െߪොሶ௤ሺݐሻ ൌ െߛఙ೜௤෤ݔ

(47) ೜௠ܤ௤ܲሻݐሺ்

It should be noted that the assumption that the adaptive parameter rates of change are equal to the 

corresponding parameterization errors derivatives in equations (46) and (47) does not hold if the 

uncertainties are not constant or slowly changing as compared to the convergence rate of the adaptive 

parameter estimates. 

Roll Axis MRAC 

Roll axis tracking error is computed by subtracting the aircraft response from the desired dynamics of 

the reference model. 

ݔ௣෤ሺݐሻ ൌ ݌෤ሺݐሻ ൌ ݌௠ሺݐሻ െ ݌ሺݐሻ (48)

Differentiate equation (48) and substitute equations (22), (25) and (35). 

ሶ෤݌

ሺݐሻ ൌ ൣെ߱௣൧݌௠ሺݐሻ ൅ ሾ1ሿݎ௣ሺݐሻ െ ቀെ߱௣ െ ߠ෨

௣ሺݐሻቁ ݌ሺݐሻ െ ሾ1ሿ ቀݎ௣ሺݐሻ െ ߪ௣෤ሺݐሻቁ (49)

Rearrange equation (49) into the following expression for the roll error dynamics. 

ሶ෤݌

೛௠ܤ ൅ ሻݐሺ෤݌೛௠ܣ ൌ ሻݐሺ

෨ߠ

೛௠ܤ ൅ ሻݐሺ݌ሻݐሺ௣

(50) ሻݐሺ෤௣ߪ

Define the following Lyapunov function where ܲ௣, ߛఏ೛

 and ߛఙ೛ are positive non-zero scalars. 

ܸ௣ሺݐሻ ൌ ݌෤ଶሺݐሻܲ௣ ൅

෨ߠ

௣

ଶሺݐሻ

೛ఏߛ

൅

௣෤ߪ

ଶሺݐሻ

೛ఙߛ

(51)

Differentiate equation (51). 

ܸሶ

௣ሺݐሻ ൌ 2݌෤ሺݐሻܲ௣݌෤ሶ

ሺݐሻ ൅

෨ߠ2

௉ሺݐሻߠ෨ሶ௉ሺݐሻ

೛ఏߛ

൅

ሶ෤ߪሻݐሺ෤௉ߪ2

௉ሺݐሻ

೛ఙߛ

(52)

Substitute equation (50) into equation (52). 

ܸሶ

೛௠ܤ௣ܲሻݐሺ෤݌2 ൅ ೛௠ܣ௣ܲሻݐଶሺ෤݌2 ൌ ሻݐሺ௣

෨ߠ

೛௠ܤ௣ܲሻݐሺ෤݌2 ൅ ሻݐሺ݌ሻݐሺ௣

൅ ሻݐሺ෤௣ߪ

෨ߠ2

௉ሺݐሻߠ෨ሶ௉ሺݐሻ

೛ఏߛ

൅

ሶ෤ߪሻݐሺ෤௉ߪ2

௉ሺݐሻ

(53) ೛ఙߛ
13

Apply the scalar Lyapunov relationship for the roll axis, 2ܲ௣ܣ ೛௠ൌ െܳ௣ where ܳ௣ is a positive, nonzero scalar. Define the following adaptive parameter update laws for the roll axis. 

ሶ෨ߠ

௣ሺݐሻ ൌ ൬ߠሶ௣ െ ߠ෠ሶ௣ሺݐሻ൰ ≅ െߠ෠ሶ௣ሺݐሻ ൌ െߛఏ೛݌෤ሺݐሻܲ௣ܤ೛௠݌ሺݐሻ (54)

 

ሶ෤ߪ

௣ሺݐሻ ൌ ቀߪሶ௣ െ ߪොሶ௣ሺݐሻቁ ≅ െߪොሶ௣ሺݐሻ ൌ െߛఙ೛݌෤ሺݐሻܲ௣ܤ) ೛௠55(

The assumption regarding constant or slowly-changing uncertainties described in the pitch axis 

discussion also applies in the roll axis. 

MRAC Controller Implementation Details 

Before describing each of the different adaptive controllers, it is important to discuss several 

implementation details that are common across all three designs. These features address performance and 

robustness problems discovered in the piloted simulation during the process of selecting the tunable 

parameters ݌ and ߛ in equations (46), (47), (54) and (55). In essence they represent the necessary bridge 

between MRAC theory and practical application. 

Addressing Bias in the Pitch Axis 

During the initial implementation process, the presence of quasi-steady, non-zero signals during 

extended pitch maneuvers such as wind-up turns tended to prevent the adaptive parameters from 

converging to their ideal values. Improved adaptation was achieved by minimizing the influence of 

certain biased signals or by removing the biases directly. 

During constant pitch rate maneuvers, the input ׬ ݍሺݐሻ grows unboundedly and can quickly begin to 

dominate pitch axis adaptation, producing poor adaptation characteristics. One common implementation 

feature between all three MRAC designs is that the influences of the input ׬ ݍሺݐሻ and its associated 

adaptive parameter ߠ෠

௤ଵሺݐሻ are trivialized. The marginalization of these components, accomplished via the 

Γఏ೜

 and ܲ௤ matrices, effectively reduces the number of adaptive parameters in the pitch axis to one and 

similarly streamlines the input plane to consist of pitch rate feedback only. 

The learning rate ߛఏ೜భ for the ߠ෠

௤ଵሺݐሻ adaptive parameter is set much smaller, at least three orders of 

magnitude, than the learning rate ߛఏ೜మ for the ߠ෠

௤ଶሺݐሻ parameter. Similarly, the gain ݌௤

ଵଶ for the ׬ ݍሺݐሻ

input is designed to be much smaller, by at least two orders of magnitude, than the gain ݌௤

ଶଶ for the ݍሺݐሻ

input. These parameters were not set identically to zero to avoid violating the requirement of positive 

definiteness on Γఏ೜

 and ܲ௤. 

Removing the influence of ߠ෠

௤ଵሺݐሻ and ׬ ݍሺݐሻ improved the controllers’ adaptation characteristics in 

constant pitch rate maneuvers. However, there still remained a tendency for ߠ෠

௤ଶሺݐሻ to over-adapt during 

periods of quasi-steady, non-zero pitch rate. The reason for this becomes apparent by multiplying out the 

terms in equation (46) for ߠ෠ሶ

௤ଶሺݐሻ under the assumption that ݌௤

ଵଶ ൎ 0 to yield the expression in equation 

(56). 

ሶ෠ߠ

௤ଶሺݐሻ ൌ ߛఏ೜మ݌௤

ଶଶݍ෤ሺݐሻݍሺݐሻ (56)
14

It was observed, for example, that in a windup turn the achieved pitch rate was generally somewhat 

less than the reference model command, causing both ݍ෤ሺݐሻ and ݍሺݐሻ to be consistently greater than zero. 

By definition, ߛఏ೜మ and ݌௤

ଶଶ are also positive non-zero, resulting in steady positive growth of the adaptive 

෠ߠ parameter

௤ଶሺݐሻ. An examination of the aircraft dynamics in equation (32) reveals that positive increases 

෠ߠ in

௤ଶሺݐሻ correlate to reductions in closed-loop damping. This is consistent with the behavior observed in 

the piloted simulation, where the aircraft would lose damping during windup turns, eventually becoming 

unstable in pitch. It should be noted that this phenomenon was generally only observed in the two 

controller designs that did not include an estimation of the ߪො௤ሺݐሻ term. From equation (17) it can be seen 

that ߪො௤ሺݐሻ compensates for uncertainty in the loop gain, which would drive the error ݍ ෤to zero and avoid 

over-adaptation. 

To address over adaptation of the ߠ෠

௤ଶሺݐሻ during constant pitch rate maneuvers, a high-pass filter was 

applied to the terms ݍ෤ሺݐሻ and ݍሺݐሻ in equation (56). The same high-pass filter was applied to the pitch rate 

feedback term ݍሺݐሻ in the adaptive augmentation command of equation (30). 

Addressing Bias in the Roll Axis 

During extended steady-heading sideslip maneuvers in the piloted simulation, frequent overadaptation of the roll axis adaptive parameter ߠ෠

௣ሺݐሻ occurred, resulting in uncommanded roll excursions. 

The root cause was very similar to the bias issue with ߠ෠

௤ଶሺݐሻ described above, although the roll-axis issue 

was discovered first. Essentially, the steady non-zero roll stick input required to accomplish the sideslip 

maneuver produced a non-zero reference model command. However, in this maneuver the rudder pedals 

are used to prevent the airplane from rolling and to achieve the desired sideslip. This discrepancy between 

roll command and feedback produced a large non-zero roll error, which tended to drive the value of ߠ෠

௣ሺݐሻ

to extreme values if the roll rate was not kept precisely zero and ultimately a large roll acceleration 

command resulted. 

Following the discovery of this anomaly, a high-pass filter for the roll axis was discussed, but 

eliminated from consideration due to uncertainty over how it might impact other aspects of roll-axis 

performance. In keeping with the philosophy of a minimum complexity controller, the seemingly simpler 

approach was selected of fading the roll axis tracking error to zero as a function of rudder pedal 

displacement. A gain on the error was linearly reduced from one to zero over the first 50 percent of the 

available rudder pedal displacement, and held at zero for displacements larger than 50 percent. This 

solution effectively prevented further uncommanded roll excursions during steady-heading sideslips. 

Later in the tuning process when high-pass filters were being added to the pitch axis to address a 

similar problem, high-pass filters were again considered for the roll axis. However, because the existing 

rudder-pedal attenuation gain corrected the problems with steady-heading sideslips and no other issues 

were found in the roll axis during parameter tuning, high-pass filtering was not implemented in the roll 

axis. Ultimately, several events during flight research later pointed to high-pass filtering as a likely better 

solution than the one implemented. 

1. It was observed during 2g air-to-air tracking that some of the test pilots used rudder pedals more 

 extensively than anticipated, causing the rudder pedal attenuation gain to adversely impact roll-

 axis adaptation during these maneuvers. 

2. During simulation training of a NASA guest (non-program) pilot, uncommanded rolls 

 occurred repeatedly during windup turns with a simulated failed stabilator. The cause was 
15

 attributed to the unusually smooth and low-gain technique of this particular pilot, 

 producing a bias scenario similar to the one described previously for ߠ෠

௤ଶሺݐሻ. 

3. A roll-axis pilot-in-the-loop oscillation occurred during a formation tracking maneuver in 

 which the wingtip vortex of the lead airplane produced a roll bias on the test aircraft (ref. 13). 

Error Signal Time Correlation 

In the initial implementation, system transport delays and structural filter phase losses on measured 

feedback parameters produced systemic tracking error in both axes. The calculations for tracking error are 

given by equations (37) and (48) for pitch and roll respectively. Even under ideal aircraft responses that 

matched the desired reference model dynamics, tracking error persisted due to phase differences between 

the command and feedback. This persistent error tended to overdrive the adaptive gains, lower 

performance, and reduce robustness to time delays. 

Multi-frame first-order holds were placed on ݍ௠ሺݐሻ and ݌௠ሺݐሻ to better align those signals with their 

corresponding feedback signals. Each signal was delayed by 50 milliseconds, an amount that was 

determined empirically in the piloted simulation during the adaptive parameter tuning process. 

Miscellaneous Features 

Additional features that were integrated into the control system are as follows. Integration limits were 

applied to the adaptive parameters to prevent excessive control commands in the event of over-adaptation. 

Limits were set slightly higher than the largest parameter values that were observed during piloted 

simulation evaluation of simulated failure/damage scenarios. 

Some control over the adaptive augmentation was given to the pilot, including the ability to turn the 

adaptive controller on and off, and to freeze the adaptive parameters through the use of a button on the 

control stick. These features fulfilled two purposes. First, the results of flight experimentation were 

enhanced by the ability to conduct back-to-back comparisons of a given configuration with and without 

adaptation. Freezing the weights allowed the pilot to conduct identification maneuvers, such as frequency 

sweeps with the control stick, without altering the state of the adaptive controller. The second advantage 

of these features was to study pilot interaction with the adaptive control system. Some questions of 

interest include evaluation of pilot-initiated adaptive control versus automatic initiation of adaptation, and 

whether it is advisable to freeze the adaptive controller once adequate tracking has been restored. 

MRAC Designs of Varying Complexity 

Three MRAC controllers were implemented and tested to explore the relationships between adaptive 

controller complexity and performance, robustness, and handling qualities. The three controllers were 

built upon each other by adding levels of complexity rather than implementing three entirely independent 

designs. In this way, the positive and negative effects of the additional complexity can be studied. 

Free design parameters were tuned in a piloted simulation for acceptable response when no failures 

were present as well as across a wide variety of simulated failures and damage scenarios. Although there 

were many parameters common to all three controllers, these were tuned differently for each controller as 

the additional complexity components tended to significantly affect performance, and the parameter 

values were adjusted accordingly. Aggressive pilot inputs were used during tuning to stress the system, 

and parameters were adjusted to achieve the fastest adaptation possible without introducing undesirable 

side effects such as over-adaptation and actuator rate limiting. Additional metrics used during the tuning 
16

process included the integral of the tracking error, empirically-determined gain and time delay margins, 

and pilot comments. 

The adaptive parameter update laws given in equations (46), (47), (54) and (55) represent the basic 

starting point in the implementation of the three adaptive controllers for the experiment. Differences 

between the three adaptive controllers are described in the following sections. 

Simple MRAC (sMRAC) 

Two of the three controllers have essentially a single adaptive parameter in each axis, where ߠ෠

௤ଵሺݐሻ is 

trivialized in the pitch axis as described earlier, and ߛఙ೜

 and ߛఙ೛ are set to zero to eliminate the adaptive 

parameters ߪො௤ሺݐሻ and ߪො௣ሺݐሻ. The first of these designs, sMRAC, makes use of the simple adaptive 

parameter update laws as they are described in equations (46) and (54). 

As an example, the pitch axis adaptive update law in equation (46) simplifies to equation (57) under 

the assumption that the off-diagonal terms of the tunable design matrix ܳ௤ are zero. See Appendix A, 

Calculation of the ܲ௤ Matrix for solutions to the Lyapunov equation. For all three controllers, ܳ௤ was 

chosen to be diagonal, although there is no requirement for it to be so. The gains ݍ௤

ଵଵ and ݍ௤ଶଶ are the 

upper-left and lower right elements, respectively, of ܳ௤. These gains were set as ݍ௤

ଵଵ ൌ 0.01 and ݍ௤ଶଶ ൌ 1

for all three controllers so that the influence of ݍ෤ሺݐሻ is approximately three orders of magnitude greater 

than that of ׬ ݍ෤ሺݐሻ. The learning rate for sMRAC was selected as ߛఏ೜మ ൌ 1. 

ሶ෠ߠ

௤ଶሺݐሻ ൌ ଵ

ଶ

ߛఏ೜మ ቌݍ௤

ଵଵ ቆ 1

߱௤

ଶቇݍ׬෤ሺݐሻ

௤ݍ൭൅ 

ଵଵ ቆ 1

߱௤

ଶቇ ቆ 1

௤߱௤ߞ2

௤ݍ൅ቇ

ଶଶ ቆ 1

௤߱௤ߞ2

ቇ൱ ݍ෤ሺݐሻቍݍሺݐሻ

(57)

MRAC with Optimal Control Modification and Normalization (onMRAC) 

The onMRAC controller incorporates an optimal control modification term (ref. 14) and 

normalization into the update laws, described by equations (58) and (59). 

൥

ሶ෠ߠ

௤ଵሺݐሻ

ሶ෠ߠ

௤ଶሺݐሻ

൩ ൌ Γఏ೜

௤ݔ൅1

்ሺݐሻܰఏ೜

ሻݐሺ௤ݔ

௤෤ݔቆ

೜௠ܤ௤ܲሻݐሺ்

ሻݐሺ௤ݔ

െ ቈ

ߥఏ೜భ 0

௤ݔሻݐሺ௤ݔ ቉మ೜ఏߥ 0

்ሺݐሻ ቈ

෠ߠ

௤ଵሺݐሻ

෠ߠ

௤ଶሺݐሻ

೜௠ܤ ቉೜௠ܣ௤ܲ ்

ିଵ ܤ೜௠ቇ (58)

 

ሶ෠ߠ

௣ሺݐሻ ൌ ߛఏ೛

1൅݌ଶሺݐሻܰఏ೛

෠ߠሻݐଶሺ݌೛ఏߥ െ ሻݐሺ݌೛௠ܤ௣ܲሻݐሺ෤݌ቀ

೛௠ܤሻݐሺ௣೛௠ܣ௣ܲ ்

ିଵ ܤ೛௠ቁ (59)

Optimal control modification (OCM) is an update law modification term that helps to alleviate overadaptation and dampen oscillations in the adaptive parameters. In equations (58) and (59), the first term 
17

within the parentheses is the standard update law and the second term is the optimal control modification. 

Taking the pitch axis as an example, an examination of the elements of the OCM term reveals that 

೜௠ܤ೜௠ܣ௤ܲ ்೜௠ܤ ଵି

 is a scalar with a value of െభ

మ

௤ݍ

ଵଵ, where ݍ௤ଵଵ is the upper-left element of the positivedefinite diagonal matrix ܳ௤. The tunable OCM gain ߥఏ೜భ was set to zero since the adaptive parameter ߠ෠

௤ଵ

was essentially zeroed out. The OCM expression for the ߠ෠

௤ଶሺݐሻ update law becomes 

൅భ

మ

௤ݍ

ଵଵߥఏ೜మߠ෠

௤ଶሺݐሻݍଶሺݐሻ under the assumption that ߠ෠௤ଵሺݐሻ ≅ 0. In the final design, ݍ௤

ଵଵ ൌ 0.01 and 

ߥఏ೜మ ൌ െ200 so that the OCM term was simply െߠ෠

௤ଶሺݐሻݍଶሺݐሻ. 

Normalization suppresses adaptation during large dynamic maneuvers through attenuation of the 

learning rate by the inverse of the weighted square of the feedback parameters. Squaring the input vector 

ensures that it is always positive, and weighting allows the designer to control the relative influence of 

each feedback term on the normalizing behavior. In the pitch axis onMRAC update law, the relative 

influence of the ׬ ݍሺݐሻ term was kept very low. The normalization terms are also biased by a constant of 

one to prevent a divide-by-zero when the feedback vectors are zero. Inclusion of OCM and normalization 

allowed the learning rate ߛఏ೜మ to be increased from 1 to 50, enabling faster adaptation. 

MRAC plus Adaptation for Disturbances (onMRAC+) 

The third and most complex of the three controllers maintained the same update laws and tuning 

parameters as onMRAC for ߠ෠

෠ߠ ,ሻݐଵሺ௤

௤ଶሺݐሻ and ߠ෠௣ሺݐሻ while adding update laws for ߪො௤ሺݐሻ and ߪො௣ሺݐሻ, 

given by equations (60) and (61). 

ොሶߪ

௤ሺݐሻ ൌ ߛఙ೜

௤ݔ൅1

்ሺݐሻܰఙ೜

௤ݔ

்ሺݐሻ

௤෤ݔ

೜௠ܤ௤ܲሻݐሺ்

(60)

 

ොሶߪ

௣ሺݐሻ ൌ ߛఙ೛

1൅݌ଶሺݐሻܰఙ೛

೛௠ܤ௣ܲሻݐሺ෤݌ቀ೛ఙߥ ൅೛௠ܤ௣ොߪ೛௠ܣ௣ܲ ்

ିଵ ܤ೛௠ቁ (61)

Normalization was found during the design process to improve the adaptation characteristics of both 

ߪො௤ሺݐሻ and ߪො௣ሺݐሻ. Without normalization, high-rate pilot inputs produced excessively large transient values 

of both terms. Tuning of the learning rates ߛఙ೜

 and ߛఙ೛ was insufficient to eliminate these transients 

without simultaneously making the adaptive parameters ineffective. Normalization allowed sufficiently 

fast adaptation without excessive transients. 

Note that an OCM term is present in the update law for ߪො௣ሺݐሻ, but not for ߪො௤ሺݐሻ. In the initial design, 

it was not clear whether OCM was necessary in the calculation of the disturbance adaptive parameters. In 

the interest of keeping the controller as simple as possible, OCM was not included in either. During the 

first research flight, a persistent 1 Hz, ±0.5 deg/s oscillation was present in roll rate and was also observed 

in the value of ߪො௣ሺݐሻ. Implementation of OCM in that parameter’s update law eliminated the oscillation 

on all of the remaining flights. Because a similar oscillation was not observed in ߪො௤ሺݐሻ, no OCM term was 

added for that parameter. During handling qualities maneuvers at the end of the flight phase of the 

experiment, interactions between the pilot and the pitch axis onMRAC+ controller were observed that 

likely adversely affected the pilot’s rating of the system (refs. 13, 15). Subsequent simulation studies 

indicated that the addition of an OCM term to the ߪො௤ሺݐሻ update law would eliminate these interactions. 
18

Summary 

Three model reference adaptive controllers, each representing an incremental increase in complexity, 

were designed and implemented as augmentation systems to a nonlinear dynamic inversion controller on 

a NASA F-18 test aircraft. The controllers were part of an experiment intended to evaluate the effect of 

adaptive controller complexity on performance, robustness, and pilot handling qualities in the event of 

aircraft failures or damage. The simplest controller is derived from basic MRAC theory and contains 

essentially a single adaptive parameter each in the pitch and roll axes. The more complex controllers 

expand upon the update laws and add a second adaptive parameter in each axis. Special design 

modifications are described to address biased measurements and other considerations required for 

implementation on a full-scale, piloted aircraft. Flight test results for the controllers are described in 

references 13 and 15. 

 
19

Appendix A 

Calculation of the ࢗࡼ Matrix 

The Lyapunov equation is given in equation (A1). 

೜௠ܣ

் ܲ௤ ൅ ܲ௤ܣ ೜௠ൌ െܳ௤ (A1)

For a second-order system in the form of equation (12) and a diagonal ܳ matrix, the Lyapunov 

equation is written as follows. 

ቈ

0 െ߱௤

ଶ

௤߱௤ߞ2െ 1

௤݌ቈ቉ ௤݌ ଵଵ

ଵଶ

௤݌௤݌ ଶଵ

ଶଶ቉ ൅ ቈ

௤݌௤݌ ଵଵ

ଵଶ

௤݌௤݌ ଶଵ

ଶଶ቉ ൤ 0 1

െ߱௤

ଶ െ2ߞ௤߱௤

൨ ൌ ቈ

௤ݍെ

ଵଵ 0

௤ݍെ 0

ଶଶ቉ (A2)

Expanding equation (A2) gives four equations with the four unknowns ݌௤

௠௡. 

െ߱௤

௤݌ଶ൫௤݌ ൅ ଵଶ

ଶଵ൯ ൌ െݍ௤ଵଵ (A3a)

 

௤݌

ଵଵ െ ߱௤

௤݌ଶ௤݌௤߱௤ߞ2 െ ଶଶ

ଵଶ ൌ 0 (A3b)

 

௤݌

ଵଵ െ ߱௤

௤݌ଶ௤݌௤߱௤ߞ2 െ ଶଶ

ଶଵ ൌ 0 (A3c)

 

௤݌௤݌ ൅ ଵଶ௤݌௤߱௤ߞ4 െ ଶଵ

ଶଶ ൌ െݍ௤ଶଶ (A3d)

It is clear from equations (A3b) and (A3c) that ݌௤

ଵଶ ൌ ݌௤ଶଵ, making the ܲ௤ matrix symmetric. From 

equation (A3a), the off-diagonal terms can be determined. 

௤݌

ଵଶ ൌ ݌௤ଶଵ ൌ ݍ௤ଵଵ ቆ 1

2߱௤

ଶቇ (A4)

Substitution of equation (A4) into equation (A3d) gives the expression for ݌௤

ଶଶ. 

௤݌

ଶଶ ൌ ݍ௤ଵଵ ቆ 1

߱௤

ଶቇ ቆ 1

௤߱௤ߞ4

௤ݍ൅ቇ

ଶଶ ቆ 1

௤߱௤ߞ4

ቇ (A5)

Finally, equations (A4) and (A5) can be inserted into equation (A3b) or (A3c) to find ݌௤

ଵଵ . 

௤݌

ଵଵ ൌ ݍ௤ଵଵ ቆ

௤ߞ4 ൅ 1

ଶ

௤߱௤ߞ4

௤ݍ൅ቇ

ଶଶ ቆ

߱௤

௤ߞ4

ቇ (A6)
20

References 

1. Whitaker, H. P., “Massachusetts Institute of Technology Presentation,” Proceedings of the Self 

Adaptive Flight Control Systems Symposium, Wright Air Development Center, January 13-14, 

1959, pp. 58-78. 

2. Schuck, H. O., “Honeywell’s History and Philosophy in the Adaptive Control Field,” Proceedings 

of the Self Adaptive Flight Control Systems Symposium, Wright Air Development Center, January 

13-14, 1959, pp. 123-145. 

3. NASA Flight Research Center Staff, “Experience with the X-15 Adaptive Flight Control System,” 

NASA TN D-6208, 1971. 

4. Thompson, Milton O., and James R. Welsh, “Flight Test Experience with Adaptive Control 

Systems,” Advanced Control System Concepts, AGARD CP No. 58, AGARD Joint Symposium of 

the Guidance and Control Panel, and the Flight Mechanics Panel of AGARD, Oslo Norway, 

September 3-5, 1968, pp. 141-147, 1970. 

5. Monaco, J., D. Ward, R. Barron, and R. Bird, “Implementation and Flight Test Assessment of an 

Adaptive, reconfigurable Flight Control System,” AIAA 97-3738, 1997. 

6. Bosworth, John T., and Peggy S. Williams-Hayes, “Stabilator Failure Adaptation from Flight Tests 

of NF-15B Intelligent Flight Control System,” Journal of Aerospace Computing, Information, and 

Communication, Vol. 6, March, 2009, pp. 187-206. 

7. Burken, John J., Curtis E. Hanson, James A. Lee, and John T. Kaneshige, “Flight Test Comparison 

of Different Adaptive Augmentations to Fault Tolerant Control Laws for a Modified F-15 Aircraft,” 

AIAA 2009-2056, 2009. 

8. Krishnakumar, Kalmanje, “A Request for Information in Flight Validation of Adaptive Control to 

Prevent Loss-of-Control Events,” Solicitation Number: NNH09ZEA002L, NASA Headquarters 

Office of Procurement, April 2009. 

9. Greenwood, Donald T., Principles of Dynamics, Prentice Hall Inc., Upper Saddle River, New 

Jersey, 1988. 

10. Miller, Christopher J., “Nonlinear Dynamic Inversion Baseline Control Law: Architecture and 

Performance Predictions,” AIAA 2011-6467, 2011. 

11. Ioannou, Petros A., and Jing Sun, Robust Adaptive Control, Prentice Hall Inc., Upper Saddle River, 

New Jersey, 1996. 

12. McRuer, Duane., Irving Ashkenas, and Dunstan Graham, Aircraft Dynamics and Automatic 

Control, Princeton University Press, Princeton, New Jersey, 1973. 

13. Hanson, Curt, Jacob Schaefer, John J. Burken, Marcus Johnson, and Nhan Nguyen, “Handling 

Qualities Evaluations of Low Complexity Model Reference Adaptive Controllers for Reduced Pitch 

and Roll Damping Scenarios,” AIAA 2011-6607, 2011. 
21

14. Nguyen, Nhan T., “Asymptotic Linearity of Optimal Control Modification Adaptive Law with 

Analytical Stability Margins,” AIAA 2010-3301, 2010. 

15. Schaefer, Jacob, Curt Hanson, Marcus A. Johnson, and Nhan Nguyen, “Handling Qualities of 

Model Reference Adaptive Controllers with Varying Complexity for Pitch-Roll Coupled Failures,” 

AIAA 2011-6453, 2011.