برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 7

Slides:



Advertisements
Similar presentations
معاونت درمان امور مامایی اردیبهشت 90. برای ثبت اطلاعات در برنامه نرم افزاری نظام مراقبت مرگ پریناتال ابتدا لازم است برنامه نرم افزار info-path وپرنیان.
Advertisements

فاکتورهای مهم در ایجاد یک مقاله علمی
الگوریتم ژنتیکی. تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند.
Definition. قانون بیز P(b|a) = P(a|b)P(b)/P(a) P(b|a) = P(a|b)P(b)/P(a) این قانون برای استنتاج آماری استفاده می شود. این قانون برای استنتاج آماری استفاده.
Decision Tree.
© 2005 Prentice Hall Inc. All rights reserved. o r g a n i z a t i o n a l b e h a v i o r e l e v e n t h e d i t i o n.
Ali Karimpour Associate Professor Ferdowsi University of Mashhad ADVANCED CONTROL Reference: Chi-Tsong Chen, “Linear System Theory and Design”, 1999.
DSS in Actions. شرکت آتلانتیک الکتریک یک شرکت پیمانکاری سرویس دهی کامل الکتریکی برای کارهای صنعتی و تجاری است که در سال 1969 در چارلزتن تاسیس شد. یک شرکت.
فایل پردازی در C File based Programming in C. انواع فایل متنی –سرعت بالا –حجم کمتر –امکان دسترسی تصادفی –حفظ امنیت داده ها دودویی (باینری) –امکان باز.
1 Network Address Translation (NAT). 2 Private Network شبکه خصوصی شبکه ای است که بطور مستقیم به اینترنت متصل نیست در یک شبکه خصوصی آدرس های IP به دلخواه.
1 بنام خدا زبان برنامه نویسی C (21814( Lecture 14 Structures.
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.
1 بنام خدا زبان برنامه نویسی C (21814( Lecture 8 Chapters 8 & 9.
ساختمان داده‌ها پیمایش گراف. مرور °مشکل: چگونه تمام نودهای گراف را مشاهده کنیم؟ °جستجوی اول عمق دنبال کردن مسیرهای بین راسها. °جستجوی اول سطح دیدن تمام.
LINEAR CONTROL SYSTEMS Ali Karimpour Associate Professor Ferdowsi University of Mashhad.
Arrangements of Lines C omputational Geometry By Samaneh shafi naderi
CS Constraint Satisfaction Constraint Satisfaction Problems Chapter 5 Section 1 – 3 Modified by Vali Derhami.
آشنايي با سيستم اعداد.
AHP فرایند تحلیل سلسله مراتبی. پیشگفتار یکی از کارآمد ترین تکنیک های تصمیم گیری فرایند تحلیل سلسله مراتبی ( Analytical Hierarchy process-AHP ) که اولین.
[c.
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
مکان یابی در شبکه های حسگر بیسیم
( Project Operation Management )
تمرین هفتم بسم الله الرحمن الرحیم درس یادگیری ماشین محمدعلی کیوان راد
هیدروگراف(Hydrograph) تهیه : دکتر محمد مهدی احمدی
استفاده از ماشین بردار پشتیبان (SVM) برای تشخیص گوینده
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
بنام خدا زبان برنامه نویسی C (21814( Lecture 12 Selected Topics
Mobile Robot Kinematics
آشنایی مقدماتی با نرم افزار Endnote X4
ساختمان داده‌ها الگوریتمهای کوتاهترین مسیر
دانشگاه صنعتی امیرکبیر Instructor : Saeed Shiry & Mitchell Ch. 2
Odd-even merge sort مرتب سازی.
برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 11
چگونه بفهمیم آیا ژورنالی ISI است؟ ایمپکت فاکتور دارد یا خیر؟
کنترل پیش بین مقاوم Min-Max
بنام خدا زبان برنامه نویسی C (21814( Lecture 10 Chapter 11
فصل دوم جبر بول.
برنامه ریزی خطی پیشرفته (21715) Advanced Linear Programming Lecture 3
هیدرولیک جریان در کانالهای باز مفاهیم اساسی جریان سیالات
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
آموزش و یادگیری Education and Training
1.
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
Tree Sort.
کوئیز از جلسه قبل) کارخانه ای در حال خرید قطعه‌ای برای یکی از ماشین‌آلات خود می باشد اگر نرخ بهره 10% برای محاسبات فرض شود، دو مدل از قطعه ماشین در دسترس.
مدارهای منطقی فصل سوم - خصوصیات توابع سويیچی
دانشگاه صنعتی امیرکبیر Instructor : Saeed Shiry &
شرایط مرزی (Boundary Conditions) در مدل سازی آب زیرزمینی
Sparse Coding مهندس فرامرزپور
دینامیک سیستمهای قدرت مدرس: دکتر مهدی بانژاد
Bucket sort اكرم منوچهري زهرا منوچهري
Mobile Robot Kinematics
Ali Karimpour Associate Professor Ferdowsi University of Mashhad
کار برد شبکه های عصبی در پردازش سریهای زمانی
آشوب در سیستمهای دینامیکی
راهنمای استفاده از ابزار Mailings در Ms Word
راهبرد شاخه و حد (Branch and bound)
آشنایی مقدماتی با نرم افزار Endnote X4
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
جستجوی منابع الکترونیک
فصل ششم مدارهای ترتیبی.
ابزارهای جستجوی پایان نامه
به نام یکتای دانا فصل اول: متدها و قواعد.
مراحل پیش رو : 1- الگوریتم عقبگرد برای مسئله کوله پشتی صفر و یک
نسبت جرم فرمولی ”جرم اتمی و فرمول تجربی
ساختمان داده ها مرتب سازی درجی
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
سد خونی- مغزی. تکنولوژی نمایش فاژی و کاربرد آن  مقدمه و تاریخچه  نمایش فاژی در تولید آنتی بادی مونوکونال.
Presentation transcript:

برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 7 بنام خدا برنامه ریزی خطی پیشرفته (21715( Advanced Linear Programming Lecture 7 Interior Point Techniques مدرس: ناصر سلماسی

برنامه ریزی خطی پیشرفته (21715 ( روش یا الگوریتم های نقاط داخلی یکی از روش های متداول برای حل مساله های بهینه سازی انجام تحقیقات بسیار در این زمینه تاکنون عملکرد فوق العاده این روش ها برای حل مساله های برنامه ریزی خطی در دهه های گذشته انجام تحقیقات برای یافتن کاربردهای این روش برای حل مساله های برنامه ریزی غیر خطی در حال حاضر 2 2

برنامه ریزی خطی پیشرفته (21715 ( جستجو برای پیدا کردن جواب بهینه در داخل منطقه موجه در این روش ها برخلاف الگوریتم سیمپلکس نام گذاری این روش ها با عنوان non-simplex method روش عمومی حل آغاز حل مساله از یک نقطه از داخل منطقه موجه و حرکت به سمت گوشه بهینه برخلاف حرکت به روی مرزها در روش سیمپلکس 3 3

برنامه ریزی خطی پیشرفته (21715 ( روش اولیه- دوگان نوعی از روش نقاط داخلی اولین تحقیق: کارمارکار در سال 1984 جذب علاقه دانشمندان تحقیق در عملیات به روش نقطه های داخلی به دلایل: پیچیدگی روش بصورت چند جمله ای نتایج فوق العاده در آزمایش های مقدماتی 4 4

برنامه ریزی خطی پیشرفته (21715 ( مشاهده مقاله های متعددی در این زمینه در ژورنال های معتبر ابداع روش های متنوع با پیچیدگی از درجه چند جمله ای مثال: پیچیدگی الگوریتم کارمارکار بصورت O(nL) ارایه درجه پیچیدگی برابر برای بهترین الگوریتم ابداع شده برای حل مساله های برنامه ریزی خطی در این زمینه 5 5

برنامه ریزی خطی پیشرفته (21715 ( ارزیابی عملکرد الگوریتم ابداع شده بر اساس زمان حل آنها (تعداد عملیات) برای مساله های واقعی عملکرد بهتر الگوریتم های primal-dual path following و primal and dual affine methods نسبت به سایر الگوریتم ها نبود روش مناسب دیگر برای ارزیابی این الگوریتم ها امکان وجود الگوریتم هایی با پیچیدگی محاسباتی غیر چند جمله ای با عملکرد بهتری نسبت به الگوریتم های چند جمله ای در حل مساله های واقعی 6 6

برنامه ریزی خطی پیشرفته (21715 ( مثال ارایه الگوریتم Ellipsoid با درجه پیچیدگی چند جمله ای در سال 1979 عملکرد بسیار ضعیف محاسباتی الگوریتم 7 7

برنامه ریزی خطی پیشرفته (21715 ( تعاریف ماتریس Diagonal: ماتریس مربعی است که تنها مقادیر قطر اصلی آن غیر صفر باشند. 8 8

برنامه ریزی خطی پیشرفته (21715 ( تقسیم بندی الگوریتم های موجود برای حل مساله های بهینه سازی به کمک الگوریتم های نقاط داخلی: Affine scaling methods Path following methods Potential reduction method Projective methods مشاهده تقسیم بندی های دیگر در مرجع های مختلف 9 9

برنامه ریزی خطی پیشرفته (21715 ( Affine scaling methods ساده ترین روش الگوریتم های نقطه های داخلی انتقال مساله به روش “affine scaling” توسعه مدل پس از روش کارمارکار به منظور ساده سازی آن مشابهت روش به الگوریتم سیمپلکس 10 10

برنامه ریزی خطی پیشرفته (21715 ( Path following methods جستجو برای جواب بهینه در نزدیکی مرزها اساس روش: استفاده از barrier method 11 11

برنامه ریزی خطی پیشرفته (21715 ( Potential reduction method در این روش ها سعی می شود تا کاهشی در بعضی از توابع و یا مکان های ممکن ایجاد شود. 12 12

برنامه ریزی خطی پیشرفته (21715 ( Projective methods در این روش ها که الگوریتم کارمارکار متعلق به آن است به نوعی یک elaborate projective transformation انجام می شود. 13 13

برنامه ریزی خطی پیشرفته (21715 ( Affine scaling methods یک مساله برنامه ریزی خطی و دوگان آن را در نظر بگیرید: فرض ها: P فضای موجه مساله اولیه x یک نقطه موجه داخلی مربوط به این فضا مساله اولیه مساله دوگان Min cʹx Ax=b x≥0 Max pʹb pʹA≤cʹ 14 14

برنامه ریزی خطی پیشرفته (21715 ( Affine scaling methods تجربه های قبلی: بهینه سازی مساله در یک چند وجهی بسته بسیار مشکل تر از بهینه سازی مساله در یک منطقه موجه بیضی شکل توسعه یک روش حل برای مساله بر پایه این نکته با حل مجموعه ای از مساله های بهینه سازی با منطقه موجه بیضی شکل آغاز حل مساله با یک نقطه موجه داخلی مساله X0 > 0 و ایجاد یک بیضی مانند S0 به مرکزیت X0 داخل منطقه موجه 15 15

برنامه ریزی خطی پیشرفته (21715 ( Affine scaling methods بهینه سازی مساله در فضای S0 و پیدا کردن نقطه جدید مانند X1 انتخاب نقطه X1 به عنوان مرکز بیضی جدید و انجام مجدد فرایند قبلی 16 16

برنامه ریزی خطی پیشرفته (21715 ( Affine scaling methods تعبیر دیگر آغاز حل مساله از یک نقطه موجه داخلی تبدیل مساله برنامه ریزی خطی به مساله معادلی که در آن نقطه جاری مساله در حالت اولیه به روش steepest descent method به صورتی انتقال داده می شود که در منطقه موجه مساله تبدیل یافته در نزدیکی مرکز منطقه موجه قرار بگیرد. فرض کنید روی یک نقطه موجه داخلی مربوط به مساله اولیه هستیم. 17 17

برنامه ریزی خطی پیشرفته (21715 ( مساله های برنامه ریزی غیر خطی: استفاده از روش نیوتن برای تعیین جهت حرکت به سمت جواب بهینه در مساله های برنامه ریزی خطی از آنجا که جهت گرادیان همواره ثابت است (برابر با ضرایب تابع هدف) مقادیر ماتریس هیشین برابر با صفر بوده و لذا جهت نیوتن قابل تعریف نیست. در این حالت جهت –C جهتی است که دارای سریع ترین کاهش در مقدار تابع هدف است. 18 18

برنامه ریزی خطی پیشرفته (21715 ( به منظور حفظ موجه بودن، این جهت به روی فضای ماتریس A تصویر می شود. اگر رتبه ماتریس A برابر با تعداد سطرها باشد، تصویر بردار گرادیان به روی منطقه موجه حاصل از ماتریس A از رابطه زیر بدست می آید: P = I – AT(AAT)-1A تصویر بردار گرادیان در منطقه موجه برابر است با: Cp = -Pc 19 19

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

برنامه ریزی خطی پیشرفته (21715 ( اگر نقطه کنونی نزدیک مرزهای منطقه موجه (تعیین شده توسط متغیرهای غیر منفی) باشد نمی توان انتظار بهبود قابل توجه ای در مقدار تابع هدف داشت. 21 21

برنامه ریزی خطی پیشرفته (21715 ( روش ارایه شده در حالتی که نقطه کنونی در نزدیکی مرکز منطقه موجه باشد دارای عملکرد بهتری است. با توجه به این ایده اساس روش Affine بر پایه انتقال مساله برنامه ریزی خطی به یک مساله معادل است که در آن نقطه کنونی در وضعیتی نزدیک تر به مرکز قرار گیرد. در این حالت طول قدم حرکت شده برپایه تصویر بردار گرادیان در مساله انتقال یافته محاسبه می شود. 22 22

برنامه ریزی خطی پیشرفته (21715 ( خصوصیت یک نقطه داخلی این است که تمام مقادیر جواب گسترده آن بزرگتر از صفر باشند. به عنوان مثال نقطه ای مانند e = (1, 1,…, 1) یک نقطه داخلی ایده ال است زیرا فاصله آن از تمامی مرزها مساوی است. به منظور انتقال نقطه ای مانند xk در داخل منطقه موجه به نقطه e مقیاس مساله را با تقسیم آن به اجزای نقطهxk عوض می کنیم. 23 23

برنامه ریزی خطی پیشرفته (21715 ( برای انتقال یک نقطه دلخواه مانند xk به نقطه ای مانند e بصورت زیر عمل می کنیم: X = diag (xk) سپس با مقیاس بندی مجدد نقطه ها بصورت زیر با انتقال نقطه xk به نقطه e متغیرهای x به متغیرهای جدید انتقال داده می شوند. 24 24

برنامه ریزی خطی پیشرفته (21715 ( این انتقال یک نوع انتقال affine scaling است و X در واقع Scaling Matrix نام دارد. توجه کنید: 25 25

برنامه ریزی خطی پیشرفته (21715 ( فرض کنید مساله اصلی در فضای x بصورت زیر باشد: Min z = cTx Ax=b x≥ 0 در این حالت مساله انتقال یافته بصورت زیر قابل ارایه است: 26 26

برنامه ریزی خطی پیشرفته (21715 ( با این انتقال نقطه کنونی در مساله به نقطه e منتقل می شود. در این مرحله حرکت در جهت تصویر steepest-descent بصورت زیر خواهد بود: قدم بعدی در فضای انتقال یافته در امتداد به شرح زیر خواهد بود: 27 27

برنامه ریزی خطی پیشرفته (21715 ( در رابطه اسلاید قبلی α برابر یک طول قدم مناسب است. مرحله آخر هر تکرار تصویر مجدد نقطه جدید در مساله جدید است که بصورت زیر انجام می شود. 28 28

برنامه ریزی خطی پیشرفته (21715 ( بطور خلاصه الگوریتم affine scaling به قرار زیر است: در هر تکرار: مساله اصلی متعلق به فضای x را از روش affine scaling به مساله معادل آن در فضای انتقال دهید. در اثر این انتقال نقطه xk به نقطه e منتقل می شود. از نقطه e در راستای تصویربردار گرادیان در فضای حرکت کنید به نحوی که از منطقه موجه خارج نشوید. نقطه جدید بدست آمده در فضای را به فضای اصلی مساله در فضای xانتقال دهید. 29 29

برنامه ریزی خطی پیشرفته (21715 ( می توان این عملیات را بطور کامل به روی متغیرهای اصلی مساله بصورت زیر انجام داد. اگر خواهیم داشت: 30 30

برنامه ریزی خطی پیشرفته (21715 ( از آنجا که داریم: رابطه فوق بیانگر تصویر رابطه قبلی در فضای AX است. لذا می توان گفت که جهت x∆ عملا همان جهت primal affine scaling است. روش های مختلفی برای تعیین مقدار α (طول قدم) وجود دارد. 31 31

برنامه ریزی خطی پیشرفته (21715 ( از آنجا که تابع هدف با نرخ ثابتی در جهت x∆ نزول می کند در اغلب پیاده سازی ها سعی می شود که طول قدم تا حد ممکن بلند بوده و تا نزدیکی های منطقه موجه باشد. توجه کنید که در مرزها تعدادی از متغیرهای تصمیم دارای مقدار صفر بوده و در این روش تعریف نشده اند. در این حالت ها مقدار α از رابطه زیر قابل محاسبه است: α = γαmax در رابطه فوق αmax بیانگر طول قدمی است که به مرز منطقه موجه می رسد و 0< γ <1 که معمولا معادل 0.9 و یا 0.99 مدنظر گرفته می شود. 32 32

برنامه ریزی خطی پیشرفته (21715 ( از آنجا که αmax بزرگترین طول قدمی است که در رابطه زیر صدق می کند: مقدار آن از رابطه زیر قابل محاسبه است: در حالتی که x≥0∆ و یا x≠0∆ باشد مساله مورد بحث نامحدود خواهد بود. 33 33

برنامه ریزی خطی پیشرفته (21715 ( در صورتی که شرایط بهینگی با تفاوت جزیی دو جواب متوالی مشاهده شود اجرای الگوریتم به پایان می رسد. این مساله هنگامی اتفاق می افتد که جواب موجه دوگانی با duality gap نزدیک به صفر مشاهده شود. اگر فرض کنیم مساله مورد نظر تبهگن نباشد می توان جواب دوگان را تخمین زد. اگر در این صورت جواب (yk, sk) در صورتی که xk به جواب بهینه میل کند به جواب بهینه مساله دوگان میل خواهد کرد. 34 34

برنامه ریزی خطی پیشرفته (21715 ( مثال: مساله برنامه ریزی خطی زیر را به روش primal affine method حل کنید: Minimize z= -x1-2x2 -2x1+x2 ≤ 2 -x1+2x2 ≤ 7 x1 ≤ 3 x1, x2 ≥ 0 35 35

برنامه ریزی خطی پیشرفته (21715 ( جواب بهینه مساله بر اساس الگوریتم سیمپلکس بصورت زیر محاسبه می شود: Z X1 X2 S1 S2 S3 b 1 2 -2 -1 7 3 5 -4 36 36

برنامه ریزی خطی پیشرفته (21715 ( Z X1 X2 S1 S2 S3 b 1 -1.33 5/3 -9 -1/3 2/3 4 -2/3 1/3 2 -1 -2 -13 1/2 5 3 -1/2 3/2 37 37

برنامه ریزی خطی پیشرفته (21715 ( پس از اضافه کردن متغیر های کمکی ماتریس محدودیت ها و ضریب های تابع هدف بصورت زیر خواهند بود: فرض کنید از نقطه داخلی x0 = (0.5, 0.5, 2.5, 6.5, 2.5)T به عنوان نقطه ابتدایی شروع می کنیم. مقدار تابع هدف در این نقطه برابر با -1.5 است. 38 38

برنامه ریزی خطی پیشرفته (21715 ( با توجه به این محاسبه ها ماتریس Scaling ابتدایی بصورت زیر خواهد بود: 39 39

برنامه ریزی خطی پیشرفته (21715 ( با فرض γ=0.999 مقدار α=8.8105 خواهد شد. لذا نقطه جدید بصورت زیر خواهد بود: مقدار تابع هدف در این تکرار برابر با -12.31 خواهد بود. 40 40

برنامه ریزی خطی پیشرفته (21715 ( بعد از سه تکرار تقریب جواب ها بصورت زیر خواهد بود: 41 41

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