Ticket #1772 (new feature request)

Opened 16 months ago

Last modified 3 weeks ago

Evolutionary tracking of solutions within GP

Reported by: bburlacu Owned by: bburlacu
Priority: medium Milestone: HeuristicLab 3.3.x Backlog
Component: Algorithms.GeneticAlgorithm Version: 3.3.6
Keywords: Cc:

Description

In other to perform theoretical investigations on building blocks and bloat, some new functionality is required:

  • complete genealogical trees of solution candidates
  • analyze evolutionary operators and search trajectories

Change History

comment:1 Changed 15 months ago by bburlacu

r7479: Implemented an initial set of features: individual ancestry, genealogy tracking via customized genetic operators and data structures.

comment:2 Changed 15 months ago by bburlacu

r7513: Cleaned up unneeded folders
r7514: Merged latest trunk changes to SymbolicExpressionTreeEncoding.
r7515: Added tracking for mutation operators.

comment:3 Changed 15 months ago by bburlacu

r7522: Merged changes from trunk, rigged the TournamentSelector to track clones, improved tracking code and genealogy graph layout.

comment:4 Changed 13 months ago by bburlacu

r7779: Implemented new View, improved functionality (tracking of fragments and operators)

comment:5 Changed 13 months ago by bburlacu

r7785: Moved tree matching functionality in separate class, implemented new tree fragments analyzer. Fixed bug in GetCutIndex method.

comment:6 Changed 13 months ago by bburlacu

r7788: Fixed bug in fragment tracing.

comment:7 Changed 13 months ago by bburlacu

r7792:

  • Removed GetCutIndex method, and corresponding index field in the GenealogyGraphNode.
  • Implemented tracking for mutated fragments.
  • Improved FindMatch method.
  • Added IterateNodesBreadth functionality to symbolic expression trees and nodes.
  • Added check conditions for clearing global tracking structures so that the 2 analyzers are not mutually exclusive anymore.
Last edited 13 months ago by bburlacu (previous) (diff)

comment:8 Changed 12 months ago by bburlacu

r7800: Fixed display of genetic fragments (received via crossover) in the GenealogyGraphView. Added parent, offspring and fragment lengths histogram.

comment:9 Changed 12 months ago by bburlacu

r7817: Fixed a small bug in the TracingSymbolicExpressionTreeCrossover. Fixed bug in fragment matching code.

comment:10 Changed 11 months ago by bburlacu

r7997: New analyzer: SymbolicExpressionTreeRelativeLengthAnalyzer. Rewrote the SymbolicExpressionTreeFragmentsAnalyzer, added generic wrapper to wrap HL objects as items.

comment:11 Changed 11 months ago by bburlacu

r8213: Performance improvements for the GenealogyGraph. Minor refactoring to VisualGenealogyGraphArc and VisualGenealogyGraphNode classes. Added new functionality to the SymbolicExpressionTreeFragmentsAnalyzer, minor refactoring in the other two analyzers. Refactored View code. Updated project references and plugin dependencies and added HeuristicLab.Problems.DataAnalysis.Symbolic to the branch.

comment:12 Changed 11 months ago by bburlacu

r8236: Refactored code in the GenealogyGraphChart and the SymbolicExpressionTreeGenealogyAnalyzer. Used gradient from HeuristicLab.Common to color the graph nodes.

comment:13 Changed 11 months ago by bburlacu

r8248: Separated instance-specific attributes of graph node objects from the generic genealogy graph, into metadata objects kept by the specific graph class which corresponds to the specific problem instance (so for instance the SymbolicExpressionTreeGenealogyGraph will keep info about node ranks and qualities etc because that info is specific to symbolic data analysis problems).

comment:14 Changed 11 months ago by bburlacu

r8249: Fixed small bug (correct counting of node ranks) in the SymbolicExpressionTreeGenealogyAnalyzer. Fixed node tool tips in the GenealogyGraphChart.

comment:15 Changed 9 months ago by bburlacu

r8555: Partial commit -- Introduced more specific graph class for symbolic expression problems.

Last edited 9 months ago by bburlacu (previous) (diff)

comment:16 Changed 9 months ago by bburlacu

r8556: Partial commit -- Modified genealogy graph chart and view to reflect changes in the class hierarchy.

Last edited 9 months ago by bburlacu (previous) (diff)

comment:17 Changed 9 months ago by bburlacu

r8557: Introduced base class and interface for tracing operators. Introduced SymbolicExpressionTreeNodeComparer interface to be implemented by node matching operators. Fixed bug in the TracingSymbolicExpressionTreeManipulator where nodes modified by the Full- and OnePoint tree shakers were not correctly detected. The SymbolicExpressionTreeNodeSimilarityComparer is now injected in the tracing genetic operators as a parameter.

comment:18 Changed 5 months ago by bburlacu

r9082: Renamed and refactored genealogy graph components. Added SymbolGraph and FPGraph (frequent pattern graph). Added evolvability and genetic operator average improvement analyzer.

comment:19 Changed 5 months ago by bburlacu

r9083: Merged HeuristicLab.Encodings.SymbolicExpressionTreeEncoding from trunk. Added Fragment class implementing IFragment interface.

comment:20 Changed 5 months ago by bburlacu

r9084: HeuristicLab.EvolutionaryTracking.Views: refactored the GenealogyGraphChart and the GenealogyGraphView. Fixed lineage display bug.

comment:21 Changed 3 months ago by bburlacu

r9237: Merged HeuristicLab.Encodings.SymbolicExpressionTreeEncoding trunk changes into the branch. Changed fragments using the tree manipulator are now tracked using the SymbolicExpressionTreeNodeComparer.

comment:22 Changed 3 months ago by bburlacu

r9238: Added base class for the fragment analyzers. Improved analyzers, added SymbolicExpressionTreeRelativeFragmentDepthAnalyzer. Added LineageExplorer.

comment:23 Changed 3 months ago by bburlacu

r9239: Minor updates to existing views. Added LineageExplorerView.

comment:24 Changed 3 months ago by bburlacu

r9241: Merged trunk changes for HeuristicLab.Problems.DataAnalysis.Symbolic. Added SymbolicDataAnalysisSolutionTextRenderer, a class for displaying symbolic expression trees in the console.

comment:25 Changed 3 months ago by bburlacu

r9246: Removed commented code from TracingSymbolicExpressionTreeManipulator.cs. Updated project file.

comment:26 Changed 3 months ago by bburlacu

r9247: Fixed serialization bug of DirectedGraph/Vertex.cs. Modifier behavior of the SymbolicExpressionTreeGenealogyGraphBuilder so that now instances of an elite individual are connected in the graph, which makes it easier to deal with lineages.

Last edited 3 months ago by bburlacu (previous) (diff)

comment:27 Changed 3 months ago by bburlacu

r9248: Added Analyzers/SymbolicExpressionTreeEvolvabilityAnalyzer.cs.

comment:28 Changed 3 months ago by bburlacu

r9249: Updated matching criteria to BoolValues in SymbolicDataAnalysisExpressionTreeMatching.cs.

comment:29 Changed 3 months ago by bburlacu

r9250: Updated LineageExplorerView and added functionality for highlighting common fragments in a given tree. Fixed view layout and element anchoring.

comment:30 Changed 3 months ago by bburlacu

r9293: Added new similarity measures and moved them to separate class SymbolicDataAnalysisExpressionTreeSimilarity.cs.

comment:31 Changed 3 months ago by bburlacu

r9296: Updated analyzers.

comment:32 Changed 3 weeks ago by bburlacu

r9416: Fixed serialization of genetic fragments, added interface ISymbolicExpressionTreeNodeSimilarityComparer

comment:33 Changed 3 weeks ago by bburlacu

r9419: Refactoring of directed graph components, added code for correctly serializing vertices and edges. Added specific building blocks analyzers and new population diversity analyzer which correctly integrates with the parallel engine.

comment:34 Changed 3 weeks ago by bburlacu

r9420: Improved the LineageExplorerView, added generation labels in the GenealogyGraphChart, added new visual component VisualGenealogyGraphTextLabel.

comment:35 Changed 3 weeks ago by bburlacu

r9421: Merged trunk changes for HeuristicLab.Optimization.Views.

comment:36 Changed 3 weeks ago by bburlacu

r9423: Implemented GeneticItem-based similarity measure. Renamed ISymbolicExpressionTreeNodeComparer to ISymbolicExpressionTreeNodeSimilarityComparer.

comment:37 Changed 3 weeks ago by bburlacu

r9424: Merged HeuristicLab.Selection.

Last edited 3 weeks ago by bburlacu (previous) (diff)
Note: See TracTickets for help on using tickets.