public interface Mutable
Mutable
declares the expected behaviour of any
part of a chromosome that is mutable, more specifically
nodes or outputs. Inputs are not mutable since they don't have
connections or functions.
mutate()
is guaranteed
to perform a fair mutation.Modifier and Type | Method and Description |
---|---|
boolean |
copyOf(Mutable element)
Asserts if the specified element is a copy of the elements
this is called on.
This method returns true if and only if: the elements being compared are not the same instance; the connections of the compared elements are not the same instance; the elements have the same function (in the case of Node); the grid position of the elements themselves are the same; the grid position of all equivalent connections are the same; The relationship computed by this method is: symmetric: a.copyOf(b) == b.copyOf(a); not reflexive: a.copyOf(a) returns false; not transitive: if a.copyOf(b) is true and b.copyOf(c) is true, a.copyOf(c) is not necessarily true since it is possible that a == c. |
void |
mutate()
This method performs an arbitrary mutation on the
Mutable . |
void mutate()
Mutable
.
boolean copyOf(Mutable element)
element
- the mutable element to compare to.element
is a copy of this element.