Esempio n. 1
0
        public void comparare(Random r)
        {
            int n1Suc = 0, n1Fal = 0;
            int n2Suc = 0, n2Fal = 0;
            int n3Suc = 0, n3Fal = 0;
            int n4Suc = 0, n4Fal = 0;
            int n5Suc = 0, n5Fal = 0;

            int m1Ap = 0;
            int m2Ap = 0;
            int m3Ap = 0;
            int m4Ap = 0;
            int m5Ap = 0;

            int m1Ts = 0;
            int m2Ts = 0;
            int m3Ts = 0;
            int m4Ts = 0;
            int m5Ts = 0;

            int m1Dr = 0;
            int m2Dr = 0;
            int m3Dr = 0;
            int m4Dr = 0;
            int m5Dr = 0;

            for (int i = 0; i < 100; i++)
            {
                start = new state();
                start.fillRand(r);

                if (executeBF() == true)
                {
                    m1Ap += cnt;
                    m1Ts += ts.Milliseconds;
                    m1Dr += trace.Length;
                    n1Suc++;
                    initArray();
                }
                else
                {
                    n1Fal++;
                    initArray();
                }

                if (executeBF2() == true)
                {
                    m2Ap += cnt;
                    m2Ts += ts.Milliseconds;
                    m2Dr += trace.Length;
                    n2Suc++;
                    initArray();
                }
                else
                {
                    n2Fal++;
                    initArray();
                }

                if (executeBF3() == true)
                {
                    m3Ap += cnt;
                    m3Ts += ts.Milliseconds;
                    m3Dr += trace.Length;
                    n3Suc++;
                    initArray();
                }
                else
                {
                    n3Fal++;
                    initArray();
                }

                if (executeBF4() == true)
                {
                    m4Ap += cnt;
                    m4Ts += ts.Milliseconds;
                    m4Dr += trace.Length;
                    n4Suc++;
                    initArray();
                }
                else
                {
                    n4Fal++;
                    initArray();
                }

                if (executeA() == true)
                {
                    m5Ap += cnt;
                    m5Ts += ts.Milliseconds;
                    m5Dr += trace.Length;
                    n5Suc++;
                    initArray();
                }
                else
                {
                    n5Fal++;
                    initArray();
                }
            }

            if (n1Suc > 0)
            {
                m1Ap = m1Ap / n1Suc;
                m1Ts = m1Ts / n1Suc;
                m1Dr = m1Dr / n1Suc;
            }

            if (n2Suc > 0)
            {
                m2Ap = m2Ap / n2Suc;
                m2Ts = m2Ts / n2Suc;
                m2Dr = m2Dr / n2Suc;
            }

            if (n3Suc > 0)
            {
                m3Ap = m3Ap / n3Suc;
                m3Ts = m3Ts / n3Suc;
                m3Dr = m3Dr / n3Suc;
            }

            if (n4Suc > 0)
            {
                m4Ap = m4Ap / n4Suc;
                m4Ts = m4Ts / n4Suc;
                m4Dr = m4Dr / n4Suc;
            }

            if (n5Suc > 0)
            {
                m5Ap = m5Ap / n5Suc;
                m5Ts = m5Ts / n5Suc;
                m5Dr = m5Dr / n5Suc;
            }

            Console.WriteLine("\nRezultate DFS 1(prin Distanta):\n Nr cazuri cu success: " + (n1Suc-1) + "\n Nr cazuri fara success: " + n1Fal + "\n Nr mediu de iteratii: " + m1Ap + "\n Timp mediu: " + m1Ts + "\n Drum mediu: "+m1Dr);
            Console.WriteLine("\nRezultate DFS 2(prin Diferenta):\n Nr cazuri cu success: " + (n2Suc-1) + "\n Nr cazuri fara success: " + n2Fal + "\n Nr mediu de iteratii: " + m2Ap + "\n Timp mediu: " + m2Ts + "\n Drum mediu: " + m2Dr);
            Console.WriteLine("\nRezultate BFS 1(prin Diferenta):\n Nr cazuri cu success: " + (n3Suc-1) + "\n Nr cazuri fara success: " + n3Fal + "\n Nr mediu de iteratii: " + m3Ap + "\n Timp mediu: " + m3Ts + "\n Drum mediu: " + m3Dr);
            Console.WriteLine("\nRezultate BFS 2(prin Diferenta):\n Nr cazuri cu success: " + (n4Suc-1) + "\n Nr cazuri fara success: " + n4Fal + "\n Nr mediu de iteratii: " + m4Ap + "\n Timp mediu: " + m4Ts + "\n Drum mediu: " + m4Dr);
            Console.WriteLine("\nRezultate  A* (prin Diferenta):\n Nr cazuri cu success: " + (n5Suc-1) + "\n Nr cazuri fara success: " + n5Fal + "\n Nr mediu de iteratii: " + m5Ap + "\n Timp mediu: " + m5Ts + "\n Drum mediu: " + m5Dr);
        }
Esempio n. 2
0
        }       //hill climbing

        public void comparare(Random r)
        {
            int n1Suc = 0, n1Fal = 0;
            int n2Suc = 0, n2Fal = 0;
            int n3Suc = 0, n3Fal = 0;
            int n4Suc = 0, n4Fal = 0;
            int n5Suc = 0, n5Fal = 0;

            int m1Ap = 0;
            int m2Ap = 0;
            int m3Ap = 0;
            int m4Ap = 0;
            int m5Ap = 0;

            int m1Ts = 0;
            int m2Ts = 0;
            int m3Ts = 0;
            int m4Ts = 0;
            int m5Ts = 0;

            int m1Dr = 0;
            int m2Dr = 0;
            int m3Dr = 0;
            int m4Dr = 0;
            int m5Dr = 0;

            for (int i = 0; i < 100; i++)
            {
                start = new state();
                start.fillRand(r);

                if (executeBF() == true)
                {
                    m1Ap += cnt;
                    m1Ts += ts.Milliseconds;
                    m1Dr += trace.Length;
                    n1Suc++;
                    initArray();
                }
                else
                {
                    n1Fal++;
                    initArray();
                }

                if (executeBF2() == true)
                {
                    m2Ap += cnt;
                    m2Ts += ts.Milliseconds;
                    m2Dr += trace.Length;
                    n2Suc++;
                    initArray();
                }
                else
                {
                    n2Fal++;
                    initArray();
                }

                if (executeBF3() == true)
                {
                    m3Ap += cnt;
                    m3Ts += ts.Milliseconds;
                    m3Dr += trace.Length;
                    n3Suc++;
                    initArray();
                }
                else
                {
                    n3Fal++;
                    initArray();
                }

                if (executeBF4() == true)
                {
                    m4Ap += cnt;
                    m4Ts += ts.Milliseconds;
                    m4Dr += trace.Length;
                    n4Suc++;
                    initArray();
                }
                else
                {
                    n4Fal++;
                    initArray();
                }

                if (executeA() == true)
                {
                    m5Ap += cnt;
                    m5Ts += ts.Milliseconds;
                    m5Dr += trace.Length;
                    n5Suc++;
                    initArray();
                }
                else
                {
                    n5Fal++;
                    initArray();
                }
            }

            if (n1Suc > 0)
            {
                m1Ap = m1Ap / n1Suc;
                m1Ts = m1Ts / n1Suc;
                m1Dr = m1Dr / n1Suc;
            }

            if (n2Suc > 0)
            {
                m2Ap = m2Ap / n2Suc;
                m2Ts = m2Ts / n2Suc;
                m2Dr = m2Dr / n2Suc;
            }

            if (n3Suc > 0)
            {
                m3Ap = m3Ap / n3Suc;
                m3Ts = m3Ts / n3Suc;
                m3Dr = m3Dr / n3Suc;
            }

            if (n4Suc > 0)
            {
                m4Ap = m4Ap / n4Suc;
                m4Ts = m4Ts / n4Suc;
                m4Dr = m4Dr / n4Suc;
            }

            if (n5Suc > 0)
            {
                m5Ap = m5Ap / n5Suc;
                m5Ts = m5Ts / n5Suc;
                m5Dr = m5Dr / n5Suc;
            }

            Console.WriteLine("\nRezultate DFS 1(prin Distanta):\n Nr cazuri cu success: " + (n1Suc - 1) + "\n Nr cazuri fara success: " + n1Fal + "\n Nr mediu de iteratii: " + m1Ap + "\n Timp mediu: " + m1Ts + "\n Drum mediu: " + m1Dr);
            Console.WriteLine("\nRezultate DFS 2(prin Diferenta):\n Nr cazuri cu success: " + (n2Suc - 1) + "\n Nr cazuri fara success: " + n2Fal + "\n Nr mediu de iteratii: " + m2Ap + "\n Timp mediu: " + m2Ts + "\n Drum mediu: " + m2Dr);
            Console.WriteLine("\nRezultate BFS 1(prin Diferenta):\n Nr cazuri cu success: " + (n3Suc - 1) + "\n Nr cazuri fara success: " + n3Fal + "\n Nr mediu de iteratii: " + m3Ap + "\n Timp mediu: " + m3Ts + "\n Drum mediu: " + m3Dr);
            Console.WriteLine("\nRezultate BFS 2(prin Diferenta):\n Nr cazuri cu success: " + (n4Suc - 1) + "\n Nr cazuri fara success: " + n4Fal + "\n Nr mediu de iteratii: " + m4Ap + "\n Timp mediu: " + m4Ts + "\n Drum mediu: " + m4Dr);
            Console.WriteLine("\nRezultate  A* (prin Diferenta):\n Nr cazuri cu success: " + (n5Suc - 1) + "\n Nr cazuri fara success: " + n5Fal + "\n Nr mediu de iteratii: " + m5Ap + "\n Timp mediu: " + m5Ts + "\n Drum mediu: " + m5Dr);
        }
Esempio n. 3
0
        public void comparare(Random r)
        {
            int n1Suc = 0, n1Fal = 0;
            int n2Suc = 0, n2Fal = 0;

            int m1Ap = 0;
            int m2Ap = 0;

            int m1Ts = 0;
            int m2Ts = 0;

            for (int i = 0; i < 100; i++)
            {
                start = new state();
                start.fillRand(r);
                val = new state(start);

                if (executeBF() == true)
                {
                    m1Ap += cnt;
                    m1Ts += ts.Milliseconds;
                    n1Suc++;
                    initArray();
                }
                else
                {
                    n1Fal++;
                    initArray();
                }
            }

            m1Ap = m1Ap / 100;
            m1Ts = m1Ts / 100;

            for (int i = 0; i < 100; i++)
            {
                start = new state();
                start.fillRand(r);
                val = new state(start);

                if (executeBF2() == true)
                {
                    m2Ap += cnt;
                    m2Ts += ts.Milliseconds;
                    n2Suc++;
                    initArray();
                }
                else
                {
                    n2Fal++;
                    initArray();
                }
            }


            m2Ap = m2Ap / 100;
            m2Ts = m2Ts / 100;

            Console.WriteLine("\nRezultate BF(prin Distanta):\n Nr cazuri cu success: " + n1Suc + "\n Nr cazuri fara success: " + n1Fal + "\n Nr mediu de iteratii: " + m1Ap + "\n Timp mediu: " + m1Ts);
            Console.WriteLine("\nRezultate BF2(prin Diferenta):\n Nr cazuri cu success: " + n2Suc + "\n Nr cazuri fara success: " + n2Fal + "\n Nr mediu de iteratii: " + m2Ap + "\n Timp mediu: " + m2Ts);
        }
Esempio n. 4
0
        public void comparare(Random r)
        {
            int n1Suc = 0, n1Fal = 0;
            int n2Suc = 0, n2Fal = 0;

            int m1Ap = 0;
            int m2Ap = 0;

            int m1Ts = 0;
            int m2Ts = 0;

            for (int i = 0; i < 100; i++)
            {
                start = new state();
                start.fillRand(r);
                val = new state(start);

                if (executeBF() == true)
                {
                    m1Ap += cnt;
                    m1Ts += ts.Milliseconds;
                    n1Suc++;
                    initArray();
                }
                else
                {
                    n1Fal++;
                    initArray();
                }
            }

            m1Ap = m1Ap / 100;
            m1Ts = m1Ts / 100;

            for (int i = 0; i < 100; i++)
            {
                start = new state();
                start.fillRand(r);
                val = new state(start);

                if (executeBF2() == true)
                {
                    m2Ap += cnt;
                    m2Ts += ts.Milliseconds;
                    n2Suc++;
                    initArray();
                }
                else
                {
                    n2Fal++;
                    initArray();
                }
            }

            m2Ap = m2Ap / 100;
            m2Ts = m2Ts / 100;

            Console.WriteLine("\nRezultate BF(prin Distanta):\n Nr cazuri cu success: " + n1Suc + "\n Nr cazuri fara success: " + n1Fal + "\n Nr mediu de iteratii: " + m1Ap + "\n Timp mediu: " + m1Ts);
            Console.WriteLine("\nRezultate BF2(prin Diferenta):\n Nr cazuri cu success: " + n2Suc + "\n Nr cazuri fara success: " + n2Fal + "\n Nr mediu de iteratii: " + m2Ap + "\n Timp mediu: " + m2Ts);
        }