aboutsummaryrefslogtreecommitdiffstats
path: root/src/jcgp/tests/ChromosomeTests.java
diff options
context:
space:
mode:
authorEduardo Pedroni <ep625@york.ac.uk>2014-02-15 21:43:35 +0000
committerEduardo Pedroni <ep625@york.ac.uk>2014-02-15 21:45:21 +0000
commite9290a500b228e2561a8537adbc13e86f1356747 (patch)
tree5e76280ddefc5bf9dcf9cdb55e80ca4831998115 /src/jcgp/tests/ChromosomeTests.java
parentafa484021ba94d12e98da682a9ff69c3837d5dbb (diff)
Population and Chromosome classes refactored so that EAs are easier to implement.
Diffstat (limited to 'src/jcgp/tests/ChromosomeTests.java')
-rw-r--r--src/jcgp/tests/ChromosomeTests.java12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/jcgp/tests/ChromosomeTests.java b/src/jcgp/tests/ChromosomeTests.java
index 8092d60..c943da8 100644
--- a/src/jcgp/tests/ChromosomeTests.java
+++ b/src/jcgp/tests/ChromosomeTests.java
@@ -31,8 +31,7 @@ import org.junit.Test;
* - It should contain a freely modifiable fitness value.
* - For truth table evaluations, it should be able to have its inputs set.
* - For truth table evaluations, the output should return a value according to the inputs.
- * - It should feature a clone constructor, which creates a deep copy of a
- * specified Chromosome object.
+ * - It should feature a copy method, which creates a deep copy of a specified Chromosome object.
* - It should be able to return a list of active nodes.
* - It should contain a method to evaluate whether a given chromosome is identical
* to it.
@@ -65,11 +64,11 @@ public class ChromosomeTests {
@Before
public void setUp() throws Exception {
- Parameters.setColumns(10);
+ Parameters.setColumns(5);
Parameters.setRows(2);
Parameters.setInputs(2);
Parameters.setOutputs(4);
- Parameters.setLevelsBack(10);
+ Parameters.setLevelsBack(5);
chromosome = new Chromosome();
}
@@ -183,10 +182,9 @@ public class ChromosomeTests {
assertTrue("Connection is not an input.", connectionReturn);
}
- // get random connections with column 1
- // they should all be nodes, and their columns should be within range
+ // get random connections with the last column as reference, check that they're all within range
int connectionNodes = 0, connectionOutOfRange = 0, connectionInputs = 0, connectionPicks = 100000;
- int chosenColumn = 1;
+ int chosenColumn = Parameters.getColumns() - 1;
for (int i = 0; i < connectionPicks; i++) {
Connection c = chromosome.getRandomConnection(chosenColumn);
if (c instanceof Node) {