Opened 3 years ago

Closed 2 years ago

#2268 closed enhancement (done)

Tree grammars take up a lot of space in a persisted HL file containing multiple trees

Reported by: mkommend Owned by: mkommend
Priority: medium Milestone: HeuristicLab 3.3.11
Component: Encodings.SymbolicExpressionTreeEncoding Version: 3.3.10
Keywords: Cc:

Description

For 50,000 trees the uncompressed file size necessary for storing all the tree grammar object is ~ 400 MB. Symbolic expression tree grammars are only used when working with ADF's, which is rarely the case. Hence, if ADF's are disable no tree grammars should be created.

Change History (15)

comment:1 Changed 3 years ago by mkommend

  • Status changed from new to accepted

comment:2 Changed 3 years ago by mkommend

r11494: Moved all grammar classes into a new folder. Added new EmptySymbolicExpressionTreeGrammar which is immutable and forwards all calls to the default grammar object.

comment:3 Changed 3 years ago by mkommend

r11495: Corrected access modifiers in SymbolicExpressionGrammarBase.

comment:4 Changed 3 years ago by mkommend

r11496: Refactored tree creators to use new method for tree grammar creation and handled grammar cloning in the base class.

comment:5 Changed 3 years ago by mkommend

r11497: Stored a reference to the grammar object in the cut point to avoid multiple traversion of the parents nodes for grammar access.

comment:6 Changed 3 years ago by mkommend

r11498: Adapted unit test (cloning and tree creation) to work with the new empty expression tree grammar.

comment:7 Changed 3 years ago by mkommend

  • Owner changed from mkommend to gkronber
  • Status changed from accepted to reviewing

comment:8 Changed 3 years ago by bburlacu

The EmptySymbolicExpressionTreeGrammar class is breaking persistence, missing storable attributes.

Last edited 3 years ago by mkommend (previous) (diff)

comment:9 Changed 3 years ago by mkommend

  • Owner changed from gkronber to mkommend
  • Status changed from reviewing to assigned

The ADF parameters of the various GP problems are not synced with the grammar properties for ADFs and hence the unit test for artificial ant and lawn mower fail.

comment:10 Changed 3 years ago by mkommend

r11504: Set ADF grammar parameters to the correct during problem creation and disabled a warning in EmtpySymbolicExpressionTreeGrammar.

comment:11 Changed 3 years ago by mkommend

r11532: Added storable attributes and ctor to EmtpySymbolicExpressionTreeGrammar.

comment:12 Changed 3 years ago by mkommend

  • Owner changed from mkommend to gkronber
  • Status changed from assigned to reviewing

comment:13 Changed 3 years ago by mkommend

r11536: Changed access modifier of EmptySymbolicExpressionTreeGrammer from internal to private.

comment:14 Changed 2 years ago by gkronber

  • Owner changed from gkronber to mkommend
  • Status changed from reviewing to readytorelease

Reviewed r11494:11498 and r11504, r11532, r11536. And tested HL runs with and without ADFs.

Note: I did not test serialization/persistence.

comment:15 Changed 2 years ago by mkommend

  • Resolution set to done
  • Status changed from readytorelease to closed

r11874: Merged r11494, r11495, r11496, r11497, r11498, r11504, r11532, r11536 into stable.

Note: See TracTickets for help on using tickets.