Opened 10 years ago
Closed 10 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 10 years ago by mkommend
- Status changed from new to accepted
comment:2 Changed 10 years ago by mkommend
comment:3 Changed 10 years ago by mkommend
r11495: Corrected access modifiers in SymbolicExpressionGrammarBase.
comment:4 Changed 10 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 10 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 10 years ago by mkommend
r11498: Adapted unit test (cloning and tree creation) to work with the new empty expression tree grammar.
comment:7 Changed 10 years ago by mkommend
- Owner changed from mkommend to gkronber
- Status changed from accepted to reviewing
comment:8 Changed 10 years ago by bburlacu
The EmptySymbolicExpressionTreeGrammar class is breaking persistence, missing storable attributes. Added patch with the fix.
comment:9 Changed 10 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 10 years ago by mkommend
r11504: Set ADF grammar parameters to the correct during problem creation and disabled a warning in EmtpySymbolicExpressionTreeGrammar.
comment:11 Changed 10 years ago by mkommend
r11532: Added storable attributes and ctor to EmtpySymbolicExpressionTreeGrammar.
comment:12 Changed 10 years ago by mkommend
- Owner changed from mkommend to gkronber
- Status changed from assigned to reviewing
comment:13 Changed 10 years ago by mkommend
r11536: Changed access modifier of EmptySymbolicExpressionTreeGrammer from internal to private.
comment:14 Changed 10 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.
r11494: Moved all grammar classes into a new folder. Added new EmptySymbolicExpressionTreeGrammar which is immutable and forwards all calls to the default grammar object.