项目作者: kerschke

项目描述 :
基于特征的连续约束优化问题景观分析
高级语言: R
项目地址: git://github.com/kerschke/flacco.git
创建时间: 2015-03-02T17:07:42Z
项目社区:https://github.com/kerschke/flacco

开源协议:Other

下载


flacco: Feature-Based Landscape Analysis of Continuous and Constrained Optimization Problems

CRAN Status Badge
GitHub Status Badge
CRAN Downloads
Research software impact
Tutorial
Web-GUI

Build Status
Build status
Coverage Status
codecov.io

  • If you like our package, please star it on Github.

Introduction

flacco is a collection of features for Explorative Landscape Analysis (ELA) of single-objective, continuous (Black-Box-)Optimization Problems.
It allows the user to quantify characteristics of an (unknown) optimization problem’s landscape.

Features, which used to be spread over different packages and platforms (R, Matlab, python, etc.), are now combined within this single package. Amongst others, this package contains feature sets, such as ELA, Information Content, Dispersion, (General) Cell Mapping or Barrier Trees.

Furthermore, the package provides a unified interface for all features — using a so-called feature object and (if required) control arguments. In total, the current release (1.8) consists of 17 different feature sets, which sum up to approximately 300 features.

In addition to the features themselves, this package also provides visualizations, e.g., of the cell mappings, barrier trees or information content:

  • 3D-Barrier Tree:

Examplary Barrier Tree

  • Cell Mapping:

Examplary Cell Mapping

  • Information Content Plot:

Examplary Info Content

Quickstart

If you want to get started quickly, have a look at the flacco tutorial or at the accompanying publication on flacco.

  1. library(flacco)
  2. ## (1) Create some example-data
  3. X = createInitialSample(n.obs = 500, dim = 2)
  4. f = function(x) sum(sin(x) * x^2 + (x - 0.5)^3)
  5. y = apply(X, 1, f)
  6. ## (2) Compute the feature object
  7. feat.object = createFeatureObject(X = X, y = y)
  8. ## (3) Have a look at feat.object
  9. print(feat.object)
  10. ## (4) Check, which feature sets are available
  11. listAvailableFeatureSets()
  12. ## (5) Calculate a specific feature set, e.g. the ELA meta model
  13. featureSet = calculateFeatureSet(feat.object, set = "ela_meta")

Installation Instructions

  • If you want to use the version from CRAN, you should download it from here and ideally install it along with all its dependencies:

    1. install.packages("flacco", dependencies = TRUE)
  • However, if you want to use the development version, you can download it with the following command:

    1. devtools::install_github("kerschke/flacco")

flacco-GUI

We have started to implement a graphical user interface (GUI) for our package. Its online-version is hosted here.

Alternatively, you can start it from within R:

  1. library(flacco)
  2. runFlaccoGUI()

Citation

To cite flacco please use:

Kerschke, P. & Trautmann, H. (2019). Comprehensive Feature-Based Landscape Analysis of Continuous
and Constrained Optimization Problems Using the R-package flacco.
In: Bauer N., Ickstadt K., Lübke K., Szepannek G., Trautmann H., Vichi M. (eds.) Applications in
Statistical Computing — From Music Data Analysis to Industrial Quality Improvement, pp. 93-123,
Studies in Classification, Data Analysis, and Knowledge Organization, Springer.
URL: https://link.springer.com/chapter/10.1007/978-3-030-25147-5_7

If you want to cite the corresponding GUI please use:

Hanster, C. & Kerschke, P. (2018). flaccogui: Exploratory Landscape Analysis for Everyone.
In: Proceedings of the 19th Annual Conference on Genetic and Evolutionary Computation (GECCO)
Companion, pp. 1215-1222, Berlin, Germany, ACM.
URL http://dl.acm.org/citation.cfm?doid=3067695.3082477

BibTeX entries for LaTeX users:

  1. @InCollection{KerschkeT2019flacco,
  2. Author = {Kerschke, Pascal and Trautmann, Heike},
  3. Title = {Comprehensive Feature-Based Landscape Analysis of Continuous and Constrained Optimization Problems Using the R-package flacco},
  4. Year = {2019},
  5. Booktitle = {Applications in Statistical Computing -- From Music Data Analysis to Industrial Quality Improvement},
  6. URL = {https://link.springer.com/chapter/10.1007/978-3-030-25147-5_7},
  7. DOI = {10.1007/978-3-030-25147-5_7},
  8. Series = {Studies in Classification, Data Analysis, and Knowledge Organization},
  9. Editor = {Bauer, Nadja and Ickstadt, Katja and L{\"u}bke, Karsten and Szepannek, Gero and Trautmann, Heike and Vichi, Maurizio},
  10. Pages = {93~--~123},
  11. Publisher = {Springer},
  12. }
  13. @InProceedings{HansterK2017flaccogui,
  14. Author = {Hanster, Christian and Kerschke, Pascal},
  15. Title = {flaccogui: Exploratory Landscape Analysis for Everyone},
  16. Booktitle = {Proceedings of the 19th Annual Conference on Genetic and Evolutionary Computation (GECCO) Companion},
  17. Location = {Berlin, Germany},
  18. Series = {GECCO '17},
  19. Year = {2017},
  20. Month = {July},
  21. Pages = {1215~--~1222},
  22. Publisher = {ACM},
  23. URL = {http://dl.acm.org/citation.cfm?doid=3067695.3082477},
  24. DOI = {10.1145/3067695.3082477}
  25. }

News

Contact

If you have any suggestions or ideas (e.g. for new features), or if you encounter any problems while running the code, please use the issue tracker or send me an e-mail (kerschke@uni-muenster.de).