Implementing Robotic Control Algorithms in Open Source and Government Virtual Environments

There are an increasing number of simulation tools either available today or coming online for ground vehicle autonomous behavior modeling. Engineers in TARDECs Ground Vehicle Robotics (GVR) area have dedicated a significant portion of effort over the past four plus years reviewing, implementing and promoting the development these tools. This paper provides an overview of these efforts and discusses the current state of these virtual environments from the perspective of TARDEC robotic researchers, developers, engineers and program managers. We specifically touch on experiences implementing control algorithms in Player/Stage, ANVEL and MODSIM/RIDE. While we take specific measures to avoid comparative analysis we provide our insight into the current strengths and limitations of these systems as it relates to utilization on research efforts, a quick development/integration program (Dismounted Soldier Autonomy Tools) and a JCTD effort (AMAS). We also give an overview of other known autonomy M&S systems and their stated status/attributes as well as discuss what we believe would be necessary for these tools to mature to the point where they can eventually serve to reduce costs associated with autonomous vehicle development and testing. INTRODUCTION Unmanned Ground Vehicle (UGV) autonomy continues to be an area of significant interest to the US Department of Defense. However, after the investments made in the Army’s FCS (Future Combat Systems) ANS (Autonomous Navigation System) program and recent US conflicts abroad the current and near term funding allocations do not align with this interest. It is within this domain that research labs and organizations must identify methods to succeed on advanced autonomy maturity and development efforts with reduced funding. An area frequently seen as low hanging fruit is with the concept of a virtual proving ground for autonomous systems. It is envisioned that such a capability could reduce costs, and time of development, of these systems while also increasing the maturity and overall acceptance of the autonomous unmanned ground vehicle end product. This paper intends to give an overview of the current state of the Autonomous Virtual Proving Ground (AVPG) concept from the perspective of engineers, researchers, program mangers and developers within TARDECs Ground Vehicle Robotics (GVR) area. First we will give some background on the AVPG concept over the years. Next we will give an overview of the facets of what we believe are important in an AVPG. After that we will give an implementation history of AVPGs in GVR including our experiences working with and around these systems. Finally we will finish with a brief conclusion statement about the state of these systems. Proceedings of the 2014 Ground Vehicle Systems Engineering and Technology Symposium (GVSETS) 2 Implementing Robotic Control Algorithms in Open Source and Government Virtual Environments, Frederick, et.al AVPG Background Modeling and simulation has proven to be a key component of the development cycle for any complex system or process. The development of control and decision algorithms for Unmanned Ground Vehicles (UGVs) clearly falls into the category of complex systems. One of the first endeavors into robotic control algorithm simulation came via free ware as part of the Player project [1]. This simulation project quickly became popular with academia and small businesses as a means to test conceptual singular and multiagent behaviors in virtual environments without the need to entirely recreate unique and specific interface modules for sensors, vehicles, and environments. Other simulation efforts began at this time as well, such as Webots [2], that went on to eventually form the basis for a few online programming competitions (such as the robostadium). In the mid 2000’s the ARMY Research Lab invested in the creation of its own robotic autonomy simulation environment with the creation of Robotic Interactive Visualization and Experimentation Toolbox (RIVET) [3]. This tool was built by ARL to enable their Collaborative Technology Alliance members to have access to virtual robotic systems to enhance their autonomy development and integration efforts. Also around this time the ARMY’s Future Combat Systems Autonomous Navigation Program created a robotic behavior simulation environment, MODSIM, which enabled them to streamline autonomy development and testing procedures as well as meet many of their Configuration Item Development Specification requirements virtually. Both of these systems were developed by the same company, General Dynamics Robotic Systems (GDRS), and for the same general purpose, robotic autonomy development and virtual testing. The difference was in intended use as RIVET was developed to further research efforts while MODSIM was developed to help with development, testing and requirement achievement for a program of record. More recently there have been investments in these virtual testing environments by the Office of the Secretary of Defense (OSD) and the Corps of Engineers Engineering Research and Development Center (ERDC) with the Autonomous Navigation Virtual Environment Laboratory (ANVEL) [4] and the Virtual Autonomous Navigation Environment (VANE) [5]. ANVEL was originally designed to be the playback entity for the VANE off-line high fidelity simulation system. However, ANVEL has been transformed into its own game engine based, open source, real-time simulation environment. VANE is a high fidelity, near realtime physics-based, multi-scale numerical testbed designed to quantitatively predict sensor and autonomous system performance in a simulation environment. These systems are designed to work in coordination such that when the need for really high fidelity environmental or sensors representations are required, for specific areas in a large simulation scene, arrangements can be made to configure the systems to provide for that deep VANE based analysis. Also in recent years there has been investment by NASA/JPL and DARPA to also develop these virtual robotic testing environments but with a broader focuses than just the autonomy execution of developed behavioral and control based algorithms. The JPL system, Rover Analysis, Modeling and Simulation (ROAMS) [6], was developed to support planet surface rover missions with constructive simulations of a multitude of mission specifics including autonomous navigation. DARPA invested in the open source Gazebo environment to create the DARPA Robotic Challenge Simulation (DRCSim) system [7]. DRCSim is a collection of models, environments, plugins, and tools that customize the Gazebo simulator for use in the DARPA Robotics Challenge (DRC). Gazebo contains general simulation capabilities and DRCSim includes the robots, objects, and code that are specific to the DRC. TARDECs Analytics area has also explored AVPG development with a focus on inclusion of high fidelity vehicle dynamic models [8, 9]. The focus here has been on trying to get the simulation environments to run in real or near real-time with more representative models of vehicles. Finally there has been many other APVG like systems developed as freeware [10] and there have also been systems developed by individual UGV autonomy developers to test and improve their product. As in the case with the DRCSim and Webots many of these virtual environments have been transitioned into systems that are now being used to host online competitions as well as sharing as freeware to the public. In fact, offerings such as Webots have converted from freeware provided to the public, via GNU license agreement, to commercial offerings due to the rise in popularity of the environment. This popularity rise can at least in part be traced back to use of these systems in the online competitions. APVG Components To make a statement on what facets must exists in an APVG we first need to set the expectation of what the intended end-user of the APVG would use the product for. For the purposes of this paper we are restricting our APVG description to one that will be used by developers to test their autonomy and control modules in a holistic fashion prior to implementing the code on the actual vehicle. The important features of such a system can be broken into a few key subgroups and configured to work together usually in a Proceedings of the 2014 Ground Vehicle Systems Engineering and Technology Symposium (GVSETS) 3 Implementing Robotic Control Algorithms in Open Source and Government Virtual Environments, Frederick, et.al method similar to the one shown in Figure 1. It is important to note that in Figure 1 the Sensor Model is meant to represent perception sensors and the Vehicle Model is meant to self-contain any “self” information that would come from proprioceptive and state sensors. Figure 1: Common Modules of an AVPG Environment Model(s): This component of any AVPG layout, such as presented in Figure 1, is core to the entire process. This is the component which provides the primary stimulus to many, if not all, of the other modules of the AVPG. At a minimum your sensor/perception model and your vehicle model will interact with the environment model to produce stimulus to each of these systems. The level of detail contained in this module varies per development environment. Of the simulation environments detailed in this paper VANE provides for the highest fidelity with respect to the environment. Depending on the task specifics VANE will sacrifice computation time in order to provide the representation of the terrain in detail. Of the systems to this point Stage is the most simple in terms of environmental fidelity. It provides for a 2-Dimenisional representation of terrain without complex reflectance/refraction and material representations. Figure 2 depicts a sample Stage environment with a robot vs. a VANE environment with robot (shown in contrast to the real environment image). The level of fidelity required in an environment