SlideShare a Scribd company logo
1 of 28
Download to read offline
Exploiting the Enumeration of All
Feature Model Configurations
Jose A. Galindo, Mathieu Acher, Juan Manuel Tirado,
Cristian Vidal, Benoit Baudry, David Benavides
A New Perspective with Distributed Computing
https://hal.inria.fr/hal-01334851
Exploiting the Enumeration of All
Feature Model Configurations
3
Automated Analysis of
Feature Models
Analysis Process
Analysis
results
Analysis
operations
4
Analysis Operations
My app requires
Wifi and Bluetooth 4
In how many different
devices will it work?
<
5
Analysis Operations
§  Benavides et al. survey (2010) Feature
Models and Automated Reasoning
§  Configuration sampling (e.g., see Thuem et
al. 2015 ACM survey on product line
verification)
§  Feature model management operators:
slicing, merging, refactoring, diff (e.g., see
Acher et al. SCP 2013 FAMILIAR)
§  Feature model synthesis (e.g., Andersen et
al. 2012, Becan et al. ESE 2015)
6
Analysis Operations
§  Benavides et al. survey (2010) Feature
Models and Automated Reasoning
§  Configuration sampling (e.g., see Thuem et
al. 2015 ACM survey on product line
verification)
§  Feature model management operators:
slicing, merging, refactoring, diff (e.g., see
Acher et al. SCP 2013 FAMILIAR)
§  Feature model synthesis (e.g., Andersen et
al. 2012, Becan et al. ESE 2015)
7
Problem: some operations can
be computationally expensive
Counting
Core
Dead
T-wise
Slicing
Multi-objective
…
Analysis Process
Analysis
results
Analysis
operations
8
Problem: some operations can
be computationally expensive
Counting
Core
Dead
T-wise
Slicing
Multi-objective
…
Analysis Process
Analysis
results
Analysis
operations
Can’t we improve the response time for some
costly and repetitive operations?
What about guaranteeing the time response
(e.g., for critical re-configurable systems)?
9
Idea: pre-compiling offline the
configuration set…
Counting
Core
Dead
T-wise
Slicing
Multi-objective
…
Can improve the response time
for costly and repetitive operations.
Can even guarantee the time response
(e.g., for critical re-configurable systems)
10
Analysis
operations
11
First Contribution
§  Automated reasoning operations on feature
model is a knowledge compilation problem
§  One size-fits-all solution?
§  CNF, BDD, and others have been considered
§  What about simply enumerating feature
model configurations?
12
With enumeration
S, F2, F6
S, F2, F5, F1
S, F2, F5, F4
S, F2, F5, F1, F4
S, F2, F6, F1
S, F2, F6, F4
Analysis
Process
Analysis
operations
Transformation
Counting
Core
Dead
T-wise
Slicing
Multi-objective
…
13
But wait. Enumeration is costly!
BIG problems BIG toys
14
Hadoop
15
The process to parallel enumeration
16
A parallel solution to enumerate
configurations
17
Preliminary evaluation (1): is distributing the
computation more efficient and scalable?
18
Results and Discussion (1)
§  Distributed enumeration: less efficient for
small feature models (overhead)
§  Scalable for larger feature models (less
timeout or response time is quicker)
§  What about feature models for which an
enumeration is simply not possible, even
with the increase of computational/storage?
§  There is a spectrum for which our
enumeration-based technique is applicable
and pays-off. Further research effort needed
§  We can have an hybrid approach and perhaps
enumerate part of the feature model
19
Preliminary evaluation (2): is it more efficient to implement core,
dead, and counting operations with an enumeration?
20
Results and Discussions (2)
§  OK you can enumerate but is worth doing it?
§  In the majority of cases Yes
§  But sometimes not (e.g., a SAT solver can
be quicker online for some operations,
even if we exploit the enumeration)
§  Depends on the feature model size and
reasoning operation
§  Trade-off to find between off-line effort and
online reasoning benefits
21
Conclusion and Research roadmap
§  Revisit of automated reasoning and feature models;
knowledge compilation problem!
§  Enumeration-based approach and the use of distributed
computation for scaling
§  No one size-fits-all solution for reasoning; depends on:
§  feature model configuration set size;
§  reasoning operations used (e.g., slicing)
§  response time requirements (e.g., critical,
repetitivity)
“Given a reasoning operation and a feature
model, is an enumeration-based approach more
efficient than the traditional use of solvers?”
22
“Given a reasoning operation and a feature
model, is an enumeration-based approach more
efficient than the traditional use of solvers?”
Counting
Core
Dead
T-wise
Slicing
Multi-objective
…
Exploiting the Enumeration
of All Feature Model Configurations:
A New Perspective with Distributed Computing
Exploiting the Enumeration of All
Feature Model Configurations
A New Perspective with Distributed Computing
BACKUP slides
24
Envisioning applications
§  Fast explanations for errors in
configurations and models
§  Direct implementation of analysis
operations using graph reasoning
techniques (Giraph)
§  Database for the list of products for SPLOT
models for the sake of experimentation.
25
Preliminary evaluation
26
Related Work
§  All-SAT
§  Pohl et al. ASE’11 and ASE’13
§  Comparison of operations response time
based on BDD and SAT
§  Czarnecki et al. SPLC’11 and SPLC’15
§  Reasoning about Feature Model is Easy
27
28

More Related Content

What's hot

Reproducibility challenges in computational settings: what are they, why shou...
Reproducibility challenges in computational settings: what are they, why shou...Reproducibility challenges in computational settings: what are they, why shou...
Reproducibility challenges in computational settings: what are they, why shou...Research Data Alliance
 
Evolution of database access technologies in Java-based software projects
Evolution of database access technologies in Java-based software projectsEvolution of database access technologies in Java-based software projects
Evolution of database access technologies in Java-based software projectsTom Mens
 
Lock free parallel access collections
Lock free parallel access collectionsLock free parallel access collections
Lock free parallel access collectionsijdpsjournal
 
Survival analysis of database technologies in open source Java projects
Survival analysis of database technologies in open source Java projectsSurvival analysis of database technologies in open source Java projects
Survival analysis of database technologies in open source Java projectsTom Mens
 
[Thomas chamberlain] learning_om_ne_t++(z-lib.org)
[Thomas chamberlain] learning_om_ne_t++(z-lib.org)[Thomas chamberlain] learning_om_ne_t++(z-lib.org)
[Thomas chamberlain] learning_om_ne_t++(z-lib.org)wissem hammouda
 
DITAworks Integartion With RCP
DITAworks Integartion With RCPDITAworks Integartion With RCP
DITAworks Integartion With RCPwild_wild_leha
 
Building AI with Security and Privacy in mind
Building AI with Security and Privacy in mindBuilding AI with Security and Privacy in mind
Building AI with Security and Privacy in mindgeetachauhan
 
Building Interpretable & Secure AI Systems using PyTorch
Building Interpretable & Secure AI Systems using PyTorchBuilding Interpretable & Secure AI Systems using PyTorch
Building Interpretable & Secure AI Systems using PyTorchgeetachauhan
 
Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)
Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)
Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)Mark Tabladillo
 
Modeling software systems at a macroscopic scale
Modeling software systems  at a macroscopic scaleModeling software systems  at a macroscopic scale
Modeling software systems at a macroscopic scaleRalf Laemmel
 
Generation of Random EMF Models for Benchmarks
Generation of Random EMF Models for BenchmarksGeneration of Random EMF Models for Benchmarks
Generation of Random EMF Models for BenchmarksMarkus Scheidgen
 
SCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao Xie
SCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao XieSCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao Xie
SCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao XieTao Xie
 
jlettvin.resume.20160922.STAR
jlettvin.resume.20160922.STARjlettvin.resume.20160922.STAR
jlettvin.resume.20160922.STARJonathan Lettvin
 

What's hot (17)

Reproducibility challenges in computational settings: what are they, why shou...
Reproducibility challenges in computational settings: what are they, why shou...Reproducibility challenges in computational settings: what are they, why shou...
Reproducibility challenges in computational settings: what are they, why shou...
 
Evolution of database access technologies in Java-based software projects
Evolution of database access technologies in Java-based software projectsEvolution of database access technologies in Java-based software projects
Evolution of database access technologies in Java-based software projects
 
Traits of a Good Engineer
Traits of a Good EngineerTraits of a Good Engineer
Traits of a Good Engineer
 
Of Changes and Their History
Of Changes and Their HistoryOf Changes and Their History
Of Changes and Their History
 
Lock free parallel access collections
Lock free parallel access collectionsLock free parallel access collections
Lock free parallel access collections
 
Survival analysis of database technologies in open source Java projects
Survival analysis of database technologies in open source Java projectsSurvival analysis of database technologies in open source Java projects
Survival analysis of database technologies in open source Java projects
 
[Thomas chamberlain] learning_om_ne_t++(z-lib.org)
[Thomas chamberlain] learning_om_ne_t++(z-lib.org)[Thomas chamberlain] learning_om_ne_t++(z-lib.org)
[Thomas chamberlain] learning_om_ne_t++(z-lib.org)
 
DITAworks Integartion With RCP
DITAworks Integartion With RCPDITAworks Integartion With RCP
DITAworks Integartion With RCP
 
Building AI with Security and Privacy in mind
Building AI with Security and Privacy in mindBuilding AI with Security and Privacy in mind
Building AI with Security and Privacy in mind
 
Building Interpretable & Secure AI Systems using PyTorch
Building Interpretable & Secure AI Systems using PyTorchBuilding Interpretable & Secure AI Systems using PyTorch
Building Interpretable & Secure AI Systems using PyTorch
 
Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)
Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)
Microsoft Cognitive Toolkit (Atlanta Code Camp 2017)
 
Modeling software systems at a macroscopic scale
Modeling software systems  at a macroscopic scaleModeling software systems  at a macroscopic scale
Modeling software systems at a macroscopic scale
 
Generation of Random EMF Models for Benchmarks
Generation of Random EMF Models for BenchmarksGeneration of Random EMF Models for Benchmarks
Generation of Random EMF Models for Benchmarks
 
Duc le CV
Duc le CVDuc le CV
Duc le CV
 
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-CentersTowards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
Towards Edge Computing as a Service: Dynamic Formation of the Micro Data-Centers
 
SCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao Xie
SCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao XieSCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao Xie
SCAM 2012 Keynote Slides on Cooperative Testing and Analysis by Tao Xie
 
jlettvin.resume.20160922.STAR
jlettvin.resume.20160922.STARjlettvin.resume.20160922.STAR
jlettvin.resume.20160922.STAR
 

Viewers also liked

Safety management system
Safety management systemSafety management system
Safety management systemfirdausgtm
 
Tecnicas de integracion
Tecnicas de integracionTecnicas de integracion
Tecnicas de integracionjdvd1995
 
Guide Touristique - Fortaleza - Brésil
Guide Touristique - Fortaleza - BrésilGuide Touristique - Fortaleza - Brésil
Guide Touristique - Fortaleza - BrésilThiago Brésil :)
 
6 senses of UX
6 senses of UX6 senses of UX
6 senses of UXAngela Ho
 
Methods for Improving Organizational Website IA by Barbora Batokova
Methods for Improving Organizational Website IA by Barbora BatokovaMethods for Improving Organizational Website IA by Barbora Batokova
Methods for Improving Organizational Website IA by Barbora BatokovaWorld IA Day Pittsburgh
 
La importancia del proyecto socioeducativo
La importancia del proyecto socioeducativoLa importancia del proyecto socioeducativo
La importancia del proyecto socioeducativoOsi Menvar
 
Making NICUs Breastfeeding-Friendly: Meena Joshi
Making NICUs Breastfeeding-Friendly: Meena JoshiMaking NICUs Breastfeeding-Friendly: Meena Joshi
Making NICUs Breastfeeding-Friendly: Meena JoshiLeith Greenslade
 
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...Hugo Bruneliere
 
SiriusCon2016 - Document Generation with M2Doc
SiriusCon2016 - Document Generation with M2DocSiriusCon2016 - Document Generation with M2Doc
SiriusCon2016 - Document Generation with M2DocObeo
 
How the Internet of Things changes design thinking
How the Internet of Things changes design thinkingHow the Internet of Things changes design thinking
How the Internet of Things changes design thinkingFITCH
 
Deloitte Christmas Retail Results 2015
Deloitte Christmas Retail Results 2015Deloitte Christmas Retail Results 2015
Deloitte Christmas Retail Results 2015Deloitte UK
 
MetaScience: Holistic Approach for Research Modeling and Analysis
MetaScience: Holistic Approach for Research Modeling and AnalysisMetaScience: Holistic Approach for Research Modeling and Analysis
MetaScience: Holistic Approach for Research Modeling and AnalysisJordi Cabot
 
Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved Peter Antman
 
3 models of communication
3 models of communication3 models of communication
3 models of communicationDiego Rodrigo
 
Retail experience: Diagnostic and solutions
Retail experience: Diagnostic and solutionsRetail experience: Diagnostic and solutions
Retail experience: Diagnostic and solutionsFITCH
 
Caderno de vocabulário_letra bastão
Caderno de vocabulário_letra bastãoCaderno de vocabulário_letra bastão
Caderno de vocabulário_letra bastãoIsa ...
 

Viewers also liked (17)

Safety management system
Safety management systemSafety management system
Safety management system
 
Tecnicas de integracion
Tecnicas de integracionTecnicas de integracion
Tecnicas de integracion
 
Guide Touristique - Fortaleza - Brésil
Guide Touristique - Fortaleza - BrésilGuide Touristique - Fortaleza - Brésil
Guide Touristique - Fortaleza - Brésil
 
6 senses of UX
6 senses of UX6 senses of UX
6 senses of UX
 
Trabalho fábula 2012 guilherme
Trabalho fábula 2012   guilhermeTrabalho fábula 2012   guilherme
Trabalho fábula 2012 guilherme
 
Methods for Improving Organizational Website IA by Barbora Batokova
Methods for Improving Organizational Website IA by Barbora BatokovaMethods for Improving Organizational Website IA by Barbora Batokova
Methods for Improving Organizational Website IA by Barbora Batokova
 
La importancia del proyecto socioeducativo
La importancia del proyecto socioeducativoLa importancia del proyecto socioeducativo
La importancia del proyecto socioeducativo
 
Making NICUs Breastfeeding-Friendly: Meena Joshi
Making NICUs Breastfeeding-Friendly: Meena JoshiMaking NICUs Breastfeeding-Friendly: Meena Joshi
Making NICUs Breastfeeding-Friendly: Meena Joshi
 
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
fREX: fUML-based Reverse Engineering of Executable Behavior for Software Dyna...
 
SiriusCon2016 - Document Generation with M2Doc
SiriusCon2016 - Document Generation with M2DocSiriusCon2016 - Document Generation with M2Doc
SiriusCon2016 - Document Generation with M2Doc
 
How the Internet of Things changes design thinking
How the Internet of Things changes design thinkingHow the Internet of Things changes design thinking
How the Internet of Things changes design thinking
 
Deloitte Christmas Retail Results 2015
Deloitte Christmas Retail Results 2015Deloitte Christmas Retail Results 2015
Deloitte Christmas Retail Results 2015
 
MetaScience: Holistic Approach for Research Modeling and Analysis
MetaScience: Holistic Approach for Research Modeling and AnalysisMetaScience: Holistic Approach for Research Modeling and Analysis
MetaScience: Holistic Approach for Research Modeling and Analysis
 
Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved Growing up with agile - how the Spotify 'model' has evolved
Growing up with agile - how the Spotify 'model' has evolved
 
3 models of communication
3 models of communication3 models of communication
3 models of communication
 
Retail experience: Diagnostic and solutions
Retail experience: Diagnostic and solutionsRetail experience: Diagnostic and solutions
Retail experience: Diagnostic and solutions
 
Caderno de vocabulário_letra bastão
Caderno de vocabulário_letra bastãoCaderno de vocabulário_letra bastão
Caderno de vocabulário_letra bastão
 

Similar to Exploiting the Enumeration of All Feature Model Configurations: A New Perspective with Distributed Computing

Best practices for building and deploying predictive models over big data pre...
Best practices for building and deploying predictive models over big data pre...Best practices for building and deploying predictive models over big data pre...
Best practices for building and deploying predictive models over big data pre...Kun Le
 
Measuring Productivity from Model-Based Development
Measuring Productivity from Model-Based DevelopmentMeasuring Productivity from Model-Based Development
Measuring Productivity from Model-Based DevelopmentJuha-Pekka Tolvanen
 
Advanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise WebinarAdvanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise WebinarSigOpt
 
SigOpt at O'Reilly - Best Practices for Scaling Modeling Platforms
SigOpt at O'Reilly - Best Practices for Scaling Modeling PlatformsSigOpt at O'Reilly - Best Practices for Scaling Modeling Platforms
SigOpt at O'Reilly - Best Practices for Scaling Modeling PlatformsSigOpt
 
End to end MLworkflows
End to end MLworkflowsEnd to end MLworkflows
End to end MLworkflowsAdam Gibson
 
Slides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdf
Slides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdfSlides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdf
Slides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdfvitm11
 
Tuning for Systematic Trading: Talk 2: Deep Learning
Tuning for Systematic Trading: Talk 2: Deep LearningTuning for Systematic Trading: Talk 2: Deep Learning
Tuning for Systematic Trading: Talk 2: Deep LearningSigOpt
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningPaco Nathan
 
Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유
Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유
Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유NAVER Engineering
 
Tuning for Systematic Trading: Talk 1
Tuning for Systematic Trading: Talk 1Tuning for Systematic Trading: Talk 1
Tuning for Systematic Trading: Talk 1SigOpt
 
BSSML16 L10. Summary Day 2 Sessions
BSSML16 L10. Summary Day 2 SessionsBSSML16 L10. Summary Day 2 Sessions
BSSML16 L10. Summary Day 2 SessionsBigML, Inc
 
Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Greg Makowski
 
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java ApplicationsTowards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java ApplicationsGábor Szárnyas
 
Steps in Simulation Study
Steps in Simulation StudySteps in Simulation Study
Steps in Simulation StudyNalin Adhikari
 
Maximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL AnywhereMaximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL AnywhereSAP Technology
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesObeo
 
Data Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLData Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLPaco Nathan
 
AI hype or reality
AI  hype or realityAI  hype or reality
AI hype or realityAwantik Das
 
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...Ali Alkan
 

Similar to Exploiting the Enumeration of All Feature Model Configurations: A New Perspective with Distributed Computing (20)

Best practices for building and deploying predictive models over big data pre...
Best practices for building and deploying predictive models over big data pre...Best practices for building and deploying predictive models over big data pre...
Best practices for building and deploying predictive models over big data pre...
 
Measuring Productivity from Model-Based Development
Measuring Productivity from Model-Based DevelopmentMeasuring Productivity from Model-Based Development
Measuring Productivity from Model-Based Development
 
Advanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise WebinarAdvanced Optimization for the Enterprise Webinar
Advanced Optimization for the Enterprise Webinar
 
SigOpt at O'Reilly - Best Practices for Scaling Modeling Platforms
SigOpt at O'Reilly - Best Practices for Scaling Modeling PlatformsSigOpt at O'Reilly - Best Practices for Scaling Modeling Platforms
SigOpt at O'Reilly - Best Practices for Scaling Modeling Platforms
 
End to end MLworkflows
End to end MLworkflowsEnd to end MLworkflows
End to end MLworkflows
 
Slides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdf
Slides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdfSlides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdf
Slides-Артем Коваль-Cloud-Native MLOps Framework - DataFest 2021.pdf
 
Tuning for Systematic Trading: Talk 2: Deep Learning
Tuning for Systematic Trading: Talk 2: Deep LearningTuning for Systematic Trading: Talk 2: Deep Learning
Tuning for Systematic Trading: Talk 2: Deep Learning
 
OSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine LearningOSCON 2014: Data Workflows for Machine Learning
OSCON 2014: Data Workflows for Machine Learning
 
Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유
Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유
Beyond TensorBoard: AutoML을 위한 interactive visual analytics 서비스 개발 경험 공유
 
Tuning for Systematic Trading: Talk 1
Tuning for Systematic Trading: Talk 1Tuning for Systematic Trading: Talk 1
Tuning for Systematic Trading: Talk 1
 
BSSML16 L10. Summary Day 2 Sessions
BSSML16 L10. Summary Day 2 SessionsBSSML16 L10. Summary Day 2 Sessions
BSSML16 L10. Summary Day 2 Sessions
 
Production model lifecycle management 2016 09
Production model lifecycle management 2016 09Production model lifecycle management 2016 09
Production model lifecycle management 2016 09
 
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java ApplicationsTowards a Macrobenchmark Framework for Performance Analysis of Java Applications
Towards a Macrobenchmark Framework for Performance Analysis of Java Applications
 
Steps in Simulation Study
Steps in Simulation StudySteps in Simulation Study
Steps in Simulation Study
 
L05 Design Patterns
L05 Design PatternsL05 Design Patterns
L05 Design Patterns
 
Maximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL AnywhereMaximizing Database Tuning in SAP SQL Anywhere
Maximizing Database Tuning in SAP SQL Anywhere
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems Architectures
 
Data Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAMLData Workflows for Machine Learning - Seattle DAML
Data Workflows for Machine Learning - Seattle DAML
 
AI hype or reality
AI  hype or realityAI  hype or reality
AI hype or reality
 
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
Makine Öğrenmesi, Yapay Zeka ve Veri Bilimi Süreçlerinin Otomatikleştirilmesi...
 

More from University of Rennes, INSA Rennes, Inria/IRISA, CNRS

More from University of Rennes, INSA Rennes, Inria/IRISA, CNRS (20)

A Demonstration of End-User Code Customization Using Generative AI
A Demonstration of End-User Code Customization Using Generative AIA Demonstration of End-User Code Customization Using Generative AI
A Demonstration of End-User Code Customization Using Generative AI
 
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
 
On Programming Variability with Large Language Model-based Assistant
On Programming Variability with Large Language Model-based AssistantOn Programming Variability with Large Language Model-based Assistant
On Programming Variability with Large Language Model-based Assistant
 
Generative AI for Reengineering Variants into Software Product Lines: An Expe...
Generative AI for Reengineering Variants into Software Product Lines: An Expe...Generative AI for Reengineering Variants into Software Product Lines: An Expe...
Generative AI for Reengineering Variants into Software Product Lines: An Expe...
 
Tackling Deep Software Variability Together
Tackling Deep Software Variability TogetherTackling Deep Software Variability Together
Tackling Deep Software Variability Together
 
On anti-cheating in chess, science, reproducibility, and variability
On anti-cheating in chess, science, reproducibility, and variabilityOn anti-cheating in chess, science, reproducibility, and variability
On anti-cheating in chess, science, reproducibility, and variability
 
Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...
Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...
Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...
 
Machine Learning and Deep Software Variability
Machine Learning and Deep Software VariabilityMachine Learning and Deep Software Variability
Machine Learning and Deep Software Variability
 
Mastering Software Variability for Innovation and Science
Mastering Software Variability for Innovation and ScienceMastering Software Variability for Innovation and Science
Mastering Software Variability for Innovation and Science
 
Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size
Transfer Learning Across Variants and Versions: The Case of Linux Kernel SizeTransfer Learning Across Variants and Versions: The Case of Linux Kernel Size
Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size
 
Teaching Software Product Lines: A Snapshot of Current Practices and Challenges
Teaching Software Product Lines: A Snapshot of Current Practices and ChallengesTeaching Software Product Lines: A Snapshot of Current Practices and Challenges
Teaching Software Product Lines: A Snapshot of Current Practices and Challenges
 
Assessing Product Line Derivation Operators Applied to Java Source Code: An E...
Assessing Product Line Derivation Operators Applied to Java Source Code: An E...Assessing Product Line Derivation Operators Applied to Java Source Code: An E...
Assessing Product Line Derivation Operators Applied to Java Source Code: An E...
 
Synthesis of Attributed Feature Models From Product Descriptions
Synthesis of Attributed Feature Models From Product DescriptionsSynthesis of Attributed Feature Models From Product Descriptions
Synthesis of Attributed Feature Models From Product Descriptions
 
From Basic Variability Models to OpenCompare.org
From Basic Variability Models to OpenCompare.orgFrom Basic Variability Models to OpenCompare.org
From Basic Variability Models to OpenCompare.org
 
Pandoc: a universal document converter
Pandoc: a universal document converterPandoc: a universal document converter
Pandoc: a universal document converter
 
WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)
WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)
WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)
 
A survey on teaching of software product lines
A survey on teaching of software product linesA survey on teaching of software product lines
A survey on teaching of software product lines
 
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case StudyProduct Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
 
Ec2013 tutorial-mb variability-final
Ec2013 tutorial-mb variability-finalEc2013 tutorial-mb variability-final
Ec2013 tutorial-mb variability-final
 
ASE'11 (short paper)
ASE'11 (short paper)ASE'11 (short paper)
ASE'11 (short paper)
 

Recently uploaded

IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024vaibhav130304
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAlluxio, Inc.
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...Alluxio, Inc.
 
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1KnowledgeSeed
 
Workforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdfWorkforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdfDeskTrack
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfmbmh111980
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesNeo4j
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfQ-Advise
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Gáspár Nagy
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfFurqanuddin10
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityamy56318795
 
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfkalichargn70th171
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationWave PLM
 
A Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationA Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationHelp Desk Migration
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfMehmet Akar
 
A Guideline to Gorgias to to Re:amaze Data Migration
A Guideline to Gorgias to to Re:amaze Data MigrationA Guideline to Gorgias to to Re:amaze Data Migration
A Guideline to Gorgias to to Re:amaze Data MigrationHelp Desk Migration
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareinfo611746
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Soroosh Khodami
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignNeo4j
 

Recently uploaded (20)

IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
AI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in MichelangeloAI/ML Infra Meetup | ML explainability in Michelangelo
AI/ML Infra Meetup | ML explainability in Michelangelo
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
 
Workforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdfWorkforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdf
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand5 Reasons Driving Warehouse Management Systems Demand
5 Reasons Driving Warehouse Management Systems Demand
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
 
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
Crafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM IntegrationCrafting the Perfect Measurement Sheet with PLM Integration
Crafting the Perfect Measurement Sheet with PLM Integration
 
A Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data MigrationA Guideline to Zendesk to Re:amaze Data Migration
A Guideline to Zendesk to Re:amaze Data Migration
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
A Guideline to Gorgias to to Re:amaze Data Migration
A Guideline to Gorgias to to Re:amaze Data MigrationA Guideline to Gorgias to to Re:amaze Data Migration
A Guideline to Gorgias to to Re:amaze Data Migration
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 

Exploiting the Enumeration of All Feature Model Configurations: A New Perspective with Distributed Computing

  • 1. Exploiting the Enumeration of All Feature Model Configurations Jose A. Galindo, Mathieu Acher, Juan Manuel Tirado, Cristian Vidal, Benoit Baudry, David Benavides A New Perspective with Distributed Computing https://hal.inria.fr/hal-01334851
  • 2. Exploiting the Enumeration of All Feature Model Configurations
  • 3. 3 Automated Analysis of Feature Models Analysis Process Analysis results Analysis operations
  • 4. 4 Analysis Operations My app requires Wifi and Bluetooth 4 In how many different devices will it work? <
  • 5. 5 Analysis Operations §  Benavides et al. survey (2010) Feature Models and Automated Reasoning §  Configuration sampling (e.g., see Thuem et al. 2015 ACM survey on product line verification) §  Feature model management operators: slicing, merging, refactoring, diff (e.g., see Acher et al. SCP 2013 FAMILIAR) §  Feature model synthesis (e.g., Andersen et al. 2012, Becan et al. ESE 2015)
  • 6. 6 Analysis Operations §  Benavides et al. survey (2010) Feature Models and Automated Reasoning §  Configuration sampling (e.g., see Thuem et al. 2015 ACM survey on product line verification) §  Feature model management operators: slicing, merging, refactoring, diff (e.g., see Acher et al. SCP 2013 FAMILIAR) §  Feature model synthesis (e.g., Andersen et al. 2012, Becan et al. ESE 2015)
  • 7. 7 Problem: some operations can be computationally expensive Counting Core Dead T-wise Slicing Multi-objective … Analysis Process Analysis results Analysis operations
  • 8. 8 Problem: some operations can be computationally expensive Counting Core Dead T-wise Slicing Multi-objective … Analysis Process Analysis results Analysis operations Can’t we improve the response time for some costly and repetitive operations? What about guaranteeing the time response (e.g., for critical re-configurable systems)?
  • 9. 9 Idea: pre-compiling offline the configuration set… Counting Core Dead T-wise Slicing Multi-objective … Can improve the response time for costly and repetitive operations. Can even guarantee the time response (e.g., for critical re-configurable systems)
  • 11. 11 First Contribution §  Automated reasoning operations on feature model is a knowledge compilation problem §  One size-fits-all solution? §  CNF, BDD, and others have been considered §  What about simply enumerating feature model configurations?
  • 12. 12 With enumeration S, F2, F6 S, F2, F5, F1 S, F2, F5, F4 S, F2, F5, F1, F4 S, F2, F6, F1 S, F2, F6, F4 Analysis Process Analysis operations Transformation Counting Core Dead T-wise Slicing Multi-objective …
  • 13. 13 But wait. Enumeration is costly! BIG problems BIG toys
  • 15. 15 The process to parallel enumeration
  • 16. 16 A parallel solution to enumerate configurations
  • 17. 17 Preliminary evaluation (1): is distributing the computation more efficient and scalable?
  • 18. 18 Results and Discussion (1) §  Distributed enumeration: less efficient for small feature models (overhead) §  Scalable for larger feature models (less timeout or response time is quicker) §  What about feature models for which an enumeration is simply not possible, even with the increase of computational/storage? §  There is a spectrum for which our enumeration-based technique is applicable and pays-off. Further research effort needed §  We can have an hybrid approach and perhaps enumerate part of the feature model
  • 19. 19 Preliminary evaluation (2): is it more efficient to implement core, dead, and counting operations with an enumeration?
  • 20. 20 Results and Discussions (2) §  OK you can enumerate but is worth doing it? §  In the majority of cases Yes §  But sometimes not (e.g., a SAT solver can be quicker online for some operations, even if we exploit the enumeration) §  Depends on the feature model size and reasoning operation §  Trade-off to find between off-line effort and online reasoning benefits
  • 21. 21 Conclusion and Research roadmap §  Revisit of automated reasoning and feature models; knowledge compilation problem! §  Enumeration-based approach and the use of distributed computation for scaling §  No one size-fits-all solution for reasoning; depends on: §  feature model configuration set size; §  reasoning operations used (e.g., slicing) §  response time requirements (e.g., critical, repetitivity) “Given a reasoning operation and a feature model, is an enumeration-based approach more efficient than the traditional use of solvers?”
  • 22. 22 “Given a reasoning operation and a feature model, is an enumeration-based approach more efficient than the traditional use of solvers?” Counting Core Dead T-wise Slicing Multi-objective … Exploiting the Enumeration of All Feature Model Configurations: A New Perspective with Distributed Computing
  • 23. Exploiting the Enumeration of All Feature Model Configurations A New Perspective with Distributed Computing BACKUP slides
  • 24. 24 Envisioning applications §  Fast explanations for errors in configurations and models §  Direct implementation of analysis operations using graph reasoning techniques (Giraph) §  Database for the list of products for SPLOT models for the sake of experimentation.
  • 26. 26 Related Work §  All-SAT §  Pohl et al. ASE’11 and ASE’13 §  Comparison of operations response time based on BDD and SAT §  Czarnecki et al. SPLC’11 and SPLC’15 §  Reasoning about Feature Model is Easy
  • 27. 27
  • 28. 28