Table of Contents
درک برنامه نویسی Integer در مهندسی
برنامه نویسی Integer (IP) یک کلاس بهینه سازی ریاضی است که در آن برخی یا همه متغیرهای تصمیم گیری محدود به تنها مقادیر صحیح هستند.در مهندسی، این نیاز به طور طبیعی هنگامی که هر تصمیمی شامل انتخاب های گسسته می شود: چند واحد برای تولید، که اجزای انتخاب، باز کردن یک تاسیسات، یا چه مسیر مسیریابی برای اختصاص دادن.
مهندسان با IP در زمینه های مختلف مانند طراحی ساختاری (بخش های پرتوی از کاتالوگ های مجزا)، برنامه ریزی شبکه برق (تعهد واحد و گسترش انتقال)، سنتز فرآیند شیمیایی (اندازه تجهیزات به موقع و تنظیمات) و برنامه ریزی مسیر هوافضا (به عنوان نشانه گیری اسلات های IP) مواجه می شوند.حتی زمانی که فیزیک یا اقتصاد زیرمجموعه به طور مداوم ادامه دارد، نیاز به انتخاب از یک مجموعه محدود از اجزای استاندارد، به حل دقیق منابع ضروری (در صورت مشخص کردن شرایط منطقی) دارند.
چرا روش های دقیق تبدیل به Imible می شوند
الگوریتم های دقیق سنتی برای برنامه نویسی صحیح - برونش و ورودی، شاخه و برنامه نویسی پویا - به طور سیستماتیک پیدا کردن بهینه سازی جهانی است.آنها با امکانات به طور سیستماتیک در یک روش ساختار یافته کار می کنند - شاخه های ⁇ با استفاده از محدودیت های ناشی از آرامش برنامه نویسی خطی، با این حال، برای نمونه های بزرگ با استفاده از یک مشکل بودجه دقیق و پیچیده، حتی ممکن است به طور چشمگیری در حال تنظیم دقیق در سیستم های مهندسی IP باقی بمانند.
علاوه بر این، حل دقیق به ساختار مسئله حساس هستند: IP های بسیار متقارن، کسانی که دارای محدودیت های برابری هستند، یا کسانی که دارای محدودیت های غیر خطی (مانند شرایط دوگانه) هستند، اغلب با سرعت فعلی و قوی از قابلیت های محرک این تفاوت ها را در مهندسی شکست می دهند، مشکلات اغلب شامل ویژگی های پیچیده مانند ثانیه-order] مخروط پیشرفته یا [F] [F] است که تضمین می کند.
پیشرفته Heuristics: یک Diveer
Heuristics for integer می تواند در ساخت و ساز اکتشافی (تولید یک راه حل اولیه امکان پذیر) و بهبود اکتشافی ها (به طور غریزی اصلاح یک کاندید) طبقه بندی شود.در طول دو دهه گذشته، مجموعه ای از شتابمند پیشرفته، هر کدام با مکانیسم های متمایز برای فرار از بهینه محلی و کاوش فضای جستجو به طور موثر ظهور کرده است.
Metaheuristics: Guided Random Search
[[۱] [۱] [۱۰] [۱] [۱] [۱] [۱۰] [۱] [۱۰] [۱] [۱۰] [۱] [۱] [۱۰] [۱] [۱۰] [۱] [۱۰] [۱۰] [۱۰] [۱۰]] [۳]] [FLT: ۴] جستجو و یا روش های خنک کننده محلی را به تدریج می پذیرد.
این روش ها در مهندسی محبوب هستند زیرا آنها به راحتی می توانند به طور موازی، تنها نیاز به ارزیابی عملکرد (بدون گرادیان) دارند و می توانند محدودیت های شبکه سیاه جعبه را کنترل کنند.[۳][۳][۳][۳][۳][۳][۳] که هدف آن محاسبه محدودیت های کلیدی است.
جستجوی همسایگی متغیر (VNS)
VNS به طور سیستماتیک از ایده تغییر ساختارهای محله در طول جستجو بهره برداری می کند. [۱] شروع از یک راه حل اولیه، VNS یک توالی از حرکت در محله های به طور فزاینده دور (shaking) و سپس جستجو محلی در بهترین راه حل فعلی را انجام می دهد.در مشکلات مهندسی مانند vehicle با پنجره های زمان یا [۲] چیدمان ثابت نمی تواند به طور کلی آن را از هم جدا کند.
جستجوی همسایگی بزرگ (LNS)
LNS به ویژه هنگامی که یک حل کننده دقیق را می توان در یک مشکل فرعی استفاده کرد، روش بخشی از راه حل فعلی را از بین می برد (به عنوان مثال، 20 درصد از تکالیف صحیح را حذف می کند) و سپس آن را به طور بهینه با استفاده از یک IP کوچک یا برنامه نویس محدود می تواند برنامه نویسی LLT مانند برنامه ریزی خدمه (FLT:0airline) را حل کند.
آرامش و دور زدن با رفع
به جای حل ساده آرامش LP و گرد، شتاب های پیشرفته از حل آن استفاده می کنند: LP را حل کنید، برخی از متغیرهای را به مقادیر صحیح بر اساس نتایج نیمه کاره اصلاح کنید (به عنوان مثال، مقادیر نزدیک به 0 یا 1)، حل LP کاهش یافته و تکرار کنید.این [F:0Feas Pumpibility]F[۳:1، اغلب روش های برنامه نویسی معمولی که به سرعت حل می شوند، می توانند با استفاده از متغیرهای صحیح و تکراری، حل شوند.
ویژگی های ترکیبی Heuristics: ترکیبی از قدرت
موثرترین رویکرد برای مهندسی پیچیده اغلب ترکیبی است که همورالیسم های مختلف را ادغام می کند یا ترکیبی از Heuristics با اجزای دقیق است، به عنوان مثال، یک الگوریتم الگوریتم نظری (GA + جستجوی محلی) یک جستجوی محلی برای هر راه حل کودک اعمال می کند، اطمینان حاصل می کند که جمعیت همیشه به صورت محلی قدرتمند است.
روش های ترکیبی به ویژه ارزشمند هستند زیرا آنها در مهندسی، که داده های مشکل اغلب تغییر می کنند (به عنوان مثال، پیش بینی های تقاضا به روز شده در ساعت)، هیبریدی می تواند برای بهره برداری از ساختارهای تکراری تنظیم شود.
برنامه های کاربردی در مهندسی: نمونه های بتنی
طراحی شبکه و انعطاف پذیری
طراحی شبکه مخابراتی و ابزار اغلب شامل انتخاب ظرفیت های لینک (چندین پهنای باند استاندارد) و راه های پشتیبان گیری برای بقا شکست ها است. مدل های برنامه نویسی Integer برای ] [برنامه ریزی شبکه قابل اطمینان [FLT 1] می تواند میلیون ها متغیر داشته باشد.
ساخت و ساز و Scheduling
در کارخانه ها، مشکل تولید ماشین آلات را به سلول ها تقسیم می کند تا حرکت سلول های بین سلولی را به حداقل برساند - یک IP پارتیشن بندی شده است. تحقیق از یک تب چند شروع استفاده کرد و با یک حافظه سازگار برای حل موارد با 200 دستگاه در کمتر از 20 ثانیه، مشخص کردن دقیق و حل کردن اندازه.
تخصیص منابع در عملیات ماهواره ای
برنامه ریزی وظیفه ماهواره ای باید مجموعه ای از مشاهدات (هر کدام نیاز به زمان خاص پنجره ها و قدرت) را به مدار ماهواره اختصاص دهد، این یک IP پیچیده با محدودیت های اولویت و زمان صحیح است. مخلوط ترکیبی ترکیبی که شبیه سازی شده با یک دورۀ نرم افزاری خطی است، در سیستم های زمینی عملیاتی مستقر شده است، که برنامه های نزدیک به بهینه سازی را برای صورت فلکی بیش از 50 ماهواره فراهم می کند.
ادغام با ماشین یادگیری
تحقیقات نوظهور (FLT:0) یادگیری ماشین (ML) را برای هدایت جستجوی اکتشافی ادغام می کند، به جای استفاده از اختلال عمومی، مدل های ML پیش بینی می کنند که تعمیر متغیر یا محله های امیدوار کننده بر اساس ویژگی های نمونه، پیش بینی کیفیت جستجو، (FLT:2) برای مثال زمان های مهندسی مکرر (برای مثال، باید یک نمونه های کوچک را پیش بینی کند.
مسیر های آینده
نسل بعدی Heuristics برای مهندسی IP احتمالا شامل الگوریتم های خود-adapting که پارامترهای آنلاین را تنظیم می کنند، حل کنندگان است که بهترین اکتشافی در پرواز را انتخاب می کنند، و کوانتومی روش های الهام گرفته [FLT2] را به سرعت پردازش داده های شبکه ای شبیه سازی شده است که او را به یک سیستم های هوشمند خاص محدود می کند.
استاندارد کتابخانه های معیار (به عنوان مثال، MIPLIB 2017 ) با اجازه مقایسه منصفانه شتاب داده است، زیرا نرم افزار مهندسی به طور فزاینده ای حل کننده های IP را به عنوان اجزای اصلی، تمایز بین "Heuristic" و "exact" محو می شود؛ حل های مدرن مانند Gurobi و CPLEX در حال حاضر بسیاری از استراتژی های پیش فرض تنظیم را به عنوان ابزار های ضروری است، به عنوان برش، به عنوان یک سیستم عامل مهم، و قابل توجه، به عنوان آنها نیاز است.
به طور خلاصه، Heuristics پیشرفته جایگزینی برای روش های دقیق نیست، بلکه یک زرادخانه مکمل است که به مهندسان اجازه می دهد تا با مشکلات که قبلا از دسترس بودند مقابله کنند، با درک چشم انداز متاheuristics، جستجو محله و هیبریدی، مهندسان می توانند برای چالش برنامه نویسی خاص خود، توسعه یا انتخاب کنند - به دست آوردن تعادل راه حل کیفیت و سرعت محاسباتی که نیاز مهندسی مدرن است.