Artificial Intelligence - هوش مصنوعی  
انجمن را در گوگل محبوب کنيد :

بازگشت   Artificial Intelligence - هوش مصنوعی > مقدمات هوش مصنوعی > عامل هاي هوشمند


 
تبليغات سايت
Iranian Association for the Advancement of Artificial Intelligence
ارسال تاپيک جديد  پاسخ
 
LinkBack ابزارهاي تاپيک نحوه نمايش
قديمي ۰۷-۵-۱۳۹۲, ۰۷:۲۳ بعد از ظهر   #1 (لینک دائم)
عضو جدید
 
آواتار pani_83
 
تاريخ عضويت: مهر ۱۳۸۹
پست ها: 7
تشكرها: 5
3 تشكر در 2 پست
پيش فرض پیاده سازی الگوریتم ژنتیک با عامل ها

لطفا اگر در مورد پیاده سازی الگوریتم ژنتیک با عامل ها مطالبی دارید به اشتراک بگذارید
pani_83 آفلاين است   پاسخ با نقل قول

  #ADS
نشان دهنده تبلیغات
تبليغگر
 
 
 
تاريخ عضويت: -
محل سكونت: -
سن: 2010
پست ها: -
 

نشان دهنده تبلیغات is online  
قديمي ۰۷-۱۸-۱۳۹۲, ۱۲:۳۹ قبل از ظهر   #2 (لینک دائم)
عضو جدید
 
آواتار 0933
 
تاريخ عضويت: مهر ۱۳۹۲
پست ها: 2
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

سلام خسته نباشید چیزی در مورد طراحی سایت می دانید
0933 آفلاين است   پاسخ با نقل قول
قديمي ۰۷-۱۸-۱۳۹۲, ۱۲:۴۳ قبل از ظهر   #3 (لینک دائم)
عضو جدید
 
آواتار 0933
 
تاريخ عضويت: مهر ۱۳۹۲
پست ها: 2
تشكرها: 0
0 تشكر در 0 پست
Smile

Hello ! سلام خسته نباشید چیزی در مورد طراحی سایت می دانید
0933 آفلاين است   پاسخ با نقل قول
قديمي ۱۱-۱۵-۱۳۹۶, ۱۲:۴۱ قبل از ظهر   #4 (لینک دائم)
عضو فعال
 
آواتار site2017
 
تاريخ عضويت: مهر ۱۳۹۶
پست ها: 10
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

الگوریتم ژنتیک روش یادگیری بر پایه تکامل بیولوژیک است . این روش در سال 1970 توسط John Holland معرفی گردید این روشها با نام Evolutionary Algorithms نیز خوانده میشوند .
ساخت سايت
ایده کلی

یک GA برای حل یک مسئله مجموعه بسیار بزرگی از راه حلهای ممکن را تولید میکند . هر یک از این راه حلها با استفاده از یک “ تابع تناسب ” مورد ارزیابی قرار میگیرد . آنگاه تعدادی از بهترین راه حلها باعث تولید راه حلهای جدیدی میشوند . که اینکار باعث تکامل راه حلها میگردد . بدین ترتیب فضای جستجو در جهتی تکامل پیدا میکند که به راه حل مطلوب برسد در صورت انتخاب صحیح پارامترها، این روش میتواند بسیار موثر عمل نماید.

فضای فرضیه

الگوریتم ژنتیک بجای جستجوی فرضیه های general-to specific و یا simple to complex فرضیه ها ی جدید را با تغییر و ترکیب متوالی اجزا بهترین فرضیه های موجود بدست میاورد .
در هرمرحله مجموعه ای از فرضیه ها که جمعیت (population) نامیده میشوند از طریق جایگزینی بخشی از جمعیت فعلی با فرزندانی که از بهترین فرضیه های موجود حاصل شده اند بدست میآید .

ویژگیها
الگوریتم های ژنتیک در مسائلی که فضای جستجوی بزرگی داشته باشند میتواند بکار گرفته شود .
همچنین در مسایلی با فضای فرضیه پیچیده که تاثیر اجزا آن درفرضیه کلی ناشناخته باشند میتوان از GA برای جستجو استفاده نمود .
برای discrete optimization بسیار مورد استفاده قرار میگیرد .
الگوریتم های ژنتیک را میتوان براحتی بصورت موازی اجرا نمود از اینرو میتوان کامپیوترهای ارزان قیمت تری را بصورت موازی مورد استفاده قرار داد .
امکان به تله افتادن این الگوریتم در مینیمم محلی کمتر از سایر روشهاست .
از لحاظ محاسباتی پرهزینه هستند .
تضمینی برای رسیدن به جواب بهینه وجود ندارد .

منبع : matlabdl
site2017 آفلاين است   پاسخ با نقل قول
قديمي ۱۱-۱۸-۱۳۹۶, ۱۰:۳۱ بعد از ظهر   #5 (لینک دائم)
عضو فعال
 
آواتار site2017
 
تاريخ عضويت: مهر ۱۳۹۶
پست ها: 10
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

کاربر دها
ساخت سايت
 کاربرد الگوریتم های ژنتیک بسیار زیاد میباشد
optimization,
automatic programming,
machine learning,
economics,
operations research,
ecology,
studies of evolution and learning, and
social systems


زیر شاخه های EA
روش های EA به دو نوع مرتبط به هم ولی مجزا دسته بندی
میشوند :
.1Genetic Algorithms (GAs)
در این روش راه حل یک مسئله بصورت یک bit string
نشان داده میشود .
.2Genetic Programming (GP)
این روش به تولید expression trees که در زبانهای برنامه
نویسی مثل lisp مورد استفاده هستند میپردازد بدین ترتیب
میتوان برنامه هائی ساخت که قابل اجرا باشند .


الگوریتم های ژنتیک
 روش متداول پیاده سازی الگوریتم ژنتیک بدین ترتیب است که :
 مجموعه ای از فرضیه ها که population نامیده میشود تولید وبطور
متناوب با فرضیه های جدیدی جایگزین میگردد .
 در هر بار تکرارتمامی فرضیه ها با استفاده از یک تابع تناسب یا
Fitness مورد ارزیابی قرار داده میشوند . آنگاه تعدادی از بهترین
فرضیه ها با استفاده از یک تابع احتمال انتخاب شده و جمعیت جدید را
تشکیل میدهند .
 تعدادی از این فرضیه های انتخاب شده به همان صورت مورد استفاده
واقع شده و مابقی با استفاده از اپراتورهای ژنتیکی نظیر Crossover
و Mutation برای تولید فرزندان بکار میروند .

منبع : matlabdl
site2017 آفلاين است   پاسخ با نقل قول
قديمي ۱۱-۲۵-۱۳۹۶, ۰۳:۱۴ قبل از ظهر   #6 (لینک دائم)
عضو فعال
 
آواتار site2017
 
تاريخ عضويت: مهر ۱۳۹۶
پست ها: 10
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

پارامترهای GA
یک الگوریتم GA دارای پارامترهای زیر است :
GA(Fitness,Fitness_threshold,p,r,m)
Fitness : تابعی برای ارزیابی یک فرضیه که مقداری عددی به هر فرضیه نسبت میدهد
Fitness_threshold :مقدار آستانه که شرط پایان را معین میکند
p : تعداد فرضیه هائی که باید در جمعیت در نظر گرفته شوند
r : در صدی از جمعیت که در هر مرحله توسط الگوریتم crossover جایگزین میشوند
m : نرخ mutation
طراحی سايت شرکتی
الگورتیم
Initialize :جمعیت را با تعداد p فرضیه بطور تصادفی مقدار دهی اولیه کنید .
Evaluate : برای هر فرضیه h در p مقدار تابع Fitness(h) را محاسبه نمائید .
 تا زمانیکه [maxhFitness(h)] < Fitness_threshold یک جمعیت جدید ایجاد کنید .
 فرضیه ای که دارای بیشترین مقدار Fitness است را برگردانید .

نحوه ایجاد جمعیت جدید

مراحل ایجاد یک جمعیت جدید بصورت زیر است :
1. select : تعداد (1-r)p فرضیه از میان P انتخاب و به Ps اضافه کنید . احتمال انتخاب یک فرضیه hi از میان P عبارت است از :
P(hi) = Fitness (hi) / Σj Fitness (hj)

هر چه تناسب فرضیه ای بیشتر باشد احتمال انتخاب آن بیشتر است . این احتمال همچنین با مقدار تناسب فرضیه های دیگر نسبت عکس دارد.
2. Crossover : با استفاده از احتمال بدست آمده توسط رابطه فوق، تعداد (rp)/2 زوج فرضیه از میان P انتخاب و با استفاده از اپراتور Crossover دو فرزند از آنان ایجاد کنید . فرزندان را به Ps اضافه کنید.

3. Mutate : تعداد m درصد از اعضا Ps را با احتمال یکنواخت انتخاب و یک بیت از هر یک آنها را بصورت تصادفی معکوس کنید.

4. برای هر فرضیه h در P مقدار تابع Fitness را محاسبه کنید
site2017 آفلاين است   پاسخ با نقل قول
قديمي ۱۲-۱-۱۳۹۶, ۰۲:۳۶ قبل از ظهر   #7 (لینک دائم)
عضو فعال
 
آواتار site2017
 
تاريخ عضويت: مهر ۱۳۹۶
پست ها: 10
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

نمایش فرضیه ها
طراحی وب سايت
در الگوریتم ژنتیک معمولا فرضیه ها بصورت رشته ای از بیت ها نشان داده میشوند تا اعمال
اپراتورهای ژنتیکی برروی آنها ساده تر باشد .
Phenotype : به مقادیر یا راه حلهای واقعی گفته میشود .
Genotype : به مقادیر انکد شده یا کروموزم ها گفته میشود که مورد استفاده GA قرار میگیرند .
باید راهی برای تبدیل این دو نحوه نمایش به یکدیگر بدست آورده شود

نمایش فرضیه ها : ملاحظات
ممکن است ترکیب بعضی از بیت ها منجر به فرضیه های بی معنی گردد .
برای پرهیز از چنین وضعیتی :
 میتوان از روش انکدینگ دیگری استفاده نمود .
 اپراتورهای ژنتیکی را طوری تعیین نمود که چنین حالتهائی را حذف نمایند
 میتوان به این فرضیه ها مقدار fitness خیلی کمی نسبت داد .

اپراتورهای ژنتیکی Crossover :
 اپراتور Crossover با استفاده از دو رشته والد دو رشته فرزندبوجود میآورد .
 برای اینکار قسمتی از بیتهای والدین در بیتهای فرزندان کپی میشود .
 انتخاب بیت هائی که باید از هر یک از والدین کپی شوند به روشهای مختلف انجام میشود
single-point crossover
Two-point crossover
Uniform crossover
 برای تعیین محل بیتهای کپی شونده از یک رشته به نام Crossover Mask استفاده میشود

Single-point crossover
 یک نقطه تصادفی در طول رشته انتخاب میشود .
 والدین در این نقطه به دوقسمت میشوند .
 هر فرزند با انتخاب تکه اول از یکی از والدین و تکه دوم از والد دیگر بوجود میاید
site2017 آفلاين است   پاسخ با نقل قول
قديمي ۱۲-۶-۱۳۹۶, ۰۸:۲۴ بعد از ظهر   #8 (لینک دائم)
عضو جدید
 
آواتار panel123
 
تاريخ عضويت: اسفند ۱۳۹۶
پست ها: 1
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

Crossover OR mutation?
تابلو استيل
Crossover : خاصیت جستجوگرانه و یا explorative دارد . میتواندبا انجام پرشهای بزرگ به محل هائی دربین والدین رفته و نواحی جدیدی را کشف نماید .
Mutation : خاصیت گسترشی و یا exploitive دارد . میتواند با انجام تغییرات کوچک تصادفی به نواحی کشف شده وسعت ببخشد .
Crossove : اطلاعات والدین را ترکیب میکند درحالیکه mutation میتواند اطلاعات جدیدی اضافه نماید .
برای رسیدن به یک پاسخ بهینه یک خوش شانسی در mutation لازم است.

تابع تناسب
تابع fitness : معیاری برای رتبه بندی فرضیه هاست که کمک میکند تا فرضیه های برتر برای نسل بعدی جمعیت انتخاب شوند . نحوه انتخاب این تابع بسته به کاربر مورد نظر دارد :
classification : در این نوع مسایل تابع تناسب معمولا برابر است با دقت قانون در دسته بندی مثالهای آموزشی

انتخاب فرضیه ها
Roulette Wheel selection :
در روش معرفی شده در الگوریتم ساده GA احتمال انتخاب یک فرضیه برای استفاده در جمعیت بعدی بستگی به نسبت fitness آن به fitness بقیه اعضا دارد . این روش Roulette Wheel selection نامیده میشود .
P(hi) = Fitness (hi) / ΣjFitness (hj)
fitness(A) = 3
fitness(B) = 1
fitness(C) = 2
A
C
1/6 = 17%
3/6 = 50%
B
2/6 = 33%
روشهای دیگر :
tournament selection
rank selection

منبع : matlabdl
panel123 آفلاين است   پاسخ با نقل قول
قديمي ۰۲-۱-۱۳۹۷, ۰۹:۴۳ قبل از ظهر   #9 (لینک دائم)
عضو جدید
 
آواتار saadat238
 
تاريخ عضويت: ارديبهشت ۱۳۹۷
پست ها: 1
تشكرها: 0
0 تشكر در 0 پست
پيش فرض

برای من سوال و نیازمند منابع هستم برای الگوریتم ژنتیک. کسی کتاب سراغ نداره. زبان اصلی هم باشه مهم نیست.
__________________
اجاره ماشین عروس
saadat238 آفلاين است   پاسخ با نقل قول
پاسخ



كاربران در حال ديدن تاپيک: 1 (0 عضو و 1 مهمان)
 
ابزارهاي تاپيک
نحوه نمايش

قوانين ارسال
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is فعال
شکلکها فعال است
كد [IMG] فعال است
كدهاي HTML غير فعال است
Trackbacks are فعال
Pingbacks are فعال
Refbacks are فعال




زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۴:۵۵ بعد از ظهر ميباشد.


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

Teach and Learn at Hexib | Sponsored by www.Syavash.com and Product In Review

استفاده از مطالب انجمن در سایر سایت ها، تنها با ذکر انجمن هوش مصنوعي به عنوان منبع و لینک مستقیم به خود مطلب مجاز است

Inactive Reminders By Icora Web Design