advertise laitec sharif univercity تبلیغات در سایت سورس کد تبلیغات در سایت سورس کد
دانلود سورس هوش مصنوعی رنگ آمیزی گراف با ژنتیک در #C

دانلود سورس هوش مصنوعی رنگ آمیزی گراف با ژنتیک در #C

4800 تومان
دانلود پروژه آموزش چندرسانه ای با دایرکتور Director

دانلود پروژه آموزش چندرسانه ای با دایرکتور Director

3000 تومان
دانلود برنامه آزمون تستی در مالتی مدیا بیلدر MMb

دانلود برنامه آزمون تستی در مالتی مدیا بیلدر MMb

3000 تومان
دانلود سورس پروژه فروشگاه کیف با asp.net و sql express

دانلود سورس پروژه فروشگاه کیف با asp.net و sql express

3000 تومان
دانلود مجموعه 100 سورس ساده و ابتدایی با سی پلاس پلاس

دانلود مجموعه 100 سورس ساده و ابتدایی با سی پلاس پلاس

5000 تومان

الگوریتم جست وجوی تپه نوردی hill-climbimg

الگوریتم جست وجوی تپه نوردی از ابتدایی ترین تکنیک جست وجوی محلی است. در هر مرحله گره فعلی با بهترین همسایه جایگزین میشود. اگر "تخمین هزینه ابتکاری h" استفاده شود، همسایه ای با کمترین h انتخاب میگردد
الگوریتم جست وجوی تپه نوردی hill-climbimg

الگوریتم جست وجوی تپه نوردی hill-climbimg

الگوریتم جست وجوی تپه نوردی از ابتدایی ترین تکنیک جست وجوی محلی است. در هر مرحله گره فعلی با بهترین همسایه جایگزین میشود. اگر "تخمین هزینه ابتکاری h" استفاده شود، همسایه ای با کمترین h انتخاب میگردد.

الگوریتم جست وجوی تپه نوردی، حلقه ای است که در جهت افزایش مقدار حرکت میکند (به طرف بالای تپه). وقتی به "قله ای" رسید که هیچ همسایه ای از آن بلندتر نیست، خاتمه می یابد. در این الگوریتم، درخت جست وجو را نگهداری نمیکند، لذا گره داده فعلی فقط باید حالت و مقدار تابع هدف را نگهداری کند. تپه نوردی به همسایه های حالت فعلی نگاه میکند. مثل تلاش برای یافتن قله کوه اورست در مه گرفتگی غلیط، در حالیکه دچار فراموشی هستید.

الگوریتم جست وجوی محلی معمولا از فرموله کردن حالت کامل استفاده میکنند.

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

متاسفانه تپه نوردی به دلایل زیر متوقف میشود:

  • ماکزیمم محلی (local maxima). قله ای است که بلندتر از هر یک از همسایه هایش می باشد، اما از ماکزیمم سراسری کوتاهتر است. الگوریتم های تپه نوردی که به مجاورت ماکزیمم محلی میرسند، به طرف بالا و به سمت قله حرکت میکنند، ولی از آن پس متوقف میشوند و به جایی نمیرود.
  • برآمدگی ها (ridges). برآمدگی ها منجر به دنباله ای از ماکزیمم های محلی می شوند که عبور از آن برای الگوریتم های حریصانه دشوار است.
  • فلات(Plateaux). فلات ناحیه همواری از دورنمای فضای حالت است. فلات میتواند یک ماکزیمم محلی هموار باشد که هیچ خروجی به سمت بالا وجود ندارد، یا یک شانه باشد که از طریق آن میتوان پیشروی کرد. جست وجوی تپه نوردی ممکن است نتواند راه خروج را در فلات پیدا کند و مفقود شود.

در هر یک از این موارد، الگوریتم به نقطه ای میرسد که پیشروی از آن ممکن نیست. هر وقت الگوریتم به یک "ماکزیمم محلی هموار" میرسد که شانه نیست، یک حلقه تکرار بی نهایت بوجود خواهد آمد. یک راه حل متداول، محدود کردن تعداد حرکت های فرعی متداول است.   

شکلهای گوناگونی از تپه نوردی اختراع شده اند. تپه نوردی اتفاقی، بطور تصادفی حرکت هایی را به سمت بالای تپه انتخاب میکند. روش تپه نوردی اولین انتخاب، تپه نوردی اتفاقی را به این صورت پیاده سازی میکند که پسین ها را بطور تصادفی تولید میکند تا اینکه یکی از آنها بهتر از حالت فعلی باشد. اگر یک حالت دارای پسین های زیادی باشد این راهبرد مناسب است.

الگوریتم های جست وجوی تپه نوردی که تاکنون شرح دادیم، کامل نیستند، چون در ماکزیمم های محلی متوقف میشوند، با وجود هدف، موفق به یافتن آن نمیشوند. تپه نوردی با شروع مجدد از این ضرب المثل پیروی میکند "اگر موفق نشدید، دوباره و دوباره سعی کنید." این الگوریتم دنباله ای از جست وجوهای تپه نوردی را از "حالت های شروعی" که بطور تصادفی تولید شدند، اجرا میکنند تا هدفی را پیدا کنند. با احتمال نزدیک به 1، این الگوریتم کامل است، زیرا سرانجام حالت هدف را به عنوان حالت شروع تولید میکند.

موفقیت تپه نوردی به شکل "دورنمای فضای حالت" بستگی دارد: اگر تعداد ماکزیمم های محلی و فلات ها کم باشد، "تپه نوردی با شروع مجدد تصادفی" سریعا راه حل خوبی را می یابد.

 

شبه کد الگوریتم جست وجوی تپه نوردی:

 

function    HILL-CLIMBING (problem)  returns  a state  that is a local maximum

      Current <-- MAKE-NODE (problem.INITIAL-STATE)

      loop  do

                      neighbor <- -  a highest-valued successor of current

                      if  neighbor.VALUE ≤ current.VALUE  then return current.SATTE

                       current <-- neighbor

 

 



1
نظرات
  • user avatar سجاذ:
    ۱۰:۰۵:۱۶ __ ۱۳۹۴/۰۵/۲۲

    سلامممنون لطفا منابع رو هم ذکر کنید ممنون

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



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


advertise
آشنایی با الگوریتم hill-climbimg searchدانلود شبه کد الگوریتم جست وجوی hill-climbimgدانلود سورس کد الگوریتم hcs hill-climbimg searchآموزش پیاده سازی الگوریتم جست وجوی تپه نوردیالگوریتم تپه نوردی hill-climbimgالگوریتم های جست وجوی محلی hill-climbimgاستراتژی های جست وجوی محلی hill-climbimg hill-climbimg search algorithmشبه کد الگوریتم جست وجوی تپه نوردیدانلود رایگان شبه کد hill-climbimg searchالگوریتم جست وجوی تپه نوردی چیست؟الگوریتم جست وجوی hill-climbimgجست وجوی محلی حریصانه hill-climbimg لیست برچسب ها
تمامی حقوق این سایت اعم از محتوی ، تصاویر ، قالب و ... متعلق به گروه مهندسی وب سایت سورس کد می باشد.
SourceCodes.ir ، افقی روشن برای برنامه نویسان ، از مبتدی تا حرفه ای

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

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