diff options
author | Eduardo Pedroni <ep625@york.ac.uk> | 2014-05-07 18:38:27 +0100 |
---|---|---|
committer | Eduardo Pedroni <ep625@york.ac.uk> | 2014-05-07 18:38:27 +0100 |
commit | 7f89d81e6f8a5ce82d42c3b852b5219edaa4b86c (patch) | |
tree | cc069b43e1cdf7cb69456fe7e86e1f51d6ea8642 /src/jcgp/backend/population/MutableElement.java | |
parent | 8189116ea4b5db4675e31dfd04a5687d55e29262 (diff) |
Removed reflection for now, added fitness orientation support
Diffstat (limited to 'src/jcgp/backend/population/MutableElement.java')
-rw-r--r-- | src/jcgp/backend/population/MutableElement.java | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/src/jcgp/backend/population/MutableElement.java b/src/jcgp/backend/population/MutableElement.java deleted file mode 100644 index 5782a99..0000000 --- a/src/jcgp/backend/population/MutableElement.java +++ /dev/null @@ -1,53 +0,0 @@ -package jcgp.backend.population; - -/** - * {@code MutableElement} 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. - * <br><br> - * This interface provides a way to deal with mutable elements - * generically without having to specify whether they are nodes - * or outputs. In this way a random mutable element can be picked and - * dealt with more easily, facilitating mutations. - * - * @author Eduardo Pedroni - * - */ -public interface MutableElement { - - /** - * This method sets the indexed connection to the specified new connection. - * Implementing classes may choose to ignore the given index (such as in the - * case of outputs, which only have one connection). - * - * @param index the connection index to set. - * @param newConnection the chromosome element to connect to. - */ - public void setConnection(int index, Connection newConnection); - - /** - * Asserts if the specified element is a copy of the elements - * this is called on.<br> - * This method returns true if and only if: - * <ul> - * <li>the elements being compared are not the same instance;</li> - * <li>the connections of the compared elements are not the same instance;</li> - * <li>the elements have the same function (in the case of Node);</li> - * <li>the grid position of the elements themselves are the same;</li> - * <li>the grid position of all equivalent connections are the same;</li> - * </ul> - * <br><br> - * The relationship computed by this method is: - * <ul> - * <li>symmetric: a.copyOf(b) == b.copyOf(a);</li> - * <li>not reflexive: a.copyOf(a) returns false;</li> - * <li>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.</li> - * </ul> - * @param element the mutable element to compare to. - * @return true if {@code element} is a copy of this element. - */ - boolean copyOf(MutableElement element); - -} |