private void button_AprimorarPopulacao_Click(object sender, EventArgs e) { ListObjMochila objMochila = new ListObjMochila(); objMochila.CommitList(); listBox_Mochilas.Items.Clear(); parameters.GetMochilas().ForEach(delegate(ObjMochila mochila) { listBox_Mochilas.Items.Add(mochila.Nome + " = " + mochila.getPeso() + "Kg - R$ " + mochila.getValor()); }); }
private void button_Processar_Click(object sender, EventArgs e) { Processo processo = new Processo(); ObjParameters parameters = new ObjParameters(); listBox_Mochilas_best.Items.Clear(); parameters.GetMochilas().ForEach(delegate(ObjMochila mochila) { listBox_Mochilas_best.Items.Add(mochila.Nome + " = " + mochila.getPeso() + "Kg - R$ " + mochila.getValor() + " | " + mochila.getPercentOtimo() + "%"); }); mutacoesLabel.Text = "Mutações: " + parameters.QtdMutacoes; }
private void listBox_Mochilas_SelectedIndexChanged(object sender, EventArgs e) { int indexMochila = listBox_Mochilas.SelectedIndex; ObjParameters parameters = new ObjParameters(); ObjMochila objMochila = parameters.GetMochilas()[indexMochila]; listBox_Itens_Mochila.Items.Clear(); for (int i = 0; i < objMochila.ListItens.Count; i++) { if (objMochila.ListItens[i] == 1) { ObjItem item = parameters.GetItens()[i]; listBox_Itens_Mochila.Items.Add(item.Nome + " = " + item.Peso + "Kg - R$ " + item.Valor); } } }
public Processo() { this.mochilas = objParameters.GetMochilas(); OrdenarByValor(); for (int i = 0; i < objParameters.NumeroGeracoes; i++) { List <ObjMochila> novasMochilas = Cruzamento(); mochilas.AddRange(novasMochilas); OrdenarByValor(); EliminarPiores(novasMochilas.Count); //verifica se está próximo do ótimo if (mochilas[0].getPercentOtimo() >= objParameters.PercentOtimo) { break; } } Console.WriteLine(); OrdenarByValor(); objParameters.CommitListMochila(mochilas); }
private void listBox_Mochilas_best_SelectedIndexChanged(object sender, EventArgs e) { ObjParameters parameters = new ObjParameters(); string conteudo = listBox_Mochilas_best.SelectedItem.ToString(); int ini = conteudo.IndexOf(" ="); int fin = conteudo.Length - ini; string aux = conteudo.Substring(ini, fin); conteudo = conteudo.Replace(aux, ""); ObjMochila objMochila = parameters.GetMochilas().Single(s => s.Nome == conteudo); listBox_bestItens.Items.Clear(); for (int i = 0; i < objMochila.ListItens.Count; i++) { if (objMochila.ListItens[i] == 1) { ObjItem item = parameters.GetItens()[i]; listBox_bestItens.Items.Add(item.Nome + " = " + item.Peso + "Kg - R$ " + item.Valor); } } }