برمجة خطية

عودة للموسوعة

برمجة خطية

البرمجة الخطية Linear programming من الأساليب الأساسية والمهمة التي تساعد متخذي القرار على اتخاذ قرارات سليمة وبطريقة فهمية، أسلوب البرمجة الخطية. وتعد مسائل البرمجة الخطية جزءاً من مسائل البرمجة الرياضية التي تضم الخطية منها واللاخطية؛ ثم إذا البرمجة الرياضية هي بدورها جزء من موضوع أكثر شمولية، يسمى ببحوث العمليات، أوالبحث العملياتي، التي تتعلق جميعها بمسائل التنظيم والإدارة ومسائل النقل والزراعة والصناعة....الخ.

إن البرمجة الرياضية الخطية هي مسألة تفضيل، ونقصد هنا بمسائل التفضيل تلك المسائل الرياضية التي تبحث عن تعظيم أوتقليل دالَّة (تابع) خطية موضوعة إلى مقيدات رياضية خطية أيضاً.

التاريخ

خلال الحرب العالمية الثانية، وبنتيجة محدودية الموارد العسكرية، كلفت الحكومة البريطانية فريقاً من كبار الفهماء دراسة مسائل كيفية توزيع مواردها العسكرية، وما يتناسب مع أفضل وضع دفاعي جوي وبري، ولقد أطلق على دراسات هذا الفريق اسم بحوث العمليات أوالبحث العملياتي. ثم أخذت هذه التسمية تطلق على كافة الأبحاث والدراسات التي تتعامل مع مسائل البرمجة أوالتوزيع ومسائل اتخاذ القرار. وقد حثَّت النتائج المشجعة لفريق بحوث العمليات البريطاني الإدارة العسكرية الجوية الأمريكية على تكوين فريق مشابه للقيام بالدراسات اللازمة في هذا المجال. فقد وجدت هذه الفرق حتى أساليب مسائل التفضيل التقليدية، كطريقة مضاريب لاغرانج مثلاً، ليست ذات فائدة كبيرة في حل مسائل البرمجة الخطية، مما استوجب إيجاد أساليب أكثر فاعلية في عام 1947 م حين طور جورج دانتزغ Dantzig عضوالفريق الأمريكي لبحوث العمليات الطريقة المبسطة (السمبلكس) لحل مسألة البرمجة الخطية؛ لكن لم تنشر تفاصيل هذه الطريقة إلا في عام 1956م. وبعد نشر الطريقة المبسطة (السمبلكس) وقع تسارع كبير في استخدام وتطوير البرمجة الخطية. ومن المشاركات التطويرية المهمة في ذلك المجال أعمال جال Gal التي قام بها وحده أوبمشاركة آخرين معه، إذ قاموا بصَوْغ المسألة الثنائية لمسألة البرمجة الخطية. وفي أيامنا هذه نجد حتى البرمجة الخطية تستخدم في مختلف المجالات الصناعية والاقتصادية والخدمية والعسكرية، وحيثما توجد عدة موارد محدودة الكمية مشهجرة في تشكيل أوإنتاج سلعة أوتقديم خدمة معينة.

إن المسائل الاقتصادية أوالفهمية، والتي يمكن حتى تصاغ كمسألة برمجة خطية، يجب حتى يتوفر فيها الأساسيات التالية:

1 ـ وجود غاية أوهدف يراد الوصول إلية مثل تحقيق كسب أعظمي أوتحقيق كلفة أصغرية أواقتصاد أعظمي في الوقت أوالجهد وغير ذلك. ويعبر عن ذلك بتابع رياضي خطي نسميه بتابع الهدف أوتابع الربح في حالة تعظيم، أوبتابع الخسارة في حالة تقليل.

2 ـ وجود عدد كبير من المتحولات أوالمجاهيل التي يجب تحديد قيمها للوصول إلى الغاية المطلوبة، وتسمى هذه المتحولات بمتحولات القرار.

3 ـ وجود علاقات ارتباط خطية بين تلك المتحولات وتسمى هذه العلاقات بقيود المسألة.

إذن البرنامج الخطي هواستمثال optimization (تعظيم أوتقليل) دالَّة خطية، تحت قيود خطية. ويمكن رياضياً حتى نعبر عن ذلك بالشكل التالي:

حيث المجموعة {I={1,2,...,m تعبر عن مجموعة الأدلة الكلية للقيود، والمجموعة I0 هي مجموعة جزئية من I وتعبر عن مجموعة الأدلة التي تصف قيود المساواة للمسألة، والمجموعة -I هي مجموعة جزئية من I وتعبر عن مجموعة الأدلة التي تصف قيوداً أصغر أوتساوي للمسألة، والمجموعة +I هي مجموعة جزئية من I وتعبر عن مجموعة الأدلة التي تصف قيوداً أكبر أوتساوي للمسألة.

نفترض حتى التوابع

هي توابع خطية. إنه ليس قيداً إذا افترضنا حتى جميع المتحولات (Xi(i=1,....,n ليست سالبة لأنه إذا عثر متحول xj يأخذ قيماً حقيقية لا على التعيين موجبة أوسالبة، يمكننا الاستعاضة عنه بالفرق -xj+- xj حيث المتحولان +xj و-xj يأخذان قيماً غير سالبة . أما إذا عثر متحول سالب من الشكل 0£ xj فإنه يمكننا أيضاً إبداله بمتحول حديث من الشكل yj=-xj.


آلية وضْع البرنامج الرياضي الخطي

لوضع البرنامج الرياضي الخطي يجب اتباع المراحل التالية:

1 ـ تحديد المتحولات التي يجب علينا إيجاد قيمها (متحولات القرار) وتمثيلها برموز جبرية.

2 ـ تحديد جميع القيود والعلاقات الممكنة التي تربط بين هذه المتحولات، ويعبَّر عن ذلك بمعادلات خطية أومتراجحات بحيث تكون هذه القيود خطية.

3 ـ تحديد تابع الهدف وتمثيله بتابع خطي بالنسبة للمتحولات، وتحديد ما إذا كان الهدف من المسألة تعظيم التابع الهدفي أوتقليله.

ويمكننا حتى نخط البرنامج الرياضي الخطي بطريقة المصفوفات كما يلي:

حيث عدد المتحولات غير المعلومة هوn وعدد القيود m وA مصفوفة القيود m×n وc متجهة عمود بـ n مركبة وb متجهة عمود بـ m مركبة أيضاً وT يرمز إلى المنقول.

إن حل البرنامج السابق يعني إيجاد القيمة الحقيقية التي تعطي التابع قيمة أعظميه (قيمة مثلى للتابع) على منطقة القيود، التي تسمى عادة منطقة الإمكانات. أما إذا أردنا حتى نفتش عن النقطة (قيم مثلى للمتحولات) من منطقة الإمكانات، والتي توافق القيمة فنخط المسألة على الشكل التالي:

ويجب الإشارة هنا إلى حتى العلاقة التالية في مسائل التفضيل دوماً سليمة:

وهذا يعني حتى الخوارزميات الموضوعة لحل البرامج الرياضية الخطية في حالة تعظيم، هي نفسها تصلح لحل البرامج الرياضية الخطية في حالة تقليل، وذلك بالاستفادة من العلاقة السابقة.

الثنائية في البرمجة الخطية

A series of linear constraints on two variables produces a region of possible values for those variables. Solvable problems will have a feasible region in the shape of a simple polygon.


بوجه عام ودوماً يوجد إمكان اشتقاق برنامج رياضي خطي من جميع برنامج رياضي خطي آخر مفروض، نسميه عادة بالبرنامج الثنائي أوبالبرنامج المرافق للبرنامج الرياضي الخطي الأساسي. وربماقد يكون حل البرنامج الثنائي أسهل من البرنامج الأساسي في بعض الحالات، ويمكن حتى يفيد أيضاً في صياغة خوارزميات بُغْية إيجاد حلول لبرامج رياضية خطية، يطلب أحياناً حتى تكون حلولها المثلى تنتمي إلى مجموعة الأعداد السليمة بدلاً من مجموعة الأعداد الحقيقية.

والبرنامج الخطي الثنائي للبرنامج الرياضي الخطي التالي:

حيث

يعطى كما يلي:

حيث

إذا كان للمسألة (P) حل مثالي ولنرمز له بـ وكذلك للمسألة حل مثالي ولنرمز له بـ فعندئذقد يكون لدينا.

أهم الخوارزميات لحل البرامج الرياضية الخطية

من أبرز الطرق وأسهلها على الإطلاق لحل البرامج الرياضية الخطية، طريقة السمبلكس (1956) لـ دانتزغ Dantzig وقد بقيت هذه الطريقة مطبقة لسهولة التعامل معها على الرغم من ازدياد تعقيديتها (تعبر التعقيدية عن عدد العمليات الحسابية الأعظمي للوصول إلى الحل المثالي للمسألة) وتقدر تعقيدية طريقة السمبلكس

بـ

عملية حسابية وهي تعقيدية أسية. لكن في عام 1979م اقترح عالم روسي كاشيان (Khachian) طريقة جديدة لحل البرامج الرياضية الخطية بتعقيدية جبرية (O(n7L حيث n ترمز إلى عدد متحولات القرار وL ترمز إلى عدد البتات bits اللازمة لتوصيف معطيات الدخل للمسألة الخطية (c,b,A) وهذه الكيفية تعهد بطريقة القطوع الناسيرة. إذا هذه الطريقة مبنية بناء رياضياً مبنادىً، وهي تتفوق على طريقة السمبلكس نظرياً، لكن في المسائل العملية بقيت السمبلكس أكثر استعمالاً وموثوقية، لأن طريقة كاشيان لم تعط نتائج أكثر دقة وقناعة في المسائل العملية الحقيقية. في عام 1984م حصل تحول كبير في البرمجة الخطية، إذ نشر العالم الأمريكي كارماركار (Karmarkar) طريقتة الشهيرة ذات التعقيدية الجبرية (O(n3.5L وعلى ما يبدو، هذه الطريقة واعدة إذ عولج بها كثير من المسائل التطبيقية، ولا سيما في البحوث البترولية، وأعطت نتائج ممتازة. لكن مع جميع هذا سيبقى أمام طريقة السمبلكس أيضاً أيام جميلة بسبب سهولتها الفائقة.

مثال1: مسألة المزج

يراد تحضير منتج ذي هجريب معين بحيث تحتوي الواحدة منه على الكميات (bi(i=1,...,m من العناصر (Bi(i=1,...,m كحد أدنى ويمكن تحضير هذا المنتج من المواد (Aj(j=1,...,n حيث تحتوي الواحدة من Aj على الكمية aij من العنصر Bi وتكلف الواحدة من Aj المبلغ cj ويراد تحضير هذا المنتج بأقل كلفة ممكنة.

يصاغ البرنامج الخطي لهذه المسألة على الشكل التالي:


مثال2: مسألة التنظيم الغذائي

اقترح طبيب على مريضه حتى يتناول يومياً كحد أدنى كميات معينة bi من فيتامينات أومقويات أساسية i=1,2,...,m)Bi) ضرورية لجسمه. يريد هذا المريض حتى يحصل على هذه الفيتامينات بتناوله الخضراوات والفواكه المتوفرة في الأسواق المحلية ولنرمز لهذه المواد بـ (Aj(j=1,...,n . فرضا حتى ثمن الوحدة الواحدة (مقدرة بـ غ أوكغ او....الخ) من المادة Aj هوcj وحدة نقدية حيث تحتوي هذه الوحدة على الكمية aij من الفيتامين الأساسي الأول Bi وa2j من الفيتامين الأساسي الثاني B2 إلى غير ذلك ...

والمطلوب في هذه المسألة تحديد الكميات (xj(j=1,...,n الواجب تناولها من المواد الغذائية من قبل المريض للحصول على تنظيم غذائي سليم يحقق طلب الطبيب من جهة وبأقل التكاليف من جهة أخرى.


مثال3: مسألة تنظيم الإنتاج

لنفترض حتى معملاً ينتج الأنواع (Aj(j=1,...,n من مادة معينة قابلة للترويج، حيث يجري في عملية الإنتاج استخدام المواد الأولية (Bi(i=1,...,m المتوفر منها في المعمل وفي الوقت الحاضر الكميات (bi(i=1,...,m. إذا كانت الوحدة الواحدة من المنتج Aj تستهلك من المادة الأولية Bi الكمية aij وإذا كان الربح الصافي من إنتاج تلك الوحدة هو فالمطلوب تنظيم الإنتاج بحيث يحقق المعمل ربحا حقيقياً أعظمياً.


أنظر ايضا

هناك كتاب ، A-level Mathematics/D1/Linear Programming، في فهم الخط.


  • Dynamic programming
  • Simplex algorithm, used to solve LP problems
  • Quadratic programming, a superset of linear programming
  • Leonid Kantorovich, one of the founders of linear programming
  • Shadow price
  • MPS file format
  • MIP example, job shop problem
  • INFORMS Institute for Operations Research and the Management Sciences
  • see also the "External links" section below

المصادر

الموسوعة العربية


قراءات اخرى

  • Mark de Berg, Marc van Kreveld, Mark Overmars, and Otfried Schwarzkopf (2000). Computational Geometry (2nd revised ed.). Springer-Verlag. ISBN .CS1 maint: multiple names: authors list (link) Chapter 4: Linear Programming: pp.63-94. Describes a randomized half-plane intersection algorithm for linear programming.
  • V. Chandru and M.R.Rao, Linear Programming, Chapter 31 in Algorithms and Theory of Computation Handbook, edited by M.J.Atallah, CRC Press 1999, 31-1 to 31-37. [1]
  • V. Chandru and M.R.Rao, Integer Programming, Chapter 32 in Algorithms and Theory of Computation Handbook, edited by M.J.Atallah, CRC Press 1999, 32-1 to 32-45. [2]
  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN 0-262-03293-7. Chapter 29: Linear Programming, pp.770-821.
  • Michael R. Garey and David S. Johnson (1979). Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman. ISBN . A6: MP1: INTEGER PROGRAMMING, pg.245.
  • Bernd Gärtner, Jiří Matoušek (2006). Understanding and Using Linear Programming, Berlin: Springer. ISBN 3-540-30697-8
  • Jalaluddin Abdullah, Optimization by the Fixed-Point Method, Version 1.97. [3].
  • Alexander Schrijver, Theory of Linear and Integer Programming. John Wiley & sons, 1998, ISBN 0-471-98232-6
  • Michael J. Todd (February 2002). "The many facets of linear programming". Mathematical Programming 91 (3). 
  • Vazirani, Vijay V. (2001). Approximation Algorithms. Springer-Verlag. ISBN .


وصلات خارجية

  • Guidance on Formulating LP problems
  • 0-1 Integer Programming Benchmarks with Hidden Optimum Solutions
  • Mathematical Programming Glossary
  • A Tutorial on Integer Programming
  • The linear programming FAQ
  • Linear Programming Survey OR/MS Today
  • Linear Programming: Guide to Formulation, Simplex Algorithm, Goal Programming and Excel Solver examples
  • George Dantzig
Software
  • AIMMS Optimization Modeling AIMMS — include linear programming in industry solutions (free student license available);
  • Calc Optimization Solver — Kohei Yoshida’s spreadsheet add-in for OpenOffice.org Calc
  • CGAL — The Computational Geometry Algorithms Library includes a linear solver, which is exact and optimized for problems with few constraints or few variables
  • The Parma Polyhedra Library includes a MIP solver in exact precision
  • COIN-OR — COmputational INfrastructure for Operations Research, open-source library
  • GAMS — General Algebraic Modeling System
  • Cplex — Commercial library for linear programming
  • GLPK — GNU Linear Programming Kit; open source LP software
  • Gurobi — Parallel linear and mixed integer programming library
  • IMSL Numerical Libraries — Commercial libraries of math and statistical algorithms
  • HOPDM — Higher Order Primal Dual Method
  • LINDO — LP, IP, Global solver/modeling language
  • lp_solve — open-source solver with C library
  • MOSEK — Optimization software for LP,IP,QP,SOCP and MIP. Free trial is available. Free for students.
  • Mathematica — General technical computing system includes large scale linear programming support
  • OptimJ — Java-based algebraic modeling language; free evaluation version.
  • Premium Solver — Spreadsheet add-in
  • WhatsOP — LP modeling inستة languages, made practical with easy "what-ifs" for students. Free Trial.
  • SAS — Includes optimization modeling language and solvers for LP, MILP, QP, and NLP
  • What's Best! — Spreadsheet add-in
  • Xpress-MP — Optimization software free to students
  • Vanguard Linear Programming Optimization Software
  • QSopt Optimization software for LP (free for research purposes).
  • Microarray Data Classification Server (MDCS) based on linear programming
  • Linear programming and linear goal programming A freeware program for MS-DOS
  • Simplex Method Tool A quick-loading web page
  • IBM's article on GLPK A technical article on GLPK with an introduction to Linear Programming by IBM
  • Orstat2000 — Includes easy-to-use modules for linear and integer programming (free for educational purposes).
  • Trilinos is a set of scientific tools with a few linear and non-linear program solvers.
  • TOMLAB provides optimization solvers in MATLAB, AMPL and .NET.
  • SCIP It can be used as a standalone program to solve mixed integer programs given in MPS Format.
  • GIPALS32.DLL — Linear programming callable library for Windows (free trial and academic license available).
  • CVXOPT — Python library that can be used for linear, second-order cone and semidefinite programming (open source, GPLv3)
تاريخ النشر: 2020-06-04 14:08:31
التصنيفات: Articles lacking sources from June 2008, Articles with invalid date parameter in template, All articles lacking sources, CS1 maint: multiple names: authors list, Wikipedia external links cleanup, Wikipedia spam cleanup, مقالات تستعمل قوالب صيانة غير مؤرخة, Exclude in print, Mathematical optimization, Operations research

مقالات أخرى من الموسوعة

سحابة الكلمات المفتاحية، مما يبحث عنه الزوار في كشاف:

آخر الأخبار حول العالم

الأمم المتحدة: الأمراض المعدية تهدد نازحي غزة - أخبار السعودية

المصدر: صحيفة عكاظ - السعودية التصنيف: مجتمع
تاريخ الخبر: 2023-11-26 12:24:45
مستوى الصحة: 53% الأهمية: 63%

«الحرية والتغيير» تنفي فرية «طلب الحصانة» وتؤكد التواصل مع طرفي الحرب

المصدر: صحيفة التغيير - السودان التصنيف: سياسة
تاريخ الخبر: 2023-11-26 12:23:48
مستوى الصحة: 49% الأهمية: 65%

كم من المال يحتاج الإنسان ليحقق السعادة من وجهة نظر 4 أجيال السعودية

المصدر: جريدة الوطن - السعودية التصنيف: إقتصاد
تاريخ الخبر: 2023-11-26 12:25:04
مستوى الصحة: 50% الأهمية: 70%

التحذير من إهمال أعراض شلل الأحبال الصوتية السعودية

المصدر: جريدة الوطن - السعودية التصنيف: إقتصاد
تاريخ الخبر: 2023-11-26 12:24:58
مستوى الصحة: 49% الأهمية: 64%

وزارة الدفاع تعلن وظائف شاغرة في قوات الدفاع الجوي - أخبار السعودية

المصدر: صحيفة عكاظ - السعودية التصنيف: مجتمع
تاريخ الخبر: 2023-11-26 12:24:42
مستوى الصحة: 46% الأهمية: 61%

المغربي أشرف العيدي يفوز بالميدالية الذهبية ويتأهل إلى أولمبياد باريس

المصدر: أخبارنا المغربية - المغرب التصنيف: سياسة
تاريخ الخبر: 2023-11-26 12:23:55
مستوى الصحة: 67% الأهمية: 83%

بعد هجوم على ثكنات للجيش.. سيراليون تفرض حظر التجول - أخبار السعودية

المصدر: صحيفة عكاظ - السعودية التصنيف: مجتمع
تاريخ الخبر: 2023-11-26 12:24:48
مستوى الصحة: 47% الأهمية: 63%

الخريف يرعى مجلس صناعيي الرياض.. الأحد المقبل السعودية

المصدر: جريدة الوطن - السعودية التصنيف: إقتصاد
تاريخ الخبر: 2023-11-26 12:25:01
مستوى الصحة: 55% الأهمية: 69%

أطباء شمال كردفان يرهنون عودة العمل بمحاسبة المعتدين على الكوادر

المصدر: صحيفة التغيير - السودان التصنيف: سياسة
تاريخ الخبر: 2023-11-26 12:23:53
مستوى الصحة: 59% الأهمية: 68%

وزارة الدفاع تعلن عن وظائف شاغرة في 3 مناطق السعودية

المصدر: جريدة الوطن - السعودية التصنيف: إقتصاد
تاريخ الخبر: 2023-11-26 12:24:55
مستوى الصحة: 56% الأهمية: 55%

البرهان يغادر إلى جيبوتي رفقة وزير الخارجية ومدير المخابرات

المصدر: صحيفة التغيير - السودان التصنيف: سياسة
تاريخ الخبر: 2023-11-26 12:23:51
مستوى الصحة: 57% الأهمية: 56%

مصدر أمني.. يدحض مزاعم الجمعية المغربية لحقوق الإنسان.

المصدر: موقع الدار - المغرب التصنيف: مجتمع
تاريخ الخبر: 2023-11-26 12:26:15
مستوى الصحة: 58% الأهمية: 70%

ضبط مقيم مخالف لنظام البيئة في مكة السعودية

المصدر: جريدة الوطن - السعودية التصنيف: إقتصاد
تاريخ الخبر: 2023-11-26 12:24:54
مستوى الصحة: 59% الأهمية: 61%

رمزي وجبران يعلقان على الهزيمة المفاجئة أمام غالاكسي البوتسواني

المصدر: أخبارنا المغربية - المغرب التصنيف: سياسة
تاريخ الخبر: 2023-11-26 12:23:57
مستوى الصحة: 62% الأهمية: 81%

دراسة..الأزواج الذين يملكون حساب مصرفي مشترك هم الأكثر سعادة السعودية

المصدر: جريدة الوطن - السعودية التصنيف: إقتصاد
تاريخ الخبر: 2023-11-26 12:24:53
مستوى الصحة: 47% الأهمية: 70%

تحميل تطبيق المنصة العربية