
NSF Org: |
CCF Division of Computing and Communication Foundations |
Recipient: |
|
Initial Amendment Date: | July 29, 2019 |
Latest Amendment Date: | July 29, 2019 |
Award Number: | 1910017 |
Award Instrument: | Standard Grant |
Program Manager: |
Sol Greenspan
CCF Division of Computing and Communication Foundations CSE Directorate for Computer and Information Science and Engineering |
Start Date: | October 1, 2019 |
End Date: | September 30, 2023 (Estimated) |
Total Intended Award Amount: | $248,445.00 |
Total Awarded Amount to Date: | $248,445.00 |
Funds Obligated to Date: |
|
History of Investigator: |
|
Recipient Sponsored Research Office: |
110 21ST AVE S NASHVILLE TN US 37203-2416 (615)322-2631 |
Sponsor Congressional District: |
|
Primary Place of Performance: |
1025 16th Avenue South, Room 401 Nashville TN US 37212-1234 |
Primary Place of
Performance Congressional District: |
|
Unique Entity Identifier (UEI): |
|
Parent UEI: |
|
NSF Program(s): |
Software & Hardware Foundation, CPS-Cyber-Physical Systems |
Primary Program Source: |
|
Program Reference Code(s): |
|
Program Element Code(s): |
|
Award Agency Code: | 4900 |
Fund Agency Code: | 4900 |
Assistance Listing Number(s): | 47.070 |
ABSTRACT
Developing a modern technical product such as a car, plane, or a complex medical device includes designing the complex interplay between sensors (which measure physical product and environment state) and actuators (such as small electric motors that control the product). To design this interplay, engineers rely on complex design software tools. This project will address two problems these engineers face. (1) First, little systematic knowledge of the design tools or the resulting designs is available to guide engineers. For example, little is known about how basic design properties (such as various design size measures) relate to design quality attributes (such as design complexity and comprehensibility). This project will thus collect and analyze a large number of publicly available designs to build such knowledge. (2) Second, since the design tools are complex they can contain software bugs. These bugs may in turn silently introduce bugs into widely-deployed safety-critical systems, since product control software generated from designs is often deployed in safety-critical environments. Bugs in such systems often lead to costly product recalls and may have serious consequences. This project will thus develop techniques for automatically finding software bugs in such design tools.
This project consists of the following three major components. (1) First, this project will build the largest curated corpus of publicly available cyber-physical system models and related artifacts. Preliminary results analyzing this corpus both confirms and contradicts earlier findings that are based on significantly fewer models, suggesting the utility of a large corpus for future research. (2) Second, to side-step the age-old problem of missing complete formal specifications of cyber-physical system tool chains, this project instead will design a novel scheme to infer the cyber-physical system language validity rules via deep learning from the project's model corpus. Sampling the deep learner will enable generating additional models for the researchers' existing differential cyber-physical system tool chain testing infrastructure. (3) Third, this project will supplement the deep learner's training set via the first systematic cyber-physical system-model mutation scheme based on equivalence modulo inputs. Initial experiments have found several bugs in a commercial cyber-physical system tool chain that have been confirmed by the vendor of the tool chain.
This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH
Note:
When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external
site maintained by the publisher. Some full text articles may not yet be available without a
charge during the embargo (administrative interval).
Some links on this page may take you to non-federal websites. Their policies may differ from
this site.
PROJECT OUTCOMES REPORT
Disclaimer
This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.
Cyber-physical systems (CPS) such as motor vehicles, medical devices, and aerospace systems increasingly are built with design automation tool chains that encompass design-time modeling through implementation and deployment of auto-generated code to embedded computing devices. All stages of this process (simulation, code generation, compilation for the target hardware, etc.) have the potential to introduce software defects and bugs in the resulting software executed during operation of the CPS. Given these risks, this project investigated three major objectives. Objective A is to build and maintain a large-scale CPS model corpus and analyze model metrics and modeling practice. Objectives B and C generate new CPS models via deep learning (C) and equivalence modulo input (EMI)-based mutation (B), as input for differential testing to find CPS tool chain bugs. We evaluate these objectives using the MathWorks' Simulink/Stateflow, a prototypical and widely-used CPS development environment.
The outcomes of the project include numerous peer reviewed publications in prestigious venues, education of student researchers, and engagement with relevant industry partners to transition the methodologies and technologies developed. For example, the EMI fuzzing methods and deep learning fuzzing methods found novel confirmed code generation bugs in the CPS tool chains. Given the further emergence of generative artificial intelligence (AI) and other deep learning techniques over the project, such generative models were explored for their capability to perform more sophisticated fuzzing than some earlier randomized differential testing based approaches. The project also investigated utilizing software engineering and verification techniques for deep learning systems themselves as utilized within CPS, given the increasing usage of such AI and machine learning (ML) techniques within CPS for tasks ranging from perception to planning and control. Events were organized in support of these activities within the research community, such as the International Verification of Neural Networks Competition (VNN-COMP) and the International Competition on Verifying Continuous and Hybrid Systems (ARCH-COMP), particularly the category on Artificial Intelligence and Neural Network Control Systems (AINNCS), as well as a tutorial at the ACM SIGBED International Conference on Embedded Software (EMSOFT). Overall, the intellectual merit and broader impacts outcomes and results of the project may lead to increased usage of these novel rigorous software engineering techniques in the design of CPS by utilizing AI techniques for testing and verification, and also enhanced safety and trustworthiness of AI, particularly as used within CPS.
Last Modified: 01/29/2024
Modified by: Taylor T Johnson
Please report errors in award information by writing to: awardsearch@nsf.gov.