advertise laitec sharif univercity
دانلود پروژه کامل مهندسی نرم افزار ، شرکت نرم افزاری

دانلود پروژه کامل مهندسی نرم افزار ، شرکت نرم افزاری

10000 تومان
دانلود سورس پروژه پایانی وب سایت بنگاه املاک با php

دانلود سورس پروژه پایانی وب سایت بنگاه املاک با php

68000 تومان
دانلود سورس اندروید اپلیکیشن افزایش سرعت گوشی

دانلود سورس اندروید اپلیکیشن افزایش سرعت گوشی

18000 تومان
سیستم اتوماسیون دهیاری ، پروژه مهندسی نرم افزار

سیستم اتوماسیون دهیاری ، پروژه مهندسی نرم افزار

10000 تومان
دانلود سورس پروژه سی شارپ شبیه سازی صف بانک تحت شبکه

دانلود سورس پروژه سی شارپ شبیه سازی صف بانک تحت شبکه

10000 تومان

دانلود پروژه معمای 8 با الگوریتم ژنتیک در سی شارپ

شما می توانید سورس کد برنامه معمای 8 را که با زبان c# نوشته است ، همچنین از الگوریتم ژنتیک در هوش مصنوعی بهره گرفته است ، دانلود کنید
دانلود پروژه معمای 8 با الگوریتم ژنتیک در سی شارپ

معمای 8  یا  8-puzzle

عزیزانی که در  رشته های کامپیوتر و هوش مصنوعی تحصیل می کنند حتما با بازی معمای 8 آشنایی  دارند. این بازی  تقریبا پای ثابت اکثر معماها در آموزش ابتدایی  هوش مصنوعی است.

این معما از یک جدول 3 در 3 تشکیل شده است که می شود 9 خانه.

حالا در این جدول اعداد یک تا هشت قرار می گیرند و همچنین یکی از خانه ها خالی است.این معما شامل حالت اولیه و حالت نهایی است که باید به آن برسیم.

حالت اولیه :

در این حالت اعداد می توانند به هر ترتیبی در جدول قرار گیرند.

حالت نهایی :

حالتی است که از ما می خواهند به آن برسیم و این کار با حرکت خانه خالی میسر می شود. و باید از طریق قوانین زیر به آن رسید:

1- اگر سمت چپ خانه خالي ، عدد باشد حرکت خانه خالي به سمت چپ

2- اگر سمت راست خانه خالي ، عدد باشد حرکت خانه خالي به سمت راست

3- اگر سمت بالا خانه خالي ، عدد باشد حرکت خانه خالي به سمت بالا

4- اگر سمت پايين خانه خالي ، عدد باشد حرکت خانه خالي به سمت پايين

 

الگوریتم های متعددی برای این کار وجود دارد که یکی از آنها الگوریتم ژنتیک است.که در واقع این برنامه توسط این الگوریتم هوش مصنوعی و زبان برنامه نویسی سی شارپ پیاده سازی شده است.

 

فایل این پروژه را در پایین صفحه پس از پرداخت اینترنتی دانلود کنید

حجم فایل :68 KB

 

اینم بخشی  از سورس کد برنامه که در محیط ویژوال استودیو می توانید از آن بهره بگیرید:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
namespace _8
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        int[,] first = new int[3, 3];
        int[,] final = new int[3, 3];
        int[, ,] temp = new int[3, 3, 10000];
        string[] tempstaus = new string[10000];
        int[,] realtemp = new int[3, 3];
        int[,] qu = new int[3, 10000];
 
        private void showtemp(int qun)        
        {
            string s = "";
            listBox2.Items.Clear();
            for (int i = 0; i <= qun; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    for (int k = 0; k < 3; k++)
                    {                        
                        s += temp[j, k, i].ToString() + "  ";                        
                    }
                    listBox2.Items.Add(s);
                    s = "";
                }
                listBox2.Items.Add(tempstaus[i]);
                listBox2.Items.Add("=====================");    
                
            }
 
        
        }
        private void insertff()
        {
            first[0, 0] = Convert.ToInt32(textBox1.Text);
            first[0, 1] = Convert.ToInt32(textBox2.Text);
            first[0, 2] = Convert.ToInt32(textBox3.Text);
            first[1, 0] = Convert.ToInt32(textBox4.Text);
            first[1, 1] = Convert.ToInt32(textBox5.Text);
            first[1, 2] = Convert.ToInt32(textBox6.Text);
            first[2, 0] = Convert.ToInt32(textBox7.Text);
            first[2, 1] = Convert.ToInt32(textBox8.Text);
            first[2, 2] = Convert.ToInt32(textBox9.Text);
            final[0, 0] = Convert.ToInt32(textBox18.Text);
            final[0, 1] = Convert.ToInt32(textBox17.Text);
            final[0, 2] = Convert.ToInt32(textBox16.Text);
            final[1, 0] = Convert.ToInt32(textBox15.Text);
            final[1, 1] = Convert.ToInt32(textBox14.Text);
            final[1, 2] = Convert.ToInt32(textBox13.Text);
            final[2, 0] = Convert.ToInt32(textBox12.Text);
            final[2, 1] = Convert.ToInt32(textBox11.Text);
            final[2, 2] = Convert.ToInt32(textBox10.Text);
        }
        private int h1(int n)
        {
            int h = 0;
            for (int i = 0; i < 3; i++)
                for (int j = 0; j < 3; j++)
                    if (temp[i, j, n] != final[i, j])
                    {
                        if(temp[i, j, n] !=0)
                        h++;
                    }
            int x=0;
            foreach(char  s in tempstaus[n])
                 if (s == '/')
                    x++;
 
     
                return h+x ;
        }
        private void run()
        {
            #region first node
            for (int i = 0; i < 3; i++)
                for (int j = 0; j < 3; j++)
                    temp[i, j, 0] = first[i, j];
            tempstaus[0] = "0";
            int qun = 0;
            qu[0, qun] = qun ;
            qu[1, qun] = h1(qun);
            qu[2, qun] = 0;
            listBox1.Items.Add(qu[0, qun].ToString() + "         h1= " + qu[1, qun].ToString() + "       " + tempstaus[qun]);
            Application.DoEvents();
#endregion
            while (true)
            {
                    int min=0;
                    int minmain = 0;
                for (int i = 0; i <= qun ; i++)// peyda kardane avvalin onsore peymude nashode
                {
                    if(qu[2,i]==0)
                    {
                        min = qu[1, i];
                        minmain = i;
                        break;
                    }
                }
             for (int i = 0; i <= qun; i++)// peyda kardane kuchiktarin onsor
                {
                    if (qu[1, i] < min && qu[2, i]==0)
                    {
                        min = qu[1, i];
                        minmain = i;
                    }
                }
               // MessageBox.Show("min= " + min.ToString() + "  minmain =  " + minmain.ToString() + "  qun=" + qun.ToString());

                int r=0, c=0;
                for (int i = 0; i < 3; i++)//peyda kardane khune khali
                    for (int j = 0; j < 3; j++)
                        if (temp[i, j, minmain] == 0)
                        {
                            r = i;
                            c = j;
                            break;                       
                        }
                for (int i = 0; i < 3; i++) // enteghal tempe morede nazar be tempreal
                    for (int j = 0; j < 3; j++)
                        realtemp[i, j] = temp[i, j, minmain];
              // MessageBox.Show(minmain.ToString());
                qu[2, minmain] = 1;
                /////////////////////////////////////////////tolide farzandan////////////////////////////////////////////////
                showtemp(qun);
                int x = 0;
                foreach (char s in tempstaus[minmain ])
                    if (s == '/')
                        x++;
                if (h1(minmain)-x  == 0)
                {
                    MessageBox.Show("found !!!     masir  = "+tempstaus[minmain].ToString());
                    break;
                }
                #region  tolide farzand
                //===================================check resltemp != jadd===================================

 
                //-----------------r
                if (c < 2)
                {
                    for (int i = 0; i < 3; i++) // enteghal tempe morede nazar be tempreal
                        for (int j = 0; j < 3; j++)
                            realtemp[i, j] = temp[i, j, minmain];
                    qun++;
                    realtemp[r, c] = realtemp[r, c+1];
                    realtemp[r, c+ 1] = 0;
                    for (int i = 0; i < 3; i++)
                        for (int j = 0; j < 3; j++)
                            temp[i, j, qun] = realtemp[i, j];
                    tempstaus[qun] = tempstaus[minmain] + "/right";
                    qu[0, qun] = qun;
                    qu[1, qun] = h1(qun);
                    qu[2, qun] = 0;
                    listBox1.Items.Add(qu[0, qun].ToString() + "         h1= " + qu[1, qun].ToString() + "       " + tempstaus[qun]);
                    Application.DoEvents();
                }
 
                //-----------------down
                if (r < 2)
                {
                    for (int i = 0; i < 3; i++) // enteghal tempe morede nazar be tempreal
                        for (int j = 0; j < 3; j++)
                            realtemp[i, j] = temp[i, j, minmain];
                    qun++;
                    realtemp[r, c] = realtemp[r + 1, c];
                    realtemp[r + 1, c] = 0;
                    for (int i = 0; i < 3; i++)
                        for (int j = 0; j < 3; j++)
                            temp[i, j, qun] = realtemp[i, j];
                    tempstaus[qun] = tempstaus[minmain] + "/down";
                    qu[0, qun] = qun;
                    qu[1, qun] = h1(qun);
                    qu[2, qun] = 0;
                    listBox1.Items.Add(qu[0, qun].ToString() + "         h1= " + qu[1, qun].ToString() + "       " + tempstaus[qun]);
                    Application.DoEvents();
                }
#endregion
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            listBox1.Items.Clear();
            listBox2.Items.Clear();
            insertff();
            run();
        }
        private void button2_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process.Start("http://www.sourcecodes.ir");
        }
 
    }
}

 



خرید محصول

قیمت این محصول: 10000 تومان

  خرید محصول از طریق پرداخت اینترنتی


  • ← پرداخت از طریق درگاه شاپرک با همه کارت های بانکی انجام خواهد شد .
  • ← پس از پرداخت مبلغ به این صفحه ارجاع داده می شوید و میتوانید فایل مورد نظر را با لینک مستقیم دانلود کنید.
  • ← لطفا در صورتی که مرورگر شما بروز نیست برای خرید ، آن را بروز کنید.
  • ← عدم به روز بودن مرورگر باعث می شود، بجای صفحه درگاه بانک، خطای عدم تایید SSL را مشاهده نمایید.
  • ← در صورت بروز مشکل ، در قسمت تماس با ما از تیم پشتیبانی کمک بگیرید.










7
نظرات
  • user avatar arezoo:
    ۱۸:۴۴:۲۴ __ ۱۳۹۳/۰۹/۱۵

    خیلی عالی بود مرسی

  • user avatar mehdi:
    ۱۲:۳۶:۵۱ __ ۱۳۹۴/۰۲/۰۷

    میخواستم بدونم کپه کد برنامه هست؟ چون میخوام اولش اسمم رو اضافه کنم و بعد فایل ویژوالش رو برا استادم بفرستم که برنامه اش رو بخونه نمره بده. الان پول رو واریز کنم کد برنامه هم هست که اسمم رو بهش اضافه کنم اول برنامه بیاد؟

  • user avatar zohreh:
    ۲۲:۱۵:۳۶ __ ۱۳۹۴/۰۲/۱۵

    سلام ببخشید این کد فایل ورد یا تو ویژوال استودیو باید اجرا بشه ؟؟سرکاری که نیست یه وقت !! :|

  • user avatar مدیریت سایت:
    ۲۲:۳۶:۰۸ __ ۱۳۹۴/۰۲/۱۵

    دوستان کدی که در بالا قرار داده شده بخشی از کد اصلی برنامه است . سورس کد برنامه و فایل اجرایی برنامه را میتوانید پس از خرید دانلود کنید ، با تشکر

  • user avatar فهیمه:
    ۱۳:۲۲:۰۲ __ ۱۳۹۴/۱۰/۰۳

    سلام و خسته نباشید امکانش هست در صورت خرید خط به خط کدها رو هم توضیح بدید ممنون میشم جواب بدید؟

    مدیریت سایت :
    با عرض سلام ، کدها به صورت واضح نوشته شده ، همچنین توضیحات کلی هم توی خود پست داده شده ، موفق باشید.
  • user avatar salam:
    ۰۷:۲۰:۲۲ __ ۱۳۹۴/۱۰/۱۸

    سلام من پروژه معمای 8باروش عمیق کننده تکراری رو میخوام خواهش میکنم اگ میتونین کمکم کنین

  • user avatar سعید:
    ۱۶:۱۱:۱۲ __ ۱۴۰۰/۰۱/۲۳

    ایا سورس برنامه الگوریتم A*و جستجوی حریصانه همراه توضیح خط به خط توضیح کدها موجد هست؟

    مدیریت سایت :
    سلام ، خیر متاسفانه

نظر خود را ارسال کنید



نام:
ایمیل:
دیدگاه:
captcha
کد امنیتی :


advertise
برنامه معمای 8 با الگوریتم ژنتیکمعمای 8الگوریتم هوش مصنوعی برای معمای هشت 8دانلود برنامه معمای 8 معمای 8 در سی شارپدانلود برنامه معمای 8 با الگوریتم ژنتیک در c#دانلود سورس کد معمای 8 در سی شارپدانلود سورس معمای 8 با الگوریتم ژنتیک در سی شارپدانلود برنامه معمای 8 در سی شارپتبلیغات ارزان سایت آموزش برنامه نویسیتبلیغات مخصوص طراحان وب سایتتبلیغات در سایت برنامه نویسیتبلیغات اینترنتی برای برنامه نویساندر آغوش مینیمالیسممنوی همبرگر با سه خط افقی که روی یکدیگر قرار گرفته اند نشانه چیست؟ سوئیچ به یک ستون واحدتبدیل متن ساده به وبلاگ و سایت های پویا با React.jsکتابخانه sass برای استفاده آسان تر از آنکتابخانه سطح بالا برای اتوماتیک سازی اعمال مرورگر لیست برچسب ها
تمامی حقوق این سایت اعم از محتوی ، تصاویر ، قالب و ... متعلق به گروه مهندسی وب سایت سورس کد می باشد.
SourceCodes.ir ، افقی روشن برای برنامه نویسان ، از مبتدی تا حرفه ای

پیشنهادات ویژه سورس کد

پکیج ویژه پروژه پایانی رشته کامپیوتر دانلود مجموعه 70 پروژه کاربردی سی شارپ وب سایت فروشگاه با php