The goal of this project is improved situation awareness for autonomous vehicles across many different networks. The approach is new theory and abstractions for systems where potentially moving physical systems join and leave the network at a high rate. Making these kinds of cyber-physical systems (CPS) efficient and safe requires leveraging the sensor information from other proximate vehicles over the network: this will enable vehicles to have much higher situational awareness--effectively seeing around corners. However, computation must be performed fast enough to accurately control the physical system, and coordination over networks makes this even more challenging. The research program is paired with an educational initiative integrated into the extensive mentoring program of the researchers, with an emphasis on involving students of diverse backgrounds. This project investigates CPSEdge, a software platform deployed at the network "edge", which aggregates sensor information from nearby vehicles, and intelligently shares resulting plans of action. CPSEdge leverages its network proximity to vehicles, and is carefully designed to reply to vehicles fast enough to keep up with a quickly changing physical environment. The tools and techniques developed for CPSEdge will offer greater situational awareness to autonomous vehicles, and improve the responsiveness, reliability, and security of the software platforms that manage them. CPSEdge is built on a new process abstraction that is lightweight and can scale up to very large systems, even under significant churn, while providing increased reliability and security. This abstraction is managed by the CPSEdge system to ensure that the requisite computation is conducted in real-time with the physical system. Sensor data will be fused to generate a probabilistic model of the environment, providing global planning for nearby vehicles.
The push towards deploying autonomous-driving capabilities in vehicles is happening at breakneck speed. Semi-autonomous features are becoming increasingly common, and fully autonomous vehicles at mass-market scales are on the horizon. Cameras are cost-effective sensors, so computer-vision techniques have loomed large in implementing autonomous features. In a vehicle, these techniques must function "in real time." Unfortunately, this requirement lies at the heart of a significant disconnect: when computer-vision researchers refer to "real time," they usually mean "real fast"; in contrast, certifiable automotive systems must be "real time" in the sense of being able to predictably react to input information (such as a detected pedestrian) within specified deadlines so that adverse outcomes (such as striking a pedestrian) are provably precluded. The goal of this project is to eliminate this disconnect. It will do so through research on several fronts. First, a real-time computer-vision programming framework will be created by extending OpenVX, which is a recently ratified standard intended for developing computer-vision applications for embedded systems. Second, new computer-vision algorithms that exploit the features of this programming framework will be created, and methods will be developed to transform existing algorithms to make them "real time" in a predictability sense. Third, an experimental evaluation of "real-fast" vs. "real-time" computer vision will be conducted using driving simulators, sub-scale autonomous vehicles, and advanced testing infrastructure at General Motors. While industry is pushing hard in the area of autonomous driving, autonomous vehicles will never become a common mode of transportation unless methods for certifying real-time safety are produced. This project will focus on a key aspect of certification: validating the real-time correctness of computer-vision applications. The results that are produced will be made available to the world at large through open-source software. This software will include the new programming framework to be produced as well as tools for validating the real-time correctness of applications developed using this framework. In this project, a special emphasis will be placed on outreach to girls and women, as three female graduate students will be involved in the project. Such outreach will include: events involving the Graduate Women in Computer Science (GWiCS) group at the University of North Carolina (UNC), which hosts an annual research symposium targeted toward undergraduate women and other under-represented minorities; Tar Heel Hack, a hackathon for local middle and high school girls; the UNC Girls Who Code Club, which provides local girls in grades 6-12 with a community for learning about computer science; and the UNC Computer Science Department's annual Open House and Science Expo. These events will include hackathon projects as well as demos of a driving simulator and a sub-scale autonomous car.
The goal of this project is to explore vehicle platooning at scale in Smart and Connected Communities. The approach is the development of techniques and models that provide incentives for vehicles to join platoons and maintain their platoon memberships. Connected vehicle technology helps in forming vehicle platoons (virtual trains of vehicles traveling with small gaps between them) with benefits including improved energy efficiency, increased road capacity, and enhanced mobility. Vehicles in a platoon may benefit differently depending on where they are in the virtual train (for example, the lead saves less energy compared to a vehicle in the middle). As such, some vehicles may not be willing to join a platoon, or stay in one as better opportunities for platoon formation arise. This project explores how platoons with these competing goals will be formed and controlled, so as to understand how to motivate vehicles to participate in them. The Mcity testbed is part of the validation of the research work, and workshops involving local high-school and college students are planned. A stable platoon structure does not contain any coalition of vehicles who could increase their individual utilities by trading their platoon memberships. Given the dynamic nature of traffic streams, forming and maintaining stable platoon structures is a complex task, and requires accounting for both local and network-level conditions at the time of platoon formation. This proposal introduces a general framework that enhances optimal-control-based trajectory planning models by enabling them to also account for network level traffic conditions. This proposal further integrates stable platoon formation into the enhanced trajectory planning models, enabling them to incorporate both local and network-level information to form behaviorally compatible platoon structures that stay stable in a dynamic traffic stream.