//Display the best genome private void toggleDisplayToolStripMenuItem_Click(object sender, EventArgs e) { evolveMutex.WaitOne(); if (evolveGenome != null) { NeatGenome genome; genome = new NeatGenome(evolveGenome, 0); experiment = new RoomClearingExperiment((MultiAgentExperiment)evolutionExperiment); experiment.bestGenomeSoFar = genome; experiment.genome = genome; experiment.initialize(); //step_size = 0.01f; experiment.running = true; setRunningState(); } evolveMutex.ReleaseMutex(); }
public SimulatorVisualizer(string experimentName,string genome) { frame = new CoordinateFrame(0.0f, 0.0f, 5.0f, 0.0f); ExperimentWrapper wr = ExperimentWrapper.load(experimentName); experiment = wr.experiment; if(genome!=null) { experiment.loadGenome(genome); } experiment.initialize(); frame.sync_from_environment(experiment.environment); selected_POI = -1; bDrawFOV = false; bDrawFOV = false; bDrawLabel = true; displayAOIRectangle = false; displayEvolution = true; bEvolve = false; //by default we are not evolving, just displaying the environment drawMode = drawModes.selectMode; //default mode is selecting and moving walls selectMode = selectModes.dragMode; display_tempwall = false; //no temporary wall exists at creation display_snap = false; //we have nothing to snap to at creation InitializeComponent(); this.Text = "MultiAgent-HyperSharpNEAT Simulator - " + experimentName; //set up double buffering this.SetStyle( ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.DoubleBuffer, true); }
private void startToolStripMenuItem_Click(object sender, EventArgs e) { if (!bEvolve) { evolutionExperiment = new RoomClearingExperiment((MultiAgentExperiment)experiment); evolutionExperiment.initialize(); bEvolve = true; evolveThread = new Thread(doEvolution); evolveThread.Start(); } else //if it was already on, turn it off { bEvolve = false; evolveThread.Join(); } startToolStripMenuItem.Checked = bEvolve; }
private void newExperimentMenuItem_Click(object sender, EventArgs e) { NewExperimentForm f = new NewExperimentForm(); f.ShowDialog(); if (f.simExp != null) { this.Text = "MultiAgent-HyperSharpNEAT Simulator - Unnamed"; experiment = (SimulatorExperiment)f.simExp; experiment.substrateDescriptionFilename = "substrate.xml"; experiment.environmentName = "default_environment.xml"; experiment.setFitnessFunction("CoverageFitness"); experiment.initialize(); Invalidate(); } }
private void loadExperimentToolStripMenuItem_Click(object sender, EventArgs e) { fileOpenDialog.Title = "Open Experiment"; DialogResult res = fileOpenDialog.ShowDialog(this); if (res == DialogResult.OK || res == DialogResult.Yes) { string filename = fileOpenDialog.FileName; try { ExperimentWrapper wr = ExperimentWrapper.load(filename); this.Text = "MultiAgent-HyperSharpNEAT Simulator - " + filename; experiment = wr.experiment; experiment.initialize(); Invalidate(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } }