Karoo GP is a evolutionary algorithm, a genetic programming application suite written in Python which provides both symbolic regression and classification analysis. Karoo GP is a scalable platform with multicore support, designed to readily work with realworld data. No programming required. As a teaching tool, it enables instructors to share step-by-step how an evolutionary algorithm arrives to its solution. As a hands-on learning tool, Karoo GP supports rapid, repeatable experimentation.
+Karoo GP is a evolutionary algorithm, a genetic programming application suite written in Python which provides both symbolic regression and classification analysis. Karoo GP is a scalable platform with multicore and GPU support, designed to readily work with realworld data. No programming required. As a teaching tool, it enables instructors to share step-by-step how an evolutionary algorithm arrives to its solution. As a hands-on learning tool, Karoo GP supports rapid, repeatable experimentation.
Karoo GP includes a Desktop application with an intuitive user interface, a fully scriptable Server application with user defined default parameters and command-line arguments; a stand-alone Python script which generates randomly constructed subsets of larger datasets and another which normalises datasets; and a toy model which shows the inner workings of multiclass classification.
@@ -31,15 +31,12 @@- written in Object Oriented Python with a hierarchical naming scheme for all methods -
- multi-core support (extensive testing on 24-40 CPUs) -
- -Desktop application provides a simple user interface with menu, 5 display modes (see below), and runtime reconfiguration of parameters -
- -Server script provides a configuration file for readily repeated GP runs and command-line arguments +
- multicore and GPU support through the TensorFlow library +
- Desktop script provides a simple user interface with menu, 5 display modes (see below), and runtime reconfiguration of parameters +
- Server script enables configurable runs via command-line arguments
- anticipates datasets as standard .csv files -
- records the full population of each generation to a .csv file +
- automatically archives the population of each generation and runtime parameters
- supports customised seed populations -
- supports arithmetic (+, -, *, /, **, sqrt), trigonometric (cos, sin), and boolean (and, or) operators
- relatively simple framework for preparing custom fitness functions and evaluation routines