| Copyright © 2009. National Academy of Sciences. All rights reserved. Terms of Use and Privacy Statement |
Below are the first 10 and last 10 pages of uncorrected machine-read text (when available) of this chapter, followed by the top 30 algorithmically extracted key phrases from the chapter as a whole.
Intended to provide our own search engines and external engines with highly rich, chapter-representative searchable text on the opening pages of each chapter.
Because it is UNCORRECTED material, please consider the following text as a useful but insufficient proxy for the authoritative book pages.
Do not use for reproduction, copying, pasting, or reading; exclusively for search engines.
OCR for page 721
24~ Symposium on Naval Hydrodynamics
Fukuoka, JAPAN, 8-13 July 2002
Using Recursive Neural Networks for
Blind Predictions of Submarine Maneuvers
D. Hess (Naval Surface Warfare Center, USA) and
W. Faller (Anolied Simulation Technologies, USA)
- x--rr
ABSTRACT
The use of a Recursive Neural Network
(RNN) maneuvering simulation tool for the prediction
of blind submarine maneuvers is described. Inputs to
the simulation are the controls acting on the vehicle
such as propeller rotation speed, rudder and sternplane
deflection time histories and the initial conditions. The
outputs are time histories of three linear and three
angular velocity components. These output data can be
integrated to recover trajectory and attitude, and
differentiated to determine the accelerations acting on
the vehicle.
This simulation effort is in response to the
ONR Maneuvering Simulation Challenge in which
several participants from Government and private
organizations provided predictions of the maneuvering
behavior of a Radio-Controlled Model (RCM)
submarine. The RCM conducted a variety of
maneuvers in a specially equipped basin at the Naval
Surface Warfare Center, Carderock Division, in
Bethesda, MD, USA (NSWCCD). A large amount of
the experimental data was provided to each participant,
then each was asked to provide predictions for a
separate series of 34 blind maneuvers. A blind
maneuver is one for which only the initial conditions
and the controls directing the vehicle are provided, and
each participant was required to provide predictions of
the trajectory, attitude, velocities and accelerations for
the ensuing maneuver. An independent arbitrator
graded each of the blind maneuvers and scores of
Excellent, Good, Fair and Poor were issued. The RNN
simulation effort received 32 Good grades and 2 grades
of Fair. This was the highest total score obtained by
any participant for the blind predictions. This paper
describes the RNN simulation effort and a sampling of
the results.
INTRODUCTION
The U.S. Office of Naval Research (ONR)
sponsored a series of experiments in March & May
2000 using a free-running, radio-controlled submarine
model (ONR Body 11. The purpose of the
experimental program was to support the continuing
development and validation of various codes (CFD and
otherwise) for submarine maneuvering simulation. The
existence of a large experimental database permitted
the invitation of several groups from Government
research facilities and other selected agencies to
participate in a Maneuvering Simulation Challenge.
The challenge was an effort to quantify the current
state-of-the-art in submarine maneuvering simulation
and to categorize the strengths and weaknesses of
current codes with the intent to guide future research
efforts.
Each participant was provided the geometric
and physical properties of the model along with a large
database of 78 experimental maneuvers. For each
maneuver, the data set contained complete time
histories of the controls acting on the vehicle: rudder
and sternplane positions and propeller rotation speed;
and the response of the vehicle: trajectory and attitude,
linear and angular velocities and accelerations. Each
participant was able to use these 78 data sets in any
manner deemed necessary to prepare their method to
make predictions for a second set of 34 maneuvers.
Specifically, all participants were asked to provide
trajectory, attitude, velocity and acceleration
predictions for a set of 34 maneuvers for which only
the initial conditions and the time histories of control
surface positions and propeller rotation speed were
made available. Both data sets included constant
heading runs, vertical and horizontal overshoots and
controlled and fixed plane turns (many with combined
deflection of multiple appendages), and thereby
demonstrated a wide range of the maneuvering
capabilities of the vehicle. The 34 blind maneuver
predictions represented the crux of the challenge, and
an independent arbitrator, not affiliated with any of the
participants, graded the results from each contributor.
Several error metrics were applied to each predicted
variable for a given maneuver, and the results were
summarized into a single grade of Excellent, Good,
Fair or Poor for each maneuver. The participants used
such techniques as: unsteady Reynolds-Averaged
Navier Stokes (RANS) codes, methods employing
OCR for page 722
2
lifting line theory, modified potential flow codes and
neural networks.
This paper describes the methods that were
used and the predictions that were submitted by the
Neural Network Development Laboratory (NNDL) at
the Naval Surface Warfare Center (NSWCCD) using
Recursive Neural Networks (RNNs). The NNDL
submitted predictions for all 78 of the known
maneuvers and all 34 blind maneuvers. Only the blind
maneuvers were graded, and the results were grades of
Good for 32 of the maneuvers and Fair for the other 2
maneuvers. The predictions that received a grade of
Fair were both constant heading runs, for which the
submarine traveled in a straight path at constant speed
and did not maneuver. Thus, from a maneuvering
point of view, these are the least interesting. None of
the participants obtained the top grade of Excellent for
any maneuvers, and the overall performance by neural
networks proved to be oustanding relative to that of the
other contributors. Because the efforts of each of the
participants were not funded, the NNDL devoted a
modest amount of time, 3 man-weeks, to develop the
112 maneuver predictions, and no additional time was
spent in an effort to optimize the results. The solutions
were developed on PC-based platforms requiring
approximately 200 CPU hours to train; however. the
trained neural network produced the predictions faster
than real time requiring a fraction of a second per
prediction.
The Neural Network Development Laboratory
was established at the Naval Surface Warfare Center
(NSWC) in 1995 with the directive to apply neural
network technology as a predictive tool to problems of
interest to the Navy. The subsequent development of an
RNN-based simulation tool for submarine maneuvering
was documented in (Faller, et al., 1997) and (Faller, et
al., 1998a). RNN simulations have been created using
data from both model and full-scale submarine
maneuvers. In the latter case, incomplete data
measured on the full-scale vehicle was augmented by
using feedforward neural networks as virtual sensors to
intelligently estimate the missing data (Hess, et al.,
1999~. The creation of simulations at both scales
permitted the exploration of scaling differences
between the two vehicles which is described in (Falter,
et al., 1998b). These techniques were also extended to
the development of simulations of ship maneuvers. An
initial formulation of the problem using an RNN model
for use with ships is described in (Hess, et al., 1998),
and the technique was further developed for accurate
predictions of tactical circle and horizontal overshoot
maneuvers (Hess, et al., 20~)~.
An RNN is a computational technique for
developing time-dependent nonlinear equation systems
that relate input control variables to output state
variables. A recursive network is one that employs
feedback; namely, the information stream issuing from
the outputs is redirected to form additional inputs to the
network. For this application, the RNNs are used to
predict the time histories of maneuvering variables of a
model submarine executing submerged maneuvers. Of
the 78 data files provided for development, 67 were
used to train the neural network and the remaining 11
were used for validation. Upon completion of training,
data from maneuvers not included in the set of training
maneuvers are input into the simulation and predictions
of the motion of the vehicle are obtained. The input
data consist of the initial conditions of the vehicle and
time histories of the control variables: propeller
rotation speed and rudder and sternplane deflection
angles. As the simulation proceeds, these inputs are
combined with past predicted values of the state
variables (outputs) to estimate the forces that are acting
on the vehicle. The resulting outputs are predictions of
the time histories of the state variables: linear and
angular velocity components which can then be used to
recover the remaining hydrodynamic variables required
to describe the motion of the vehicle. A schematic
representation of the technique is shown in Fig. 1.
Further details of the implementation follow in
subsequent sections, beginning first with a description
of the submarine model and the maneuvering data used
for training and validation.
RNN
-, . .j~,j...: ~ j~j.
Control ~ ~~ £omp~nant ~~ Hi ~> ~~ ~ my_ 1—
Signals ~~-f:~:Modt~ be ~ _K" _
, j ~ ~ j ~ ~ ~ ~ _
Fig. 1 RNN submarine simulation.
6 DOF Trajectory
State Variables & Angles
u(t)
v(t)
w(t)
P(t)
q(t)
r(t)
SUBMARINE MODEL & EXPERIMENTAL DATA
ONR funded the construction and operation of a
submarine radio-controlled model: ONR Body 1. The
vehicle has a length of approximately 6 m with an
axisymmetric hull and appendage arrangements as
shown in Figs. 2, 3 and 4. The motion of the
submarine is controlled by: a single centerline mounted
3-bladed propeller, upper and lower rudders, and port
and starboard sternplanes. The interior of the model is
flooded with the exception of a center mounted
electronics section, and the space that is occupied by
the motor and control surface servo-controllers.
Additionally, Styrofoam and lead are installed within
the hull as necessary to make the RCM neutrally
buoyant with no static pitch or roll angles. All of the
appendages mounted on the ONR Body 1 RCM are
NACA sections, and the sail is rigidly mounted to the
hull. The rudders and sternplanes have no splay angle,
so that at zero angle of deflection they
OCR for page 723
3
c=~
< ~~ ~ ~ ~ ::: ~~ ~ iS~ ~ ~: I: ~:~
$ _, ~,~ . ~ ~ ~ :: ~:~ ~ ~ ~ ~ ~ ' :i:
:.: .~:'~-~ i ' '
a"''.-:..:
~ ,,§< ~~ ___
suitable platform for use in verifying the performance
of computational tools intended to predict submarine
maneuvering characteristics.
The ONR Body 1 RCM is operated in the
Maneuvering and Seakeeping (MASK) Basin at
NSWCCD. A sketch of this facility (not to scale) is
shown in Fig. 5.
Fig. 2 ONR Body 1: View looking aft.
Fig. 3 ONR Body 1: Astern view.
_ . l
51 1 _~-
e_ _N ~~
_
r
it_
~ _
_
~ ''a'
fir_ ~
_ ~
_ ._
_ _ -
1
===:===
~:;~
Fig. 4 ONR Body 1: View of propeller assembly.
are aligned with the centerline of the axisymmetric
hull. The propeller used to drive the ONR Body 1
RCM is a modification of a commercially available 3-
bladed right-handed motorboat propeller. While not
containing any specific attributes of actual U.S.
submarines, the ONR Body 1 RCM was designed to
present computational model developers with similar
types of maneuvering challenges. Hence, it is a
Fig. 5 MASK Basin at NSWCCD.
This 110m long by 73m wide basin is 6.1 m deep
except for a 110 m by 15.25 m portion which is 10.7 m
deep. The basin is equipped with a large number of
hydrophores that serve as a tracking system to give the
longitudinal and lateral position of the vehicle within
0.5 cm anywhere within the basin. Further details of
the basin, hydrophore array and RCM operation may
be found in an NSWCCD report (Nigon, 1994~.
Submarine motion is described in terms of a
body coordinate system attached at a reference point
(the center of gravity here) of the vehicle. A diagram
describing the relationship of this system to a fixed
coordinate system is given in Fig. 6.
-
^~; _
Fig. 6 Standard submarine coordinate system.
In this diagram, x is the longitudinal axis and is
positive towards the bow, y is the transverse axis and is
positive to starboard and the vertical axis z is positive
downwards. Linear velocities in this coordinate system
are indicated by u, v and w, and angular velocities by p,
q and r. Accelerations are denoted similarly but with a
dot above the letter to indicate a time derivative.
OCR for page 724
4
Angles of roll, pitch and yaw are given by A, ~ and
By, respectively. The total speed of the vehicle is
referred to by U. The vessel's controls are a propeller
rotation speed, n, a rudder deflection angle, Or, and a
sternplane deflection angle, &. These are the data that
define the motion of the maneuvering vehicle and the
controls that propel and direct the vessel. They are
summarized below in Table 1. The shading for each
variable is added to indicate data that are directly
measured, variables that may be derived from directly
measured data and information not measured. For
RCM operation, all maneuvering data are available.
Position information, x and y, is acquired directly from
the tracking system, and depth, z, is determined from
an onboard pressure gage. The velocities, u, v and w,
and the accelerations, u, v and w are derived by
differentiating position information.
I inner
Angular
Trajectory / Angles
Velocities
Accelerations
Speed (Rel to fluid)
Controls
~ . 1
~~ _
~~—W
CEIL
Table 1 Required and measured data.
Key
EN ~[~3 ~ Measured
Derived
Unknown
An inertial navigation system on the vehicle directly
measures p, q and r and then automatically infers
attitude information from integration and angular
accelerations by differentiation. Encoders record
propeller rotation speed and appendage deflection
angles, and a small paddlewheel mounted on the hull
gives the total speed, U. of the vehicle. In addition, all
appendages, the sail and the propeller are fitted with
six degree-of-freedom dynamometers that record three
force and three moment components for each.
Time histories for all of the data specified in
Table 1 as well as the time variable (data were acquired
equally spaced at 25 Hz) were stored in a single data
file for each maneuver. The maneuvers included
constant heading runs, vertical and horizontal
overshoots and turns. Seventy-eight such data files
spanning all maneuver types were provided to each
participant. A second set of 34 data files, representing
blind maneuvers, contained the full time history for
each of the control variables and the first data point
only for each of the remaining variables described in
Table 1. These 34 maneuvers were chosen such that
the range of each of the variables lay within the bounds
of the parameter space defined by the 78-maneuver
database. For these 34 maneuvers, each participant
was asked to predict the missing data in the file, and
this was an effort requiring interpolation as opposed to
extrapolation.
The trained RNN simulation was used to
make predictions for each of the maneuver types
described above. Only a sampling of the results will be
shown in a later section. To give the reader a clear
picture of the overall performance of the simulation, a
validation run and two blind predictions, one graded
Good and one graded Good (but close to the Fair/Good
boundary) will be shown. Each of these maneuvers are
horizontal overshoots in order to permit comparisons of
relative quality. Therefore, before continuing to a
discussion of the RNN architecture, an explanation of a
Horizontal Overshoot maneuver is provided.
Horizontal overshoot maneuvers are
performed to characterize the handling response and
rudder effectiveness of the vehicle, and such quantities
as the heading overshoot angle, overshoot time, reach
and period are used to establish this behavior. For this
maneuver, the vehicle first travels in a straight line at
constant speed in order to establish a period of steady
initial conditions. This is followed by an order to
EXECUTE the maneuver. At EXECUTE, the rudder is
deflected to a predetermined entrance angle and
maintained in this position. The heading of the vehicle
changes in response to the rudder deflection. When the
heading has changed by a desired amount (typically
equal to the entrance angle), the rudder is reversed and
set to the rudder checking angle (usually equal to the
entrance angle). Because the vessel does not respond
instantly, the heading continues in the same direction
for a period of time before slowing and then reversing.
This overshoot angle measures the inherent ability of
the submarine to change direction.
Figure 7 shows superimposed plots of rudder deflection
angle and heading during a typical overshoot maneuver
and depicts useful terms. A description of the structure
of the neural networks follows next.
RNN ARCHITECTURE
The architecture of the neural network is illustrated
schematically in Fig. 8. The network consists of four
layers (groupings of nodes): an input layer, two hidden
layers and an output layer. Within each layer are
nodes, which contain a nonlinear transfer function that
operates on the inputs to the node and produces a
smoothly varying output. The binary sigmoid function
was used for this work; for input x ranging from
-or to or, it produces the output y that varies from
0 to 1 and is defined by
y (x) =—
l+e x
(1)
OCR for page 725
is
:
:
:.
a:!
:~a
Ad:
d.
Input
Vector
16 ~ ~ ~ ~ ~ 1~.
(fFr' ~
Or HE - US
Fig. 7 Horizontal overshoot maneuver.
Taken from (Stepson & Hundley, 1989)
and used with permission.
Feed Forward I Hidden Layer(s)
Connections I r Output Layer
Recursive (Recurrent)
Connections
Fig. 8 Recursive neural network.
Note that the nodes in the input layer simply serve as a
means to couple the inputs to the network; no
computations are performed within these nodes. The
nodes in each layer are fully connected to those in the
next layer by weighted links. As data travels along a
link to a node in the next layer it is multiplied by the
weight associated with that link. The weighted data on
all links terminating at a given node is then summed
and forms the input to the transfer function within that
node. The output of the transfer function then travels
along multiple links to all the nodes in the next layer,
and so on. So, as shown in Fig. 8, an input vector at a
given time step travels from left to right through the
network where it is operated on many times before it
finally produces an output vector on the output side of
the network. Not shown in Fig. 8 is the fact that most
nodes have a bias; this is implemented in the form of
an extra weighted link to the node. The input to the
bias link is the constant 1, which is multiplied by the
weight associated with the link and then summed along
with the other inputs to the node. For further details
concerning the operation of neural networks, the reader
is directed to (Haykin, 1994), and for recursive neural
networks to (Faller, et al., 1997~.
A recursive neural network has feedback; the
output vector is used as additional inputs to the
network at the next time step. For the first time step,
when no outputs are available, these inputs are filled
with initial conditions. The time step at each iteration
represents a step in dimensionless time, /\t'. Time is
rendered dimensionless using the vehicle's length and
its speed computed from the preceding iteration; thus,
the dimensionless time step represents a fraction of the
time required for the flow to travel the length of the
hull. The neural network is stepped at a constant rate
in dimensionless time through each maneuver. Thus,
an input vector at the dimensionless time, t', produces
the output vector at t'+ ~ t', where
t'+ /`t'= t'+ ~ ~ and /\t'= 0.05
(2)
Because submarine speed, U(t'), varies while length,
L, is constant, the spacing between samples, ~ t, must
vary in order that the dimensionless time step, tat',
remain constant at the chosen value of 0.05.
The network described here has 80 inputs.
Each hidden layer contains 60 nodes, and each of these
nodes uses a bias. The output layer consists of 6 nodes,
and does not use bias units. The network contains 126
computational nodes and a total of 8880 weights and
biases. The input vector, described in detail below,
consists of a series of forces and moments that act on
the vehicle. The network then predicts at each time
step dimensionless forms of the six state variables:
three linear velocity components, u, v, and w, and three
angular velocity components, p, q and r. Specifically,
the outputs are defined as
u'(t'+At') = ~ , ), Hand w' similar
'it'+ t'' pat'+ t')L ~ d ' i it
U(l ~
(3)
These velocity predictions are then used to compute at
each time step the remaining kinematic variables
described in Table 1: trajectory components, Euler
angles and accelerations.
The 80 contributions that form the input
vector are described as follows. Seven basic force and
moment terms describe the influence of the control
inputs and of time-dependent flow field effects: thrust
OCR for page 726
6
from the propeller, Tprop, lift from a deflected rudder,
L,, lift from a deflected sternplane, Lstp,, two
restoring moments resulting from disturbances in roll
and pitch, Kr and Mr. and two Munk moments acting
on the hull, MMU,~k and NMUnk. These terms are
developed from knowledge of the controls (propeller
rotation speed, sternplane and rudder deflection
angles), geometry of the vehicle, and from output
variables which are recursed and made available to the
inputs. A detailed description of these seven inputs is
reserved for the next section.
Additional inputs are obtained by retaining
past values of the seven basic inputs. This gives the
network memory of the force and moment history
acting on the vehicle and permits the network to learn
of any delay that can occur between the application of
the force or moment and the response of the vehicle.
One past value from the propeller thrust term is
retained to provide one additional input. For each of
the remaining 6 basic inputs, 10 past values are
retained as additional inputs. The number of past
values to keep is chosen empirically and appears to be
a function of the frequency response of the vehicle. In
this case the network is given information about past
events for a period of time required for the flow about
the vehicle to travel a distance of 0.5L.
Recursed outputs from the prior time step are
used as six additional contributions to the input vector.
Furthermore, the output vector from one previous time
step is also retained and made available as six
additional inputs. Knowledge of the output velocities
for two successive time steps permits the network to
implicitly learn about the accelerations of the vehicle.
A summary of the various contributions that make up
the input vector is provided in Table 2, and attention is
next directed to a detailed explanation of the seven
basic force and moment inputs.
FORCE AND MOMENT INPUTS
Neural networks have an amazing ability to
identify and track nonlinear behavior linking a set of
inputs to a set of outputs. This innate ability can be
further augmented, however, by carefully constructing
physically motivated input and output variables that
form a well-posed problem. The expressions defining
these variables need not be complex, but they must
define inputs that are well correlated with the outputs.
For this task, inputs to the neural network were cast in
the form of forces and moments acting on the vehicle:
thrust from the propeller, lift from deflected
sternplanes and rudders, restoring moments resulting
from disturbances in pitch and roll, and pitching and
yawing Munk moments acting on the hull. These
Input Description
Tp,op (t') ~ Tprop (t'—~ t')
Laud (t ), Lrud (t ~ t ), . . . , L,Ud (t 1 0A t )
Lstp, (t') ~ Lstpl (t' - ~ t'), . . . , Ls,p, (t' -10/` t')
K,(t'), K,(t'- At'), . . . , K,(t'- l OAt')
M,(t'), M, (t'- 1\ t'), . . . , M,(t'- 10/\ t')
MMUnk (t ), MMU,~ (t /\ t ) ,. . ., Mount (t —1 0A t3
NMU,,.. (t ), NMunk (t /\ t ), . . ., Noun,,. (t —1 0A t )
u'(t'), v'(t'), w'(t'), p'(t'), q'(t'), r'(t')
u'(t'- lit t'), v'(t'- /\ t'), w'(t'- ~ t'),
p (t'- /\ t'), q'(t'- ~ t'), r'(t'- ~ t')
Table 2 Summary of network inputs.
To
T:
11
_
6
6
80
terms were fashioned from the basic control variables:
propeller rotation speed, n; sternplane and rudder
deflection angles, As and Or. Also available for the
definition of the input terms are output variables from
the previous time step, which are recursed and made
accessible to the input side of the network. In this
manner a true simulation is preserved as only the
control histories and initial conditions of the vehicle
are required to run the simulation. The following
paragraphs describe the creation of each of the input
terms.
The first input to the network is a quantity
proportional to thrust from the propeller. A
dimensional analysis (Lewis, 1988) relates propeller
thrust coefficient, CT, to Froude number, Fr, advance
ratio, J. cavitation number, a, and Reynolds number,
Re, as follows:
CT = f (Fr, J. a, Re) , (4)
where CT = T/0.5PD2UA, Fr = gD/UA, J = UA/nD,
~ = (P—PV )/0.5PUA, Re = UA D/V, UA is the
advance speed of the propeller, D is the propeller
diameter and Pv is the vapor pressure of the fluid. An
approximation to this relationship may be found by
considering only the primary dependence of the thrust
coefficient upon the advance ratio. Accordingly, the
first input to the network is the reciprocal of the
advance ratio with U used as an approximation to UA .
OCR for page 727
7
1 nD
=
J U
The propeller rotation speed from the current time step
and ship speed from the previous time step are used in
Eq. 5 to generate the input term.
An approximation to the lift force generated
by the rudder forms the next input to the network.
Expressing the lift coefficient as
Cal =L,Ud/O.SpUA2 Ar,,d, the neural network is
instructed that lift varies with attack angle according to
Cat ~ sin Ctrud ~
where A,Ud is rudder area and Crud iS the local angle of
attack at the rudder. The latter quantity is calculated
from
ax = fir - tang ( v - r L; ) ~7'
When a transverse velocity component, v, or a yaw
angular velocity, r, is present, the simple result that
angle of attack equals rudder angle must be corrected.
The quantity L, is the axial distance from the center of
gravity to the rudder pivot. The rudder lift input is then
L,Ud ~ C,ud U sin (/rud ~
where C,ud was set to one for this work.
An input proportional to sternplane lift is
formed in the same fashion. The local angle of attack
at the sternplane is determined from
and the sternplane lift input becomes
Ls~p' ~ Cs~p' U 2 sin ors,p' , ( 10)
where Cs,p' was also set to one.
Summarizing, at a given time step, the local
angles of attack are computed from Eqs. 7&9 requiring
the control signals: rudder angle and sternplane angle,
and recursed outputs: u,v,w,q end r . Rudder and
sternplane inputs are then computed from Eqs. 8&10,
using U formed from recursed outputs u, v and w .
In addition to the propulsion and steering
inputs two righting moment inputs are provided to
account for recovery from disturbances in roll and
pitch. A study of metacentric stability reveals that the
righting arm in each case is proportional to the distance
from the center of gravity to a point known as the
transverse or longitudinal metacenter. For a
submerged submarine both of these quantities coincide
(5) with the center of buoyancy and the moment arm is the
distance BG . The product of the moment arm and the
weight of the vehicle creates a couple which acts to
restore the vehicle to its undisturbed orientation. These
moments may be approximated by
K, = -p g VBGsin~
_ ,
M, =-p g VBGsin~
where V is volumetric displacement and ~ and ~ are
angles of roll and pitch, respectively, and the subscript
(6) r is meant to denote restoring. The righting moment
inputs that were used are simpler versions of Eq. 11,
namely,
K, =BGsin~ and M, =BGsin~
where the neural network is allowed to determine the
leading constants.
To implement these restoring moments, roll
and pitch angles at the current time step were obtained
by advancing previous roll and pitch angles using
. (At'L)
~ =~i-t +~L U )
(8) (At'~)
(13)
The derivatives ~ and ~ are obtained by using
recursed angular velocities p, q and r and previously
computed roll and pitch angles from the equations
, w+q4 -p+ an ,,(rcos ,+qsin `,)
of,, = Us + tan ( ) , (9) o - q C°s ~i_~ - , sin of-.
The final basic inputs to the neural network
are moments which act on the hull of the vehicle
(Munk, 1920~. Consideration of a body moving
through a perfect fluid and creating a potential flow
reveals that fluid pressure acting on the hull will
produce a net moment on the vehicle. A real fluid with
viscosity and deviation from a potential flow
introduces modifications but does not substantially
change the resulting moment. The magnitude and
direction of the moment depend on the square of the
velocity of the vehicle and on the position of the vessel
relative to the direction of motion. The expressions
used to approximate these moments are
MMunk = U sin (x cos
NMunk = U sin ,l] cos ,3
where ax and ,l] are vehicle attack and drift angles
which are computed from
OCR for page 728
8
= tank (—) and ,6 = sine (—)
(16)
The implementation of these expressions as inputs to
the network requires ship speed and recursed values of
uandv.
The seven basic inputs to the network have
now been defined. They consist of the thrust from the
propeller, lift forces from deflected rudders and
sternplanes, restoring moments to disturbances in roll
and pitch and Munk moments acting on the submarine
hull. With the description of the architecture of the
neural network now complete, attention is directed to
the procedure by which the network was trained.
TRAINING PROCEDURE
As discussed in an earlier section, information
presented to the inputs of a neural network is modified
as it flows through the network by the presence of the
weights and by the nonlinear outputs of each of the
various nodes until it arrives at the output layer of the
network. Thus, at each time step, an input vector
produces a predicted output vector; this is then
compared to the actual (target) output vector
determined from the data. The difference between the
target and predicted output vectors is a measure of the
error of the prediction. The process by which the
network is iteratively presented with an input vector in
order to produce outputs that are then compared with a
desired output vector is known as training. The
purpose of training is to gradually modify the weights
between the nodes in order to reduce the error on
subsequent iterations. In other words, the neural
network learns how to reproduce the correct answers.
When the error has been minimized, training is halted,
and the resultant collection of weights that have been
established among the many connections in the
network represent the knowledge stored in the trained
neural net. Therefore, a training algorithm is required
to determine the errors between the predicted outputs
and the desired target values and to act on this
information to modify the weights until the error is
reduced to a minimum. The most commonly used
training algorithm, and the one employed here, is
called backpropagation which is a gradient descent
algorithm. The collection of input and corresponding
target output vectors comprise a training set, and these
data are required to prepare the network for further use.
Data files containing time histories of all of the
variables described in Table 1 for such maneuvers as
constant heading runs, vertical and horizontal
overshoots and turns formed the training sets.
After the neural network has been successfully
trained, the weights are no longer modified and remain
fixed. At this reprint the network may be presented with
an input vector similar to the input vectors in the
training set (that is, drawn from the same parameter
space), and it will then produce a predicted output
vector. This ability to generalize, that is, to produce
reasonable outputs for inputs not encountered in
training is what allows neural networks to be used as
simulation tools. To test the ability of the network to
generalize, a subset of the available data files must be
set aside and not used for training. These validation
data files then demonstrate the predictive capabilities
of the network.
A recursive neural network was trained in this
manner to predict the various maneuvers. The 78 data
files made available to each participant were
subdivided into a set of 67 training files and 11
validation data files. All maneuver types were
represented in each set. The network was initially
trained for 100,000 epochs, where an epoch is defined
as the presentation of the time series for all inputs and
outputs for all files in the training set. During this
training process, training is paused every 10 epochs,
and the network is tested for its ability to generalize.
To carry this out, all of the files in the training set are
combined with the validation files set aside earlier for
this purpose, and the entire set is presented to the
network. During this generalization phase, the weights
are not modified; the data from the files simply go
through the network to produce predicted outputs and
these are then compared with the measured outputs.
Use of the word output in this context implies any of
the kinematic variables described in Table 1 which are
computed at every time step. The errors are quantified
by computing three error measures at each time step for
each output. These errors are averaged over all of the
outputs and then further averaged over all of the time
steps in the file to produce measures of the
generalization error for each file in this testing set. The
errors are then further averaged over all of the files in
the testing set (training files and validation files) to
produce a measure of the generalization error over the
entire set at this stage of training. The error measures
are the absolute error and the dimensionless quantities:
average angle measure and correlation coefficient. The
equation for absolute error is
Abserr
Nfile Npts(Ifile) Nvars
.
-r -- x-.~ _ ~
NJ;le Npts ( IJile ) Nvars
~ ~ ~ | mj(n)-pj(n) |
Ifile=l n=l j=l
(17)
where mj (n) and pj (n) are the measured and
predicted values for the jth output at time step n.
OCR for page 729
9
The average angle measure was developed by
the Maneuvering Certification Action Team at
NSWCCD and is similar to a correlation coefficient in
that a value of one represents a perfect prediction and a
zero value denotes a poor prediction. More will be said
about this quantity in the next section. The
corresponding equations for average angle measure and
correlation coefficient are given by
~ Noble Nears
Nile . Nvars ,~ ~ AAM j, where
Npts ~ If lie ~
~ Dj(n) | cajun) |
AAM j = 1-—
Liz
. . .
Npts ( IJile ) 9
~ Dj(n)
~ = 1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
o
o
~j(n) = cos~'LI i,, (a, 1~, | 085
S 0.8
3 o.7s
0.7 _
D j(n) = in) + p, (n)
and
R . = -
1 Nfile Nears
R= ~ ~ R. where
Nile · Nvars ~le=l j=}
£ (m (n) - m ) ( p (n) - p )
n=l
1
Npts ( Iffily ) 2 _ Npts ( [file ) ~ _
~ (mi(n) - mj) ~ (pj(n) - pj)
n=1 n=1
1 Npts ( Idle )
m. = ~ m (n)
' Npts(Ifile) n=1
1 Npts ( 1,file )
Npts(Ifile) ~~
(19)
After training has concluded, one examines
the error measures as a function of the number of
epochs that have elapsed. The curves reveal an
optimum number of epochs at which training should
have ceased and where minimum absolute errors and
maximums in the dimensionless measures occur.
Periodically during training, every 100 epochs, the
weights are written to a data file. Neural network
training is then restarted, at the closest epoch for which
a weight set was saved, and continued to the desired
optimum stopping epoch.
An example of the evolution of the
generalization errors over the 100,000 epochs of the
training phase for the network simulation may be found
in Fig. 9. Of the 18 possible output variables described
in Table 1 for which generalization errors may be
computed, 3 were chosen as critical variables: u, z, and
'; .S
~ _ · .
~ =. ~ S , · ..
_ s!
20000 40000 60000
Epochs
AAM vs Epochs
80000 100000
.,
it_ ·~
0 20000
0.95 -
o.s 1
0.85 -
0.8 -
0.75 2
0.7
o
40000 60000 80000 100000
E Poe h 8
R vs Epochs
in_
-~
it_ 4. _~
~ ~ ~ ~ · .*
20000 40000 60000
Epochs
80000 100000
Fig. 9 Evolution of generalization errors.
B. The generalization performance of the network
was judged on the basis of these critical variables for
purposes of choosing the optimum stopping epoch.
The stopping epoch for this network was
selected as epoch 97,390 (vertical lines in Fig. 9~. The
network was restarted and then halted at this epoch.
The absolute error was 0.161, the average angle
measure was 0.964 and the correlation coefficient was
0.945. At this epoch the average angle measure
reached its maximum, and the absolute error and the
correlation coefficient were very close to their
minimum and maximum, respectively. Figure 9 shows
that after the first 15,000 epochs most of the points on
each plot are clustered in a relatively thin band. This
indicates that the solution is relatively smooth with
small changes to the 8880 weights and biases at each
epoch causing only minor fluctuations in errors.
OCR for page 730
:~e
:~ ~
-
~ ~ -
~ l~
Ilk
A:
- ~
~ - :
A:
he
A:
A:
Hi:
=
Ail.
~ ~ -en
her ~
~~ of/
.r OF' 'I'm
or
.~
Summarizing, a recursive neural network was
trained to predict constant heading runs, vertical and
horizontal overshoots and turns using the procedure
described in this section for the 78 data files made
available to each participant. The trained neural
network was then used to make predictions for all 34
blind maneuvers. A sampling of these results are
provided next.
RESULTS
Predictions for the 78 known maneuvers and
the 34 blind maneuvers were delivered to the
independent arbitrator: the Technical Director of the
Hydrodynamic/Hydroacoustic Technology Center
(H/HTC), located at NSWCCD. The arbitrator graded
only the blind maneuvers obtained from each
participant, and used a grading system that relied on
the Average Angle Measure.
The Average Angle Measure was developed
by the Maneuvering Certification Action Team at
NSWCCD in 1993-1994 (see July and August 1994
reports). This metric was created in order to quantify
(with a single number) the accuracy of a predicted time
series when compared with the actual measured time
series. The measure had to satisfy certain criteria; it
had to be symmetric, linear, bounded, have low
sensitivity to noise and agree qualitatively with a visual
comparison of the data.
The definition is given in Eq. 18 and is
described as follows. Given a predicted value, p, and
an experimentally measured value, s, one can plot a
point in p-s space as shown in Fig. 10.
:-
-
-
r
P.
1
P~:I=TED =~w VAR1~6 ~
Fig. 10 Definition of the Average Angle Measure.
10
If the prediction is perfect, then the point will fall on a
45° line extended from the origin; the distance from the
origin will depend upon the magnitude of s. If p ~ s,
the point will fall on one side or the other of the 45°
line. If one extends a line from the origin such that it
passes through this point, one can consider the angle
between this new line and the 45° line, measured from
the 45° line. This angle is a measure of the error of the
prediction. To extend this error metric to a set of
points, one computes the average angle of the set. A
problem arises, however. When s is small and p is
relatively close to s, one may still obtain a
comparatively large angle. On the other hand, when s
is large and p is relatively far from s, one may obtain a
relatively small angle. To correct this, the averaging
process is weighted by the distance of each point from
the origin. The statistic is then normalized to give a
value between -1 and 1. A value of 1 corresponds to
perfect magnitude and phase correlation, -1 implies
perfect magnitude correlation but 180° out of phase
and zero indicates no magnitude or phase correlation.
This metric is not perfect; it gives a questionable
response for maneuvers with flat responses, predictions
with small constant offsets and small magnitude
signals. Nevertheless, it is in most cases an excellent
quantitative measure of agreement.
For a given maneuver, the arbitrator computed
an average angle measure and a correlation coefficient
for the following variables: x- x0, y - ye, z - z0, roll,
pitch, u - u0, v - v0, w- we, U - U0, p, q, and r. The
average angle results for each variable were then
averaged to yield a single number for the maneuver. A
grade was then assigned to that maneuver according to
Table 3.
Excellent > 0.9
Good 0.7 to 0.9
Fair 0.5 to 0.7
Poor < 0.5
Table 3 Grades based on the Average Angle Measure.
The predictions for the training maneuvers,
not graded by the arbitrator, were uniformly Good to
Excellent using the criteria given in Table 3. This is
the first test that the network must pass. If a
relationship between the force and moment inputs and
the velocity outputs exists, the network must determine
this connection. If the experimental data is poor, or the
network is improperly formulated, then the network's
performance on the training data will be
correspondingly poor. Neither is the case here; the
trained network has learned how the submarine
performs the various maneuvers. That this is true is
demonstrated by the performance of the network on the
OCR for page 731
11
40
30 -
-0.8
-0.6
-0.4
-0.2
0.2
1R
_ _ ~
_/
0.11 1
O -
O -0.1
-0.2 _ _
-0.3 -
o
0.2
01 t—- - - —
o
-0. 1
n 2
of 0.04-
o
-0.04 - _
~ ~-
0.1 1 - -------------------- --------
—-O. 1
-0.o
. ~ \__________________
' ----- 1
2t
__ ~ ________________
___ ~ ______
2s
P v° ~ ~------
_ _ _ _ _ _~ _
--- k : ,;~ ------
l
0 5 10 15
Time (s)
2-
25
5 10 15 20 25
o
~-
.
5 10 15 20 2s
--------------1
-2 ~ ~ ~~~
-6
20 25 0 5 10 15 20 25
Tine (s)
Fig. 11 Horizontal overshoot: Validation file 0021.
Entrance Angle= 10°, Speed= 1.8 m/s
Predictions: solid black lines, Measured: dashed red lines.
OCR for page 733
13
3OI
20 - _ _
E
o
1C
E
— o
-
o~
0.3
0.21
-0.4
0.4
02
-0.2
-A °4
-0.08
4
- ~ ?
14 1R 1R
/k
-0.4
0 2 4 6 8 10 12 14 16 18
~_~~__V\~\
__ , , , , , , , , .. __1
0 2 4 6 8 10 12 14 16 18
nme ($)
20 -
~ D ~
~ o. ,.~ ~
-10
-20
o
2 4
Fig. 13 Horizontal Overshoot: Blindfile4004.
Entrance Angle = 35°, Speed= 1.8 m/s
Predictions: solid black lines, Measured: dashed red lines.
8
4
~ O
-
-4
o
O..
O ~
E
~ -0:
-0.4 -
n ~
._ ~ it______________
________\~_____________
.____________ ~ __
2 4
6 8 10 12 14 16 18
i----_
_ _ _ _ .
-
________ ~
~ ~ ___ ~ ________
| - ~ - Exp |
| RNN|
__ _____ ____
OCR for page 734
14
validation maneuvers. Recall that the validation runs
were never used to modify the weights during training,
and in this sense, have never before been seen by the
network. Fig. 11 gives plots of a selection of variables
for a horizontal overshoot validation maneuver. A
visual inspection shows that the agreement is very
good. In particular, the peaks in p and q are captured
quite accurately. This is reinforced quantitatively by
listing the average angle and correlation coefficient
metrics for each variable. These are found in Table 4
for each of the variables plotted in Figs 11-13. The
table also gives the average computed across all of the
variables in the table for each metric. For the
validation maneuver shown in Fig. 11, the average
angle measure averaged over all of the variables is 0.90
which is right on the boundary between Good and
Excellent as defined by Table 3.
Vars
x-xO .
Y-YO .
z-zo
Roll
Pitch
u-uO
v-vO .
w-wO .
~~U-Uo
.
.
r
Total
Honz O/S
Validation 0021
AAM
1.00
o.ss
0.90
0.94
0.93
0.84
0.94
0.80
0.83
0.79
0.86
0.94
0.90
CC
1.00
1.00
1.00
1.00
1.00
0.98
0.99
0.94
0.98
0.98
0.98
1.00
0.99
Honz O/S
Blind 4019
AAM
1.00
1.00
0.81
0.93
0.82
0.89
0.91
0.78
0.88
0.82
0.83
0.95
0.88
CC
.00
1.00
0.97
.00
.
0.97
0.98
0.99
093
0.98
0.97
0.96
1.00
098
Honz O/S
Blind 4004
AAM Cc
0.99
0.98
0.56
0.72
0.43
0.85
0.92
0.36
0.84
0.68
0.63
0.94
0.74
1.00
1.00
0.83
0.96
0.80
0.97
0.99
0.76
0.97
0.88
0.89
1.00
0.92
Table 4 Average Angle and Correlation Coefficient
Results for Selected Variables for Each Maneuver.
Note that the oscillations evident in the measured
velocities in Fig. 11 are noise that remains after
slipping through the passband of a low-pass filter
designed to remove the bulk of the noise. (The noise is
only evident when the velocities are at relatively small
values.) Rather than try to follow every oscillation, the
RNN predictions tend to follow the low frequency
trend in the data. However, this reduces the average
angle values as can be seen in Table4; the actual
agreement is better than suggested by the average angle
metric. Referring to the correlation coefficient values
for these variables supports this.
Figure 12 shows overplots of predicted and
measured variables for a blind horizontal overshoot
maneuver. This particular blind maneuver received a
grade of Good from the independent arbitrator. The
only information provided to the trained RNN for this
maneuver were the time histories of the controls and
the initial conditions. The resulting predictions for
each variable are Good to Excellent, and the average
for all variables is again close to the Good/Excellent
boundary. Thirty-two of the blind maneuver
predictions were assigned a grade of Good by the
arbitrator and were of similar quality.
The blind horizontal overshoot plotted in
Fig. 13 was also graded Good by the arbitrator.
However, the grade was close to the Fair/Good
boundary and gives the reader a lower bound to the
quality of the RNN predictions for the runs in which
the vehicle actually maneuvered. Visually, the curves
do not compare quite as well as in the other two cases,
and this is reinforced by the corresponding error
metrics as given in the third column of Table 4.
However, a closer inspection of the actual magnitudes
of the errors is quite revealing. Errors in the trajectory
variables are 0.2 m or less and in attitude 2 deg or less.
Errors in the linear velocities are everywhere less than
0.1 m/s and less than 2 deg/s for the angular velocities.
Finally, Fig. 14 is included to give the reader a
guide to the performance of the RNN simulation on the
blind predictions as a function of maneuver type.
0
O
o
Constant Horizontal Vertical O/S Controlbd Fixed-Plane
Heading O/S Turns Turns
1 1
1 1
1 1
20 1 ,l~i ~ ~1~ I
Fig. 14 Overall Challenge results by maneuver type.
The figure plots an average angle measure averaged
over all of the runs of a particular maneuver type for
each of the participants in the Challenge. The
horizontal lines on the plot delineate the Good region
as defined by Table 3. Just below the plot is a bar chart
showing the number of runs provided by each
participant for evaluation in each category. (Only two
participants provided all 34 runs for evaluation.)
Accordingly, the averages in the upper chart are
OCR for page 735
15
created from the number of runs listed in the lower
chart.
The figure shows that the RNN simulation
produced Good predictions in all maneuver categories
with the exception of the Constant Heading runs where
the vehicle did not maneuver. (Two of the three runs
in this category were graded Fair.) Figure 14 also
shows that the RNN simulation did very well for each
maneuver type when compared to the other
participants, especially when the number of runs
provided in each category are considered.
CONCLUSIONS
A recursive neural network maneuvering
simulation, trained on constant heading runs, vertical
and horizontal overshoots and controlled and fixed
plane turns, was used to produce predictions for 78
known runs and 34 blind maneuvers of a radio-
controlled submarine. An independent arbitrator
graded the 34 blind runs and assigned 32 grades of
Good and 2 grades of Fair, and this was the highest
total score obtained by any participant for the blind
predictions. Good predictions were obtained for all
maneuver types except Constant Heading runs, and the
RNN simulation effort performed very well relative to
the other participants in the Challenge. The simulation
required 3 man-weeks to develop the 112 maneuver
predictions, and no additional time was spent in an
effort to optimize the results. The solutions were
developed on PC-based platforms requiring
approximately 200 CPU hours to train; however, the
trained neural network produced the predictions faster
than real time requiring a fraction of a second per
. .
prec action.
The most difficult predictions for the
simulation were clearly the constant heading runs for
which the vehicle traveled in a straight line at constant
speed. For these maneuvers, the RNN was required to
make predictions for variables that oscillated about
values very close to zero (with the exception of
forward speed). In hindsight, better performance
should be obtained for these maneuvers by training a
second network to predict only this maneuver type.
This work demonstrates that recursive neural
networks exhibit an ability to be a robust and accurate
maneuvering simulation tool for submarines. The
ONR Maneuvering Challenge has provided a fair and
rigorous test of the predictive capabilities of the
. .
slmu. .atlon.
ACKNOWLEDGEMENTS
The U.S. Office of Naval Research sponsors
this work, and the program monitor is Dr. Patrick
Purtell, Code 333. The support of Dr. Promode
Bandyopadhyay, Code 342, is also gratefully
acknowledged. The assistance of LCDR Craig Merrill,
Technical Director, H/HTC, for the overplots of the
experimental data in Figs. 11-13 and for providing
Fig. 14 is greatly appreciated.
REFERENCES
Faller, W.E., Smith, W.E., and Huang, T.T. "Applied
Dynamic System Modeling: Six Degree-Of-Freedom
Simulation Of Forced Unsteady Maneuvers Using
Recursive Neural Networks", 35th AIAA Aerospace
Sciences Meeting, Paper 97-0336, 1997, pp. 1-46.
Faller, W.E., Hess, D.E., Smith, W.E. and Huang, T.T.,
"Full-Scale Submarine Maneuver Simulation," 1 st
Symposium on Marine Applications of Computational
Fluid Dynamics, U.S. Navy Hydrodynamic /
Hydroacoustic Technology Center, McLean, Va., May
1998a.
Faller, W.E., Hess, D.E., Smith, W.E., and Huang, T.T.
"Applications of Recursive Neural Network
Technologies to Hydrodynamics", Proceedings of the
Twenty-Second Symposium on Naval Hydrodynamics
Washington, D.C., Vol. 3, August 1998b, pp. 1-15.
Haykin, S. Neural Networks: A Comprehensive
Foundation, Macmillan, New York, 1994.
Hess, D.E., Faller, W.E., Smith, W.E., and Huang,
T.T., "Simulation of Ship Tactical Circle Maneuvers
Using Recursive Neural Networks," Proceedings of the
Workshop on Artificial Intelligence and Optimization
for Marine Applications Hamburg Germany
, , ,
September 1998, pp. 19-22.
Hess, D.E., Faller, W.E., Smith, W.E., and Huang, T.T.
"Neural Networks as Virtual Sensors", 37th AIAA
Aerospace Sciences Meeting, Paper 99-0259, 1999, pp.
1-10.
Hess, D.E. and Faller, W.E. "Simulation of Ship
Maneuvers Using Recursive Neural Networks,"
Proceedings of the Twenty-Third Symposium on Naval
Hydrodynamics, Vat de Reuil, France, September
2000.
Lewis, E.V., ea., Principles of Naval Architecture,
Second Revision, Vol. 2, The Society of Naval
Architects and Marine Engineers, Jersey City, 1988,
pp. 127-153.
Maneuvering Certification Action Team, "Evaluation
of the Average Angle Measure for the SSN 688
Certification," July 1994, Copy resides at the H/HTC,
NSWCCD.
Maneuvering Certification Action Team,
"Maneuvering Code Certification: George/TRJV
Evaluation of the Average Angle Measure for the SSN
OCR for page 736
16
751 Certification," August 1994, Copy resides at the
H/HTC, NSWCCD.
Munk, M.M. "The Aerodynamic Forces on Airship
Hulls," NACA TR-184, 1920, Reproduced in: Jones,
R.T. "Classical Aerodynamic Theory," NASA
Reference Publication 1050, Dec. 1979, pp. 111-126.
Nigon, R.T. "Radio Controlled Model Fluid Research
Capabilities," CRDKNSWC-HD-0386-137, Jan. 1994.
Sten son, R.J . and Hundley, L. L. "Performance and
Special Trials on U.S. NAVY Surface Ships," David
Taylor Research Center Ship Hydromechanics
Department Research and Development Report
DTRC/SHD-1320-01, April 1989, pp. 60, 66.
OCR for page 737
DISCUSSION
C. Merrill
Naval Sea Systems Command, USA
You point out that due to funding and time con-
straints, "no additional time was spent to optimize"
the ONR Body 1 RNN simulation. However,
assuming that a reasonable optimization effort was
possible, what additional training techniques might
you have employed to improve your blind
predictions?
Since one will typically not have a set of blind data
with which to clearly evaluate the simulation's
predictions, it is necessary that we find methods for
estimating the uncertainty of the predictions. Are
there such techniques for RNNs? For example, could
you have used the eleven validation sets as a means
of predicting the uncertainty?
Generally speaking, factors other than pure
hydrodynamic considerations drive the hull shape
and appendage location and configuration for
submarines. Hence, maneuvering and control
designers are given a limited design space in which
they may alter the ship's exterior configuration.
Therefore, what is needed is a design tool that can
rapidly evaluate a number of design "deviations"
from an initial baseline, in order to optimize within
the available design space. It would appear that if a
more complete form of the force and moment
equations were built-in to an RNN (so that it could
evaluate changes in geometry), it might provide an
ability to perform just such a design evaluation with
less reliance on experimental modeling. Do you The currently used force and moment inputs to the
agree? If not, why, and if so, how could this be done neural network help to form a well-posed problem.
and what level of effort would it take? Therefore, these equations need not be exceedingly
accurate. Adding geometry to these equations would
require that training data with the proposed geometry
changes be available, else one is relying on the
predictive capability of the equations vis a vis the
network itself. A new neural network design tool is
currently under development. This tool uses a grid
generation routine to accurately define geometry and
a RAN S code to predict forces and moments for a
matrix of steady flow configurations. The force and
moment database is then used as training data for a
recursive neural network equation-of-motion solver.
Design changes to the vehicle will require a new
series of RAN S runs to compute a new force and
moment database. However. the Previously trained
AUTHORS' REPLY
An attempt to further improve the neural network
solution would proceed in several ways. The choice
of the number of processing units in the two hidden
layers is guided not by theory, but by prior
experience. Similarly, the choice of the number of
past values to retain for each input (see Table 2) can
be varied. To explore these changes, one should
perform a matrix of simulations to examine the
sensitivity of the solution to such changes. The
dimensionless time step, fit', could also be adjusted.
The quality of the solutions would suggest that no ~ ~
first-order input terms were omitted; however one RNN that maps applied forces and moments to
vehicle motions would not need to be retrained. It
prediction of all maneuver types. This need not be the
case. A series of neural networks could be trained
such that each was used to predict just one maneuver
type. The trained networks could then be combined
with appropriate switching logic into one simulation.
Unfortunately, these avenues could not be explored
with an unfunded task.
Validation data sets can indeed be used as the blind
data sets were used to give an indication of the
quality of the simulation as defined by the error
measures. A quantitative measure of uncertainty
might be obtained somewhat differently. What one
would like to know is this: If the uncertainty in each
of the inputs is specified, how does that uncertainty
propagate through the trained neural network to
appear as uncertainty in each of the outputs?
Propagation of specified uncertainty is treated quite
extensively in Coleman and Steele (1999~. One
would have to determine a matrix of partial
derivatives that define the sensitivities of each output
to small changes in each input. For a trained
network, the weights are fixed and known, and the
relationship of each output to each input is specified.
Thus, the partial derivative matrix can be determined
analytically but is somewhat tedious. Alternatively,
one may use a jitter routine which applies small
changes to each input in turn and observes changes in
each output. Either way the propagation of
uncertainty through the network can be determined.
The bias uncertainty in the network can only be
determined through quality measures as defined by
appropriate error measures and as used for the
validation and blind data sets.
could consider additional input terms that might
further refine the solution. Finally, the simulation
was designed to employ one neural network for the
would determine the resulting vehicle motion using
the updated force and moment database. The speed
OCR for page 738
of this design tool would then be limited by the grid
generation time and the required number of RANS
calculations as well as the available computational
hardware.
Coleman, Hugh W. and W. Glenn Steele,
Experimentation and Uncertainty Analysis for
Engineers, Second edition, John Wiley and Sons,
New York (1999~.
DISCUSSION
T. Sedler
Northrop Grumman Newport News, USA
I would like to start off by congratulating Drs. Hess
and Falter on what is a major advancement in our
ability to perform maneuvering analysis. I will
divide my discussion into three parts in order to
impart to the readers and authors why I believe this
work is so important. I will describe why accurate
submarine maneuvering predictions are important,
why I believe this maneuvering simulation method is
superior to other approaches, and finally give my
recommendation.
The United States Navy has learned from painful
experience to be prepared for submarine
maneuvering system component failures. This is
particularly important during lead ship trials for a
new class. Maneuvering analysis is used to develop
operational envelopes that are intended to ensure that
under any operating condition the submarine can
recover prior to exceeding its collapse depth. These
operating envelopes depend upon estimates of the
submarine's response to casualty recovery efforts.
Accurate estimates of the submarine's normal and
casually maneuvering responses are critical for its
operation.
Our current submarine maneuvering analysis practice
is to use a combination of semi-empirical simulation
codes and radio-controlled model (RCM)
experiments. Lead ships have no precedence and
hence no historical data and judgment is used in the
semi-empirical analysis and in scaling the RCM
results. The U.S. Navy has pursued the development
of improved computational methods in an effort to
obtain) better full-scale simulations. Better
simulations will yield safer submarine operation.
The Office of Naval Research (ONR) has pursued
two approaches for solving the problem. The first
has been the development of Reynolds-Averaged
Navier-Stokes (RANS) codes. The second approach
has been to pursue recursive neural network (RNN)
nonlinear modeling.
It has been this discussor's experience that viscous
effects account for 90 percent of the unpredicted
submarine maneuvering behavior observed. Adverse
viscous effects include upstream generated vortices
landing on control surfaces, interactions between
appendages and body shed vortices, separation on
control surfaces and body, and appendage/turbulent
boundary layer interaction. These effects are highly
nonlinear, involve large volumes, and their
nonlinearity varies as a function of speed, geometry,
and maneuver type.
Any natural process (differential equation) modeled
on a computer must use a numerical approximation
scheme for a solution. In general, nonlinear effects
are best modeled using nonlinear numerical
approximation techniques, such as that presented
here. Numerical approximation of highly nonlinear
differential equations is not "physics-based." RANS
codes, which typically use linear shape functions, try
to capture nonlinear behavior by finely descritizing
the boundary layer. The more nonlinear the behavior
the more grid cells required, and hence more storate
space and CPU time. The problems with RANS-
based codes are that (1) the models must be huge to
capture the nonlinear behavior and (2) with a change
in a problem's parameters the "ridding and
turbulence model that worked in the previous case
may no longer capture the new nonlinear behavior.
These problems prevent RANS maneuvering codes
from being an effective tool for the ship designer.
Use of RNN code ensures that the submarinie's
nonlinear behavior is fully captured within the
parameter and training set space. RANS and semi-
empiricl methods cannot do this. Capturing
nonlinear behavior for a nontraditional submarine
design is critical. New submarine geometry can be
modeled using an RCM and by developing RNN
training sets from the measured data. Drs. Hess and
Falter have developed a method to scale this data
appropriately thus enabling accurate full-scale
estimates. New geometry is outside the purview of
semi-empirical methods.
In examining the data presented in the paper, I noted
that high-rudder angles incurred more error. I believe
this is due to limitations on the input instruction that
C, ~ sin (a), which does not hold at high angles of
attack. Would the authors please comment on this?
The discussion on the constant heading runs is
intriguing. It would appear that the RNN needs
additional initial conditions for angular accelerations
OCR for page 739
and/or the rate of change in angular acceleration at
the initiation of the maneuver. The paper is missing a
discussion on how experimental measurement error
banding impacts the training of the RNN and the
resulting accuracy of the simulation. Do the authors
think including error banding would have improved
their scores? I would like to see from the authors a
paper in the future that covers how RNN
maneuvering codes could be incorporated into
preliminary design. I would also like to hear their
opinions on the possibilities of coupling RNN and
RANS codes. For example, would it be possible to
use a RNN code for modeling the turbulent boundary
layer within a RAN S code?
I would like to again thank the authors for an
excellent paper and project.
AUTHORS' REPLY
Regarding the question on the use of simple force and
moment expressions, and in particular appendage lift,
I would reiterate that these expressions are designed
to help the neural network understand how to map
hydrodynamic forces and moments to vehicle
motions. We are relying on the inherent predictive
capabilities of the neural network, and not on the
completeness of the expressions (used to form a well-
posed problem). The quality of the results would
indicate that this is a useful way to proceed. That
said, efforts to refine the expressions may indeed
produce some improvement. The free-running sub-
marine used for this work was equipped with six-
degree-of-freedom dynamometers on each appen-
dage, the sail and the propeller. Thus, it is possible to
acquire precise Cat vex information on each
appendage. A fit to this data could then be used in
place of the simple analytical expressions and may
indeed result in better performance at high rudder or
sternplane angles.
Constant heading data were runs for which nearly all
variables were held at a constant value or were zero.
The overwhelming majority of training data, on the
other hand, was maneuvering runs in which all
variables were changing and usually by large
amounts. Thus, a more successful approach for the
prediction of constant heading runs might have been
to train a second network to predict these runs only,
and to employ appropriate switching logic within the
simulation.
The accuracy of the neural network can be no better
than that of the data used to train it. The discusser is
referring to this with his comments on error banding.
If specific inputs have substantial amounts of error
(uncertainty) associated with them, this will have an
adverse effect on the simulation. The experiment
was a high quality test designed and executed
precisely to minimize uncertainty. Secondly, the
experimental uncertainty that remained likely
affected all participants more or less to the same
extent. A discussion of the manner in which a
quantitative measure of uncertainty propagation
through the network may be obtained has been
provided in the Reply to Craig Merrill's discussion.
The authors have work under way in which a
recursive neural network can be used not only as a
predictive tool but also as a design tool. This next
generation code forms a partnership with grid
generation tools and RANS codes to effectively
incorporate geometry information and to construct a
force and moment database to be used as training
data for the neural network. Some additional
comments about this approach may be found in the
Reply to Craig Merrill's discussion.
OCR for page 740
Propagation of Uncertainty through a Neural Network
David E. Hess - 2 Oct 2002
This note will describe a technique that may be used to determine the uncertainties
propagated into the outputs of a neural network if the uncertainties in the inputs are
known. In general, if a result, r, is a function of N variables xi
r = r(X~,x2, ·~. AN)
then, the uncertainty in the result, Ur, is a function of the uncertainties in each of the xi,
denoted by Ux;, and is given by
u ~ ar u J + ~ ar u ~ + + Ha UXN`) . (2)
This equation describing the propagation of uncertainty into a result may be found in
(Coleman and Steele, 1999~. To apply Eq. 2 for the determination of neural network
output uncertainties, one must derive the matrix of partial derivatives from the equations
relating the outputs to the inputs.
Before proceeding further, a critical assumption must be made; namely, assume that the
weights and biases in the trained network are constants with zero uncertainty.
Clearly, if experimental data with associated uncertainty are used, then the weight set
obtained from the training process will be affected. However, the uncertainty in the
weights does not grow without bound as training proceeds because the backpropagation
algorithm continually corrects the weight set to minimize error. The degree to which the
training data may be reproduced by the trained network will depend upon how effectively
the backpropagation algorithm can refine the weight set. The remaining error in the
trained network will be treated as a fossilized bias error. In other words, no matter how
many times the trained network is executed, it will always produce the same bias error for
a given input vector. Expressing the output prediction error as a bias is a more
straightforward approach than assigning uncertainties to each weight and bias in the
network.
The applicable feedforward equations for a network with two hidden layers are as
follows. The notation used considers i = 1, . . ., Ninput input nodes, j = 1, . . ., Chid l and
k = 1, . . ., Chid 2 nodes in the two hidden layers and ~ = I, . . ., Noutput output nodes.
Input layer to first hidden layer
Ninput
Vhinl j = Bhl j + ~Wghtih'; Finput
1 + e-V7nin~j
(j= 1,...,Nhidl)
(3)
OCR for page 741
2
First hidden layer to second hidden layer
Nhid 1
Vhin2k = Bh2k + ~Wghthhjk Vhoutl
j=1
V7'out2k = ~ + nm2,
Second hidden layer to output layer
Nhid 2
Voutinl = ~ Wghthokl Vhout2k
k=1
Voutout =
~ ~ + e-Vou~in~
(k = 1,...,Nhidl2)
(l = 1,. . .,Noutput)
(4)
(5)
Substituting Eqs. 3 into Eqs. 4 and then Eqs. 4 into Eqs. 5 will yield a set of equations
relating Voutout~ to Vinputi of the form of Eq. 1. The set of partial derivatives that are
required are ' and will be derived step by step using repeated application of the
OKlnput
Chain Rule.
Input layer to first hidden layer
a Vhoutl . e-Vhin1 j
J = = Vhoutl .
(1 + -Vhinl j )2 J
OVhin
Ov~in1 .
~ = Wghtihij
OF`nputi
OVhout1 .
aVinput = Wghtihi; Vhoutlj (l-Vhoutlj)
.
(l -Vhoutlj)
First hidden layer to second hidden layer
;3Vh 2 ~ = Vhout2k ( 1- Vhout2,,
;3 Vhin2~ W hthh
· ~
h' )
Wghthh ik V77out2 k ( 1 Vhout2 k )
OVhout1 j
h
(6)
(7)
OCR for page 742
Second hidden layer to output layer
av0UtOUtl = Voutout, (~-Voutoutl)
Shouting
· e
Ovoutin
aVhout2k Wghtho~1
· jVh 2'=Wghtho~1Voutoutl(1-Voutoutl)
Now, we need to apply the results from Eqs. 6-8 to obtain I
aFinputi
backward, we first want to determine I
OVhoutl
that
Voutoutl = fI (shouts, Vhout2 2, ... Vhout2 Nhi42 ~ and
Vhout2k = gk (VhoutI i, VhoutI 2, . . . Mouth Nail ~
. Working
. By referring to Eqs. 5 and 4, we find
.
(9)
Application of the chain rule for the case of multiple independent variables requires a
. .
sum giving
avoutoutl Shiv avoutout, avhout2`
OVhout!
k=! Mouths bailout! j
Chid 2
= ~ [Wghtho~l Voutout~ ( ~ - Voutoutl )] ,
k=}
. [Wghthhjk Vhout2k ( ~—Vh°Ut2k )]
(10)
where the second line follows from substituting Eqs. ~ and 7. Finally, we can compute
avOUtoUtl
as follows
OFinputi
avoutouti Nz} jVoutOUtl aVhOUti j
OKinputi j=l OVhoutlj OFinput
= ~~[Wghtihij Shout! j ( ~—Shout! j )]
j=!
; 7iwshthhjk Vhout2k ( ~—Vhout2k )]
1~ · [Wghtho;~ Voutoutl ( ~ - Voutoutl )]J
where the results of Eqs. 10 have been used.
Examination of Eqs. ~ ~ reveals that the sensitivity derivatives depend upon the inputs and
the weights and biases; namely,
OCR for page 743
4
= fly (Vinput,, Wghtihjj, Wghthh jk, Wghtho~d, Bhl j, Bh2k ) . ( 12)
OUl~putj
For a specified input vector and weight set, a computer subroutine implementing the
feedforward equations (Eqs. 3-5) can be easily modified to also compute ' by
OF`nput
implementing Eqs. 11.
Furthermore, if the vector of input uncertainties is also specified, one may then compute
the uncertainty propagated into any of the outputs. For example, the calculation for the
uncertainty propagated into the first output is given by
2
UVoutout'
~tavOUtoUt1U :2+(3VOutO~tlU ~
~< OFinputl ~ ) ~< OFinput Finput2 )
+...+r aVOutoutl U
~ a VinPUtNinput
with similar equations for the other outputs.
The analytic expressions for the sensitivity derivatives, Eqs. 11, can be checked for
accuracy using a numerical procedure referred to as a jitter program in the literature. For
Ni,tpu' ~
, (13)
example, to check the quantity
1, one proceeds as follows. Add a small
OFinput1
increment to Vinputl, call it I\ vinput1 = l x l O-6 · Finputl, say. Compute
Voutoutl(Vinputl +AVinputl) by using Eqs. 3-5 with Vinput1 replaced by
Vinput1 +i\Vinput~. Then, compute Voutout~(Finput1 -/\Finput1) by recalculating
Eqs. 3-5 with Finput1 replaced by Vinput~-l\Vinput~. A central difference
i ti t th t I f OVoutout1 th b bt i df
OF'nput1
a Voutout1 Voutout~ (Vinput1 + ~ Vinput~ ) - Voutout1 (Vinput~ - /\ Vinput~ )
OFinput1 2 /\Finput1
(14)
By keeping /\Finput1 a very small value, the approximation of Eq. 14 wil1 compare wel1
to the exact value computed by Eqs. 11.
Reference
Coleman, Hugh W. and W. Glenn Steele, Experimentation and Uncertainty Analysis for
Engineers, Second edition, John Wiley and Sons, New York ( 1999).
Representative terms from entire chapter:
recursive neural