private void bt_Alg_Evo_Click(object sender, EventArgs e) { list_proceso.Items.Clear(); Color NuevoColor = System.Drawing.Color.FromArgb(255, 0, 0); Bitmap BitImag = new Bitmap(pictureBox_Gris.Image); Bitmap BitImag_limp = new Bitmap(pictureBox_Gris.Image); int NValidez = 0, epocas = 0; list_proceso.Items.Add("- Iniciar Evolución"); AE AlgoEvolutivo = new AE(BitImg, 10, 60); list_proceso.Items.Add("- Generar individuos"); do { AlgoEvolutivo.AzarIndividuo(BitImg.GetLength(0), BitImg.GetLength(1)); } while (ObtenerValidez(AlgoEvolutivo.IND)); for (int i = 0; i < AlgoEvolutivo.IND.Count; i++) { BitImag.SetPixel(AlgoEvolutivo.IND[i].Y, AlgoEvolutivo.IND[i].X, NuevoColor); } pictureBox_Gris.Image = BitImag; pictureBox_Gris.Refresh(); list_proceso.Items.Add("- Buscar distancias"); AlgoEvolutivo.BuscarDistancia(); list_proceso.Items.Add("- Generar población"); AlgoEvolutivo.GenerarPoblacion(); pictureBox_Gris.Image = BitImag_limp; list_proceso.Items.Add("- Evolucionar población"); epocas = AlgoEvolutivo.Evolucionar(0, AlgoEvolutivo.IND.Count, pictureBox_Gris, BitImag_limp); for (int i = 0; i < AlgoEvolutivo.IND.Count; i++) { BitImag_limp.SetPixel(AlgoEvolutivo.IND[i].Y, AlgoEvolutivo.IND[i].X, NuevoColor); } pictureBox_Gris.Image = BitImag_limp; list_proceso.Items.Add("Numero de epocos que realizo el algoritmo es: " + epocas); for (int i = 0; i < AlgoEvolutivo.IND.Count; i++) { if (AlgoEvolutivo.IND[i].Validez == 1) { NValidez++; } } list_proceso.Items.Add("Numero de acertaciones es: " + NValidez + " de " + AlgoEvolutivo.IND.Count + " individuos"); }