/*
* File name: AutomatonTester.java (package eas.simulation.users.lukas.marbImplicitEvolution)
* Author(s): aifb
* Java version: 6.0
* Generation date: 04.03.2011 (11:02:51)
*
* (c) This file and the EAS (Easy Agent Simulation) framework containing it
* is protected by Creative Commons by-nc-sa license. Any altered or
* further developed versions of this file have to meet the agreements
* stated by the license conditions.
*
* In a nutshell
* -------------
* You are free:
* - to Share -- to copy, distribute and transmit the work
* - to Remix -- to adapt the work
*
* Under the following conditions:
* - Attribution -- You must attribute the work in the manner specified by the
* author or licensor (but not in any way that suggests that they endorse
* you or your use of the work).
* - Noncommercial -- You may not use this work for commercial purposes.
* - Share Alike -- If you alter, transform, or build upon this work, you may
* distribute the resulting work only under the same or a similar license to
* this one.
*
* + Detailed license conditions (Germany):
* http://creativecommons.org/licenses/by-nc-sa/3.0/de/
* + Detailed license conditions (unported):
* http://creativecommons.org/licenses/by-nc-sa/3.0/deed.en
*
* This header must be placed in the beginning of any version of this file.
*/
package eas.users.lukas.marbImplicitEvolution.marbTester;
import java.util.Random;
import eas.math.geometry.Vector2D;
import eas.plugins.masterScheduler.AbstractDefaultMaster;
import eas.simulation.ConstantsSimulation;
import eas.simulation.spatial.sim2D.standardAgents.AbstractAgent2D;
import eas.simulation.spatial.sim2D.standardAgents.jasmine.JasmineRobot;
import eas.simulation.spatial.sim2D.standardEnvironments.AbstractEnvironment2D;
import eas.simulation.spatial.standardBrains.marb.MARBBrain;
import eas.startSetup.ParCollection;
import eas.users.lukas.marbImplicitEvolution.simpleMazeEnvironment.MARBFastEnvironment;
/**
* @author aifb
*
*/
public class TesterScheduler extends AbstractDefaultMaster<AbstractEnvironment2D<AbstractAgent2D<?>>> {
/**
*
*/
private static final long serialVersionUID = 9169198360025108634L;
@SuppressWarnings("unchecked")
@Override
public AbstractEnvironment2D<AbstractAgent2D<?>>[] generateRunnables(
ParCollection params) {
MARBFastEnvironment env = new MARBFastEnvironment(0, params, false);
int anzahl = 10;
for (int i = 0; i < anzahl; i++) {
JasmineRobot r = new JasmineRobot(i, env, new Random(), params, false, 0);
r.implantBrain(new MARBBrain<AbstractAgent2D<?>>(
r,
// "001, 003, 001, 001, 000, 000, 000",
"001, 003, 001, 001, 000, 014, 000, 013, 000, 014, 203, 000, 012, 002, 000, 005, 000, 011, 000, 010, 000, 011, 000, 000, 005, 001, 000, 000, 000, 018, 003, 005, 001, 000, 000, 000, 016, 004, 001, 001, 000, 000, 000, 017, 004, 003, 001, 000, 000, 000, 015, 003, 004, 001, 000, 014, 000, 000, 015, 001, 000, 000, 000, 014, 004, 005, 001, 000, 000, 000, 013, 003, 006, 001, 000, 000, 000, 012, 001, 002, 001, 000, 000, 000, 011, 003, 008, 001, 000, 000, 000, 010, 005, 002, 001, 000, 012, 007, 130, 000, 007, 000, 000, 001, 001, 000, 000, 000, 008, 004, 003, 001, 218, 000, 012, 001, 000, 009, 000, 012, 004, 000, 012, 001, 000, 007, 000, 010, 000, 000, 001, 001, 000, 012, 003, 111, 000, 008, 171, 000, 012, 007, 000, 005, 000, 011, 000, 000, 005, 001, 052, 000, 012, 007, 000, 008, 000, 000, 011, 001, 000, 000, 000, 007, 005, 005, 001, 017, 000, 012, 006, 000, 015, 000, 000, 013, 001, 000, 000, 000, 006, 005, 004, 001, 000, 000, 000, 005, 004, 004, 001, 000, 000, 000, 004, 001, 002, 001, 000, 000, 000, 003, 001, 005, 001, 000, 000, 000, 002, 001, 002, 001, 000, 000, 000",
params));
env.addCollidingAgent(r, new Vector2D(-anzahl * 15.5 + i * 33, 800), new Random().nextDouble() * 360);
r.deactivateEvolution();
}
return new AbstractEnvironment2D[] { env };
}
// public static void main(String[] args) {
// EndlicherAutomat ea = new EndlicherAutomat();
// ea.erzeugeAusStdSequenz("001, 003, 003, 001, 000, 012, 001, 174, 000, 008, 174, 000, 012, 001, 000, 005, 000, 011, 000, 000, 011, 001, 000, 000, 000, 044, 001, 005, 001, 000, 000, 000, 041, 002, 003, 001, 000, 000, 000, 042, 004, 002, 001, 000, 000, 000, 037, 003, 001, 001, 000, 000, 000, 036, 002, 003, 001, 000, 000, 000, 039, 003, 003, 001, 000, 000, 000, 032, 005, 007, 001, 000, 000, 000, 035, 005, 005, 001, 048, 000, 012, 007, 000, 008, 000, 012, 003, 141, 000, 007, 000, 014, 000, 011, 000, 014, 000, 011, 000, 011, 000, 000, 028, 001, 000, 012, 006, 014, 000, 008, 025, 000, 012, 001, 000, 015, 000, 011, 000, 000, 036, 001, 000, 012, 001, 043, 000, 015, 000, 000, 034, 001, 000, 000, 000, 034, 005, 003, 001, 000, 000, 000, 030, 001, 003, 001, 000, 000, 000, 031, 003, 004, 001, 000, 000, 000, 028, 004, 003, 001, 000, 000, 000, 029, 001, 001, 001, 000, 000, 000, 026, 001, 002, 001, 000, 000, 000, 027, 003, 003, 001, 083, 000, 012, 004, 000, 008, 000, 000, 003, 001, 000, 000, 000, 024, 005, 001, 001, 000, 000, 000, 025, 005, 001, 001, 000, 012, 004, 054, 000, 009, 000, 012, 007, 000, 012, 007, 000, 008, 000, 010, 000, 000, 023, 001, 000, 000, 000, 022, 003, 002, 001, 000, 000, 000, 023, 002, 002, 001, 000, 000, 000, 020, 005, 005, 001, 000, 000, 000, 021, 003, 001, 001, 000, 000, 000, 018, 005, 002, 001, 000, 000, 000, 016, 004, 001, 001, 000, 013, 000, 013, 000, 012, 005, 021, 000, 008, 000, 012, 004, 094, 000, 008, 000, 011, 236, 000, 012, 001, 000, 016, 000, 010, 000, 010, 000, 010, 000, 000, 007, 001, 000, 014, 000, 012, 005, 000, 012, 001, 000, 015, 000, 011, 000, 000, 008, 001, 000, 000, 000, 017, 004, 005, 001, 000, 000, 000, 015, 004, 004, 001, 000, 000, 000, 014, 001, 003, 001, 000, 014, 000, 000, 036, 001, 000, 000, 000, 013, 003, 003, 001, 000, 000, 000, 012, 003, 008, 001, 000, 000, 000, 011, 005, 002, 001, 003, 000, 012, 007, 000, 009, 086, 000, 012, 003, 000, 007, 000, 010, 000, 000, 001, 001, 000, 000, 000, 010, 003, 003, 001, 000, 000, 000, 009, 004, 002, 001, 183, 000, 012, 003, 000, 007, 000, 000, 003, 001, 000, 000, 000, 008, 005, 004, 001, 000, 012, 006, 094, 000, 009, 234, 000, 012, 003, 000, 015, 000, 013, 000, 010, 000, 010, 217, 000, 012, 006, 000, 016, 000, 011, 000, 012, 005, 000, 012, 003, 000, 008, 000, 014, 000, 011, 000, 010, 000, 000, 009, 001, 000, 012, 002, 000, 012, 002, 000, 016, 095, 000, 012, 002, 000, 016, 180, 000, 012, 003, 000, 015, 144, 000, 012, 004, 000, 008, 103, 000, 012, 005, 000, 009, 000, 010, 000, 011, 000, 010, 000, 010, 000, 000, 004, 001, 066, 000, 012, 004, 000, 006, 000, 012, 001, 000, 012, 007, 000, 008, 000, 011, 000, 000, 005, 001, 000, 012, 002, 184, 000, 008, 199, 000, 012, 004, 000, 008, 000, 011, 000, 000, 027, 001, 000, 000, 000, 007, 002, 003, 001, 000, 000, 000, 005, 005, 002, 001, 000, 014, 000, 012, 005, 205, 000, 016, 000, 011, 000, 000, 005, 001, 255, 000, 012, 007, 000, 005, 000, 012, 003, 029, 000, 008, 000, 010, 000, 000, 008, 001, 000, 012, 005, 000, 012, 001, 000, 004, 000, 000, 011, 001, 000, 000, 000, 004, 004, 005, 001, 000, 014, 000, 013, 000, 011, 093, 000, 012, 006, 000, 016, 000, 010, 000, 000, 004, 001, 112, 000, 012, 007, 000, 008, 158, 000, 012, 005, 000, 015, 000, 011, 000, 014, 000, 011, 000, 000, 007, 001, 000, 000, 000, 003, 004, 001, 001, 017, 000, 012, 007, 000, 009, 000, 013, 000, 010, 000, 012, 006, 000, 012, 006, 000, 008, 000, 010, 000, 012, 002, 000, 012, 002, 000, 006, 000, 011, 000, 000, 009, 001, 149, 000, 012, 003, 000, 008, 030, 000, 012, 005, 000, 008, 000, 011, 000, 000, 014, 001, 000, 000, 000, 002, 002, 011, 001, 068, 000, 012, 004, 000, 015, 229, 000, 012, 002, 000, 004, 000, 012, 006, 114, 000, 008, 000, 011, 000, 011, 000, 012, 002, 093, 000, 006, 000, 010, 000, 000, 002, 001, 208, 000, 012, 007, 000, 008, 185, 000, 012, 002, 000, 008, 000, 012, 007, 000, 012, 004, 000, 008, 000, 012, 004, 184, 000, 008, 000, 011, 079, 000, 012, 001, 000, 008, 000, 011, 048, 000, 012, 005, 000, 015, 000, 014, 000, 011, 000, 011, 000, 011, 000, 011, 000, 000, 005, 001, 000, 012, 007, 000, 012, 001, 000, 008, 000, 012, 001, 000, 012, 006, 000, 008, 000, 011, 000, 000, 025, 001, 000, 000, 000");
// ea.vereinfache();
// System.out.println(ea.erzeugeStringSeq());
// }
@Override
public String id() {
return ConstantsSimulation.DEFAULT_MASTER_SCHEDULER_ID + "-marbTester";
}
}