Beispiel #1
0
        private void button5_Click(object sender, EventArgs e)
        {
            return;

            DateTime t     = DateTime.Now;
            string   mesaj = "Atama Başl  " + t.ToString();

            listBox1.Items.Add(mesaj);
            Populasyon populasyon = new Populasyon(100, IlkAtamaYontem.bestfitteam);

            t     = DateTime.Now;
            mesaj = "Atama Bitş  " + t.ToString();
            listBox1.Items.Add(mesaj);

            t     = DateTime.Now;
            mesaj = "Fitness Başl  " + t.ToString();
            listBox1.Items.Add(mesaj);

            populasyon.FitnessHesapla();
            int  sayac  = 0;
            long toplam = 0;

            foreach (Kromozom mykrom in populasyon.kromozomListesi)
            {
                sayac++;
                mesaj = "Krom: " + sayac.ToString() + " Id:" + mykrom.kromozomId.ToString() + "-->" + mykrom.fitness.ToString();
                listBox1.Items.Add(mesaj);
                toplam += mykrom.fitness;
            }

            t     = DateTime.Now;
            mesaj = "Fitness Bitş  " + t.ToString();
            listBox1.Items.Add(mesaj);
        }
Beispiel #2
0
        private void button6_Click(object sender, EventArgs e)
        {
            Populasyon populasyon = new Populasyon(100, IlkAtamaYontem.bestfitperiod);

            populasyon.FitnessHesapla();
            //Kromozom k1 = populasyon.kromozomListesi[0];
            //Kromozom k2 = populasyon.kromozomListesi[1];
            //populasyon.Caprazla(k1,k2);


            //for (int i=0;i<40;i++)
            //{
            //    Kromozom k1=null;
            //    Kromozom k2=null;
            //    populasyon.KromozomSec(ref k1,ref k2);
            //    populasyon.CaprazlaveEkle(k1,k2);
            //}
            populasyon.Caprazla2Grup(80);
        }
Beispiel #3
0
        public List <IyiKromozomlar> IyiList;//her nesildeki sonucu tutacak, dosyaya yada database yazdırılabilir

        public GenetikAlgoritma(IlkAtamaYontem atamaYontem, int kromozomSayisi, int caprazlamaOrani, string caprazlasecim, int mutasyonOrani, int nesilSayisi, bool elitizmVarmi = true)
        {
            this.atamaYontem     = atamaYontem;
            this.kromozomSayisi  = kromozomSayisi;
            this.caprazlamaOrani = caprazlamaOrani;
            this.caprazlasecim   = caprazlasecim;
            this.mutasyonOrani   = mutasyonOrani;
            this.nesilSayisi     = nesilSayisi;
            this.nesilanlik      = 0;
            this.elitizmEniyi    = elitizmVarmi;
            populasyon           = new Populasyon(kromozomSayisi, atamaYontem);

            if (populasyon.kromozomListesi.Count == 0)
            {
                MessageBox.Show("Verileri Kontrol Edin\nAtama yapılamadı!!!!!");

                return;
            }

            IyiList = new List <IyiKromozomlar>();
        }