Upload
abel
View
51
Download
3
Embed Size (px)
DESCRIPTION
DESIGN, IMPLEMENTATION AND TESTING OF A COMMON DATA MODEL SUPPORTING AUTONOMOUS VEHICLE (AV) COMPATIBILITY AND INTEROPERABILITY. CDR Duane Davis, USN. Ph.D. Committee: Dr. Don Brutzman Dr. Robert McGhee Dr. Neil Rowe Dr. Christian Darken Dr. Anthony Healey. Outline. Problem Statement - PowerPoint PPT Presentation
Citation preview
CDR Duane Davis, USN
DESIGN, IMPLEMENTATION AND TESTING OF A COMMON DATA MODEL SUPPORTING
AUTONOMOUS VEHICLE (AV) COMPATIBILITY AND INTEROPERABILITY
Ph.D. Committee:Dr. Don BrutzmanDr. Robert McGheeDr. Neil RoweDr. Christian DarkenDr. Anthony Healey
Outline
Problem StatementResearch OverviewSpecific Objectives and ImplementationsResearch ContributionsRecommendations for Future Work
Problem Statement
Examples• Homogeneous vehicle system: Swarming• Programmed compatibility: CJTFEX 04-2 Coordinated
MCM
Current AV interoperability is limited by vehicle-specific data formats and planning systems. This stovepipe approach to AV command and control inhibits effective multi-vehicle operations and hinders the design of such systems.
To date, the preponderance of multi-vehicle research has assumed inherent compatibility: homogeneous vehicle systems or explicitly programmed compatibility.
Research OverviewA Rigorously Defined Common Data Model:
• Vehicle-Independent• Subsumes Vehicle-Specific Data
Format Content• Extensible Markup Language
(XML) Schema GovernedData Model Requirements
• Mission Specification (tasking)• Communications• Mission Results
Automated Conversions• Data Model to Vehicle-Specific
Formats• Vehicle-Specific Formats to
Data ModelExemplar Development and Implementation
Data Mode
l
AAV 1
Support
AUV 2
ASV 2
AAV 2
AUV 1
ASV 1
Research Objective 1
Accurate Representation of Arbitrary Vehicle Tasking• Leverage Similarities—Similar Vehicles do
Similar Things• Identify Activities that Vehicles are Required
to Perform• Develop a Set of Task-Level Behaviors
Capable of Specifying these Activities
Exemplar Data Model Task-Level Behavior Characteristics
Vehicle-Type Specific• 30 UUV Behaviors• 20 UGV Behaviors• 22 USV Behaviors• 26 UAV Behaviors
Behavior Types (determines behavior termination criteria)• Closed-Loop
• Terminating—Implicit Termination Criteria• Open-Ended—Potentially Non-Terminating
• Open-Loop• Non-Control-Related• Special Purpose—Effect Other Behaviors
Behavior Activation—Based on the Preceding Behavior Type• Closed-Loop Terminating—Activate Next Upon Termination• Closed-Loop Non-Terminating—Activate Next Immediately• Open-Loop—Activate Next Immediately• Non-Control-Related—Activate Next Immediately• Special Purpose—Activate Next Upon Termination
Research Objective 2
Develop Translation Mechanisms for Automated Conversion between Vehicle-Specific Formats and the Data Model• Data Mappings Between the Data Model and
Vehicle-Specific Formats of Interest• Types of Translations that Must be Supported
• Data Model to Text-Based Vehicle-Specific Formats• Data Model to Binary Vehicle-Specific Formats• Text-Based Vehicle-Specific Formats to Data Model• Binary Vehicle-Specific Formats to Data Model
Translation of Data Model Data to Text-Based Vehicle-Specific
FormatsExtensible Stylesheet Language for
Transformation (XSLT)
• Many Well-Proven Applications in Numerous Problem Domains
• Relies on Data Mappings from the Model to the Target Format
• Exemplars:• Phoenix UUV Scripting Language• ARIES UUV Waypoint Lists (Track.out files)• Seahorse UUV Orders• REMUS UUV Objectives
XSLT Stylesheet
Vehicle-Specific Message or Script
Data Model
Message or Script
Translation of Text-Based Vehicle-Specific Formats to the
Data ModelParse using a Context Free Grammar (CFG)
• Chomsky Normal Form (CNF)
• Cocke-Younger-Kasami (CYK) Algorithm
• Yields a Binary Parse TreeTranslate Parse Tree to AVCL
• Depth First Traversal• Template-Based Translation
of Individual Parse NodesComparison to XSLT-Based Translations
• Fixed Order vs. Arbitrary Traversal
• Arbitrary vs. In-Order Result Output Document Generation
Example Chomsky Normal Form Rules:Mission -> LaunchCmd + MissionMiddle
Mission -> LaunchCmd + MissionEnd
MissionMiddle -> WaypointCmd + MissionMdl
MissionMiddle -> SurfaceCmd + MissionMdl
MissionMiddle -> WaypointCmd + MissionEnd
MissionMiddle -> SurfaceCmd + MissionEnd
MissionEnd -> WaypointCmd + RendezvousCmd
MissionEnd -> SurfaceCmd + RendezvousCmd
Example (Partial) Parse Tree:
Mission
LaunchCmd MissionMdl
WaypointCmd MissionEnd
RendezvousCmdSurfaceCmd
Translation Between Data Model and Binary Formats
XML Encoding of Binary Format • Serialization of XML to Binary• Reading of Binary to XML• XSLT Conversion between Data Model and XML Encoding
• Intuitive and Repeatable Implementation• Other Efforts
• Distributed Interactive Simulation (DIS) XML• Unmanned Systems Common Service Specification (USCS)
• Exemplar: Joint Architecture for Unmanned Systems (JAUS) Messages
XML
JAUS Binary
Programming Object
AVCL
XSLT XSLT
JAUS XML Schema
Serializer Reader
JAXB
Translation IssuesCommand Parameter Maintenance
• Concurrent Behaviors vs. Self-Contained Commands• XSLT and Side Effects (Immutable Variables)
Simulate Mutable Variables using Parameters and Explicitly Controlled Iteration:
begin XSLT processing variable B = sequential list of task-level-behaviors apply template for B1 with default parameters d1 to dn
end XSLT processing
begin template for task-level-behavior Bi with parameters p1 to pn
for k = 1 to n variable vk
if Bi updates pk
vk = new_pk
else vk = pk
generate required output for Bi apply template for Bi+1 with parameters v1 to vn
end template
Translation Issues (2)
Unmappable Vehicle-Specific Information• REMUS WaitStart Objectives• Seahorse Waypoint Collect Sound Velocity
Profile (SVP) Field• …
• Applicable Content Translated Accordingly• Irrelevant Content Ignored
<UUVCommandScript> … <MetaCommand name=“waitMagnet”/> <MetaCommand name=“collectSVP” content=“true”/> …</UUVCommandScript>
Research Objective 3
Support for Abstract Task Specification• Goals to be Accomplished• Constraints to be Observed• Specified Declaratively• Intuitive
Incorporation into the Common Data Model• Construction of Task-Level Behavior Scripts
to Accomplish Declarative Goals• Inference of Appropriate Goals from Task-
Level Behavior Scripts
Declarative Goal-Based Mission Definition
Finite State Machine (FSM)• States (Goals)
• Operating Area• Goal Description
• Transitions Dependent on Goal Success or Failure
Constraints• Launch and Recovery
Positions• Avoid Areas• Ingress Routing• Egress Routing
Mission Start
Rendezvous with UUV-2 in Area C
Search Area A
Search Area B Sample Environment in Area A
Mission Complete
SucceedFail
SucceedFailSucceed
or Fail
Succeed or Fail
G
S
Avoid
Avoid
Avoid
Avoid
S
G
Conversion of Declarative Missions to Task-Level Behavior
ScriptsGlobal Path Planning
• Transit Between Operating Areas• Observe Routing Requirements• Bypass Avoid Areas
Best-First Search• Shortest Available Path• Each Area Incursion Yields 2 Child Candidate Paths
Local Path Planning (Obstacle Avoidance) Still Required
G
Avoid
Avoid
SS
Avoid
Avoid
G
Generation of Task-Level Behavior Sequences to Accomplish Declarative
GoalsTemplates for Simple Goal Types
• Reposition• MonitorTransmissions• Jam• Illuminate
MONITOR TRANSMISSIONS GOAL DEFINITION:<Goal alert="false"> <MonitorTransmissions/> <OperatingArea> <Rectangle> <NorthwestCorner> <XYPosition x="1950.0" y="1975.0"/> </NorthwestCorner> <Width value="100.0"/> <Height value="150.0"/> </Rectangle> </OperatingArea> <Duration value="600.0"/></Goal>
GENERATED TASK-LEVEL BEHAVIOR SEQUENCE:<GpsFix value="true"/><MetaCommand name="beginGoal" content="monitorTransmissions"/><Loiter description="Station at area center"> <XYPosition x="1875.0" y="2025.0"/> <Depth value="3.0"/> <MakeSpeed value="1.5"/> <LoiterDepth value="1.0"/></Loiter><MetaCommand name="receiverOn" content="true"/><WaitUntilTime value=“600.0”/><MetaCommand name="receiverOn" content="false"/><MetaCommand name="endGoal"/>
Operating Area Coverage Pattern Generation
Decision-Tree Based Pattern Selection• Pattern Options
• International Aeronautical and Maritime Search and Rescue (IAMSAR) Manual• Planner Derived
• Predicate Values• Operating Area Characteristics• Vehicle Characteristics• Goal Requirements
Nearly Rectangular
Point Datum
Nearly Circular Expanding Square
Sector PatternSmall Area
Oriented Expanding Square
Expanding Rectangle
Nearly Square
Planner-Generated Pattern
Nearly Square or Nearly Circular
Shrinking Square
Parallel Track Pattern
True
False
Predicate
Search Pattern Type
Nearly Rectangular
Planner-Generated Pattern
Parametrically Specified IAMSAR Pattern Examples
Expanding-Square Pattern
• Point-Focused Search• Circular or Square
Area• Potentially Large Area
Parallel-Track Pattern• Area-Focused Search• Rectangular, Circular,
or Convex Polygonal Area
IAMSAR Patterns and Irregular (Concave) Polygonal Areas
Fast Solution A* Search Coverage-Pattern Generation
• Search Definition• Area covered with points
spaced at ½ required track spacing
• A point is considered “searched” if a search leg passes within ½ track spacing
• A pattern leg can end at any unsearched point
• The search is complete when all points have been “searched”
• Search Metrics• Partial path cost:
path length + turn penalty• Remaining cost estimate:
unsearched points * trk spacing * 5
• Favors patterns with fewer legs
Hill-Climbing Search Coverage-Pattern Generation
• Identical Search Definition• Search Metrics
• Partial path cost: path length + turn penalty
• Remaining cost estimate:0.25 * unsearched points * trk
spacing
• Favors patterns with shorter travel distances
• Search Progression• Chooses the “best” available
waypoint using an A* heuristic• No Backtracking• Goal state must be reachable
from any intermediate state
Traveling Salesman Problem (TSP) Iterative Improvement Coverage-Pattern
Generation• Search Definition
• Area covered with points spaced at required track spacing
• Each point must be used to end exactly 1 pattern leg
• Search Metrics• Solution cost:
path length + turn penalty• Favors patterns with longer,
straighter legs• Search Progression
• Start with an arbitrary visit order• Conduct pairwise comparison
and swap locations in visit sequence as appropriate
• Algorithm ends when no further improvements are obtainable
TSP Iterative Improvement with Simulated Annealing Coverage-Pattern Generation
• Identical Search Definition• Identical Search Metrics• Search Progression
• Conduct pairwise comparison• Switch order if better (usually)• Probabilistically switch even if
worse• Probabilistically don’t switch
even if better
• Probability of a “bad” swap decision decreases linearly with time
• Termination criteria• System cool (Pbad = 0)
• No further improvements are obtainable
Comparison of Planner-Based Coverage-Pattern Generation
Techniques
0.5
0.7
0.9
1.1
1.3
1.5
1.7
1.9
2.1
2.3
1 2 3 4 5 6 7 8 9 10 AvgSearch Area
Sea
rch
Pla
n T
rack
Len
gth
to
O
BB
-Ali
gn
ed P
aral
lel
Tra
ck
Len
gth
OBB-Aligned Expanding Square OBB-Aligned Parallel TrackBest Search Time A* Combined Best-First / A*Hill Climbing TSP Iterative ImprovementTSP Simulated Annealing
0
5
10
15
20
25
30
35
1 2 3 4 5 6 7 8 9 10 AvgSearch Area
Pla
nn
er R
un
Tim
e (s
ecs)
Best Search Time A* Combined Best-First / A* Hill Climbing
TSP Iterative Improvement TSP Simulated Annealing
Goal Inference from Task-Level Behavior Scripts Overview
Assumptions• No MetaCommand Behaviors• Script Corresponds to a Single Goal• Direct Transit to and from Operating Area
Classification of Scripts as 1 of 5 Goal Types• Point Search• Area Search• Reposition• Patrol• Monitor Transmissions
Goal Inference Using Case-Based Reasoning (CBR)
75-Script Recall Set• 15 of Each Goal Type• 25 of Each Vehicle
Type
15 Characteristics• Values from 0 to 1• Weighted
Closest Match Wins:
CBR Characteristics:Amount of time the vehicle is stationary
Effectiveness of the script to provide area coverage
Degree to which the script focuses on a single point
Degree to which the script calls for parallel tracks
Degree to which the script calls for orthogonal tracks
How frequently the script calls for points to be revisited
Distance between launch and recovery positions
Number of legs (waypoints)
Ratio of sensor sweep width to operating area size
How close early waypoints are to the operating area center
Degree to which the vehicle uses typical “patrol” speed
Degree to which the vehicle uses typical “transit” speed
Degree to which the vehicle utilizes typical “search” speed
Amount of time a UUV spends on the surface
Amount of time depth or altitude are constant
15
1
,ii i
i
distance r x w c x c r
Goal Inference Using Naïve Bayes (NB) Reasoning
Conditional Probability and Bayes Formula:
14 Characteristics• Discrete (mostly
Boolean) Values • Assumed Independence
Probabilities • 104 Script Recall Set• Manual Adjustment in
some Cases
Maximum a Posteriori (MAP) Classification Wins
NB Characteristics:Significant stationary positioning
Area effectively covered
Script focuses on a single location
Script contains of many parallel tracks
Script contains many orthogonal tracks
Many points are visited more than once
Mission finishes close to the launch point
Script contains many waypoints
Operating area is small relative to the sensor sweep width
Early waypoints are near the center of the operating area
Vehicle maintains a constant speed
Waypoints form sectors
Vehicle maintains a constant depth or altitude
Vehicle spends a lot of time on the surface
i
ii cPcP
HcPHcPHPccHP
...
|...|...|
1
11
Comparison of CBR and NB Goal Inference
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
Area Search Point Search Patrol MonitorTransmissions
Reposition Overall
CBR Precision (Ideal) NB Precision (Ideal)CBR Precision (Acceptable) NB Precision (Acceptable)CBR Recall (Ideal) NB Recall (Ideal)CBR Recall (Acceptable) NB Recall (Acceptable)
Research Objective 4
Development of a Hybrid Control Architecture Inherently Relying on the Common Data Model• Vehicle Independent
• Provides High-Level Direction using the Existing Vehicle Controller
• Requires Minimal Modification to Existing Controller• Relies on Previous Research Objectives
• Overview• Uses a Declarative Goal-Based Mission Definition• Generates Task-Level Behavior Scripts to Accomplish
Goals• Converts Task-Level Behavior Scripts to Vehicle-Specific
Commands• Issues Vehicle-Specific Commands to Vehicle Controller• Replans as Required
The Extended Rational Behavior Model (ERBM)
Based on the Rational Behavior Model (RBM)• Three-Layer Hybrid Architecture Analogous to
the Command Structure of a Naval Vessel• Strategic Level—High Level Mission Control (CO)• Tactical Level—Implementation of High-Level
Direction (watch officers)• Execution Level—Hardware Interface (enlisted
watches)
• Leverages Other Research Objectives• Declarative and Task-Level Mission Specification• Generation Task-Level Behavior Sequences to
Accomplish Declarative Goals• Translation of Task-Level Behaviors to Vehicle-
Specific Commands
ERBM Architecture
Strategic Level
Tactical Level
Execution Level (existing vehicle controller)
Declarative AVCL Mission
High-Level World Model
Mid-Level World Model
State and Sensor Data
Translator
Task-L
evel
Beh
avior S
cript
Veh
icle-Sp
ecific
Co
mm
and
Co
mm
and
Statu
s
& P
ositio
n U
pd
ate
Scrip
t Statu
s
Script Control
Agenda Control
Planner
Task-Level Behavior
Goal
Command Flow
Visible Data
Communications
Extended Rational Behavior Model Controller
FSM-Based Strategic Level Control
Complete
Search Pattern Set Alert
Transit to Area
start
in area, alert=true
in area, alert=false
activate
target locatedsingle target=true
time out ti
me
ou
t
pattern complete
target locatedsingle target=false
Complete
Patrol Pattern Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
time outtime outtarget
detected
pattern complete
Search Goal FSM
Patrol Goal FSM
On-Vehicle ERBM Implementation
ERBM Controller
PC104
QNXE
ERBMConnection Process
RExec Process
Shared Memory
Script Status Flag
Hard Drive
track.out
ARIES Waypoint Lists
“TacticalEnding” Message
“Position X Y” Messages“ScriptComplete” Messages
“ScriptFail” Messages
Actuators
Telemetry
Simulation VE
Data and Message Flow
Hardware-in-the-Loop Simulation Data Flow
The NPS ARIES UUV
Virtual Environment (VE) TestingModeling
• UUV, USV and UAV Models• 6-DOF Rigid-Body Dynamics
Visualization• X3D• DIS
• Standalone (AUVW only)• Vehicle Hardware in the
Loop
ARIES UUV ERBM ResultsMission Consisting of a Single Reposition Goal
• No Avoid Areas• Required Routing• In-Water Results from Monterey Bay (16 June 2006)
ARIES ERBM Results (2)Mission Consisting of a Single Monitor
Transmissions Goal• 1 Circular Avoid Area• Rectangular Operating Area• VE Results using On-Vehicle Implementation
ARIES ERBM Results (3)Missions Consisting of Similar Single Area-Search Goals
• Single-Target (Left) and Multi-Target Search• Target Detection (Simulated) as Indicated• In Water Results from Monterey Bay (25 July 2006)
ARIES ERBM Results (4)Multi-Goal Mission
• Executes Single-Target Area Search First• On Success (Left) Executes Patrol Goal• On Failure (Right) Executes Monitor Transmissions Goal
• VE Results using On-Vehicle Implementation
Research Conclusions and Contributions
Leveraging of dissimilar vehicle commonalities in the development of a vehicle-independent AV data model
Viability of XML as a format of choice for this common data model
Practical application of the common data model to actual vehicles
Research Conclusions and Contributions (2)
Implementation of a set of vehicle-independent task-level behaviors with deterministic time-arc semantics
Demonstration of the use of these behaviors to encode tasking for arbitrary vehicles
Research Conclusions and Contributions (3)
Development of translation mechanisms for conversion between the XML-based common data model and vehicle-specific data formats (text and binary)• XSLT• CFGs• Intermediate XML Form
Research Conclusions and Contributions (4)
Development of a declarative mechanism relying on high-level goals for AV task specification that is more abstract and intuitive than typical AV tasking formats
Implementation and refinement of techniques for converting between declarative goals and task-level behavior scripts
Research Conclusions and Contributions (5)
Design and implementation of a hybrid control architecture that leverages the declarative-to-task-level and task-level-to-vehicle-specific translation capabilities provided by the common data model to extend the autonomous capability of arbitrary vehicles with minimal modification to existing control software
Recommendations for Future Work
• Testing with More Actual Vehicles of Different Types• More Rigorous Analysis of UGV, USV, and UAV Requirements• Standard Mission Systems, Payload, and Manipulator
Interface and Incorporation into the Task-Level Behavior Set• Planner Generation of Multi-Vehicle and Multi-Pass Searches• Study of Goal-Type / Script Characteristics Relationships and
Improved Goal-from-Script Inference• Improved ERBM Tactical Level Functionality• Use of the Common Data Model in Direct Support of
Coordinated Operations• Exploration of Various Message-Translation Options During
Coordinated Operations• Use of the Common Data Model to Facilitate Interface
between AV Systems and More General Command and Control Systems
• Possible Evolution from Data Model to Ontology
Questions
Backup Slides
Task-Level Behaviors
Similar Efforts• Joint Architecture for Unmanned Systems
(JAUS)• NATO Standardization Agreement (STANAG)
4586• Common Command Language (CCL)
Commonalities• Potential Command Types
• Closed-Loop—Control Relies on State Feedback• Open-Loop—Explicit Actuator Settings• Non-Control-Related—Mode and Selection Switches
• Deterministic Time Arc Semantics
Research Objective 1a
Inter-Vehicle Message Set Development• Identify Messaging Requirements• Implement Messages Meeting these
Requirements
Inter-Vehicle MessagingRelated Efforts
• Remotely Operated Vehicle (ROV) Systems• Inherently Message Based• JAUS, STANAG 4586
• Vehicle-Independent AV Systems• CCL• Compact Control Language (C2L)• Cooperative Distributed Oceanographic Sampling Network
(CoDA)• Foundation for Physical Agents (FIPA) Communicative Act
Library Specification (CALS)• Request-Inform Model
Message Type Description Message Category
Command the vehicle to perform an action Request (activity)
Request information from the vehicle Request (information)
Provide vehicle state or event information Inform
Provide vehicle capabilities or characteristics information Inform
Initiate or request cooperative group maintenance Request (activity)
XSLT-Based Translation Issues
Limited Numerical Processing• Turing Complete, but not Necessarily Easy• Example: Trigonometry
XSLT Extensions—Typically Implemented in Java
360
2 0LatLatRx
360
cos2 0LonLonLatRy
02
360Lat
R
xLat
0cos2
360Lon
LatR
yLon
<xsl:value-of
select=“ java:LatitudeLongitudeConversion.getXFromLatitude($geoOriginLat,
./LatitudeLongitude/@latitude) ”/>
Extension Namespace
Static Java Method Invocation
Method Parameters (XPath)
Mapping from the Data Model to ARIES and Seahorse UUV
Waypoints
ARIES Waypoint Fields
Cartesian Y
Cartesian X
Right Screw Speed
Left Screw Speed
Vertical Control Flag
Waypoint
MakeAltitude
MakeDepth
MakeKnots
MakeSpeed
SetPower
Ordered Transit Altitude
Ordered Transit Depth
GPS Popup Flag
GPS Popup Duration (computed)
Watch Radius
Time Out (computed)GpsFix
Standoff
Seahorse Waypoint Navigation
Homing Mode
Location
Depth / Altitude
Transit Speed
Use SSS
Waypoint
MakeAltitude
MakeDepth
MakeKnots
MakeSpeed
SetPower
MetaCommand
Content will be mapped
Content may be mapped
Mapping from the Data Model to REMUS UUV and JAUS Waypoints
REMUS Navigate or Dead Reckon
Offset Y Axis (0)
Destination
Offset Direction (0)
Offset Distance (0)
Depth Control Mode
Waypoint
MetaCommand
MakeAltitude
MakeDepth
MakeKnots
MakeSpeed
SetPower
Content will be mapped
Content may be mapped
Depth / Altitude / Triangle
Speed
Follow Trackline
Sidescan Range
Timeout (auto)
JAUS Set Global Waypoint
Elevation
Waypoint Number (computed)
Latitude
Longitude
Waypoint
MakeAltitude
MakeDepth
MakeAltitudeAGL
MakeAltitudeMSL
Mapping from the ARIES and Seahorse UUV Waypoints to the
Data Model
ARIES Waypoint Fields
Cartesian Y
Cartesian X
Right Screw Speed
Left Screw Speed
Vertical Control Flag
Ordered Transit Altitude
Ordered Transit Depth
GPS Popup Flag
GPS Popup Duration (computed)
Watch Radius
Time Out (computed)
Cartesian X
Cartesian Y
Waypoint
Transit Power
Depth or Altitude
GPS Fix
Standoff Distance
Time Out
Seahorse Waypoint Navigation
Homing Mode
Location
Depth / Altitude
Transit Speed
Use SSS
name (“useSSS”)
content
MetaCommand
value
MakeSpeed or MakeKnots
value
MakeDepth or MakeAltitude
LatitudeLongitude or RelativeXYPosition
HomingMode
Waypoint
Mapping from the REMUS UUV Waypoint Objectives to the Data
Model
Navigate, Dead Reckon or Transponder Home
Destination
Depth Control Mode
Depth / Altitude / Triangle
Speed
Follow Trackline
Track Ping Interval
Timeout
Type
name (“waypointNavMode”)
content
MetaCommand
name (“transponderLabel”)
content
MetaCommand
name (“triangle…”)
content
MetaCommand (3 or 4)
value
MakeDepth or MakeAltitude
value
MakeSpeed or MakeKnots
name (“trackPingInterval”)
content
MetaCommand
name (“sidescanRange”)
content
MetaCommand
Sidescan Range
LatitudeLongitude
HomingMode
Waypoint
TimeOut
Behavior will be generated
Behavior may be generated
ERBM Modifications to the RBM
Extension Formalizes and Extends (Nicholson, 04)• Allows Numerical Processing at Strategic Level to
Facilitate Planning• Makes Strategic and Tactical Levels Interruptible• Replaces Pull-Only Communications Model with Push-
Pull Model• Allows Each Level to Maintain a World Model
Commensurate with the Level of Decision-Making• Separates Mission Definition from Strategic Level
Implementation and Behavior Activation
Rendezvous
Departure GPS
Location
Depth / Altitude
Transit Speed
Arrival GPS
Waypoint
GpsFix
MakeAltitude
MakeDepth
MakeKnots
MakeSpeed
SetPowerContent will be mapped
Content may be mapped
Task-Level Behavior Mapping to a Seahorse UUV Rendezvous
Command
Station Keep
Until When
Location
Transit Depth / Altitude
Loiter Depth
Loiter
MakeAltitude
MakeDepth
WaitUntilTime
Surface Comms
Take GPS Fix
Collect SVP
Return to Depth (False)
Return to Start (False)
Perform RF Comms
GPS FixCollect SVP
Return to Start (False)
GpsFix
MetaCommand
Content will be mapped
Content may be mapped
Task-Level Behavior Mappings to Seahorse UUV GPS Fix, Surface Comms, and Station Keep
Commands
Set Position
Destination Longitude
Destination Latitude
Offset Distance (0)
Offset Direction (0)
Offset Y Axis (0)
SetPosition
Content will be mapped
Content may be mapped
REMUS Surface Objective
Timeout (auto)
Speed
MakeKnots
MakeSpeed
SetPower
Task-Level Behavior Mappings to REMUS UUV Set Position and Surface
Objectives
Transponder Home
Offset Y Axis (0)
Label
Offset Direction (0)
Offset Distance (0)
Depth Control Mode
Waypoint
MetaCommand
MakeAltitude
MakeDepth
MakeKnots
MakeSpeed
SetPower Content will be mapped
Content may be mapped
Depth / Altitude / Triangle
Speed
Follow Trackline
Sidescan Range
Timeout (auto)
Task-Level Behavior Mapping to a REMUS UUV Transponder Home
Objective
Rendezvous
Departure GPS
Location
Depth / Altitude
Transit Speed
Arrival GPS
value
MakeDepth or MakeAltitude
value
MakeSpeed or MakeKnots
LatitudeLongitude
ObtainGps
Waypoint
GpsFix
value (computed)
Wait
Quit
Behavior will be generated
Behavior may be generated
Mapping from a Seahorse Rendezvous Command to Task-Level
Behaviors
Station Keep
Until When
Location
Transit Depth / Altitude
Loiter Depth
value
MakeDepth or MakeAltitude
LatitudeLongitude or RelativeXYPosition
Depth
Loiter
value
WaitUntilTime
Mapping from a Seahorse UUV Station Keep Command to Task-
Level Behaviors
Surface Comms
Take GPS Fix
Collect SVP
Return to Depth
Return to Start
Perform RF Comms
name (“rfComms”)
content
MetaCommand
name (“obtainSVP”)
content
MetaCommand
value (computed)
Wait
value (0)
MakeDepth
GpsFix
value (previous)
MakeDepth
LatitudeLongitude (previous)
Waypoint
Behavior will be generated
Behavior may be generated
Mapping from a Seahorse UUV Surface Comms Command to Task-Level
Behaviors
GPS FixCollect SVP
Return to Start
name (“obtainSVP”)
content
MetaCommand
LatitudeLongitude (previous)
Waypoint
GpsFix
Behavior will be generated
Behavior may be generated
Mapping from a Seahorse UUV GPS Fix Command to Task-Level
Behaviors
Hardware Location
Location
Type (not equal to “waypoint”)
Transponder Depth
name (“hardware”)
content
MetaCommand
name (“latitude”)
content
MetaCommand
name (“longitude”)
content
MetaCommand
name (“depth”)
content
MetaCommand
Mapping from a REMUS UUV Hardware Location to Task-Level
Behaviors
Navigate Rows
Destination
Depth Control Mode
Depth / Altitude / Triangle
Speed
Follow Trackline
Track Ping Interval
Timeout
name (“triangle…”)
content
MetaCommand (3 or 4)
value
MakeDepth or MakeAltitude
value
MakeSpeed or MakeKnots
name (“trackPingInterval”)
content
MetaCommand
name (“sidescanRange”)
content
MetaCommand
Sidescan Range
LatitudeLongitude (computed)
HomingMode
Waypoint (multiple)
TimeOut
Behavior will be generated
Behavior may be generated
Num Rows
Row Spacing
name (“waypointNavMode”)
content (“best”)
MetaCommand
Mapping from a REMUS UUV Navigate Rows Objective to Task-
Level Behaviors
Compass Calibration
Clear Calibration?
Move Away Duration
Surface
Timeout
Speed
name (“compassCalibration”)
MetaCommand
Value (computed)
Wait
value
MakeDepth
value
MakeSpeed, MakeKnots or SetPower
name (“moveAway”)
content
MetaCommand
name (“clearCalibration”)
content
MetaCommand
Mapping from REMUS UUV Compass Calibration and Surface Commands to
Task-Level Behaviors
JAUS XML Message
Message Data
Header
JAUS XML Message List
AVCL Message
body
head
AVCL Message List
JAUS XML Message
Message Data
Header
JAUS XML Message List
name (“senderID”)
MetaCommand
AVCL Task-Level Script
name (“destinationID”)
content
MetaCommand
name (“acknowledge”)
content
MetaCommand
Task-Level Command
MetaCommand …
content
Mapping from JAUS Messages to AVCL Messages
Set Global Vector
Elevation
Speed
Heading
Roll
Pitch
value
MakeSpeed
value
MakeDepth (UUV Only)
value
MakeAltitude (UAV Only)
value
MakeHeadingIndicates Optional Data
Mapping from a JAUS Set Global Vector Message to Task-Level
Behaviors
Set Wrench Effort
PropulsiveLinearY
PropulsiveLinearX
PropulsiveLinearZ
PropulsiveRotationalX
PropulsiveRotationalY
PropulsiveRotationalZ
value
SetPower
lateralThrusters
SetThrusters (UUV Only)
verticalThrusters
SetThrusters (UUV Only)
value
SetClimbRate (UAV Only)
value
SetAileron (UAV Only)
value
SetPlanes (UUV Only)
value
SetElevator (UAV Only)
value
SetRudder (USV Only)
value
SetTurnRate (UAV Only)
value
SetRotate (UUV Only)
Indicates Optional Data
ResistiveLinearY
ResistiveLinearX
ResistiveLinearZ
ResistiveRotationalX
ResistiveRotationalY
ResistiveRotationalZ
Mapping of a JAUS Set Wrench Effort Message to Task-Level Behaviors
Combined Best-First / A* Search Coverage-Pattern Generation
• Identical Search Definition• Search Metrics
• Partial path cost: path length + turn penalty
• Remaining cost estimate:0.25 * unsearched points * trk
spacing
• Favors patterns with shorter travel distances
• Search Progression• Standard A* search• Commits to best partial solution
after 5 steps and restarts from there
• Goal state must be reachable from any intermediate state
Complete
Illuminate or Jam Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
time outtime out
ERBM Jam or Illuminate Goal FSM Control
Complete
Monitor Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
time outtime out
transmission detected
ERBM Monitor Transmissions Goal FSM Control
Complete
Sampling Pattern Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
time outpattern complete
contaminant detected
time out
ERBM Sample Environment Goal FSM Control
Mark Target
Complete
Search Pattern Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
target found
time o
ut
time o
ut
tim
e o
ut
pattern complete
ERBM Mark Target Goal FSM Control
Decontaminate
Complete
Sampling Pattern Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
contaminant detected
time o
ut
pattern complete
tim
e o
utcontaminant
removed
time out
ERBM Decontaminate Goal FSM Control
Engage Target
Complete
Search Pattern Set Alert
Transit to Area
start
in area, alert=truein area, alert=false
activate
target found
target en
gag
edsin
gle targ
et=tru
e
time o
ut ti
me
ou
ttarget engagedsingle target=false
time o
ut
pattern complete
ERBM Attack or Demolish Goal FSM Control