public static void AlgoritimoGenetico(string file, bool modeloPai) { try { PassoAtual("Abrir " + file + "."); Modelo modelo = new Modelo(); double[] result = null; do { modelo.modelo = file; modelo.modeloPai = file; PassoAtual("Carregando " + file + "."); pmObject.LoadModel(file); System.Threading.Thread.Sleep(100); modelo.banco = pmObject.GetOutputPath().Replace("RES", "") + "rdb"; PassoAtual("Criado modelo pai."); Relatorios.CriarCabecalioPai(modelo.modelo); PassoAtual("Criado cabecalio de arquivo."); pmDataObject.Populate(); System.Threading.Thread.Sleep(100); pmDataObject.GetRecordCount(1, out numeroFilhos); PassoAtual("Carregada informações de locais."); result = SimularExportarCalcularResultados(modelo); } while (result == null); modelo.scoreSaidas = result[0]; modelo.scoreTotal = result[1]; modelo.scoreTempo = result[2]; bancoModelos.Add(modelo); System.Threading.Thread.Sleep(100); pmObject.Save(); System.Threading.Thread.Sleep(100); RDBObj.CloseFile(); if (modeloPai) { iVisual.ProximaEtapa(); } } catch (Exception ex) { Service.Error.GerarLog(ex); } }
public static double[] SimularExportarCalcularResultados(Modelo modeloAtual) { Simular(modeloAtual); return(Relatorios.ExportarResultados(modeloAtual)); }