برنامه نویسی خطی یا برنامه ریزی خطی. ساده ولی پر کاربرد

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

بگذریم. برنامه نویسی خطی رو اولین بار تو کتاب طراحی الگوریتم دیدم و سر سری از اون گذشتم، وقتی توی کار دیدم متوجه شدم عجب دنیایی هست. مهندسین صنایع اگر بخوان مساله ای رو حل کنن برنامه ریزی خطی رو مبدا کار قرار میدن. دقت کنید که مساله هایی با این روش حل میشن که هر زیر مساله خطی باشه یعنی توان و … نداشته باشه.

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

فرض کنید بخواید سود یک شرکت یا کارخانه رو بهینه کنید . بخواید بهش خط بدید که چطور محصول درست کنه. بخواید به مدیر عامل یک شرکت کمک کنید چطور به صورت بهینه استخدام کنه و از نیروی کارش استفاده کنه. به مدیران شرکت کمک کنید محصولات هدف دار تولید کنن و ….

توی این روش همه چیز به صورت معادلات ریاضی بیان میشه و چند روش برای حل این معادلات ریاضی استفاده میشه. دقت کنید که نهایتا رسیدن به نقطه بهینه هدف کلی کار هست و با روش های مختلف مثل گرافیکی یا حل دستگاه های معادلاتی یا حتی کد نویسی و یا روش هایی مثل ساخت جداول ماتریسی حل میشه. شما در حال مطالعه مطالب وبسایت http://research-moghimi.ir هستید. کلیت فرموله کردن اون هم میتونیم اینطوری بگیم که یک معادله هدف داریم که معمولا با Z نوشته میشه و قصد داریم این معادله رو مینیمم یا ماکزیمم کنیم. بخاطر همین به صورت max z=ax1+bx2+…+nxn نوشته میشه و این یعنی معادله من باید مینیمم یا در اینجا ماکزیمم بشه. دقت کنید که هر متغیر در اینجا یک متغیر در صورت مساله واقعی هست. مثلا می خواید محصول یک و دو رو طوری تولید کنید که هم ماده اولیه کم نیاد هم بیشترین سود رو در بیارید و هم به تقاضا پاسخ بدید.

توی برنامه ریزی خطی از طرفی ما یکسری محدودیت یا constraint داریم که اینها روی نتیجه نهایی اثر گذار هستن. تک تک این محدودیت ها رو به صورت یک معادله نمایش میدیم و این معادلات بر روی معادله نهایی اثر میزاره. مثلا میگیم تعداد تولید محصول اول باید حداکثر ۱۰۰۰ تا باشه و این رو به صورت x1<=1000 نمایش میدیم.

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

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

۳ Comments

Add a Comment

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


پاسخ من را به ایمیلم ارسال کن

مشاوره می خواهید؟ ما همیشه آنلاین هستیم. در هر حوزه ای در تلگرام یا واتس آپ با شماره تلفن 09367938018 ارتباط بگیرید
+