/DivNichGP

Python re-implementation of the Diverse Niching Genetic Programming algorithm for binary classification and regression

Primary LanguagePythonMIT LicenseMIT

Diverse Niching Genetic Programming

Python re-implementation of the Diverse Niching Genetic Programming (DivNichGP) algorithm, adapted for regression and binary classification.

DivNichGP has been originally proposed by:

Shaolin Wang, Yi Mei, Mengjie Zhang. "Novel ensemble genetic programming hyper-heuristics for uncertain capacitated arc routing problem". 
Proceedings of the Genetic and Evolutionary Computation Conference, July 2019, pp. 1093–1101.

This implementation was made for:

@inproceedings{virgolin2021genetic,
  author = {Virgolin, Marco},
  title = {Genetic Programming is Naturally Suited to Evolve Bagging Ensembles},
  year = {2021},
  isbn = {9781450383509},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  doi = {10.1145/3449639.3459278},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference},
  pages = {830–839},
  series = {GECCO '21}
}

If you use this code, please cite the works above.

Installation

pip install ..

Requirements

numpy, scikit-learn, simplegp (see the setup.py file).