- 94 Views
- Uploaded on
- Presentation posted in: General

ETG open problem #2 Improvement of ETG by static analysis

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

ETG open problem #2Improvement of ETG by static analysis

H. Schlingloff, A. Baars,Y. Hassoun, M. Leucker

- EvoTest WP4: removing irrelevant variables from evolutionary search by variable dependence analysis
- SUT is a C function, test case is tupel of input parameters, objective is some coverage (e.g. branch)
- a variable is irrelevant for a particular goal if its value does not contribute to the goal
- this property can be (partially) decided by static analysis
- if a variable is irrelevant, it is not included in the genome. This reduces the search space

- This technique is applicable whenever it can be statically determined whether a certain variable (gene) contributes to the fitness of the whole individual (genome) or not
- does this really reduce execution time???

- The static analysis could improve the parameters of a genetic algorithm (like cross-over operators, fitness function etc.) rather than just limiting the search space
- example:f(x,y,s,t) = if (x+y>10 and s+t>20) then goal: …;
- crossover that changes x or y when their sum satisfies the condition might be counterproductive for the search in the sense that prevents reaching the solution quickly.
- This information could be used when deciding upon a rep, in order to reduce the probability that these crossovers can happen

- abstract interpretation and equivalence partitioning can define the range of input variables and hence limit the search space
- This can easily be incorporated into the search

- symbolic execution can determine path conditions
- How can this be incorporated into the search??

- more generally
- functional dependencies between variables can be statically analyzed
- How can this be incorporated into the search??
- ask

- this seems to be a generalization of the previous result (how do parts of the genome influence the fitness of the individual) and should be investigated in more detail

- functional dependencies between variables can be statically analyzed
- Might be useful to determine the order of variables in the genome (in the genetic diversity computation)
- Bayesian estimation?
- Learning of dependencies?

- Might be useful to optimize the order in which goals are targeted
- dominating and dominated block analysis together with set cover

- Human interaction (assertions) can help in static analysis; thus, obviously, it can help in ETG
- Seeding can be done manually
- More generally, humans can choose and dynamically alternate some parameters of the genetic algorithm (e.g. crossover operators, mutation rates, …)
- This could be coupled to the symbolic execution (to be investigated)

- ETG might help MC
- it is not clear how MC might help ETG
- prove certain goals to be unreachable?
- prove abstraction transformations?