Download - Software product line with IBEA
![Page 1: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/1.jpg)
Constraint Solver for Product LinesProject 1 Presentation
Jianfeng Chen
April 9, 2015
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 1 / 18
![Page 2: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/2.jpg)
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, emailconnection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 2 / 18
![Page 3: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/3.jpg)
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, emailconnection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 2 / 18
![Page 4: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/4.jpg)
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, emailconnection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 2 / 18
![Page 5: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/5.jpg)
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, emailconnection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 2 / 18
![Page 6: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/6.jpg)
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, emailconnection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 2 / 18
![Page 7: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/7.jpg)
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, emailconnection, etc.
An operating system have thousands of modules and features.
Among them, which features should be implemented?
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 2 / 18
![Page 8: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/8.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 3 / 18
![Page 9: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/9.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 3 / 18
![Page 10: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/10.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 3 / 18
![Page 11: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/11.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 3 / 18
![Page 12: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/12.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 3 / 18
![Page 13: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/13.jpg)
Feature model
SPLOT
open repository
more than 600 feature models
SXFM language; parser is available
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 4 / 18
![Page 14: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/14.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 15: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/15.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 16: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/16.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 17: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/17.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 18: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/18.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 19: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/19.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)
defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 20: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/20.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 21: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/21.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 22: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/22.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 23: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/23.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 24: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/24.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 25: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/25.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 26: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/26.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 27: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/27.jpg)
Goals
INPUT:
feature model(including constraints)
some important feature attributes:
costfamiliarity(used before?)defects
OUTPUT: configurations (select which features?)
GOALS:
⇓ constraint violations
⇑ feature richness
⇑ used features
⇓ defects
⇓ total cost
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 5 / 18
![Page 28: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/28.jpg)
Genetic algorithms
http://www.abrandao.com/2015/01/21/simple-php-genetic-algorithm/
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 6 / 18
![Page 29: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/29.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A dominates B
A 4 7 6 2 7
B 4 4 6 1 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 30: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/30.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A dominates B
A 4 7 6 2 7
B 4 4 6 1 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 31: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/31.jpg)
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 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 32: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/32.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A dominates B
A 4 7 6 2 7
B 4 4 6 1 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 33: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/33.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A 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 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 34: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/34.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A dominates B
A 4 7 6 2 7
B 4 4 6 1 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 35: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/35.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A dominates B
A 4 7 6 2 7
B 4 4 6 1 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7
A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 36: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/36.jpg)
Domination
Reverse the uprise objectives ⇒ all objectives are the less the better.
A 3 7 4 2 7
B 4 7 6 2 7A dominates B
A 4 7 6 2 7
B 4 4 6 1 5B dominates A
A 3 7 4 2 7
B 4 4 6 1 7A is indifferent from B
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 7 / 18
![Page 37: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/37.jpg)
Method 1: Differential Evolution
continuous: new = A + F ∗ (B − C )binary: for each bit, new = A|B|C basing on some lottery.
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 8 / 18
![Page 38: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/38.jpg)
Method 1: Differential Evolution
continuous: new = A + F ∗ (B − C )binary: for each bit, new = A|B|C basing on some lottery.
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 8 / 18
![Page 39: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/39.jpg)
Method 1: Differential Evolution
continuous: new = A + F ∗ (B − C )binary: for each bit, new = A|B|C basing on some lottery.
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 8 / 18
![Page 40: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/40.jpg)
Method 1: Differential Evolution
What if indifferent?
add to the population pool!
How to prune?
[Deb, Kalyanmoy, et al. 2002]
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 9 / 18
![Page 41: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/41.jpg)
Method 1: Differential Evolution
What if indifferent?add to the population pool!
How to prune?
[Deb, Kalyanmoy, et al. 2002]
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 9 / 18
![Page 42: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/42.jpg)
Method 1: Differential Evolution
What if indifferent?add to the population pool!
How to prune?
[Deb, Kalyanmoy, et al. 2002]
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 9 / 18
![Page 43: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/43.jpg)
Method 1: Differential Evolution
What if indifferent?add to the population pool!
How to prune?
[Deb, Kalyanmoy, et al. 2002]
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 9 / 18
![Page 44: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/44.jpg)
Method 2: Indicator-based search
Binary quality indicatorFitness F (x) =
∑i∈P\x −e−I (i ,x)/κ
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 10 / 18
![Page 45: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/45.jpg)
Method 2: Indicator-based search
Binary quality indicatorFitness F (x) =
∑i∈P\x −e−I (i ,x)/κ
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 10 / 18
![Page 46: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/46.jpg)
Method 2: Indicator-based search
Binary quality indicator
Fitness F (x) =∑
i∈P\x −e−I (i ,x)/κ
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 10 / 18
![Page 47: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/47.jpg)
Method 2: Indicator-based search
Binary quality indicatorFitness F (x) =
∑i∈P\x −e−I (i ,x)/κ
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 10 / 18
![Page 48: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/48.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 49: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/49.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 50: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/50.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 51: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/51.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 52: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/52.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 53: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/53.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 54: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/54.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 11 / 18
![Page 55: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/55.jpg)
Results
FM test (medium size)166 features112 leaves46 cross-tree constraints
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 12 / 18
![Page 56: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/56.jpg)
Results
IBEA.FM.
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 13 / 18
![Page 57: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/57.jpg)
Results
DE vs IBEA.FM.
Figure: Features NOT provided
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 14 / 18
![Page 58: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/58.jpg)
Results
DE vs IBEA.FM.
Figure: Features NOT providedJianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 14 / 18
![Page 59: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/59.jpg)
Results
DE vs IBEA.FM.
Figure: DefectsJianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 15 / 18
![Page 60: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/60.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 61: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/61.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 62: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/62.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 63: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/63.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 64: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/64.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 65: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/65.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 66: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/66.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 67: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/67.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 68: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/68.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 69: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/69.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 16 / 18
![Page 70: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/70.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 17 / 18
![Page 71: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/71.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 17 / 18
![Page 72: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/72.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 17 / 18
![Page 73: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/73.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 17 / 18
![Page 74: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/74.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 17 / 18
![Page 75: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/75.jpg)
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 ([email protected]) Constraint Solver for Product Lines April 9, 2015 17 / 18
![Page 76: Software product line with IBEA](https://reader033.vdocuments.site/reader033/viewer/2022042722/58a228221a28ab527c8b4dd3/html5/thumbnails/76.jpg)
Thank you!
Jianfeng Chen ([email protected]) Constraint Solver for Product Lines April 9, 2015 18 / 18