مراحل پیش رو : 1- الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک

Slides:



Advertisements
Similar presentations
Awe sim.
Advertisements

سید احمد موسوی Line Maze Algorithm زمستان 90 بسمه تعالی.
124/ Adversarial Search جستجوی تخاصمی Chapter 6 Section 1 – 4 Modified by Vali Derhami.
معاونت درمان امور مامایی اردیبهشت 90. برای ثبت اطلاعات در برنامه نرم افزاری نظام مراقبت مرگ پریناتال ابتدا لازم است برنامه نرم افزار info-path وپرنیان.
فاکتورهای مهم در ایجاد یک مقاله علمی
الگوریتم ژنتیکی. تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند.
Decision Tree.
Ali Karimpour Associate Professor Ferdowsi University of Mashhad ADVANCED CONTROL Reference: Chi-Tsong Chen, “Linear System Theory and Design”, 1999.
Database Laboratory: Session #4 Akram Shokri. DB-Lab 2 Lab Activity You must already created all tables You have to have inserted proper data in tables.
موضوع: دبير مربوطه: آموزشگاه : اجرا : عبارتهای جبری خانم مقصودی
ساختمان داده‌ها پیمایش گراف. مرور °مشکل: چگونه تمام نودهای گراف را مشاهده کنیم؟ °جستجوی اول عمق دنبال کردن مسیرهای بین راسها. °جستجوی اول سطح دیدن تمام.
Arrangements of Lines C omputational Geometry By Samaneh shafi naderi
8.4. The Michaelis-Menten Model Accounts for the Kinetic Properties of Many Enzymes Elham hasheminasab MSc94 Enzymes: Basic Concepts and Kinetics 1.
آشنايي با سيستم اعداد.
LINEAR CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad.
AHP فرایند تحلیل سلسله مراتبی. پیشگفتار یکی از کارآمد ترین تکنیک های تصمیم گیری فرایند تحلیل سلسله مراتبی ( Analytical Hierarchy process-AHP ) که اولین.
[c.
راهبرد عقبگرد (Backtracking)
دانشکده جغرافیا گروه سنجش از دور و GIS بهینه سازی مسیریابی مبتنی بر خوشه ‌ بندی با تقاضای تصادفی و ظرفیت محدود …. عنوان پیشنهادی رساله: دانشجو:کیوان باقری.
کالیبراسیون، صحت سنجی و آنالیز حساسیت مدل
فصل 4- محاسبات زمانی در شبکه AoA
تمرین هفتم بسم الله الرحمن الرحیم درس یادگیری ماشین محمدعلی کیوان راد
هیدروگراف(Hydrograph) تهیه : دکتر محمد مهدی احمدی
ویژگی های DHCP جلوگیری از Conflict سرعت بخشیدن به کارها مدیریت متمرکز
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
بنام خدا زبان برنامه نویسی C (21814( Lecture 12 Selected Topics
SY800 router mode [AD-14-TB ].
ساختمان داده ها جداول درهم سازی
ساختمان داده‌ها الگوریتمهای کوتاهترین مسیر
روش حریصانه در طراحی الگوریتم
Odd-even merge sort مرتب سازی.
چگونه بفهمیم آیا ژورنالی ISI است؟ ایمپکت فاکتور دارد یا خیر؟
مدیریت مالی و اقتصاد مدیریت موضوع : نقطه سر به سر زمستان 93
فصل دوم جبر بول.
Route configuration for 5400W ADSL Router
تکنیک دیماتل DEMATEL: decision making trial and evaluation laboratory.
بررسی قطبش در لیزر های کاواک عمودی گسیل سطحی(vcsel)
Natural language Understanding James Allen
آموزش و یادگیری Education and Training
1.
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
آموزش کرک کردن نرم افزار ACTIVE HDL
Tree Sort.
کوئیز از جلسه قبل) کارخانه ای در حال خرید قطعه‌ای برای یکی از ماشین‌آلات خود می باشد اگر نرخ بهره 10% برای محاسبات فرض شود، دو مدل از قطعه ماشین در دسترس.
مدارهای منطقی فصل سوم - خصوصیات توابع سويیچی
ساختمان داده‌ها پیمایش درخت دودویی
بسمه تعالی.
اصطکاک Designed By: Soheil Soorghali.
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
Bucket sort اكرم منوچهري زهرا منوچهري
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
مقاله ام را کجا Submit کنم؟ تهیه و تنظیم: سودابه طاهری و زهره راخ
راهنمای استفاده از ابزار Mailings در Ms Word
راهبرد شاخه و حد (Branch and bound)
اهداف درس این جلسه حل مساله کوله پشتی با رویکرد حریصانه مقایسه رویکرد حریصانه با برنامه‌نویسی پویا در حل مساله.
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
جستجوی منابع الکترونیک
IN THE NAME OF GOD MATH SABA KARBALAEI
Angular Kinetics مهدی روحی بهار 85.
فصل ششم مدارهای ترتیبی.
ساختمان داده‌ها درختان و درختان دودویی
مدار منطقي مظفر بگ محمدي
توزیع میانگین نمونه سعید موسوی.
نسبت جرم فرمولی ”جرم اتمی و فرمول تجربی
برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 7
ساختمان داده ها مرتب سازی درجی
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
ساختمان داده ها گرافها.
سد خونی- مغزی. تکنولوژی نمایش فاژی و کاربرد آن  مقدمه و تاریخچه  نمایش فاژی در تولید آنتی بادی مونوکونال.
Presentation transcript:

مراحل پیش رو : 1- الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک 2- مقایسه الگوریتم پویا و عقبگرد برای مسئله کوله پشتی صفر و یک

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

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

نکته حائز اهمیت در این مساله این است که تا زمانی که جستجو به پایان نرسد نمی توان دریافت گره ای حاوی یک حل می باشد یا خیر. در مثال بهتر متوجه میشوید .

مثال: فرض کنید W=16,n=4 و داشته باشیم : قطعات از قبل بر اساس مرتب شده اند.

:Max profit ارزش کل BEST SET ابتدا با چند تعریف آشنا می شویم یعنی بهترین مسیری که در درخت پیموده ایم)) :بهترین مجموعه ای که تا به حال انتخاب کرده ایمBEST SET : :Max profit ارزش کل BEST SET include :مجموعه ی انتخابی در هر مرحله (مسیری که الان در نود انتهای آن هستیم). Profit : ارزش کل Include weight : وزن کل مجموعه include bound : فرض می کنیم در گره ای واقع در سطح i قرار داریم و گره ی واقع در سطح k گره ای است که حاصل جمع اوزان را از بیشتر میکند در این صورت : W

این فرمول به ما می گوید بهترین سودی که در این مرحله در ذهن ما می گنجد داشته باشیم چقدر است به این صورت که ما نمی توانیم عنصر سطح را برداریم چون در صورت انتخاب ان مجموع وزنها از ما بیشتر میشود ولی فرض میکنیم که ما میتوانیم به اندازه ای که کوله ی ما جا دارد بخشی از ان را برداریم لذا بهترین سود فرضی ما در هر مرحله است . در هر مرحله بایستی انرا محاسبه نماییم در ادامه بهتر متوجه میشوید W K

مثال: فرض کنید W=16,n=4 و داشته باشیم : قطعات از قبل بر اساس مرتب شده اند.

اشنایی با درخت کوله پشتی به روش عقب گرد در هر دایره عدد بالایی است و عدد وسطی جمع اوزان انتخابی و عدد سوم است profit نود شروع، نودی تهی است bound

امید بخش بودن یک گره یعنی با توجه به مجموعه ی include، شرایط امید بخش بودن : امید بخش بودن یک گره یعنی با توجه به مجموعه ی include، بتوانیم شئ دیگری را انتخاب کنیم و ازاین گره عبور کنیم (یعنی امید ملاقات گره های دیگر وجود داشته باشد). weight < w Max profit < bound شرایط انتخاب یک گره به عنوان گره پایانی(یعنی مجموعه ای که انتخاب کرده ایم، بهتر از مجموعه ی bestset است): Weight <= w Profit > max profit

Best set :{} Max prcofit : 0 Include : {} Profit : 0 Weight :0

توضیحات برای اسلاید قبل - گره (0,0) را ملاقات می کنیم . - ارزش و وزن آن را محاسبه می کنیم(که برابر است با ارزش و وزن مجموعه ای که فعلا انتخاب کرده ایم (مجموعه include )) ( یعنی ارزش و وزن کل مسیری که منتهی به این گره میشود) : Profit=0 , weight=0 مقدار bound (حد) را محاسبه می کنیم: در سطح k=3 داریم : مجموع وزن های انتخابی از سطح i=0 برابر است با: 2+5+10=17 که 17 > W=16

Best set{}به گره (1و1) میرسیم و داریم : با انتخاب شئ اول Maxprofit : 0 Include { item 1 } Profit : 40 Weight : 2 Bound :115 Profit > max profit , weight<W best set {item 1} ,Maxprofit=40

توضیحات برای اسلاید قبل 3- گره (1,1) را ملاقات می کنیم . ارزش و وزن آن را محاسبه می کنیم : profit=$0+$40=$40 weight=0+2=2 مقدار bound (حد) را محاسبه می کنیم: 2+5+10=17 17>16 k=3 maxprofit= 0

Profit > max profit , weight<W Best set : {item1} Max profit: 40 Include : {item1,item2} Profit : 70 Weight : 7 Bound :115 Profit > max profit , weight<W best set}item1,item2} , Max profit=70

توضیحات برای اسلاید قبل 4- گره (2,1) را ملاقات می کنیم . ارزش و وزن آن را محاسبه می کنیم : profit=$40+$30=$70 weight=2+5=7 مقدار bound (حد) را محاسبه می کنیم: maxprofit= $40

Include : {item1,item2,item3} Profit : 120 Weight : 17 Best set : {item1,item2} Max profit: 70 Include : {item1,item2,item3} Profit : 120 Weight : 17 Profit > max profit , weight<W=16

توضیحات برای اسلاید قبل 5- گره (3,1) را ملاقات می کنیم . ارزش و وزن آن را محاسبه می کنیم : profit=$70+$50=$120 weight=7+10=17 چون 17 از مقدار W یعنی 16 بزرگتر می باشد این گره اصلا نمی تواند اتخاب شود 6- عقبگرد به گره (2,1) maxprofit= $70

Profit = max profit best set}item1,item2} Max profit : 70 Include : {item1,item2} Profit : 70 Bound :80 همانطور که ملاحظه می شود چون: لذا گره(2و3) انتخاب نمیشود و در مجموعه اتخابها قرار نمی گیرد ولی این گره شرایط امید بخش بودن را دارد لذا فرزندان این گره را بررسی میکنیم یاداوری شرط انتخاب گره profit > max profit و Weight <=W Profit = max profit

توضیحات برای اسلاید قبل 7- گره (3,2) را ملاقات می کنیم . ارزش و وزن آن را محاسبه می کنیم : profit=$70 weight=7 نکته مهم : -چون وزن چهارم باعث نمی شود که حاصل جمع قطعات از W بیشتر شود و فقط 4 قطعه وجود دارد بنابراین :k=5 maxprofit= $70

best set}item1,item2} وMax profit : 70 Include : {item1,item2,item4} Profit : 80 و Bound :80 Profit > max profit , weight<W  best set}item1,item2,item4} , Max profit=80 پس این گره انتخاب می شود ولی چون profit = bound ، پس امید بخش نیست . به طور شهودی هم این گره اصلا فرزندی ندارد که ما بخواهیم بررسی کنیم لذا این گره غیر امید بخش است.

توضیحات برای اسلاید قبل 8- گره (4,1) را ملاقات می کنیم . profit=$80, weight=12 bound=$80 Bound=maxprofit node is nonpromising maxprofit= $70 profit > maxprofit maxprofit= $80 9- گره (4,2) نیز غیر امیدبخش می باشد. .

همانطور که در اسلایدهای اولیه گفتیم جواب نهایی را وقتی معین می کنیم که توضیح مهم همانطور که در اسلایدهای اولیه گفتیم جواب نهایی را وقتی معین می کنیم که جستجو در در خت پایان بپذیرد. در صورتی که ما تا الآن تنها چند مسیر را پیمودیم. در این مسیرها ما به ماکزیمم ارزشی معادل 80$ دست یافته ایم پس به عقب بر میگردیم و مسیرهای دیگر را بررسی میکنیم اگر مسیرهای دیگر ارزشی بیشتر از 80$ به ما داد ، ما مجموعه را آپدیت میکنیم. یعنی مسیری که سود بیشتری به ما میدهد در قرار میگیرد لذا به گره (1 و1 )عقب گرد می کنیم. best set .

به گره (1و1) برمیگردیم و به گره (2و2) می رسیم و داریم : به گره (1و1) برمیگردیم و به گره (2و2) می رسیم و داریم : best set}item1,item2,item4} Max profit : 80 Include : {item1,item3} Profit : 40 +50= 90 Bound :98 Profit > max profit , weight<W  best set}item1,item3} , Max profit=90

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

الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک

الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک

الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک

مقایسه الگوریتم پویا و عقبگرد برای مسئله کوله پشتی صفر و یک زمان اجرای مسئله در بدترین حالت با الگوریتم پویا: O (minimum (2n, nW)). زمان اجرای مسئله در بدترین حالت با الگوریتم عقبگرد: Θ (2n) الگوریتم های عقبگرد در بدترین حالت ،دید خوبی نسبت به کارصرفه جویی شده نمی دهند. هورویتز و شانی در سال 1978با اجرای الگوریتم های عقبگرد و پویا بر روی چندین نمونه نشان دادند که الگوریتم عقبگرد در مقایسه با الگوریتم پویا کارایی بیشتری دارد