public static Simulation Load(string fileName) { Simulation simulation = null; if (Path.GetExtension(fileName) == ".evo") { fileName = Path.GetFileNameWithoutExtension(fileName); } using (FileStream fs = new FileStream(fileName + ".evo.str", FileMode.Open)) { BinaryReader r = new BinaryReader(fs); BinarySerializable.LoadIntoBuffer(r); } using (FileStream fs = new FileStream(fileName + ".evo", FileMode.Open)) { BinaryReader r = new BinaryReader(fs); simulation = BinarySerializable.GetObject <Simulation>(r); } BinarySerializable.ClearLoadBuffer(); simulation.World.ReloadRegions(); return(simulation); }
public override void Load(System.IO.BinaryReader r, uint id) { base.Load(r, id); TemplateName = r.ReadString(); ANN = BinarySerializable.GetObject <INeuralNetChromosome>(r); }
public override void Load(System.IO.BinaryReader r, uint id) { base.Load(r, id); TemplateName = r.ReadString(); Genome = BinarySerializable.GetObject <Genome>(r); }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); InhibitoryConnectionChance = r.ReadDouble(); ConnectionChance = r.ReadDouble(); NewConnectionsCanForm = r.ReadBoolean(); ConnectionsCanDie = r.ReadBoolean(); NewNeuronsCanForm = r.ReadBoolean(); NeuronsCanDie = r.ReadBoolean(); LoadListInfo(EyeRNeuronGenes, r); LoadListInfo(EyeGNeuronGenes, r); LoadListInfo(EyeBNeuronGenes, r); LoadListInfo(DistanceNeuronGenes, r); LoadListInfo(HiddenNeuronGenes, r); LoadListInfo(InputNeuronGenes, r); LoadListInfo(OutputNeuronGenes, r); LoadListInfo(MutationGenes, r); GlobalSigmoidFunction = BinarySerializable.GetObject <SigmoidFunction>(r); GlobalOutputSigmoidFunction = BinarySerializable.GetObject <SigmoidFunction>(r); }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); Source = BinarySerializable.GetObject <RMP_Neuron>(r); Target = BinarySerializable.GetObject <RMP_Neuron>(r); Weight = r.ReadDouble(); }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); Bias = DoubleMinMax.Read(r); LoadListInfo(Connections, r); SigmoidFunction = BinarySerializable.GetObject <SigmoidFunction>(r); }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); FileName = r.ReadString(); World = BinarySerializable.GetObject <IWorld>(r); LoadListInfo(EntityPainters, r); foreach (var p in EntityPainters) { p.Initialize(DrawBox.DefaultSkinFile); } }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); Net = BinarySerializable.GetObject <RMP_Net>(r); GeneID = r.ReadUInt32(); Bias = r.ReadDouble(); SigmoidFunction = BinarySerializable.GetObject <SigmoidFunction>(r); Activation = r.ReadDouble(); Output = r.ReadDouble(); LoadListInfo(Connections, r); }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); Min = r.ReadInt32(); Max = r.ReadInt32(); StandardDeviation = r.ReadDouble(); Mean = r.ReadDouble(); _maxToGenerateForProbability = r.ReadDouble(); _rGen = BinarySerializable.GetObject <UniformRandomGenerator>(r); int length = r.ReadInt32(); for (int i = 0; i < length; i++) { int key = r.ReadInt32(); double value = r.ReadDouble(); probabilities.Add(key, value); } }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); Random = BinarySerializable.GetObject <UniformRandomGenerator>(r); GaussianRandom = BinarySerializable.GetObject <NormalRandomGenerator>(r); Width = r.ReadInt32(); Height = r.ReadInt32(); WorldHasEdges = r.ReadBoolean(); RegionSize = r.ReadInt32(); LoadListInfo(entityList, r); foreach (var entity in entityList) { if (entity.GetType().IsSubclassOf(typeof(ICreature)) || entity.GetType().IsEquivalentTo(typeof(ICreature))) { creatureList.Add((ICreature)entity); } } Initialize(RegionSize, Random, GaussianRandom, true); }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); Brain = ReadNullableObject <INeuralNet>(r); CreatureGenome = ReadNullableObject <Genome>(r); EyeNeuronsAmount = r.ReadInt32(); EyeSpan = r.ReadDouble(); ViewDistance = r.ReadInt32(); Speed = r.ReadDouble(); RotationSpeed = r.ReadDouble(); Energy = DoubleMinMax.Read(r); CanSeeCreatures = r.ReadBoolean(); EnergyLossByTick = r.ReadDouble(); EnergyLossByRotation = r.ReadDouble(); EnergyLossByMove = r.ReadDouble(); EnergyLossByEating = r.ReadDouble(); EnergyLossByMating = r.ReadDouble(); EatingBiteSize = r.ReadDouble(); MatingCandidate = BinarySerializable.GetObject <Creature>(r); CyclesInMating = r.ReadInt32(); CyclesNeededForMating = r.ReadInt32(); MatingCooldownCyclesLeft = r.ReadInt32(); MatingCooldown = r.ReadInt32(); AttackingCooldownCyclesLeft = r.ReadInt32(); AttackingCooldown = r.ReadInt32(); AttackMultiplier = r.ReadDouble(); MaxAge = r.ReadInt32(); PixelsRotatedLeft = r.ReadDouble(); PixelsRotatedRight = r.ReadDouble(); PixelsMovedForwards = r.ReadDouble(); PixelsMovedBackwards = r.ReadDouble(); TimesHaveEaten = r.ReadInt32(); TimesMated = r.ReadInt32(); LoseEnergy = r.ReadBoolean(); IsThinking = r.ReadBoolean(); DisableMating = r.ReadBoolean(); DisableAttacking = r.ReadBoolean(); AlwaysMate = r.ReadBoolean(); AlwaysEat = r.ReadBoolean(); if (Brain != null) { EyeR_I = LoadArrayInfo <IInputNeuron>(r); EyeG_I = LoadArrayInfo <IInputNeuron>(r); EyeB_I = LoadArrayInfo <IInputNeuron>(r); EyeDistance_I = LoadArrayInfo <IInputNeuron>(r); random_I = BinarySerializable.GetObject <IInputNeuron>(r); clock_I = BinarySerializable.GetObject <IInputNeuron>(r); energy_I = BinarySerializable.GetObject <IInputNeuron>(r); rotate_O = BinarySerializable.GetObject <IOutputNeuron>(r); move_O = BinarySerializable.GetObject <IOutputNeuron>(r); eat_O = BinarySerializable.GetObject <IOutputNeuron>(r); mate_O = BinarySerializable.GetObject <IOutputNeuron>(r); attack_O = BinarySerializable.GetObject <IOutputNeuron>(r); } }
public override void Load(BinaryReader r, uint id) { base.Load(r, id); _rGen = BinarySerializable.GetObject <MersenneTwister>(r); }