GMUEClab / ecj

ECJ Evolutionary Computation Toolkit
http://cs.gmu.edu/~eclab/projects/ecj/
123 stars 42 forks source link

Pilot ECJ with Jupyter Notebook #46

Closed SigmaX closed 3 years ago

SigmaX commented 6 years ago

One suggestion that came out of GECCO 2017 was that using ECJ in an interactive environment such as Jupyter Notebook could greatly increase its appeal.

Granted, compiled languages like Java don't play nicely with interactive shells—but Scala plays well with both. This gives me an idea for a development path:

  1. Fire up a Scala kernel for Jupyter Notebook, and use it to experiment with:
    • Launching ECJ and running a parameter file from within a notebook.
    • Writing custom Problem implementations and running them with no external compilation steps.
    • Loading results from file and plotting them in the same notebook with the Problem implementation.
  2. Make some minor additions to ECJ to make it easier to collect data programmatically for plotting purposes.
  3. If (1) and (2) look promising, look into creating a Python and/or R interface, at least for implementing Problems and collecting data.
SigmaX commented 3 years ago

We didn't have the bandwidth to pursue this idea.