View Full Version : برنامه نویسی ژنتیکی و شبکه عصبی
Asad.Safari
چهارشنبه 23 فروردین 1385, 17:39 عصر
با سلام
آیا کسی در مورد
"الگوریتم ژنتیکی و شبکه عصبی" مقاله ای چیزی داره و یا میتونه یکم توضحات بده!
با تشکر
mina.m
چهارشنبه 23 فروردین 1385, 19:51 عصر
با سلام
الگوریتم ژنتیک(Genetic Algorith - GA) تکنیک جستجویی در علم
رایانه برای یافتن راهحل تقریبی برای بهینهسازی و مسائل جستجو است. الگوریتم ژنتیک نوع خاصی از الگوریتمهای تکامل است که از تکنیکهای زیستشناسی فرگشتی مانند وراثت و جهش استفاده میکند.
الگوریتمهای ژنتیک معمولاً به عنوان یک شبیهساز کامپیوتر که در آن جمعیت یک نمونهٔ انتزاعی (کروموزوم ها) از نامزدهای راهحل یک مسأله بهینهسازی به راه حل بهتری منجر شود، پیادهسازی میشوند. به طور سنتی راهحل ها به شکل رشتههایی از ۰ و ۱ بودند، اما امروزه به گونههای دیگری هم پیادهسازی شدهاند. فرضیه با جمعیتی کاملاً تصادفی منحصر بفرد آغاز میشود و در نسل ها ادامه مییابد. در هر نسل گنجایش تمام جمعیت ارزیابی میشود، چندین فرد منحصر در فرایندی تصادفی از نسل جاری انتخاب میشوند (بر اساس شایستگی ها) و برای شکل دادن نسل جدید، اصلاح میشوند (کسر یا دوباره ترکیب میشوند) و در تکرار بعدی الگوریتم به نسل جاری تبدیل میشود.
--------------------------------------------------------------------------------
عملگر های یک GA
در هر مسئله قبل از آنکه بتوان الگوریتم ژنتیک را برای یافتن یک پاسخ به کار برد به دو عنصر نیاز است: اول روشی برای ارائه یک جواب به شکلی که الگوریتم ژنتیک بتواند روی آن عمل کند لازم است. به شکل سنتی یک جواب به صورت یک رشته از بیت ها، اعداد یا نویسه ها.نمایش داده میشود.دوم روشی لازم است که بتواند کیفیت هر جواب پیشنهاد شده را با استفاده از توابع تناسب محاسبه نماید. مثلا اگر مسئله هر مقدار وزن ممکن را برای یک کوله پشتی مناسب بداند بدون اینکه کوله پشتی پاره شود، (مسئله کوله پشتی را ببینید ) یک روش برای ارائه پاسخ میتواند به شکل رشته ای از بیت های 0 و1 در نظر گرفته شود, که 1 یا 0 بودن نشانه اضافه شدن یا نشدن وزن به کوله پشتی است.تناسب پاسخ، با تعیین وزن کل برای جواب پیشنهاد شده اندازه گیری میشود.
الگوریتم ژنتیک : الگوریتم ژنتیک که بعنوان یکی از روشهای تصادفی بهینه یابی شناخته شده, توسط جان هالند در سال 1967 ابداع شده است. بعدها این روش با تلاشهای گلدبرگ 1989, مکان خویش را یافته و امروزه نیز بواسطه توانایی های خویش , جای مناسبی در میان دیگر روشها دارد. روال بهینه یابی در الگوریتم ژنتیک براساس یک روند تصادفی- هدایت شده استوار می باشد. این روش , بر مبنای نظریه تکامل تدریجی و ایده های بنیادین داروین پایه گذاری شده است.در این روش , ابتدا برای تعدادی ثابت که جمعیت نامیده می شود مجموعه ای از پارامترهای هدف بصورت اتفاقی تولید می شود , پس از اجرای برنامه شبیه ساز عددی را که معرف انحراف معیار و یا برازش آن مجموعه از اطلاعات است را به آن عضو از جمعیت مذکور نسبت می دهیم . این عمل را برای تک تک اعضای ایجاد شده تکرار می کنیم , سپس با فراخوانی عملگرهای الگوریتم ژنتیک از جمله لقاح , جهش و انتخاب نسل بعد را شکل می دهیم و این روال تا ارضای معیار همگرایی ادامه داده خواهد شد.(شکل 1)
بصورت متداول سه معیار بعنوان معیار توقف شمرده می شود: I. زمان اجرای الگوریتم II. تعداد نسلهایی که ایجاد می شوند III. همگرایی معیار خطا کاربرد های الگوریتم ژنتیک :
روندیابی هیدرولوژیکی رواناب جاری در شبکه رودخانه خشک
کمک در حل مسایل تصمیم گیری چند معیاره
بهینه سازی چند هدفه در مدیریت منابع آبی
ینک توضیح کوتاهی راجع به شبکه های عصبی می دهم , امیدوارم این توضیحات خلاصه مفید باشد .
:: شبکه عصبی چیست؟
شبکه های عصبی تعاریف گوناگونی دارد. که طی چند پست به تعریف های مختلف با ذکر منبع می پردازیم.
تعریف اول:
شبکه عصبی یک ابزار قوی مدل کردن اطلاعات است که قادر است ارتباطات پیچیده ورودی/خروجی را ثبت کرده و نمایش دهد. انگیزه اصلی برای توسعه تکنولوژی شبکه های عصبی، نتیجه علاقه به توسعه سیستمی مصنوعی است که بتواند رفتار "هوشمندانه" از خود نشان دهد مانند رفتاری که از مغز انسان سر می زند. شبکه های عصبی از دو جنبه به مغز انسان شبیه هستند:
1- یک شبکه عصبی بوسیله آموزش "یاد می گیرد".
2- دانشی که یک شبکه عصبی کسب می کند در جایی بین نورون ها ذخیره می گردد که با نام "سیناپس" معروف است.
مزیت و برگ برنده شبکه های عصبی در تواناییشان برای نمایش روابط روابط موازی و هم غیر موازی نهفته است. همچنین در توانایی برای یادگیری این روابط بطور مستقیم از اطلاعات مدل شده می باشد.
مدل های موازی قدیمی بسادگی از پا در می آیند، هنگامی که اطلاعاتی که قرار استمدل شوند دارای ویژگی غیر موازی باشند.
مرسومترین نوع شبکه عصبی multilayer percentaion (MLP) یا درک چند لایه ای می باشد. این نوع از شبکه عصبی بعنوان شبکه ناظر (supervised network) نیز شناخته می شود. به این علت که باید ابتدا هدف و خروجی سیستم مشخص شود. هدف از این نوع شبکه ایجاد یک مدلی است که با گرفتن ورودی، خروجی را بطور صحیحی نمایش دهد با استفاده از اطلاعات پیش فرض. در نتیجه این مدل مناسبی است مخصوصا هنگامی که نتوان به طور عملی خروجی از سیستم گرفت می توان با دادن ورودی و یک سری اطلاعات پیش فرض بطور تئوری خروجی را مشخص کرد.
با تشکر . مینا
ravanfar
پنج شنبه 24 فروردین 1385, 13:18 عصر
سلام
جالب بود
Asad.Safari
پنج شنبه 24 فروردین 1385, 14:52 عصر
با تشکر از راهنماییتون !!
می تونید منبع رو معرفی کنبد !!
موفق باشید
hgkhatir
پنج شنبه 24 فروردین 1385, 14:55 عصر
نرم افزار مطلب برای کار با شبکه عصبی امکانات زیادی دارد.
البته راهنماییهای آن هم جالب است.
mina.m
پنج شنبه 24 فروردین 1385, 16:16 عصر
با سلام , اگر شما در اینترنت سرچ کنید مطالب و مقاله های زیادی در این باره خواهید یافت , امیدوارم موفق باشید .
با تشکر.مینا
فرخنده
دوشنبه 15 آبان 1385, 15:53 عصر
لطفا اگر کسی درباره جستجوی محلی اطلاعات دارد بگذارد
--------------------
سلام
لطفا اگر کسی از آموزش و متدهای شطرنج و الگوریتم های رایج آن در جهان اطلاعاتی داره برای من بفرسته
amirsadeghi
چهارشنبه 12 اردیبهشت 1386, 20:32 عصر
بهترین الگوریتم برای نوشتن یک شطرنح ساده الگوریتم MiniMax است
z_mojaradi
سه شنبه 20 آذر 1386, 23:36 عصر
با سلام
آیا کسی می تونه در برنامه نویسی الگوریتم تبربد تدریجی به من کمک کنه؟
amirsadeghi
چهارشنبه 28 آذر 1386, 11:27 صبح
توضیح کامل
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.