Visit the package website.
NOTE: Under heavy development!!! 🚧
It is likely that ecr3vis will be merged/renamed into ecr3 in the course of development.
ecr3vis is the visualization module of ecr3 (under development). It offers a collection of functions for the visualization of results of randomized search heuristics. The focus is on multi-objective problems. The package includes 2d- and 3d-scatter-plots, parallel coordinate plots (PCP), heatmaps etc.
In the following we demonstrate how to build a simple mutation-based EA to optimize the Pseudo-boolean function ONEMAX which counts the number of ones in a bistring of length n, i.e., the optimum is obviously the all-ones bit-string. We first define the fitness function that guides the evolutionary search.
library(ecr3vis)
library(tidyverse)
# import sample data-set
data(emoas_on_zdt)
tbl = filter(emoas_on_zdt, repl == 1L)
plot_scatter2d(tbl, colour = "algorithm")
# Add third objective
tbl$y3 = tbl$y2 + 1
plot_heatmap(tbl)
plot_radar(tbl[1:3, ])
plot_radar(tbl[1:3, ]) + facet_grid(. ~ nr)
The package is a one-man project by Jakob Bossek at the moment of writing. However, the package interfaces some neat implementations of various other people (see DESCRIPTION file for details).
You can contribute by identifing annoying bugs in the issue tracker. This is also the preferred place to ask questions and raise feature requests. Moreover, users can contribute even more by forking the ecr3vis repository, implementing feautures or bugfixes and raising a pull request.
The package will be available at CRAN when it is done. If you are interested in trying out and playing around with the current github developer version use the devtools package and type the following command in R:
remotes::install_github("jakobbossek/ecr3vis")
Please address questions and missing features about the ecr3vis as weell as annoying bug reports in the issue tracker. Pay attention to explain your problem as good as possible. At its best you provide an example, so I can reproduce your problem quickly. Please avoid sending e-mails.