Computer Science and Software Engineering Capstone Presentations
Fall Quarter
December 18, 2020
Jonathan Young "CARLA
Autonomous Vehicle Simulator" (Elcano Project) Faculty Advisor: Dr. Michael Stiber |
Abstract The purpose of this capstone was to integrate
autonomous training models into the CARLA simulator so that these methods
could be used to assist with training and testing autonomous models for the
UWB Elcano autonomous tricycle. The Elcano project's end goal is to provide a
fully autonomous mode of transportation that would perform safely and
efficiently to deliver people and goods to a specified destination. To
achieve this, the use of a simulated environment allows a safe and
semi-realistic environment to test and train conceptual models that may then
later be applied to a reduced scale physical vehicle to ensure fidelity. Use
of the CARLA simulator is a great alternative to physical testing and
training, allowing participants in the project to work remotely on software
solutions to aid the end goal of a fully autonomous mobility solutions. To
reach this goal required extensive investigation into the large code base for
the CARLA simulator as well as the currently existing Elcano code structure.
This required numerous hours of research into the CARLA documentation,
describing the numerous classes and features all primarily written in Python
and familiarizing myself with advanced simulation concepts and techniques
applied to the simulator code. This also required learning about control
techniques, path planning, a strong understanding of Python and virtual
environments since several of the core components of CARLA required strict
version specification for compatibility. Through self-learning, and
experimentation in the CARLA simulator's "Scenario Runner" package
several components were created to enable autonomous pathing. Route behavior
was defined in an XML file consisting of x, y, z, pitch, roll, and yaw
coordinates relative to positional landmarks in CARLA maps. An agent class
was made to define vehicle behavior and sensory attributes. A custom scenario
was then made within a JSON file to define parameters for measuring agent
success criteria such as route adherence, collisions, lane keeping, etc. The
points in the XML route file were then used move to the Ego agent and
navigate it through existing map terrains as desired. This will allow for the
application of imitation learning, reinforcement learning, and testing of any
autonomous vehicle model in this simulated environment. |
|
Updated December 15, 2020