Verification and Validation of Strategic Autonomous Algorithms Using Human-in-the-Loop Architectures
Much unmanned aerial vehicle research aims to minimize the need for human interaction. This is often
achieved by developing algorithms which allow a single agent or possibly a team of agents to operate autonomously.
Most of these mission management algorithms operate at a high, strategic level and assume that low level tasks
such as vehicle state stabilization and payload signal tracking have already been realized. The difficulty in
verifying and validating strategic algorithms in flight tests is that implementing these algorithms requires
the development of many other lower-level subsystems which are not directly related to the strategic algorithms.
This project investigates architectures and hardware implementations of a ground based, distributed testing environment
that can be used to test strategic level algorithms in an efficient manner. This system allows human interaction
at very specific points to avoid developing a fully autonomous system, but still preserves the function and contributions
of the strategic algorithm. This architecture and ground based testing facility greatly reduces development time and
allows algorithms to be tested with few approximations before implementing them on a fully autonomous system. Human
subject results in ground simulation and flight testing are used to verify the approach.
Flight Test Architecture
A large amount of research and interest lies in developing strategic autonomous algorithms and govern high level behaviors
such as task and path planning. Often, it is assumed that that low level algorithms already exist to handle tasks such as
state stabilization and signal tracking. This section describes a ground based, distributed testing environment which can
be used to test high level algorithms by using a human operator in place of several low level systems. In this fashion,
the overall system operates in a manner very similar to the fully autonomous system.
Low level control problems such as state stabilization and signal tracking are considered to be mature technologies with
limited academic research currently focused on these problems. However, verification and validation of strategic and tactical
control algorithms is currently an active field of research. The general algorithm architecture to support a flight test requires excessive overhead for initial
verification and validation of strategic algorithms, so approximations are made to support rapid prototyping.
The architecture used in this work for semi-autonomous flight tests that replaces the fully autonomous system with a human pilot
and flight vehicle is shown in Figure 1.
Figure 1: System architecture for human-in-the-loop flight test of strategic controller.
In this setup, the strategic control laws are implemented on a standard laptop PC. The tasks that are usually handled by
the inner loop controller are instead managed by the human pilot. The outer loop relays information to the inner loop
(pilot) by displaying pertinent information to a second laptop (called the visualization laptop). The visualization and
strategic laptops are connected via software called OPC DataHub.
There are several advantages to this architecture. The most obvious is that this setup avoids the significant time and effort
required to develop a viable inner loop controller for the vehicle. Instead, the human pilot operates as the inner loop controller
by taking commands from the outer loop (strategic guidance algorithms). This is similar to the difference between driving a car
assisted by GPS navigation and developing a fully autonomous car capable of navigating via GPS.
This setup allows the strategic algorithms to be developed using a standard development environment such as Microsoft Visual
Studio or Matlab since the application may be implemented on a laptop PC running a Windows operating system. This further
saves time and effort because it is not necessary to port algorithms to an embedded real time operating system (RTOS).
In addition, this architecture allows vehicles using these strategic algorithms to operate in normal airspace with little
or no safety problems (the pilot can choose to ignore commands from the strategic algorithm at any time).
Distributed Simulation Architecture
The architecture described in Figure 1 is suitable for flight testing with an actual vehicle. An equivalent architecture
suitable for simulation and software or hardware-in-the-loop verification is shown in Figure 2.
Figure 2: System architecture for ground based distributed human-in-the-loop simulation.
This setup mirrors the flight test architecture shown previously in Figure 1 except the flight test vehicle and sensor unit are
replaced with their simulated counterparts. The vehicle is modeled as a 6 degree of freedom rigid body based on the Research
Civil Aircraft Model. The aircraft simulation is implemented on two separate desktop PCs and is described in detail later.
Besides ease of use and low overhead to run tests, this serves the purpose of training operators to interface with the system.
In order to accurately validate the outer loop controller, the inner loop controller must behave in a reliable, deterministic fashion.
In other words, the human operator must interface with the system in a predictable manner. The amount of error introduced by the human
operator depends on the amount and type of practice and training that they receive. The system architecture in Figure 2 can be used
to train operators in a variety of scenarios. Items such as the plant model, the strategic tasks, and other factors can be easily
modified using this architecture.
Human-in-the-Loop Interface
Human pilots can be trained on this simulator to interact with the autonomous algorithms. The performance of the operators is also
analyzed using various scenarios and metrics.
An example of an unskilled pilot flying through two paths and the instantaneous and accumulated cost is shown in Figure 3.
Figure 3: Simulator results from human-in-the-loop simulation.
The human operator interfacing with the system is shown in Figure 4.
Figure 4: Human operator interfacing with strategic algorithm.
This research investigated an architecture for verifying and validating the performance and output of strategic control algorithms
with a high degree of accuracy while minimizing time between simulation and flight test. This was done by introducing human
interaction at specific points in the system which preserves the autonomous contributions of the strategic algorithm by reducing
the human to a simple inner loop controller. This architecture is used in the distributed ground based simulator to simulate
flight test conditions in a controlled environment. The ground based distributed simulator is used to verify and validate the
strategic control algorithms and also to familiarize pilots with the interface and to train them before actually performing a
flight test.
During the development of the distributed simulator, many different methods of allowing human interaction were experimented with.
Significant development effort was focused on developing a pilot visualization system which relays the pertinent path information
to the pilot. By interviewing pilots after they had used the system, it was discovered that most of them only rely on the
overview of the path (the bottom graph in Figure~\ref{fig:visualization_screenshot}). The operator workload became too high
when they were forced to constantly scan all four displays and process the information. Current research is directed towards
developing a single display which efficiently conveys all the relevant information to the pilot.
The other major interface between the simulator and the pilot involves the joystick. The current joystick is only a three
axis device. The two principal axes were mapped to elevator and aileron inputs. Initially, the third axis was mapped to
the throttle input and the rudder was fixed to zero. This design was selected because some commercial pilots expressed
that rudder input is typically reserved for a yaw damping system. However, it was discovered that path following was
easier for the pilot if sideslipping and coordinated turns were allowed. To facilitate these maneuvers, the third axis
was mapped to the rudder input. The throttle was instead controlled using the buttons and an integrator scheme.
Finally, the current joystick automatically re-centers the two main axes to zero when the pilot takes their hands
off the stick. Some pilots were displeased by this because it made it difficult to trim the aircraft during a run.
The next generation simulator will include a more sophisticated joystick with more than three axes and trim features.
References
-
C. W. Lum, R. T. Rysdyk, and J. Vagners, "Rapid Verification and Validation of Strategic Autonomous Algorithms Using Human-in-the-Loop Architectures"
Submitted to the AIAA Journal of Aircraft [.pdf]
-
C. W. Lum, M. L. Rowland, and R. T. Rysdyk, "Human-in-the-Loop Distributed Simulation and Validation of Strategic Autonomous Algorithms"
Proceedings of the AIAA Aerodynamic Measurement Technology and Ground Testing Conference,
June 2008* [.pdf]
-
C. W. Lum, "Coordinated Searching and Target Identification Using Teams of Autonomous Agents"
PhD Dissertation University of Washington,
March 2009 [.pdf]
|