Fast search (sampling) technique for search-based software engineering problems
This repo concludes experiments for paper "Sampling as a Baseline Optimizer for Search-based Software Engineering". SWAY is a sampling technique for solving search-based software engineering problems. For more information, please check out our paper!
- Algorithms: source code for different optimizers (NSGA-II, SATIBEA and SWAY)
- Benchmarks: source code for models tested in the paper.
- Experiments: entrance for different experiements
- Metrics: source code for measuring results (See Section 5.3 of our paper)
- .gitignore: untracked files in this repo
- LICENSE: the MIT license
- addroot.sh: We are assuming that current project path has been added to PYTHONPATH. If not, please run this script.
- debug.py: If you include this file inside main function, program will enter debug mode when error arises.
- repeasts.py: including auxiliary functions to plot results
To run the experiments, one should go to Folder "Experiments". Each file there contains one experiements. For example, to run NSGA-II for POM3 mode, one should execute
# jump to project folder first
source addroot.sh
cd Experiments
python pom3_nsga2.py
In this repo, godview
= GroundTruth
. Project was developed under python2.7. Python3 should be compatible but not tested.
All results are piped to one folder tse_rs
. Please make sure you've created such folder within execute path.
To get multi-objective metrics(HV,GD,PFS or GS), go to "Metrics" and run all_metrics.py