Opened 10 years ago
Closed 10 years ago
#2443 closed defect (rejected)
StackOverflowException when using "large" MaximumTreeDepth
Reported by: | pfleck | Owned by: | mkommend |
---|---|---|---|
Priority: | medium | Milestone: | |
Component: | Encodings.SymbolicExpressionTreeEncoding | Version: | 3.3.12 |
Keywords: | Cc: |
Description
When creating a new SymbolicRegression/Classification/...Problem and setting the MaximumSymbolicExpressionTreeDepth to a "large" value (eg 1000), HL crashes with a StackOverflowException when trying to run any algorithm with it.
The exception occurs somewhere when calling GetAllowedChildSymbols (SymbolicExpressionGrammarBase.cs:325) and GetMaximumExpressionLength(SymbolicExpressionGrammarBase.cs:450).
A few months ago, there was no problem using such "large" tree-depths so I guess that some recent changes are causing this.
Change History (1)
comment:1 Changed 10 years ago by mkommend
- Milestone HeuristicLab 3.3.13 deleted
- Resolution set to rejected
- Status changed from new to closed
Note: See
TracTickets for help on using
tickets.
I have tested this issue and can confirm that a tree depth limit of 1.000 can lead to stack overflows when running debug builds. However, with release builds I have successfully executed runs with a length limit of 10.000 and 1.000 depth limit using the PTC2. In addition a depth limit of 1.000 means for binary trees a maximum tree length of 21000 ~ 10300 which IMHO is pretty unrealistic (2100 is still 1030).