بدأتُ مناقشة البرمجة الخطية في المقالة السابقة وتعرفنا على مفهومها واستخداماتها، كما استعرضنا مثالا لمؤسسة صناعية تنتج منتجين وتريد أن تستخدم مواردها لتحقيق أعلى ربح. في هذه المقالة نتعرف على فوائد أكثر للبرمجة الخطية، كما نتعرف على استخداماتها في التجارة.
مثال: شخص يمتلك محلا تجاريا وهو يتاجر في ثلاث سلع فقط أ، ب، ج. ويريد ان يقرر الكمية التي يشتريها من كل سلعة في ضوء الآتي:
1- ثمن شراء كل سلعة على التوالي: 10، 12، 9
2- المخزون الحالي من كل سلعة على التوالي: 30، 20، 70
3- حدَّدَ المالك المخزون الأقصى لكل سلعة طبقا لطلب السوق كالتالي: 200، 220، 270
4- هناك علاقة بين مبيعات أ و ب ولذلك فإن مجموعهما ينبغي ألا يزيد عن 350
5- يريد المالك ألا يقل مخزون أي سلعة بعد الشراء عن 70 قطعة لكي يظل منافسا في المنتجات الثلاث
6- السيولة المتوفرة للشراء هي: 5500 جنيه
7- ثمن بيع كل سلعة على التوالي: 14، 15، 12
نبدأ في صياغة المسألة كالتالي:
س: عدد القطع الني سيشتريها من المنتج أ
ص: عدد القطع الني سيشتريها من المنتج ب
ع: عدد القطع الني سيشتريها من المنتج ج
دالة الهدف هي تعظيم الربحية كالتالي:
الربح = ربحية كل قطعة x عد دالقطع = 4 س + 3 ص + 3 ع
لاحظ أن الربحية = ثمن البيع – ثمن الشراء ……. (مع إهمال المصاريف للتبسيط)
القيود:
الحد الأدنى لشراء أ = 70 -30 = 40
الحد الأقصى لشراء أ = 200 – 30 =170
40 => س =< 170
الحد الأدنى لشراء ب = 70 -20 = 50
الحد الأقصى لشراء ب = 220 – 20 =200
50 => ص =< 200
الحد الأدنى لشراء ج = 70 -70 = 0
الحد الأقصى لشراء ج = 270 – 70 = 200
0 => ع =< 200
ينبغي ألا يزيد مجموع المنتجين أ و ب عن 350. أي (س+ مخزون أ + ص + مخزون ب) ينبغي ألا يزيد عن 350
س + 30 + ص + 20 =< 350
أي
س + ص =< 300
ينبغي ألا يتجاوز ثمن شراء كل لمنتجات 5500 جنيه
10 س + 12 ص + 9 ع =< 5500
نبدأ في وضع المسألة في إكسل كالتالي:
لاحظ أن الخلايا B5، C5، D5 هي س، ص، ع. الحد الادنى والأقصى لشراء كل سلعة تم وضعه على خطوتين للتوضيح ولكي لا تختلط المعادلات. العمود G يبين المعادلات المستخدمة وذلك باستخدام خاصية إظهار المعادلات وإنما ستكون قيمتهم في البداية صفرا.
نبدأ في الحل باستخدام Solver، وإن لم يكن ظاهرا في الشاشة عند اختيار قائمة Data فعليك بإضافته كما في المقالة السابقة.
لاحظ أن القيود تم وضعها بشكل مجمع حيث من الممكن أن نجمع عدة قيود إذا كانوا متتاليين في الترتيب وكلهم يحتوى نفس المقارنة مثل > أو <. ويمكن وضع كل واحد على حدة حسبما تريد.
نحصل على الحل كالتالي:
الحل الأمثل هو شراء 170 من أ و 130 من ب و200 من ج. لاحظ ان كل القيود تحققت. بهذا نكون قد حصلنا على الحل الأمثل.
نفترض أنه كان لدينا قيدا آخر وهو السعة التخزينية التي لا تتجاوز 600 متر مكعب، علما بأن حجم كل السلع على التوالي هي: 1، 1.2، 1.1 متر مكعب.
يمكننا أن نضيف هذا القيد كالتالي: (س + 30) + 1.2 (ص+ 20) + 1.1 ( ع + 70 ) <= 650
أي:
س + 1.2 ص + 1.1 ع <= 519
وبهذا تصبح المسألة والحل كالتالي:
لاحظ ان كمية ص قد انخفضت إلى 107 بينما بقيت س و ع كما هما في الحالة الأولى. لماذا؟ لكي يتم استغلال السعة التخزينية بما يحقق أعلى ربح .لاحظ أن ب له حجم تخزيني أكبر من ج بينما ربحيتهما متساوية. وقد تتساءل ولماذا لا نشتري أكثر من ع؟ لان الحد الأقصى هو 200. كما ترى فإن البرمجة الخطية تساعدنا في اختيار الحل الأمثل مع مراعاة قيود كثيرة ومتنوعة.
ما هي القيود الحاكمة لهذا الحل؟ أي ما الذي إذا تغير فإن الحل يتغير؟ هل كل القيود أم بعضها؟ يمكننا معرفة ذلك بأن نختار تقرير الحل Answer كما يلي:
فيظهر لنا التقرير في صفحة مستقلة تسمى Answer Report 1 كما يلي:
إن المعادلات في الصفوف: 7، 9، 15 هي حاكمة Binding وهي معادلات: الحد الأقصى لـ س و ع والمساحة التخزينية. هل هذا صحيح؟ نعم فنحن سنشتري الحد الأقصى لكل من س وع، ونحن نستغل كل المساحة التخزينية. معنى هذا أن أي تغير في هذه الشروط ولو بمقدار الواحد الصحيح يعني تغيرا مباشرا في الحل.
ماذا عن باقي الشروط؟ إنها ليست حاكمة أي أنها لو تغيرت فلن يتأثر الحل ولكن في حدود ما، فلو زاد التغير فستصبح مؤثرة في الحل. ما معنى هذا؟ انظر غلى العمود في أقصى اليمين، إنه يسمة Slack أي غير جاد أو أنه مهمل، والقيمة التي أمام كل شرط تعني أن هذا الشرط غير مؤثر حتى يتغير بهذه القيمة. فمثلا شرط الحد الأدنى لـ ص في الصف 11 هو غير مؤثر مالم يزيد بمقدار يزيد عن 57.5، ولو حاولت تغييره بأقل من ذلك فلن يتأثر الحل، ولكن جرب أن تزيده بـ 59 مثلا فستجد قيمة ص أصبحت 109 وستتغير ع إلى 198. وكذلك السيولة فإنها لا تؤثر ما لم تقل بما يزيد عن 710 جنيه. هذه خاصية أخرى من خواص البرمجة الخطية.
موضوعات ذات صلة:
رائع جدا، شكرا جزيلا لك.
أتمنى أن يكون هناك مواضيع متقدمة بهذا الخصوص.
تحياتي لك
إن شاء الله
شكرا
يرفع الله الذين ءامنوا منكم والذين أوتوالعلم درجات
صدق الله العظيم
نسئل الله أن يرفعك درجات بما علمت
جزاك الله خيرا م.سامح على هذا الموضوع المتعلق بالتجارة