Skip to content

Releases: dedicate-project/beast

0.1.2

01 Feb 15:03
c85b60f
Compare
Choose a tag to compare

Major add: Evaluators

Evaluators are tools that allow to score programs based on their static structure, their dynamic runtime behavior, and based on any arbitrary measure necessary. Programs can hence be judged whether (and how well) they are fit for any particular purpose. The background for this change is that for automatic program generation and recombination, a gradient search needs to know in which direction to improve; and that's exactly where evaluators will give guidance.

In this release, the evaluators framework and some basic evaluators are implemented, tested, and documented. More evaluators are to follow on a per-need bases when evolution pipelines are in place. For now, this is a milestone for integrating the principle technology. The next release will make good use of it.

0.1.1

25 Jan 08:48
d4c5a6d
Compare
Choose a tag to compare

The main focus on this minor release is the addition of program factories that allow to generate BEAST programs automatically. For now, one implementation of these factories exists: The Random Program Factory. It generated valid, but random programs, using all available operators. For details on this specific new feature, check the Program Factories docs page.

Added

  • A base class for Program Factories: ProgramFactoryBase
  • A concrete implementation of the base class for random programs: RandomProgramFactory
  • Covered the random programs factory via tests
  • Updated the Sphinx documentation to cover program factories
  • Added an end-of-list size entry to the beast::OpCode enum
  • Fixed long-standing AppVeyor signedness warnings
  • Updated roadmap for program generators

Fixed

  • Fixed size program initialization is done via an unsigned value, not signed

0.1.0

24 Jan 07:50
Compare
Choose a tag to compare

Added

  • Base class for Virtual Machine implementation.
  • Concrete CPU-based implementation of a Virtual Machine.
  • Definition of 76 operators to use in BEAST byte code programs.
  • Classes for storing byte code programs and their execution state in a VM.
  • Added examples (feedloop, adder, hello_world, bubblesort) for implementing programs in byte code.
  • Added tests to cover all vital functions and operators.
  • Wrote documentation for all APIs.
  • Configured Doxygen, Sphinx, CircleCI, GitHub Actions / CodeQL, SonarQube, Coveralls.io, and a few minor badges for the README.md