Opened 12 years ago
Last modified 9 years ago
#2026 accepted enhancement
Functionality to dynamically define symbols and semantics for GP problems
Reported by: | gkronber | Owned by: | gkronber |
---|---|---|---|
Priority: | medium | Milestone: | HeuristicLab 4.x Backlog |
Component: | Encodings.SymbolicExpressionTreeEncoding | Version: | branch |
Keywords: | Cc: |
Description (last modified by gkronber)
Here we track developments of the GPDL language including the compiler frontend and different backends. GPDL and a prototype compiler for HeuristicLab was first presented at GECCO'13 in Amsterdam http://dev.heuristiclab.com/GPDL
Change History (51)
comment:1 Changed 12 years ago by gkronber
- Status changed from new to accepted
comment:2 Changed 12 years ago by gkronber
- Milestone changed from HeuristicLab 3.3.x Backlog to HeuristicLab 3.3.9
comment:3 Changed 12 years ago by gkronber
comment:4 Changed 12 years ago by gkronber
comment:5 Changed 12 years ago by gkronber
r9519 worked on GPDL integration into HL.
- Implemented problem provider for examples.
- Implemented editor for GPDL definitions.
comment:6 Changed 12 years ago by gkronber
r9528: worked on HL integration of GPDL compiler
comment:7 Changed 12 years ago by gkronber
r9529: svn:ignore
comment:8 Changed 11 years ago by gkronber
r9674: Worked on integration of ICSharpCode.AvalonEdit control for GPDL syntax-highlighting and error reporting.
comment:9 Changed 11 years ago by gkronber
r9724: changed ATGs of GPDL syntax analyzer and compiler to use Coco/R syntax and replaced Coco-2 compiler with Coco/R.
comment:10 Changed 11 years ago by gkronber
r9725: re-enabled code generation from within HL and added missing file.
comment:11 Changed 11 years ago by gkronber
r9726: removed unused methods
comment:12 Changed 11 years ago by gkronber
r9727: attributes for NT- and T-symbols are optional (incorrectly translated from Coco-2 yesterday)
comment:13 Changed 11 years ago by gkronber
- added rudimentary error checking to GPDL parser ATG.
- Added GPL license headers to all files.
- Created a first set of unit tests.
comment:14 Changed 11 years ago by gkronber
- made the problem field non-static
- added a unit test to compile all examples
comment:15 Changed 11 years ago by gkronber
r9844: added two GP benchmark problems even-parity and multiplexer.
comment:16 Changed 11 years ago by gkronber
- added lawn mower problem.
- in the GPDL editor: create a OSGA for solving the compiled problem directly.
comment:17 Changed 11 years ago by gkronber
r9847: lawn mower programs are only executed once. This makes the problem much harder.
comment:18 Changed 11 years ago by ascheibe
- Milestone changed from HeuristicLab 3.3.9 to HeuristicLab 3.3.10
comment:19 Changed 11 years ago by gkronber
r10031: worked on plugin for grammars and made some changes for compatibility with the latest stable version of HL
comment:20 Changed 11 years ago by gkronber
- Description modified (diff)
Open tasks:
- brute-force backend using simple tree-search
- improved error handling
- only allow out parameters for terminal symbols
- for range terminals check if type is ordinal
- translation of frontend and examples to java (for ECJ, GEVA interoperability)
- backend for grammatical evolution in HL (see #2109)
- 'lilGP' backend
comment:21 Changed 11 years ago by gkronber
r10049: created a separate plugin for the classes for the GPDL code generation backend. This a preparation for removing dependencies to HeuristicLab in the core GPDL compiler code.
comment:22 Changed 11 years ago by gkronber
r10050: removed svn:ignore properties
comment:23 Changed 11 years ago by gkronber
r10051: worked on a plugin for grammars (work-in-progress)
comment:24 Changed 11 years ago by gkronber
r10052: set svn:ignore properties
comment:25 Changed 11 years ago by gkronber
r10053: created a separate branch folder for HL specific files for GPDL
comment:26 Changed 11 years ago by gkronber
r10054: removed backend projects from the core compiler solution
comment:27 Changed 11 years ago by gkronber
r10055: moved HL specific plugins for the GPDL backend into a separate branch folder
comment:28 Changed 11 years ago by gkronber
comment:29 Changed 11 years ago by gkronber
r10057: moved a test class into the HL specific GPDL branch
comment:30 Changed 11 years ago by gkronber
r10058: changed build target directories
comment:31 Changed 11 years ago by gkronber
r10059: fixed references in HL specific GPDL plugin (backend), set svn:ignore
comment:32 Changed 11 years ago by gkronber
r10061: copied examples from the GPDL problem instance provider plugin
comment:33 Changed 11 years ago by gkronber
r10062: worked on brute force code generator, removed unused references, worked on compatibility with mono.
comment:34 Changed 11 years ago by gkronber
r10063: removed reference to HeuristicLab.PluginInfrastructure (and set svn:ignore properties)
comment:35 Changed 11 years ago by gkronber
r10064: removed the test project as it does not build on mono
comment:36 Changed 11 years ago by gkronber
r10065: added shell script to generate parser and scanner on linux and also adapted pre- and post-build events
comment:37 Changed 11 years ago by gkronber
r10066: added instructions on building a short README and the GPL license file.
comment:38 Changed 11 years ago by gkronber
r10067: worked on brute force solver for GPDL problems.
comment:39 Changed 11 years ago by gkronber
r10074: finished tree searcher for artificial ant, multiplexer and even parity examples. (+ performance tweak in Artificial Ant.txt)
comment:40 Changed 11 years ago by gkronber
r10079: added royal tree benchmark problem for GP
comment:41 Changed 11 years ago by gkronber
r10080: implemented a code generator for random search solvers for GPDL problems
comment:42 Changed 11 years ago by gkronber
r10086: worked on random search solver (now all examples are working)
comment:43 Changed 11 years ago by gkronber
r10099: minor improvements to GPDL examples
comment:44 Changed 11 years ago by gkronber
r10100: major refactoring of example GPDL solver (random search complete except for RANGE constrained terminals)
comment:45 Changed 11 years ago by gkronber
r10333: added two more GPDL examples
comment:46 Changed 11 years ago by gkronber
r10335: worked on code generator for random search (work in progress commit)
comment:47 Changed 11 years ago by gkronber
r10384: fixed random search code generation
comment:48 Changed 11 years ago by gkronber
- r10338: changing the way terminal symbols are handled (work in progress)
- r10385: removed commented code and improved layout
- r10386: refactoring
- r10387: reintegrated initialization of terminal values into the random search solver.
- r10388: worked on code generator for brute force solver
- r10392: implemented brute force searcher
- r10393: fixed a bug in the brute force solver
- r10394: fixed a bug in generation of terminal nodes
- r10395: performance improvement for symbolic regression example
- r10399: performance improvement for the second symbolic regression example
- r10400: worked on MCTS solver
- r10408: worked on MCTS solver
- r10409: prepare for inclusion of terminals into the search tree
- r10410: removed commented code
- r10411: refactoring
- r10412: also support C++-style comments
- r10415: implemented prevention of resampling of known nodes.
- r10423: updated examples
- r10424: maximal depth limit for random search
- r10425: support for max depth in brute force solver
- r10426: generate code for all solvers
- r10427: integrated max depth into MCTS solver
- r10430: changed constants in MCTS
- r10431: Added deceptive max problem.
- r10436: implemented softmax strategy for tree exploration
- r10437: implemented epsilon-greedy search policy
comment:49 Changed 10 years ago by gkronber
- Milestone changed from HeuristicLab 3.3.10 to HeuristicLab 3.3.11
comment:50 Changed 10 years ago by gkronber
- Milestone changed from HeuristicLab 3.3.11 to HeuristicLab 3.3.x Backlog
comment:51 Changed 9 years ago by gkronber
- Milestone changed from HeuristicLab 3.3.x Backlog to HeuristicLab 4.x Backlog
r9518 worked on integration of GPDL compiler into HeuristicLab