SlideShare a Scribd company logo
Constraint Solver for Product Lines
Project 1 Presentation
Jianfeng Chen
jchen37@ncsu.edu
April 9, 2015
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 1 / 18
Software features
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
Software features
Software engineering is becoming more and more complex.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
Software features
Software engineering is becoming more and more complex.
More and more features.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
Software features
Software engineering is becoming more and more complex.
More and more features.
C2C online trading system: database, commercial data encryption, mil-
lisecond(microsecond) response, customable GUI, chatting module, email
connection, etc.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
Software features
Software engineering is becoming more and more complex.
More and more features.
C2C online trading system: database, commercial data encryption, mil-
lisecond(microsecond) response, customable GUI, chatting module, email
connection, etc.
An operating system have thousands of modules and features.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
Software features
Software engineering is becoming more and more complex.
More and more features.
C2C online trading system: database, commercial data encryption, mil-
lisecond(microsecond) response, customable GUI, chatting module, email
connection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
Feature model
Feature tree:
http://www.digplanet.com/wiki/Feature_model
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
Feature model
Feature tree:
http://www.digplanet.com/wiki/Feature_model
Many features are related to others.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
Feature model
Feature tree:
http://www.digplanet.com/wiki/Feature_model
Many features are related to others.
Cross-tree constraints complex the problem.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
Feature model
Feature tree:
http://www.digplanet.com/wiki/Feature_model
Many features are related to others.
Cross-tree constraints complex the problem.
Cross-tree constraints are widespread in the software products.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
Feature model
Feature tree:
http://www.digplanet.com/wiki/Feature_model
Many features are related to others.
Cross-tree constraints complex the problem.
Cross-tree constraints are widespread in the software products.
Ex. more than three fourths features in eCos(an open source real-time oper-
ating system) are referred by some constraints.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
Feature model
SPLOT
open repository
more than 600 feature models
SXFM language; parser is available
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 4 / 18
Goals
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
cost
familiarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
Genetic algorithms
http://www.abrandao.com/2015/01/21/simple-php-genetic-algorithm/
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 6 / 18
Domination
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7
A dominates B
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7
A dominates B
A 4 7 6 2 7
B 4 4 6 1 5
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7
A dominates B
A 4 7 6 2 7
B 4 4 6 1 5
B dominates A
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7
A dominates B
A 4 7 6 2 7
B 4 4 6 1 5
B dominates A
A 3 7 4 2 7
B 4 4 6 1 7
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7
A dominates B
A 4 7 6 2 7
B 4 4 6 1 5
B dominates A
A 3 7 4 2 7
B 4 4 6 1 7
A is indifferent from B
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
Method 1: Differential Evolution
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 8 / 18
Method 1: Differential Evolution
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 8 / 18
Method 1: Differential Evolution
continuous: new = A + F ∗ (B − C)
binary: for each bit, new = A|B|C basing on some lottery.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 8 / 18
Method 1: Differential Evolution
What if indifferent?
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
Method 1: Differential Evolution
What if indifferent?
add to the population pool!
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
Method 1: Differential Evolution
What if indifferent?
add to the population pool!
How to prune?
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
Method 1: Differential Evolution
What if indifferent?
add to the population pool!
How to prune?
[Deb, Kalyanmoy, et al. 2002]
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
Method 2: Indicator-based search
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
Method 2: Indicator-based search
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
Method 2: Indicator-based search
Binary quality indicator
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
Method 2: Indicator-based search
Binary quality indicator
Fitness F(x) = i∈Px −e−I(i,x)/κ
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
Method 2: Indicator-based search
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Method 2: Indicator-based search
Initialization
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Method 2: Indicator-based search
Initialization
Get fitness
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Method 2: Indicator-based search
Initialization
Get fitness
Eliminate the individuals with smallest fitness
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Method 2: Indicator-based search
Initialization
Get fitness
Eliminate the individuals with smallest fitness
Mating selection
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Method 2: Indicator-based search
Initialization
Get fitness
Eliminate the individuals with smallest fitness
Mating selection
Variation
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Method 2: Indicator-based search
Initialization
Get fitness
Eliminate the individuals with smallest fitness
Mating selection
Variation
Terminate or back to second step
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
Results
FM test (medium size)
166 features
112 leaves
46 cross-tree constraints
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 12 / 18
Results
IBEA.FM.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 13 / 18
Results
DE vs IBEA.FM.
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 14 / 18
Results
DE vs IBEA.FM.
Figure: Features NOT provided
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 14 / 18
Results
DE vs IBEA.FM.
Figure: Defects
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 15 / 18
Further discussion
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Running time
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Running time
DE-FM-500 gens-54s
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Running time
DE-FM-500 gens-54s
IBEA-FM-500 gens-83s
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Running time
DE-FM-500 gens-54s
IBEA-FM-500 gens-83s
In average, IBEA = 1.3*DE
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Running time
DE-FM-500 gens-54s
IBEA-FM-500 gens-83s
In average, IBEA = 1.3*DE
Front Quality
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Further discussion
Stopping criterion
improvement/deterioration accumulation
customable weight
Running time
DE-FM-500 gens-54s
IBEA-FM-500 gens-83s
In average, IBEA = 1.3*DE
Front Quality
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
Future work
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
Future work
pruning in differential evolution (flocking behaviors)
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
Future work
pruning in differential evolution (flocking behaviors)
mutate with reservations
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
Future work
pruning in differential evolution (flocking behaviors)
mutate with reservations
reconstruct the feature tree (reduce the search space)
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
Future work
pruning in differential evolution (flocking behaviors)
mutate with reservations
reconstruct the feature tree (reduce the search space)
chaff algorithm
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
Future work
pruning in differential evolution (flocking behaviors)
mutate with reservations
reconstruct the feature tree (reduce the search space)
chaff algorithm
Satz/Z3
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
Thank you!
Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 18 / 18

More Related Content

Similar to Software product line with IBEA

Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...
Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...
Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...
The Innovative Data Intelligence Research (IDIR) Laboratory, University of Texas at Arlington
 
APIdays Paris 2019 - Maintain & Evolve a Public GraphQL API by Aurélien Davi...
APIdays Paris 2019 - Maintain & Evolve a Public  GraphQL API by Aurélien Davi...APIdays Paris 2019 - Maintain & Evolve a Public  GraphQL API by Aurélien Davi...
APIdays Paris 2019 - Maintain & Evolve a Public GraphQL API by Aurélien Davi...
apidays
 
Software Engg.pdf
Software Engg.pdfSoftware Engg.pdf
Software Engg.pdf
ktosri
 
Driving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land RoverDriving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land Rover
LeanKit
 
Emergent Design: History, Concepts, and Principles
Emergent Design: History, Concepts, and PrinciplesEmergent Design: History, Concepts, and Principles
Emergent Design: History, Concepts, and Principles
TechWell
 
Using Diversity for Automated Boundary Value Testing
Using Diversity for Automated Boundary Value TestingUsing Diversity for Automated Boundary Value Testing
Using Diversity for Automated Boundary Value Testing
Felix Dobslaw
 
Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...
Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...
Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...
Legacy Typesafe (now Lightbend)
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
ContainerDay Security 2023
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
ContainerDay Security 2023
 
[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies
[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies
[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies
Ling-Jyh Chen
 
Personalized Defect Prediction
Personalized Defect PredictionPersonalized Defect Prediction
Personalized Defect Prediction
Sung Kim
 
Common Sense Software Development
Common Sense Software DevelopmentCommon Sense Software Development
Common Sense Software Development
Nitin Bhide
 
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsMachine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Kevin Moran
 
Automotive Career
Automotive CareerAutomotive Career
Automotive Career
One Step Up Education
 
Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...
Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...
Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...
J. García - Verdugo
 
Dynamic Symbolic Database Application Testing
Dynamic Symbolic Database Application TestingDynamic Symbolic Database Application Testing
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Sebastiano Panichella
 
Agile Planning - Scaling Agile Development
Agile Planning  - Scaling Agile DevelopmentAgile Planning  - Scaling Agile Development
Agile Planning - Scaling Agile DevelopmentMicrosoft Visual Studio
 

Similar to Software product line with IBEA (20)

Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...
Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...
Facetedpedia: Dynamic Generation of Query-Dependent Faceted Interfaces for Wi...
 
APIdays Paris 2019 - Maintain & Evolve a Public GraphQL API by Aurélien Davi...
APIdays Paris 2019 - Maintain & Evolve a Public  GraphQL API by Aurélien Davi...APIdays Paris 2019 - Maintain & Evolve a Public  GraphQL API by Aurélien Davi...
APIdays Paris 2019 - Maintain & Evolve a Public GraphQL API by Aurélien Davi...
 
Software Engg.pdf
Software Engg.pdfSoftware Engg.pdf
Software Engg.pdf
 
Driving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land RoverDriving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land Rover
 
Emergent Design: History, Concepts, and Principles
Emergent Design: History, Concepts, and PrinciplesEmergent Design: History, Concepts, and Principles
Emergent Design: History, Concepts, and Principles
 
Using Diversity for Automated Boundary Value Testing
Using Diversity for Automated Boundary Value TestingUsing Diversity for Automated Boundary Value Testing
Using Diversity for Automated Boundary Value Testing
 
Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...
Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...
Modernizing Your Aging Architecture: What Enterprise Architects Need To Know ...
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
 
[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies
[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies
[2017 AI-SOCD] AirBox Data Visualization: demonstration with case studies
 
Personalized Defect Prediction
Personalized Defect PredictionPersonalized Defect Prediction
Personalized Defect Prediction
 
ppt
pptppt
ppt
 
Rnd
RndRnd
Rnd
 
Common Sense Software Development
Common Sense Software DevelopmentCommon Sense Software Development
Common Sense Software Development
 
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsMachine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
 
Automotive Career
Automotive CareerAutomotive Career
Automotive Career
 
Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...
Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...
Javier Garcia - Verdugo Sanchez - Six Sigma Training - W1 Cause and Effect An...
 
Dynamic Symbolic Database Application Testing
Dynamic Symbolic Database Application TestingDynamic Symbolic Database Application Testing
Dynamic Symbolic Database Application Testing
 
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
 
Agile Planning - Scaling Agile Development
Agile Planning  - Scaling Agile DevelopmentAgile Planning  - Scaling Agile Development
Agile Planning - Scaling Agile Development
 

Recently uploaded

basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
ydteq
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
Swimming pool mechanical components design.pptx
Swimming pool  mechanical components design.pptxSwimming pool  mechanical components design.pptx
Swimming pool mechanical components design.pptx
yokeleetan1
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
Kamal Acharya
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
anoopmanoharan2
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
aqil azizi
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Christina Lin
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
ChristineTorrepenida1
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
ClaraZara1
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
gestioneergodomus
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
WENKENLI1
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Soumen Santra
 

Recently uploaded (20)

basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
一比一原版(UofT毕业证)多伦多大学毕业证成绩单如何办理
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
Swimming pool mechanical components design.pptx
Swimming pool  mechanical components design.pptxSwimming pool  mechanical components design.pptx
Swimming pool mechanical components design.pptx
 
Water billing management system project report.pdf
Water billing management system project report.pdfWater billing management system project report.pdf
Water billing management system project report.pdf
 
PPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testingPPT on GRP pipes manufacturing and testing
PPT on GRP pipes manufacturing and testing
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesHarnessing WebAssembly for Real-time Stateless Streaming Pipelines
Harnessing WebAssembly for Real-time Stateless Streaming Pipelines
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTSHeap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
Heap Sort (SS).ppt FOR ENGINEERING GRADUATES, BCA, MCA, MTECH, BSC STUDENTS
 

Software product line with IBEA

  • 1. Constraint Solver for Product Lines Project 1 Presentation Jianfeng Chen jchen37@ncsu.edu April 9, 2015 Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 1 / 18
  • 2. Software features Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
  • 3. Software features Software engineering is becoming more and more complex. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
  • 4. Software features Software engineering is becoming more and more complex. More and more features. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
  • 5. Software features Software engineering is becoming more and more complex. More and more features. C2C online trading system: database, commercial data encryption, mil- lisecond(microsecond) response, customable GUI, chatting module, email connection, etc. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
  • 6. Software features Software engineering is becoming more and more complex. More and more features. C2C online trading system: database, commercial data encryption, mil- lisecond(microsecond) response, customable GUI, chatting module, email connection, etc. An operating system have thousands of modules and features. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
  • 7. Software features Software engineering is becoming more and more complex. More and more features. C2C online trading system: database, commercial data encryption, mil- lisecond(microsecond) response, customable GUI, chatting module, email connection, etc. An operating system have thousands of modules and features. Among them, which features should be implemented? Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 2 / 18
  • 8. Feature model Feature tree: http://www.digplanet.com/wiki/Feature_model Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
  • 9. Feature model Feature tree: http://www.digplanet.com/wiki/Feature_model Many features are related to others. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
  • 10. Feature model Feature tree: http://www.digplanet.com/wiki/Feature_model Many features are related to others. Cross-tree constraints complex the problem. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
  • 11. Feature model Feature tree: http://www.digplanet.com/wiki/Feature_model Many features are related to others. Cross-tree constraints complex the problem. Cross-tree constraints are widespread in the software products. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
  • 12. Feature model Feature tree: http://www.digplanet.com/wiki/Feature_model Many features are related to others. Cross-tree constraints complex the problem. Cross-tree constraints are widespread in the software products. Ex. more than three fourths features in eCos(an open source real-time oper- ating system) are referred by some constraints. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 3 / 18
  • 13. Feature model SPLOT open repository more than 600 feature models SXFM language; parser is available Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 4 / 18
  • 14. Goals Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 15. Goals INPUT: Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 16. Goals INPUT: feature model(including constraints) Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 17. Goals INPUT: feature model(including constraints) some important feature attributes: Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 18. Goals INPUT: feature model(including constraints) some important feature attributes: cost Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 19. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 20. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 21. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 22. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) GOALS: Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 23. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) GOALS: ⇓ constraint violations Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 24. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) GOALS: ⇓ constraint violations ⇑ feature richness Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 25. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) GOALS: ⇓ constraint violations ⇑ feature richness ⇑ used features Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 26. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) GOALS: ⇓ constraint violations ⇑ feature richness ⇑ used features ⇓ defects Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 27. Goals INPUT: feature model(including constraints) some important feature attributes: cost familiarity(used before?) defects OUTPUT: configurations (select which features?) GOALS: ⇓ constraint violations ⇑ feature richness ⇑ used features ⇓ defects ⇓ total cost Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 5 / 18
  • 28. Genetic algorithms http://www.abrandao.com/2015/01/21/simple-php-genetic-algorithm/ Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 6 / 18
  • 29. Domination Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 30. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 31. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. A 3 7 4 2 7 B 4 7 6 2 7 Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 32. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. A 3 7 4 2 7 B 4 7 6 2 7 A dominates B Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 33. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. A 3 7 4 2 7 B 4 7 6 2 7 A dominates B A 4 7 6 2 7 B 4 4 6 1 5 Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 34. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. A 3 7 4 2 7 B 4 7 6 2 7 A dominates B A 4 7 6 2 7 B 4 4 6 1 5 B dominates A Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 35. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. A 3 7 4 2 7 B 4 7 6 2 7 A dominates B A 4 7 6 2 7 B 4 4 6 1 5 B dominates A A 3 7 4 2 7 B 4 4 6 1 7 Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 36. Domination Reverse the uprise objectives ⇒ all objectives are the less the better. A 3 7 4 2 7 B 4 7 6 2 7 A dominates B A 4 7 6 2 7 B 4 4 6 1 5 B dominates A A 3 7 4 2 7 B 4 4 6 1 7 A is indifferent from B Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 7 / 18
  • 37. Method 1: Differential Evolution Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 8 / 18
  • 38. Method 1: Differential Evolution Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 8 / 18
  • 39. Method 1: Differential Evolution continuous: new = A + F ∗ (B − C) binary: for each bit, new = A|B|C basing on some lottery. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 8 / 18
  • 40. Method 1: Differential Evolution What if indifferent? Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
  • 41. Method 1: Differential Evolution What if indifferent? add to the population pool! Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
  • 42. Method 1: Differential Evolution What if indifferent? add to the population pool! How to prune? Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
  • 43. Method 1: Differential Evolution What if indifferent? add to the population pool! How to prune? [Deb, Kalyanmoy, et al. 2002] Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 9 / 18
  • 44. Method 2: Indicator-based search Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
  • 45. Method 2: Indicator-based search Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
  • 46. Method 2: Indicator-based search Binary quality indicator Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
  • 47. Method 2: Indicator-based search Binary quality indicator Fitness F(x) = i∈Px −e−I(i,x)/κ Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 10 / 18
  • 48. Method 2: Indicator-based search Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 49. Method 2: Indicator-based search Initialization Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 50. Method 2: Indicator-based search Initialization Get fitness Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 51. Method 2: Indicator-based search Initialization Get fitness Eliminate the individuals with smallest fitness Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 52. Method 2: Indicator-based search Initialization Get fitness Eliminate the individuals with smallest fitness Mating selection Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 53. Method 2: Indicator-based search Initialization Get fitness Eliminate the individuals with smallest fitness Mating selection Variation Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 54. Method 2: Indicator-based search Initialization Get fitness Eliminate the individuals with smallest fitness Mating selection Variation Terminate or back to second step Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 11 / 18
  • 55. Results FM test (medium size) 166 features 112 leaves 46 cross-tree constraints Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 12 / 18
  • 56. Results IBEA.FM. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 13 / 18
  • 57. Results DE vs IBEA.FM. Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 14 / 18
  • 58. Results DE vs IBEA.FM. Figure: Features NOT provided Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 14 / 18
  • 59. Results DE vs IBEA.FM. Figure: Defects Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 15 / 18
  • 60. Further discussion Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 61. Further discussion Stopping criterion Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 62. Further discussion Stopping criterion improvement/deterioration accumulation Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 63. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 64. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Running time Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 65. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Running time DE-FM-500 gens-54s Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 66. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Running time DE-FM-500 gens-54s IBEA-FM-500 gens-83s Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 67. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Running time DE-FM-500 gens-54s IBEA-FM-500 gens-83s In average, IBEA = 1.3*DE Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 68. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Running time DE-FM-500 gens-54s IBEA-FM-500 gens-83s In average, IBEA = 1.3*DE Front Quality Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 69. Further discussion Stopping criterion improvement/deterioration accumulation customable weight Running time DE-FM-500 gens-54s IBEA-FM-500 gens-83s In average, IBEA = 1.3*DE Front Quality Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 16 / 18
  • 70. Future work Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
  • 71. Future work pruning in differential evolution (flocking behaviors) Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
  • 72. Future work pruning in differential evolution (flocking behaviors) mutate with reservations Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
  • 73. Future work pruning in differential evolution (flocking behaviors) mutate with reservations reconstruct the feature tree (reduce the search space) Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
  • 74. Future work pruning in differential evolution (flocking behaviors) mutate with reservations reconstruct the feature tree (reduce the search space) chaff algorithm Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
  • 75. Future work pruning in differential evolution (flocking behaviors) mutate with reservations reconstruct the feature tree (reduce the search space) chaff algorithm Satz/Z3 Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 17 / 18
  • 76. Thank you! Jianfeng Chen (jchen37@ncsu.edu) Constraint Solver for Product Lines April 9, 2015 18 / 18