We are integrating 13 measures and the retry parameter into MAGPIE and performing experiments on 7 benchmarks. We also performed consistency and correlation to rutnime experiments for the 13 measures + linus time.
Magpie is a tool for automated software improvement. It implements MAGPIE, using the genetic improvement methodology to traverse the search space of different software variants to find improved software.
Magpie provides support for improvement of both functional (automated bug fixing) and non-functional (e.g., execution time) properties of software.
Two types of language-agnostic source code representations are supported: line-by-line, and XML trees.
For the latter we recommend the srcML tool with out-of-the-box support for C/C++/C# and Java.
Finally, Magpie also enables parameter tuning and algorithm configuration, both independently and concurrently of the source code search process.
- Unix (Linux/macOS/etc; untested on Windows)
- Python 3.8+
git clone https://github.com/bloa/magpie.git
cd magpie
python3 magpie local_search --scenario examples/triangle-c/_magpie/scenario_slow.txt
Everything you need to know about Magpie and the new Optimised Fitness Function and retry parameter.
Results
- Results for local search approach for 14 measure, retry combos on 11 scenarios
- Results for genetic programming approach for 14 measure, 5 retry combos on 11 scenarios
Optimised Fitness Functions
-
Test on Irace Tutorials
-
Quick start (start here!)
How-to guides
Explanations
Reference guides
For ParamILS experiments
For LLM based experiments