SlideShare a Scribd company logo
Single and Multi-objective Test Cases
Prioritization for Self-driving Cars in
Virtual Environments
Christian Birchler, Sajad Khatiri, Pouria Derakhshanfar,
Sebastiano Panichella, Annibale Panichella
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 32, Issue 2
Testing Autonomous Driving Systems
2
The New York Times, April 2021
npr, January 2022 Reuters, September 2021
19.05.23 ICSE 2023 Journal-First
Testing Autonomous Driving Systems
3
World of Agile, 2018
Testing on-the-road
!
Simulation-based Testing
19.05.23 ICSE 2023 Journal-First
Simulator: BeamNG
4
19.05.23 ICSE 2023 Journal-First
5
6
Regression Testing
7
Prioritization
Minimization
Selection
19.05.23 ICSE 2023 Journal-First
Yoo and Harman, STVR 2013
Test Prioritization
8
19.05.23 ICSE 2023 Journal-First
Test Prioritization
9
19.05.23 ICSE 2023 Journal-First
Test Prioritization
10
19.05.23 ICSE 2023 Journal-First
Execution Time is a Problem!
19.05.23 ICSE 2023 Journal-First 11
è In average 49 seconds for a single test execution with
moderate driving style (BeamNG.AI.AF1.5)!
Our intuition
12
Birchler et al., TOSEM 2023
è Optimization Problem
19.05.23 ICSE 2023 Journal-First
Minimize time Maximize diversity
Black-box Test Case Prioritization
19.05.23 ICSE 2023 Journal-First 13
Input diversity:
T1 T2 T3 T4
T1 - 5.91 6.40 12.40
T2 5.91 - 1.41 8.54
T3 6.40 1.41 - 8.30
T4 12.40 8.54 8.30 -
Euclidean distance between
input vectors of T4 and T2
Road Features
14
19.05.23 ICSE 2023 Journal-First
Measuring the Road Similarity
15
Road Features
We extract these road features from
simulation-based tests
Roads with more diverse set of
features correspond to more diverse
test case inputs
Diversity is measured using the
Euclidean distance between two
feature vectors
Measuring the Road Similarity
16
Road Features
19.05.23 ICSE 2023 Journal-First
Genetic Algorithm for Test Prioritization
17
19.05.23 ICSE 2023 Journal-First
Single-objective and Multi-Objective Test
Prioritization
18
Multi-objective
Single-objective
19.05.23 ICSE 2023 Journal-First
NSGA-II + Knee Point
à 1 function à 2 functions
Roulette wheel selection
probability:
Optimal Solution Selection
19.05.23 ICSE 2023 Journal-First 19
Multi-objective Genetic Algorithms
20
We can use Genetic Algorithms to search for
optimal test case permutation/prioritization of
the test case
Initial Population
Selection
Crossover
Mutation
End?
YES NO
T1 T4 T2 T8 … Tn
We can encode a solution as a permutation of n test cases
In this example, T4 is executed before T2 and after T1
19.05.23 ICSE 2023 Journal-First
Multi-objective Genetic Algorithms
21
We need search objectives to measure the quality
of each solution. We have two objectives:
Initial Population
Selection
Crossover
Mutation
End?
YES NO
Objective 1: the sum of the
distances between each pair
of consecutive test cases ti
and ti-1 in the permutation
Objective 2: the sum of the
(past) execution cost for all
test cases. The cost of the test
ti is divided by its position i in
the permutation
19.05.23 ICSE 2023 Journal-First
Multi-objective Genetic Algorithms
22
New solutions (offspring) are generated by
recombining the genes of two parent solutions
Initial Population
Selection
Crossover
Mutation
End?
YES NO
T1 T4 T2 T5 T6 T3
T3 T1 T2 T6 T4 T5
Parent solutions
19.05.23 ICSE 2023 Journal-First
Multi-objective Genetic Algorithms
23
New solutions (offspring) are generated by
recombining the genes of two parent solutions
Initial Population
Selection
Crossover
Mutation
End?
YES NO
T1 T4 T2 T5 T6 T3
T3 T1 T2 T6 T4 T5
Parent solutions
T1 T4 T2
Offspring
19.05.23 ICSE 2023 Journal-First
Multi-objective Genetic Algorithms
24
New solutions (offspring) are generated by
recombining the genes of two parent solutions
Initial Population
Selection
Crossover
Mutation
End?
YES NO
T1 T4 T2 T5 T6 T3
T3 T1 T2 T6 T4 T5
T1 T4 T2 T3 T6 T5
19.05.23 ICSE 2023 Journal-First
Parent solutions Offspring
Multi-objective Genetic Algorithms
25
New solutions (offspring) are generated by
recombining the genes of two parent solutions
Initial Population
Selection
Crossover
Mutation
End?
YES NO
T1 T4 T2 T5 T6 T3
T3 T1 T2 T6 T4 T5
Parent solutions
T1 T4 T2 T3 T6 T5
Offspring 1
T3 T1 T2 T4 T5 T6
Offspring 2
19.05.23 ICSE 2023 Journal-First
Multi-objective Genetic Algorithms
26
The newly generated permutation will be further
changes by applying random small mutation
Offspring
T1 T4 T2 T3 T6 T5
Mutated Offspring
Initial Population
Selection
Crossover
Mutation
End?
YES NO
T1 T6 T2 T3 T4 T5
19.05.23 ICSE 2023 Journal-First
The swap mutation operator randomly swaps two genes in a
(offspring) solution
Baselines
27
We compare the final solution produced by
GA against two baselines:
• Random prioritization (average of 100K
randomly generated permutations)
• Greedy algorithm, which build a
permutation by greedily selects the test
cases that is the more diverse from the
previously selected one
Safe Driving Style
19.05.23 ICSE 2023 Journal-First
19.05.23 ICSE 2023 Journal-First 28
19.05.23 ICSE 2023 Journal-First 29
19.05.23 ICSE 2023 Journal-First 30
19.05.23 ICSE 2023 Journal-First 31
Safe Driving Style
Cost-effectiveness
32
Safe Driving Style Aggressive Driving Style Driving Style of a different AI
19.05.23 ICSE 2023 Journal-First
Cost-effectiveness
33
SO-SDC-Prioritizer
MO-SDC-Prioritizer
Greedy
19.05.23 ICSE 2023 Journal-First
Wrap up
34
19.05.23 ICSE 2023 Journal-First
World of Agile, 2018
Testing on-the-road
!
Simulation-based Testing
è Optimization Problem
+ Q&A
19.05.23 ICSE 2023 Journal-First 35

More Related Content

Similar to ICSE'23 - Journal-First Track: "Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments"

Solving the Power Purchase Cost Optimization Problem with Improved DE Algorithm
Solving the Power Purchase Cost Optimization Problem with Improved DE AlgorithmSolving the Power Purchase Cost Optimization Problem with Improved DE Algorithm
Solving the Power Purchase Cost Optimization Problem with Improved DE Algorithm
IJEACS
 
Af4201214217
Af4201214217Af4201214217
Af4201214217
IJERA Editor
 
www.ijerd.com
www.ijerd.comwww.ijerd.com
www.ijerd.com
IJERD Editor
 
An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...
An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...
An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...
NTNU
 
Winner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse AuctionsWinner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse Auctions
Samira Sadaoui
 
Medical Image Segmentation Using Hidden Markov Random Field A Distributed Ap...
Medical Image Segmentation Using Hidden Markov Random Field  A Distributed Ap...Medical Image Segmentation Using Hidden Markov Random Field  A Distributed Ap...
Medical Image Segmentation Using Hidden Markov Random Field A Distributed Ap...
EL-Hachemi Guerrout
 
IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...
IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...
IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...
IRJET Journal
 
Flexible and Distributed Production Scheduling Problem Using Population-Based...
Flexible and Distributed Production Scheduling Problem Using Population-Based...Flexible and Distributed Production Scheduling Problem Using Population-Based...
Flexible and Distributed Production Scheduling Problem Using Population-Based...
Mohd Nor Akmal Khalid
 
Combinational circuit designer using 2D Genetic Algorithm
Combinational circuit designer using 2D Genetic AlgorithmCombinational circuit designer using 2D Genetic Algorithm
Combinational circuit designer using 2D Genetic AlgorithmVivek Maheshwari
 
Orpailleur -- triclustering talk
Orpailleur -- triclustering talkOrpailleur -- triclustering talk
Orpailleur -- triclustering talk
Dmitrii Ignatov
 
October 26, Optimization
October 26, OptimizationOctober 26, Optimization
October 26, Optimization
University of Colorado at Boulder
 
CCC-Bicluster Analysis for Time Series Gene Expression Data
CCC-Bicluster Analysis for Time Series Gene Expression DataCCC-Bicluster Analysis for Time Series Gene Expression Data
CCC-Bicluster Analysis for Time Series Gene Expression Data
IRJET Journal
 
Prep abstract yk edit0612
Prep abstract yk edit0612Prep abstract yk edit0612
Prep abstract yk edit0612Soo-il Kim
 
I0343047049
I0343047049I0343047049
I0343047049
inventionjournals
 
Code coverage based test case selection and prioritization
Code coverage based test case selection and prioritizationCode coverage based test case selection and prioritization
Code coverage based test case selection and prioritization
ijseajournal
 
Winner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse AuctionsWinner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse AuctionsShubhashis Shil
 
Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)
IJCI JOURNAL
 
Optimization Models and Computational Methods for Systems Biology
Optimization Models and Computational Methods for Systems BiologyOptimization Models and Computational Methods for Systems Biology
Optimization Models and Computational Methods for Systems BiologyYang Cong
 
Evolutionary Technique for Combinatorial Reverse Auctions
Evolutionary Technique for Combinatorial Reverse AuctionsEvolutionary Technique for Combinatorial Reverse Auctions
Evolutionary Technique for Combinatorial Reverse AuctionsShubhashis Shil
 
Deep_Learning__INAF_baroncelli.pdf
Deep_Learning__INAF_baroncelli.pdfDeep_Learning__INAF_baroncelli.pdf
Deep_Learning__INAF_baroncelli.pdf
asdfasdf214078
 

Similar to ICSE'23 - Journal-First Track: "Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments" (20)

Solving the Power Purchase Cost Optimization Problem with Improved DE Algorithm
Solving the Power Purchase Cost Optimization Problem with Improved DE AlgorithmSolving the Power Purchase Cost Optimization Problem with Improved DE Algorithm
Solving the Power Purchase Cost Optimization Problem with Improved DE Algorithm
 
Af4201214217
Af4201214217Af4201214217
Af4201214217
 
www.ijerd.com
www.ijerd.comwww.ijerd.com
www.ijerd.com
 
An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...
An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...
An Experimental Study about Simple Decision Trees for Bagging Ensemble on Dat...
 
Winner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse AuctionsWinner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse Auctions
 
Medical Image Segmentation Using Hidden Markov Random Field A Distributed Ap...
Medical Image Segmentation Using Hidden Markov Random Field  A Distributed Ap...Medical Image Segmentation Using Hidden Markov Random Field  A Distributed Ap...
Medical Image Segmentation Using Hidden Markov Random Field A Distributed Ap...
 
IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...
IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...
IRJET- A Genetic based Stochastic Approach for Solving Thermal Unit Commitmen...
 
Flexible and Distributed Production Scheduling Problem Using Population-Based...
Flexible and Distributed Production Scheduling Problem Using Population-Based...Flexible and Distributed Production Scheduling Problem Using Population-Based...
Flexible and Distributed Production Scheduling Problem Using Population-Based...
 
Combinational circuit designer using 2D Genetic Algorithm
Combinational circuit designer using 2D Genetic AlgorithmCombinational circuit designer using 2D Genetic Algorithm
Combinational circuit designer using 2D Genetic Algorithm
 
Orpailleur -- triclustering talk
Orpailleur -- triclustering talkOrpailleur -- triclustering talk
Orpailleur -- triclustering talk
 
October 26, Optimization
October 26, OptimizationOctober 26, Optimization
October 26, Optimization
 
CCC-Bicluster Analysis for Time Series Gene Expression Data
CCC-Bicluster Analysis for Time Series Gene Expression DataCCC-Bicluster Analysis for Time Series Gene Expression Data
CCC-Bicluster Analysis for Time Series Gene Expression Data
 
Prep abstract yk edit0612
Prep abstract yk edit0612Prep abstract yk edit0612
Prep abstract yk edit0612
 
I0343047049
I0343047049I0343047049
I0343047049
 
Code coverage based test case selection and prioritization
Code coverage based test case selection and prioritizationCode coverage based test case selection and prioritization
Code coverage based test case selection and prioritization
 
Winner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse AuctionsWinner Determination in Combinatorial Reverse Auctions
Winner Determination in Combinatorial Reverse Auctions
 
Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)Genetic algorithm guided key generation in wireless communication (gakg)
Genetic algorithm guided key generation in wireless communication (gakg)
 
Optimization Models and Computational Methods for Systems Biology
Optimization Models and Computational Methods for Systems BiologyOptimization Models and Computational Methods for Systems Biology
Optimization Models and Computational Methods for Systems Biology
 
Evolutionary Technique for Combinatorial Reverse Auctions
Evolutionary Technique for Combinatorial Reverse AuctionsEvolutionary Technique for Combinatorial Reverse Auctions
Evolutionary Technique for Combinatorial Reverse Auctions
 
Deep_Learning__INAF_baroncelli.pdf
Deep_Learning__INAF_baroncelli.pdfDeep_Learning__INAF_baroncelli.pdf
Deep_Learning__INAF_baroncelli.pdf
 

Recently uploaded

GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 

Recently uploaded (20)

GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 

ICSE'23 - Journal-First Track: "Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments"

  • 1. Single and Multi-objective Test Cases Prioritization for Self-driving Cars in Virtual Environments Christian Birchler, Sajad Khatiri, Pouria Derakhshanfar, Sebastiano Panichella, Annibale Panichella ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 32, Issue 2
  • 2. Testing Autonomous Driving Systems 2 The New York Times, April 2021 npr, January 2022 Reuters, September 2021 19.05.23 ICSE 2023 Journal-First
  • 3. Testing Autonomous Driving Systems 3 World of Agile, 2018 Testing on-the-road ! Simulation-based Testing 19.05.23 ICSE 2023 Journal-First
  • 5. 5
  • 6. 6
  • 11. Execution Time is a Problem! 19.05.23 ICSE 2023 Journal-First 11 è In average 49 seconds for a single test execution with moderate driving style (BeamNG.AI.AF1.5)!
  • 12. Our intuition 12 Birchler et al., TOSEM 2023 è Optimization Problem 19.05.23 ICSE 2023 Journal-First Minimize time Maximize diversity
  • 13. Black-box Test Case Prioritization 19.05.23 ICSE 2023 Journal-First 13 Input diversity: T1 T2 T3 T4 T1 - 5.91 6.40 12.40 T2 5.91 - 1.41 8.54 T3 6.40 1.41 - 8.30 T4 12.40 8.54 8.30 - Euclidean distance between input vectors of T4 and T2
  • 14. Road Features 14 19.05.23 ICSE 2023 Journal-First
  • 15. Measuring the Road Similarity 15 Road Features We extract these road features from simulation-based tests Roads with more diverse set of features correspond to more diverse test case inputs Diversity is measured using the Euclidean distance between two feature vectors
  • 16. Measuring the Road Similarity 16 Road Features 19.05.23 ICSE 2023 Journal-First
  • 17. Genetic Algorithm for Test Prioritization 17 19.05.23 ICSE 2023 Journal-First
  • 18. Single-objective and Multi-Objective Test Prioritization 18 Multi-objective Single-objective 19.05.23 ICSE 2023 Journal-First NSGA-II + Knee Point à 1 function à 2 functions Roulette wheel selection probability:
  • 19. Optimal Solution Selection 19.05.23 ICSE 2023 Journal-First 19
  • 20. Multi-objective Genetic Algorithms 20 We can use Genetic Algorithms to search for optimal test case permutation/prioritization of the test case Initial Population Selection Crossover Mutation End? YES NO T1 T4 T2 T8 … Tn We can encode a solution as a permutation of n test cases In this example, T4 is executed before T2 and after T1 19.05.23 ICSE 2023 Journal-First
  • 21. Multi-objective Genetic Algorithms 21 We need search objectives to measure the quality of each solution. We have two objectives: Initial Population Selection Crossover Mutation End? YES NO Objective 1: the sum of the distances between each pair of consecutive test cases ti and ti-1 in the permutation Objective 2: the sum of the (past) execution cost for all test cases. The cost of the test ti is divided by its position i in the permutation 19.05.23 ICSE 2023 Journal-First
  • 22. Multi-objective Genetic Algorithms 22 New solutions (offspring) are generated by recombining the genes of two parent solutions Initial Population Selection Crossover Mutation End? YES NO T1 T4 T2 T5 T6 T3 T3 T1 T2 T6 T4 T5 Parent solutions 19.05.23 ICSE 2023 Journal-First
  • 23. Multi-objective Genetic Algorithms 23 New solutions (offspring) are generated by recombining the genes of two parent solutions Initial Population Selection Crossover Mutation End? YES NO T1 T4 T2 T5 T6 T3 T3 T1 T2 T6 T4 T5 Parent solutions T1 T4 T2 Offspring 19.05.23 ICSE 2023 Journal-First
  • 24. Multi-objective Genetic Algorithms 24 New solutions (offspring) are generated by recombining the genes of two parent solutions Initial Population Selection Crossover Mutation End? YES NO T1 T4 T2 T5 T6 T3 T3 T1 T2 T6 T4 T5 T1 T4 T2 T3 T6 T5 19.05.23 ICSE 2023 Journal-First Parent solutions Offspring
  • 25. Multi-objective Genetic Algorithms 25 New solutions (offspring) are generated by recombining the genes of two parent solutions Initial Population Selection Crossover Mutation End? YES NO T1 T4 T2 T5 T6 T3 T3 T1 T2 T6 T4 T5 Parent solutions T1 T4 T2 T3 T6 T5 Offspring 1 T3 T1 T2 T4 T5 T6 Offspring 2 19.05.23 ICSE 2023 Journal-First
  • 26. Multi-objective Genetic Algorithms 26 The newly generated permutation will be further changes by applying random small mutation Offspring T1 T4 T2 T3 T6 T5 Mutated Offspring Initial Population Selection Crossover Mutation End? YES NO T1 T6 T2 T3 T4 T5 19.05.23 ICSE 2023 Journal-First The swap mutation operator randomly swaps two genes in a (offspring) solution
  • 27. Baselines 27 We compare the final solution produced by GA against two baselines: • Random prioritization (average of 100K randomly generated permutations) • Greedy algorithm, which build a permutation by greedily selects the test cases that is the more diverse from the previously selected one Safe Driving Style 19.05.23 ICSE 2023 Journal-First
  • 28. 19.05.23 ICSE 2023 Journal-First 28
  • 29. 19.05.23 ICSE 2023 Journal-First 29
  • 30. 19.05.23 ICSE 2023 Journal-First 30
  • 31. 19.05.23 ICSE 2023 Journal-First 31 Safe Driving Style
  • 32. Cost-effectiveness 32 Safe Driving Style Aggressive Driving Style Driving Style of a different AI 19.05.23 ICSE 2023 Journal-First
  • 34. Wrap up 34 19.05.23 ICSE 2023 Journal-First World of Agile, 2018 Testing on-the-road ! Simulation-based Testing è Optimization Problem + Q&A
  • 35. 19.05.23 ICSE 2023 Journal-First 35