Alexander Diewald
authored
* An injection exception occurred when launching the MOEA DSE a second
time from the same AF3 instance. Here, operator modules that maintain
an internal map keep the entries of the previous run (which are
replaced). This triggered an equals check of operator keys when the
operators for the next execution should be placed in the internal
operator selector maps. Within the equals check, one operator (from
the prev. execution) had an instance of the operator such that the
comparision would be based on the operator instances. Thus, an
operator would be instantiated by the given injector during the
binding phase causing the Exception.
* In order to obtain a correct operator representation in the internal
maps an to resolve the above problem, base the Operator Key hash and
equals method on the OperatorTypes only. We only allow one operator
type per genotype anyways such that the new equals operation correctly
implements the concept and "old" operator instances are cleaned out.
Signed-off-by:
Alexander Diewald <diewald@fortiss.org>