Automated Testing of Autonomous Driving Assistance Systems

Similar documents
Intelligent Technology for More Advanced Autonomous Driving

A Winning Combination

ADAS Development using Advanced Real-Time All-in-the-Loop Simulators. Roberto De Vecchi VI-grade Enrico Busto - AddFor

Final Report Non Hit Car And Truck

Evaluation of Connected Vehicle Technology for Concept Proposal Using V2X Testbed

Choosing the Optimum Mix of Sensors for Driver Assistance and Autonomous Vehicles

Presentation on DeepTest: Automated Testing of Deep-Neural-N. Deep-Neural-Network-driven Autonomous Car

Embracing Complexity. Gavin Walker Development Manager

Glossary of terms. Short explanation

Last Time: Acting Humanly: The Full Turing Test

interactive IP: Perception platform and modules

HAVEit Highly Automated Vehicles for Intelligent Transport

What is a Simulation? Simulation & Modeling. Why Do Simulations? Emulators versus Simulators. Why Do Simulations? Why Do Simulations?

Virtual Homologation of Software- Intensive Safety Systems: From ESC to Automated Driving

Achieving Desirable Gameplay Objectives by Niched Evolution of Game Parameters

William Milam Ford Motor Co

Virtual testing by coupling high fidelity vehicle simulation with microscopic traffic flow simulation

Autonomous driving made safe

Combining ROS and AI for fail-operational automated driving

Israel Railways No Fault Liability Renewal The Implementation of New Technological Safety Devices at Level Crossings. Amos Gellert, Nataly Kats

Multi-objective Optimization Inspired by Nature

Industrial Applications and Challenges for Verifying Reactive Embedded Software. Tom Bienmüller, SC 2 Summer School, MPI Saarbrücken, August 2017

Physics Based Sensor simulation

Intelligent Driving Agents

A.I in Automotive? Why and When.

Intelligent driving TH« TNO I Innovation for live

Automated Software Engineering Writing Code to Help You Write Code. Gregory Gay CSCE Computing in the Modern World October 27, 2015

Distributed Control-as-a-Service with Wireless Swarm Systems"

Simulationbased Development of ADAS and Automated Driving with the Help of Machine Learning

ARGUING THE SAFETY OF MACHINE LEARNING FOR HIGHLY AUTOMATED DRIVING USING ASSURANCE CASES LYDIA GAUERHOF BOSCH CORPORATE RESEARCH

FOUR TOTAL TRANSFER CAPABILITY. 4.1 Total transfer capability CHAPTER

Program Automotive Security and Privacy

TRB Workshop on the Future of Road Vehicle Automation

Figure 1.1: Quanser Driving Simulator

Transportation Informatics Group, ALPEN-ADRIA University of Klagenfurt. Transportation Informatics Group University of Klagenfurt 3/10/2009 1

CS686: High-level Motion/Path Planning Applications

Stock Price Prediction Using Multilayer Perceptron Neural Network by Monitoring Frog Leaping Algorithm

A SERVICE-ORIENTED SYSTEM ARCHITECTURE FOR THE HUMAN CENTERED DESIGN OF INTELLIGENT TRANSPORTATION SYSTEMS

SESAR EXPLORATORY RESEARCH. Dr. Stella Tkatchova 21/07/2015

CarSim/TruckSim/BikeSim Real-Time Hardware In the Loop Mechanical Simulation Corporation

Evolutionary robotics Jørgen Nordmoen

Biologically Inspired Embodied Evolution of Survival

Embedding Artificial Intelligence into Our Lives

The GATEway Project London s Autonomous Push

A New Approach to the Design and Verification of Complex Systems

PEGASUS Effectively ensuring automated driving. Prof. Dr.-Ing. Karsten Lemmer April 6, 2017

Traffic Control for a Swarm of Robots: Avoiding Group Conflicts

23270: AUGMENTED REALITY FOR NAVIGATION AND INFORMATIONAL ADAS. Sergii Bykov Technical Lead Machine Learning 12 Oct 2017

INTERSECTION DECISION SUPPORT SYSTEM USING GAME THEORY ALGORITHM

SIS63-Building the Future-Advanced Integrated Safety Applications: interactive Perception platform and fusion modules results

Lecture 10: Memetic Algorithms - I. An Introduction to Meta-Heuristics, Produced by Qiangfu Zhao (Since 2012), All rights reserved

Stanford Center for AI Safety

Mehrdad Amirghasemi a* Reza Zamani a

Evolutionary Computation and Machine Intelligence

Human-Swarm Interaction

Computer vision, wearable computing and the future of transportation

Smart Grid Reconfiguration Using Genetic Algorithm and NSGA-II

Robotic Systems. Jeff Jaster Deputy Associate Director for Autonomous Systems US Army TARDEC Intelligent Ground Systems

Dr George Gillespie. CEO HORIBA MIRA Ltd. Sponsors

National Instruments Accelerating Innovation and Discovery

Revision of the EU General Safety Regulation and Pedestrian Safety Regulation

Using FMI/ SSP for Development of Autonomous Driving

RECOMMENDATION ITU-R M.1310* TRANSPORT INFORMATION AND CONTROL SYSTEMS (TICS) OBJECTIVES AND REQUIREMENTS (Question ITU-R 205/8)

Development of a driver information and warning system with vehicle hardware-in-the-loop simulations

Reinforcement Learning for CPS Safety Engineering. Sam Green, Çetin Kaya Koç, Jieliang Luo University of California, Santa Barbara

AN0503 Using swarm bee LE for Collision Avoidance Systems (CAS)

Positioning Challenges in Cooperative Vehicular Safety Systems

Networked and Distributed Control Systems Lecture 1. Tamas Keviczky and Nathan van de Wouw

Automated Driving Systems with Model-Based Design for ISO 26262:2018 and SOTIF

Following Dirt Roads at Night-Time

Invited talk IET-Renault Workshop Autonomous Vehicles: From theory to full scale applications Novotel Paris Les Halles, June 18 th 2015

The Key to the Internet-of-Things: Conquering Complexity One Step at a Time

Effective Collision Avoidance System Using Modified Kalman Filter

The role of testing in verification and certification Kerstin Eder

Real-Time Testing Made Easy with Simulink Real-Time

NAVIGATION OF MOBILE ROBOT USING THE PSO PARTICLE SWARM OPTIMIZATION

NSF. Hybrid Systems: From Models to Code. Tom Henzinger. UC Berkeley. French Guyana, June 4, 1996 $800 million embedded software failure

VSI Labs The Build Up of Automated Driving

Intelligent Agents & Search Problem Formulation. AIMA, Chapters 2,

Agent. Pengju Ren. Institute of Artificial Intelligence and Robotics

Supervisory Control for Cost-Effective Redistribution of Robotic Swarms

Verification and Validation for Safety in Robots Kerstin Eder

Application of Evolutionary Algorithms for Multi-objective Optimization in VLSI and Embedded Systems

STPA FOR LINAC4 AVAILABILITY REQUIREMENTS. A. Apollonio, R. Schmidt 4 th European STAMP Workshop, Zurich, 2016

Cyber-Physical Systems Design: Foundations, Methods, and Integrated Tool Chains.

David Howarth. Business Development Manager Americas

A Roadmap for Connected & Autonomous Vehicles. David Skipp Ford Motor Company

Hardware-in-loop Electronic Throttle System Based On Simulink Ning Chen 1,a,Pinchang Zhu 1,b

P1.4. Light has to go where it is needed: Future Light Based Driver Assistance Systems

Development & Simulation of a Test Environment for Vehicle Dynamics a Virtual Test Track Layout.

Experimental Resilience Assessment of An Open-Source Driving Agent

Prototyping Automotive Cyber- Physical Systems

Honda R&D Americas, Inc.

Automating a Solution for Optimum PTP Deployment

CALL FOR PAPERS. embedded world Conference. -Embedded Intelligence- embedded world Conference Nürnberg, Germany

Automotive Needs and Expectations towards Next Generation Driving Simulation

DISTRIBUTION NETWORK RECONFIGURATION FOR LOSS MINIMISATION USING DIFFERENTIAL EVOLUTION ALGORITHM

The SeMiFOT project and other Swedish FOT Activities

Closed-Loop Transportation Simulation. Outlines

Applications of Millimeter-Wave Sensors in ITS

Transcription:

Automated Testing of Autonomous Driving Assistance Systems Lionel Briand Vector Testing Symposium, Stuttgart, 2018

SnT Centre Top level research in Information & Communication Technologies Created to fuel the national innovation system 2

Collaborative Research @ SnT Research in industrial context Addresses actual needs Well-defined problem Long-term collaborations Our lab is the industry 3

Strategic Research Areas Secure and Compliant Data Management FinTech Cybersecurity Space Systems and Resources Autonomous Vehicles Internet of Things 4

Introduction 5

Cyber-Physical Systems A system of collaborating computational elements controlling physical entities 6

Advanced Driver Assistance Systems (ADAS) Automated Emergency Braking (AEB) Lane Departure Warning (LDW) Pedestrian Protection (PP) Traffic Sign Recognition (TSR) 7

Advanced Driver Assistance Systems (ADAS) Decisions are made over time based on sensor data Environment Sensors Sensors /Camera Actuators Decision Controller ADAS 8

A General and Fundamental Shift Increasingly so, it is easier to learn behavior from data using machine learning, rather than specify and code Example: Neural networks (deep learning) Millions of weights learned No explicit code, no specifications Verification, testing? 9

Testing Implications Test oracles/verdicts? No explicit, expected test behavior Test completeness? No source code, no specification 10

CPS Development Process Model in the Loop Function modeling (Matlab/Simulink) Software in the Loop Hardware in the Loop Architecture modeling (SysML/C-Code) Controller Real-time analysis Plant/Environment Integration 11 Deployment (embedded-c) Testing (Expensive)

Opportunities and Challenges Early functional models (MiL) offer opportunities for early functional verification and testing But a challenge for constraint solvers and model checkers: Continuous mathematical models, e.g., differential equations Discrete software models for code generation, but with complex operations Library functions in binary code 12

Automotive Environment Highly varied environments, e.g., road topology, weather, building and pedestrians Huge number of possible scenarios, e.g., determined by trajectories of pedestrians and cars ADAS play an increasingly critical role A challenge for testing 13

Testing Advanced Driver Assistance Systems 14

Objective Testing ADAS Identify and characterize most critical/risky scenarios Test oracle: Safety properties Need scalable test strategy due to large input space 15

Automated Emergency Braking System (AEB) 16 17

Example Critical Situation AEB detects a pedestrian in front of the car with a high degree of certainty, but an accident happens where the car hits the pedestrian with a relatively high speed 17

On-road testing Testing ADAS Simulation-based (model) testing Time-consuming Expensive 18 A simulator based on physical/mathematical models

Model Testing ADAS Simulator (Matlab/Simulink) Matlab/Simulink Model Test input ADAS (SUT) Physical plant (vehicle / sensors / actuators) Other cars Pedestrians Environment (weather / roads / traffic signs) Test output Time-stamped output 19

Our Goal Developing an automated testing technique for ADAS To help engineers efficiently and effectively explore the complex test input space of ADAS To identify critical (failure-revealing) test scenarios Characterization of input conditions that lead to most critical situations 20

ADAS Testing Challenges Test input space is large, complex and multidimensional Explaining failures and fault localization are difficult Execution of physics-based simulation models is computationally expensive 21

Test Inputs/Outputs Weather - weathertype: Condition RoadSide Object Trees Parked Cars Camera Sensor - field of view: Real 1 1 «uses» Road SceneLight «enumeration» - roadtype: RT - intensity: Real Condition 1 1 1 - fog - curved * 1 1 Vehicle - v 0 : Real 1 «positioned» 1 AEB Test Scenario - simulationtime: Real - timestep: Real 1 1 Collision - state: Boolean Detection - certainty: Real - rain - snow - normal 1 Pedestrian - x 0 : Real - y 0 : Real 1 - θ: Real - v 0 : Real 1 Environment inputs Mobile object inputs Outputs «enumeration» RT - straight - ramped Position - x: Real - y: Real * Output Trajectory - AWA 1 1 Dynamic Object 22

Learnable Evolutionary Algorithms Machine-learning Classification Search Learn regions likely to contain most critical (failure) test scenarios Search for critical test scenarios in the critical regions, and help refine classification models 23

Search-Based Software Testing Definition: The application of meta-heuristic, search-based optimization techniques to find nearoptimal solutions in software testing problems. Problem Reformulation: reformulating typical software testing problems as optimization problems Fitness Function: definition of functions to optimize Search Algorithms: applying search algorithm to optimise such functions - Hill climbing - Genetic Algorithms - Simulated Annealing - Tabu Search - Particle Swarm Optimization - 24

Genetic Algorithms (GAs) Genetic Algorithm: search algorithm inspired by evolution theory Natural selection: Individuals that best fit the natural environment survive Reproduction: surviving individuals generate offsprings (next generation) Mutation: offsprings inherits properties of their parents (with some mutations) Iteration: generation after generation the new offspring fit better the environment than their parents

Search-Based Test Generation Search for test input data with certain properties Search driven by fitness function Examples: Coverage source code branch, requirements conditions Non-linearity of software (if, loops, ): complex, discontinuous, nonlinear search spaces (Baresel) Genetic Algorithm Search-Based Software Testing: Past, Present and Future Phil McMinn 26 Genetic Algorithm

Example: Unit Testing Unit Testing Minimize Maximize Execution cost Code coverage Number of test cases Detected bugs Multiple objectives Large search space: All possible test cases! 27

Multiple Objectives: Pareto Front F 1 x Pareto front Dominated by x Individual A Pareto dominates individual B if A is at least as good as B in every objective and better than B in at least one objective. F 2 28

Multiple Objectives: Pareto Front F 1 x Pareto front Dominated by x Individual A Pareto dominates individual B if A is at least as good as B in every objective and better than B in at least one objective. F 2 A multi-objective optimization algorithm (e.g., NSGA II) must: Guide the search towards the global Pareto-Optimal front. Maintain solution diversity in the Pareto-Optimal front. 28

Decision Trees All points RoadTopology (CR =[10 40](m)) Count 1200 non-critical 79% critical 21% RoadTopology(CR = 5, Straight, RH =[4 12](m)) Count 564 Count 636 non-critical 59% critical 41% p 0 < 218.6 p 0 >= 218.6 non-critical 98% critical 2% Count 412 non-critical 49% critical 51% v p 0 >= 7.2km/h v Count 152 non-critical 84% critical 16% p 0 < 7.2km/h Critical region Count 230 Count 182 non-critical 31% critical 69% non-critical 72% critical 28% Partition the input space into homogeneous regions 29

Our ADAS Testing We use decision tree classification models We use multi-objective search algorithm (NSGAII) Objective Functions: 1. Minimum distance between the pedestrian and the field of view 2. The car speed at the time of collision 3. The probability that the object detected is a pedestrian Each search iteration calls simulation to compute objective functions Input values required to perform the simulation: Precipitation Fogginess Road shape Visibility range Car-speed Personspeed Personposition Personorientation 30

Genetic Evolution Guided by Classification Initial input 31

Genetic Evolution Guided by Classification Initial input Fitness computation 31

Genetic Evolution Guided by Classification Initial input Fitness computation Classification 31

Genetic Evolution Guided by Classification Initial input Fitness computation Classification Selection 31

Genetic Evolution Guided by Classification Initial input Fitness computation Classification Selection Breeding 31

Iterative Process Initial Classification Model Refined Classification Model We focus on generating more scenarios in the critical region, respecting the conditions that lead to that region 32 We get a more refined decision tree with more critical regions and more homogeneous areas

Research Questions RQ1: Does the decision tree technique help guide the evolutionary search and make it more effective? RQ2: Does our approach help characterize and converge towards homogeneous critical regions? Failure explanation Usefulness (feedback from engineers) 33

Usefulness The characterizations of the different critical regions can help with: (1) Debugging the system model (or the simulator) (2) Identifying possible hardware changes to increase ADAS safety (3) Providing proper warnings to drivers 34

Automated Testing of Feature Interactions Using Many Objective Search 35

System Integration 36

Case Study: SafeDrive Our case study describes an automotive system consisting of four advanced driver assistance features: Advanced Cruise Control (ACC) Traffic Sign Recognition (TSR) Pedestrian Protection (PP) Automated Emergency Breaking (AEB) 37

Simulation Feedback loop 38

Actuator Command Vectors 39

Safety Requirements 40

Features & Interactions Behavior of features based on machine learning algorithms processing sensor and camera data Interactions between features may lead to violating safety requirements, even if features are correct Example: ACC is controlling the car by ordering it to accelerate since the leading car is far away, while a pedestrian starts crossing the road. PP starts sending braking commands to avoid hitting the pedestrian. Complex: predict and analyze possible interactions at the requirements level Resolution strategies cannot always be determined statically and may depend on the state of the environment 41

Objective Automated and scalable testing to help ensure that resolution strategies are safe Detect undesired feature interactions Assumptions: IntC is white-box (integrator is testing), features were previously tested 42

Input Variables 43

Search Input space is very large Dedicated search algorithm directed/guided by many objectives (fitness functions) Fitness (distance) functions: reward test cases that are more likely to reveal integration failures leading to safety violations Combine three types of functions: (1) safety violations, (2) unsafe overriding by integration component (IntC), (3) coverage of the decision structure of IntC Many test objectives to be satisfied by the test suite 44

Failure Distance Goal: Reveal safety requirements violations Fitness functions based on the trajectory vectors for the ego car, the leading car and the pedestrian, generated by the simulator PP fitness: Minimum distance between the car and the pedestrian during the simulation time. AEB fitness: Minimum distance between the car and the leading car during the simulation time. 45

Unsafe Overriding Distance Goal: Find faults faults in integration component Reward test cases generating integration outputs deviating from the individual feature outputs, in such a way as to possibly lead to safety violations. Example: A feature f issues a braking command while the integration component issues no braking command or a braking command with a lower force than that of f. 46

Branch Distance Many decision branches in IntC Branch coverage of IntC Fitness: Approach level and branch distance d (standard for code coverage) d(b,tc) = 0 when tc covers b 47

Combining Distance Functions Goal: Execute every branch of IntC such that while executing that branch, IntC unsafely overrides every feature f and its outputs violate every safety requirement related to f. Indicates that tc has not covered branch j Branch covered but did not cause unsafe override of f Branch covered, unsafe override, but did not violate requirement I 48

Search Algorithm Best test suite covers all (feasible) search objectives, i.e., for all IntC branches and all safety requirements Not a Pareto front optimization problem Objectives compete with each others for each test case Example: We cannot have the ego car violating the speed limit after hitting the leading car in one test case Tailored, many-objective genetic algorithm Must be efficient (test case executions are very expensive) 49

Evaluation on SafeDrive 50

Summary Machine learning plays an increasingly prominent role in autonomous systems No (complete) requirements, specifications, or even code Some safety and mission-critical requirements Neural networks (deep learning) with millions of weights How do we gain confidence, through automated testing, in such software in a scalable and cost-effective way? We propose solutions based on metaheuristic search and machine learning 51

Related Testing Research Testing of hybrid controllers Testing timeliness requirements Testing for deadline misses (schedulability) HiL acceptance testing prioritization Testing for security vulnerabilities Find publications on: svv.lu 52

Acknowledgements Raja Ben Abdessalem Shiva Nejati Annibale Panichella IEE, Luxembourg 53

References R. Ben Abdessalem et al., "Testing Advanced Driver Assistance Systems Using Multi-Objective Search and Neural Networks, ACM/IEEE ASE 2016 R. Ben Abdessalem et al., "Testing Vision-Based Control Systems Using Learnable Evolutionary Algorithms, IEEE/ ACM ICSE 2018 R. Ben Abdessalem et al., "Testing Autonomous Cars for Feature Interaction Failures using Many-Objective Search, IEEE/ACM/IEEE ASE 2018 54

Automated Testing of Autonomous Driving Assistance Systems Lionel Briand Vector Testing Symposium, Stuttgart, 2018