Esempio n. 1
0
 public void WriteGene(Genome g, DataDictionary dd)
 {
     try
     {
         Sw.WriteLine("\"Genome\":{" + g.GenesToString() + ", " + dd.GetDataAsString(g.GenomeId) + "}");
     }catch (NotImplementedException e)
     {
         Sw.WriteLine("\"Genome\":{" + g.GenesToString() + "}");
     }
 }
Esempio n. 2
0
        public void WriteSpecies(List <Species> species, DataDictionary dd)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("\"Species\":[");

            foreach (Species s in species)
            {
                long   minFit = long.MinValue;
                Genome best   = null;
                foreach (Genome g in s.Genomes)
                {
                    if (g.Fitness > minFit)
                    {
                        minFit = g.Fitness;
                        best   = g;
                    }
                }
                int[] scores = dd.GetScore(best.GenomeId);

                sb.Append("{\"Id\":").Append(s.SpeciesId)
                .Append(", \"Count\":").Append(s.Genomes.Count)
                .Append(", \"From\":").Append(s.FromGen)
                .Append(", \"Best\":{").Append("\"Genome\":");

                WriteGene(sb, best, scores);
                sb.Append(", ")
                .Append(best.GenesToString()).Append(", ").Append(dd.GetDataAsString(best.GenomeId)).Append("}}, ");
            }
            sb.Remove(sb.Length - 2, 2);
            sb.Append("]");
            Sw.WriteLine(sb.ToString());
        }