Википедия

Линейное программирование

Линейное программирование — математическая дисциплина, посвящённая теории и методам решения экстремальных задач на множествах -мерного векторного пространства, задаваемых системами линейных уравнений и неравенств.

Линейное программирование (ЛП) является частным случаем выпуклого программирования, которое в свою очередь является частным случаем математического программирования. Одновременно оно — основа нескольких методов решения задач целочисленного и нелинейного программирования. Одним из обобщений линейного программирования является дробно-линейное программирование.

Многие свойства задач линейного программирования можно интерпретировать также как свойства многогранников и таким образом геометрически формулировать и доказывать их.

История

Математические исследования отдельных экономических проблем, математическая формализация числового материала проводилась ещё в XIX веке. При математическом анализе процесса расширенного производства использовались алгебраические соотношения, анализ их проводился с помощью дифференциального исчисления. Это давало возможность получить общее представление о проблеме.

Развитие экономики потребовало количественных показателей, и в 1920 годы был создан межотраслевой баланс (МОБ). Он-то и послужил толчком в деле создания и исследования математических моделей. Разработка МОБ в 19241925 годах в СССР повлияла на работы экономиста и статистика Василия Васильевича Леонтьева. Он разработал межотраслевую модель производства и распределения продукции.

В 1938 году Леонид Витальевич Канторович в порядке научной консультации приступил к изучению чисто практической задачи по составлению наилучшего плана загрузки лущильных станков (фанерный трест). Эта задача не поддавалась обычным методам. Стало ясно, что задача не случайная.

В 1939 году Леонид Канторович опубликовал работу «Математические методы организации и планирования производства», в которой сформулировал новый класс экстремальных задач с ограничениями и разработал эффективный метод их решения, таким образом были заложены основы линейного программирования.

Изучение подобных задач привело к созданию новой научной дисциплины линейного программирования и открыло новый этап в развитии экономико-математических методов.

В 1949 году американский математик Джордж Бернард Данциг разработал эффективный метод решения задач линейного программирования (ЗЛП) — симплекс-метод.

Термин «программирование» нужно понимать в смысле «планирования» (один из переводов англ. programming). Он был предложен в середине 1940-х годов Джорджем Данцигом, одним из основателей линейного программирования, ещё до того, как компьютеры были использованы для решения линейных задач оптимизации.

Метод внутренних точек был впервые упомянут в 1967 году.. Эти исследования были продолжены в том числе и отечественными учёными. В 1970-е годы В. Г. Жадану удалось получить основные результаты и разработать общий подход к построению методов внутренней точки для решения задач линейного и нелинейного программирования, основанный на преобразовании пространств; предложить барьерно-проективные и барьерно-ньютоновские численные методы.

Задачи

Общей (стандартной) задачей линейного программирования называется задача нахождения минимума линейной целевой функции (линейной формы) вида:

image

Задача, в которой фигурируют ограничения в форме неравенств, называется основной задачей линейного программирования (ОЗЛП)

image
image

Задача линейного программирования будет иметь канонический вид, если в основной задаче вместо первой системы неравенств имеет место система уравнений с ограничениями в форме равенства:

image

Основную задачу можно свести к канонической путём введения дополнительных переменных.

Задачи линейного программирования наиболее общего вида (задачи со смешанными ограничениями: равенствами и неравенствами, наличием переменных, свободных от ограничений) могут быть приведены к эквивалентным (имеющим то же множество решений) заменами переменных и заменой равенств на пару неравенств.

Легко заметить, что задачу нахождения максимума можно заменить задачей нахождения минимума, взяв коэффициенты image с обратным знаком.

Примеры задач

Максимальное паросочетание

Рассмотрим задачу о максимальном паросочетании в двудольном графе: есть несколько юношей и девушек, причём для каждых юноши и девушки известно, симпатичны ли они друг другу. Нужно поженить максимальное число пар со взаимной симпатией.

Введём переменные image, которые соответствуют паре из image-го юноши и image-й девушки и удовлетворяют ограничениям:

image
image
image

с целевой функциейimage, где image равны 1 или 0 в зависимости от того, симпатичны ли image-й юноша и image-я девушка друг другу. Можно показать, что среди оптимальных решений этой задачи найдётся целочисленное. Переменные, равные 1, будут соответствовать парам, которые следует поженить.

Максимальный поток

Пусть имеется граф (с ориентированными рёбрами), в котором для каждого ребра указана его пропускная способность. И заданы две вершины: сток и исток. Нужно указать для каждого ребра, сколько через него будет протекать жидкости (не больше его пропускной способности) так, чтобы максимизировать суммарный поток из истока в сток (жидкость не может появляться или исчезать во всех вершинах, кроме истока и стока, соответственно).

Возьмём в качестве переменных image — количество жидкости, протекающей через image-е ребро. Тогда

image

где image — пропускная способность image-го ребра. Эти неравенства надо дополнить равенством количества втекающей и вытекающей жидкости для каждой вершины, кроме стока и истока. В качестве функции image естественно взять разность между количеством вытекающей и втекающей жидкости в истоке.

Обобщение предыдущей задачи — максимальный поток минимальной стоимости. В этой задаче даны стоимости для каждого ребра и нужно среди максимальных потоков выбрать поток с минимальной стоимостью. Эта задача сводится к двум задачам линейного программирования: сначала нужно решить задачу о максимальном потоке, а потом добавить к этой задаче ограничение image, где image — величина максимального потока, и решить задачу с новой функцией image — стоимостью потока.

Эти задачи могут быть решены быстрее, чем общими алгоритмами решения задач линейного программирования, за счёт особой структуры уравнений и неравенств.

Транспортная задача

Имеется некий однородный груз, который нужно перевезти с image складов на image заводов. Для каждого склада image известно, сколько в нём находится груза image, а для каждого завода известна его потребность image в грузе. Стоимость перевозки пропорциональна расстоянию от склада до завода (все расстояния image от image-го склада до image-го завода известны). Требуется составить наиболее дешёвый план перевозки.

Решающими переменными в данном случае являются image — количества груза, перевезённого из image-го склада на image-й завод. Они удовлетворяют ограничениям:

image
image

Целевая функция имеет вид: image, которую надо минимизировать.

Игра с нулевой суммой

Есть матрица image размера image. Первый игрок выбирает число от 1 до image, второй — от 1 до image. Затем они сверяют числа и первый игрок получает image очков, а второй image очков (image — число, выбранное первым игроком, image — вторым). Нужно найти оптимальную стратегию первого игрока.

Пусть в оптимальной стратегии, например, первого игрока число image нужно выбирать с вероятностью image. Тогда оптимальная стратегия является решением следующей задачи линейного программирования:

image
image
image

в которой нужно максимизировать функцию image. Значение image в оптимальном решении будет математическим ожиданием выигрыша первого игрока в наихудшем случае.

Алгоритмы решения

Наиболее известным и широко применяемым на практике для решения общей задачи линейного программирования (ЛП) является симплекс-метод. Несмотря на то, что симплекс-метод является достаточно эффективным алгоритмом, показавшим хорошие результаты при решении прикладных задач ЛП, он является алгоритмом с экспоненциальной сложностью. Причина этого состоит в комбинаторном характере симплекс-метода, последовательно перебирающего вершины многогранника допустимых решений при поиске оптимального решения.

Первый полиномиальный алгоритм, метод эллипсоидов, был предложен в 1979 году советским математиком Л. Хачияном, разрешившим таким образом проблему, долгое время остававшуюся нерешённой. Метод эллипсоидов имеет совершенно другую, нежели симплекс-метод, некомбинаторную природу. Однако в вычислительном плане этот метод оказался неперспективным. Тем не менее, сам факт полиномиальной сложности задач привёл к созданию целого класса эффективных алгоритмов ЛП — методов внутренней точки, первым из которых был алгоритм Н. Кармаркара, предложенный в 1984 году. Алгоритмы этого типа используют непрерывную трактовку задачи ЛП, когда вместо перебора вершин многогранника решений задачи ЛП осуществляется поиск вдоль траекторий в пространстве переменных задачи, не проходящих через вершины многогранника. Метод внутренних точек, который, в отличие от симплекс-метода, обходит точки из внутренней части области допустимых значений, использует методы логарифмических барьерных функций нелинейного программирования, разработанные в 1960-х годах Фиако (Fiacco) и МакКормиком (McCormick).

Еще один метод решения ЛП - использование алгоритма Зейделя:

  1. Дана ЛП в канонической форме с image переменными и image ограничениями, составляющими множество image.
  2. Если image или image, выведи оптимальное базисное решение image.
  3. Иначе выбери случайное ограничение image и рекурсивно рассчитай оптимальное базисное решение для image.
  4. Если оптимальное базисное решение для image не нарушает ограничение image, верни его.
  5. Иначе рассчитай пересечение полиэдра ЛП с гиперплоскостью image и рекурсивно реши получившуюся ЛП с image переменной.

Данный метод имеет асимтотическую сложность image.

Двойственные задачи линейного программирования

Каждой задаче линейного программирования вида

image
image
image

можно определённым образом сопоставить некоторую другую задачу линейного программирования, называемую двойственной или сопряжённой по отношению к исходной или прямой. Связь исходной и двойственной задач заключается главным образом в том, что решение одной из них может быть получено непосредственно из решения другой. Дадим определение двойственной задачи по отношению к исходной задаче линейного программирования

Исходная задача Двойственная задача
image image
image image
image image

Если векторы image и image — допустимые решения прямой и двойственной задачи, то image, причём равенство достигается тогда и только тогда, когда image и image — оптимальные решения. Если же целевая функция одной из пары двойственных задач не ограничена (для исходной — сверху, для двойственной — снизу), то область допустимых решений другой задачи — пустая.

Если векторы image и image — оптимальные решения прямой и двойственной задачи, соответственно, то верны следующие равенства

image
image

То есть для оптимальных решений прямой и двойственной задачи ненапряженным (выполняется строгое неравенство) ограничениям соответствуют нулевые переменные, а ненулевым переменным (входящим в опорный план) соответствуют напряжённые (нестрогое неравенство реализуется, как равенство) ограничения. Но могут быть и нулевые переменные, соответствующие напряжённым ограничениям.

Эти свойства двойственных решений позволяют существенно сократить время решения, если приходится решать задачу, с числом ограничений много большим количества переменных. Тогда можно, решив двойственную задачу, найти её опорный план, после чего, отобрав в прямой задаче только ограничения, соответствующие опорному плану (все эти ограничения должны быть напряжены), решить для них обычную систему линейных уравнений.

Теорема. Двойственная двойственной задачи ЛП является прямая задача ЛП.

Доказательство. Рассмотрим прямую ЛП вида image при условии image. Сопоставим ей двойственную ЛП и получим image при условии image. Приведем ее к другой форме, эквивалентной по смыслу: image при условии image. Вновь сопоставим ей двойственную ЛП и получим image при условии image. Приведем ее в эквивалентную форму и получим ЛП идентичную исходной: image при условии image.

Программное обеспечение

lp_solve — открытое программное обеспечение (лицензия LGPL GNU Стандартная общественная лицензия GNU для библиотек) для решения линейных уравнений. LpSolve имеет IDE, собственный C API, и множество других программных интерфейсов для Java, AMPL, MATLAB, Wolfram Mathematica, O-Matrix, Sysquake, Scilab, Octave, FreeMat, Euler, Python, Sage, PHP, R и Microsoft Solver Foundation.

См. также

Примечания

  1. Источник: Алтайская краевая универсальная научная библиотека им. В. Я. Шишкова (АКУНБ) Архивная копия от 5 марта 2022 на Wayback Machine. Методы оптимизации: Учеб. пособие. Бразовская Н. В.; Алтайский государственный технический университет им. И. И. Ползунова, [Центр дистанц. обучения]. — Барнаул: Изд-во АлтГТУ, 2000. — 120 с. — ISBN 5-БНВ-МОр.9.00 — УДК/ББК 22.183.4 Б871.
  2. Дикин И. И. Итеративное решение задач линейного и квадратичного программирования // Докл. АН СССР. — 1967. — Т. 174, № 4. — С. 747—748.
  3. Карманов, 1986, с. 63.
  4. Карманов, 1986, с. 80.
  5. Карманов, 1986, с. 77.
  6. Электронный учебник «Экономико-математические методы». Двойственность в линейном программировании Архивная копия от 17 июня 2016 на Wayback Machine

Литература

  • Абрамов Л. М., Капустин В. Ф. Математическое программирование. — Учебное пособие. — Л.: ЛГУ, 1981. — 328 с.
  • Акоф Р., Сасиени М. Основы исследования операций. — Пер. с англ. В. Я. Алтаева., под ред. И. А. Ушакова. — М.: Мир, 1971. — 551 с.
  • Акулич И. Л. Глава 1. Задачи линейного программирования, Глава 2. Специальные задачи линейного программирования // Математическое программирование в примерах и задачах. — М.: Высшая школа, 1986. — 319 с. — ISBN 5-06-002663-9.
  • Астафьев Н. Н. Бесконечные системы линейных неравенств в математическом программировании. — М.: Наука, 1991. — 134 с.
  • Ашманов С. А., Тимохов А. В. Теория оптимизации в задачах и упражнениях. — М.: Наука, 1991. — 446 с.
  • Гасс С. Линейное программирование. — М.: Физико-математическая литература, 1961. — 300 с.
  • Давыдов Э. Г. Исследование операций. — М.: Высшая школа, 1990. — 382 с.
  • Дегтярёв Ю. И. Исследование операций. — Учебник для вузов. — М.: Высшая школа, 1986. — 320 с.
  • Зуховицкий С. И., Авдеева Л. И. Линейное и выпуклое программирование. — М.: Наука, 1966. — 348 с.
  • Карманов В. Г. Математическое программирование. — 3-е издание. — М.: Наука, 1986. — 288 с.
  • Кузнецов А. В., Сакович В. А., Холод Н. И. Высшая математика. Математическое программирование. — Минск.: Вышейшая школа, 1994. — 286 с.
  • Томас Х. Кормен и др. Глава 29. Линейное программирование // Алгоритмы: построение и анализ = Introduction to Algorithms. — 2-е изд. — М.: , 2006. — С. 1296. — ISBN 5-8459-0857-4.
  • Юдин Д. Б., Гольштейн Е. Г. Линейное программирование. — М.: Наука, 1969. — 424 с.
  • Данциг Дж. Б. Воспоминания о начале линейного программирования.
  • Габасов Р., Кириллова Ф. М. Методы линейного программирования. — Минск: БГУ, 1977. — 176 с.

Ссылки

  • Linear Program Solver (LiPS) — Бесплатный оптимизационный пакет, предназначенный для решения задач линейного, целочисленного и целевого программирования.
  • Вершик А. М. O Л. В. Канторовиче и линейном программировании
  • Слайды по линейному программированию
  • Большакова И. В., Кураленко М. В. Линейное программирование. Учебно-методическое пособие к контрольной работе.  (недоступная ссылка с 13-05-2013 [4444 дня])
  • Барсов А. С. Что такое линейное программирование // Популярные лекции по математике, Гостехиздат, 1959.
  • Вялый М. Н. Линейные неравенства и комбинаторика. — МЦНМО, 2003.

Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер, Информация о Линейное программирование, Что такое Линейное программирование? Что означает Линейное программирование?

Linejnoe programmirovanie matematicheskaya disciplina posvyashyonnaya teorii i metodam resheniya ekstremalnyh zadach na mnozhestvah n displaystyle n mernogo vektornogo prostranstva zadavaemyh sistemami linejnyh uravnenij i neravenstv Linejnoe programmirovanie LP yavlyaetsya chastnym sluchaem vypuklogo programmirovaniya kotoroe v svoyu ochered yavlyaetsya chastnym sluchaem matematicheskogo programmirovaniya Odnovremenno ono osnova neskolkih metodov resheniya zadach celochislennogo i nelinejnogo programmirovaniya Odnim iz obobshenij linejnogo programmirovaniya yavlyaetsya drobno linejnoe programmirovanie Mnogie svojstva zadach linejnogo programmirovaniya mozhno interpretirovat takzhe kak svojstva mnogogrannikov i takim obrazom geometricheski formulirovat i dokazyvat ih IstoriyaMatematicheskie issledovaniya otdelnyh ekonomicheskih problem matematicheskaya formalizaciya chislovogo materiala provodilas eshyo v XIX veke Pri matematicheskom analize processa rasshirennogo proizvodstva ispolzovalis algebraicheskie sootnosheniya analiz ih provodilsya s pomoshyu differencialnogo ischisleniya Eto davalo vozmozhnost poluchit obshee predstavlenie o probleme Razvitie ekonomiki potrebovalo kolichestvennyh pokazatelej i v 1920 gody byl sozdan mezhotraslevoj balans MOB On to i posluzhil tolchkom v dele sozdaniya i issledovaniya matematicheskih modelej Razrabotka MOB v 1924 1925 godah v SSSR povliyala na raboty ekonomista i statistika Vasiliya Vasilevicha Leonteva On razrabotal mezhotraslevuyu model proizvodstva i raspredeleniya produkcii V 1938 godu Leonid Vitalevich Kantorovich v poryadke nauchnoj konsultacii pristupil k izucheniyu chisto prakticheskoj zadachi po sostavleniyu nailuchshego plana zagruzki lushilnyh stankov fanernyj trest Eta zadacha ne poddavalas obychnym metodam Stalo yasno chto zadacha ne sluchajnaya V 1939 godu Leonid Kantorovich opublikoval rabotu Matematicheskie metody organizacii i planirovaniya proizvodstva v kotoroj sformuliroval novyj klass ekstremalnyh zadach s ogranicheniyami i razrabotal effektivnyj metod ih resheniya takim obrazom byli zalozheny osnovy linejnogo programmirovaniya Izuchenie podobnyh zadach privelo k sozdaniyu novoj nauchnoj discipliny linejnogo programmirovaniya i otkrylo novyj etap v razvitii ekonomiko matematicheskih metodov V 1949 godu amerikanskij matematik Dzhordzh Bernard Dancig razrabotal effektivnyj metod resheniya zadach linejnogo programmirovaniya ZLP simpleks metod Termin programmirovanie nuzhno ponimat v smysle planirovaniya odin iz perevodov angl programming On byl predlozhen v seredine 1940 h godov Dzhordzhem Dancigom odnim iz osnovatelej linejnogo programmirovaniya eshyo do togo kak kompyutery byli ispolzovany dlya resheniya linejnyh zadach optimizacii Metod vnutrennih tochek byl vpervye upomyanut v 1967 godu Eti issledovaniya byli prodolzheny v tom chisle i otechestvennymi uchyonymi V 1970 e gody V G Zhadanu udalos poluchit osnovnye rezultaty i razrabotat obshij podhod k postroeniyu metodov vnutrennej tochki dlya resheniya zadach linejnogo i nelinejnogo programmirovaniya osnovannyj na preobrazovanii prostranstv predlozhit barerno proektivnye i barerno nyutonovskie chislennye metody ZadachiObshej standartnoj zadachej linejnogo programmirovaniya nazyvaetsya zadacha nahozhdeniya minimuma linejnoj celevoj funkcii linejnoj formy vida f x j 1ncjxj c1x1 c2x2 cnxn displaystyle f x sum j 1 n c j x j c 1 x 1 c 2 x 2 ldots c n x n Zadacha v kotoroj figuriruyut ogranicheniya v forme neravenstv nazyvaetsya osnovnoj zadachej linejnogo programmirovaniya OZLP j 1naijxj bi i 1 2 m displaystyle sum j 1 n a ij x j geqslant b i quad i 1 2 ldots m xj 0 j 1 2 n displaystyle x j geqslant 0 quad j 1 2 ldots n Zadacha linejnogo programmirovaniya budet imet kanonicheskij vid esli v osnovnoj zadache vmesto pervoj sistemy neravenstv imeet mesto sistema uravnenij s ogranicheniyami v forme ravenstva j 1naijxj bi i 1 2 m displaystyle sum j 1 n a ij x j b i quad i 1 2 ldots m Osnovnuyu zadachu mozhno svesti k kanonicheskoj putyom vvedeniya dopolnitelnyh peremennyh Zadachi linejnogo programmirovaniya naibolee obshego vida zadachi so smeshannymi ogranicheniyami ravenstvami i neravenstvami nalichiem peremennyh svobodnyh ot ogranichenij mogut byt privedeny k ekvivalentnym imeyushim to zhe mnozhestvo reshenij zamenami peremennyh i zamenoj ravenstv na paru neravenstv Legko zametit chto zadachu nahozhdeniya maksimuma mozhno zamenit zadachej nahozhdeniya minimuma vzyav koefficienty c displaystyle c s obratnym znakom Primery zadachMaksimalnoe parosochetanie Rassmotrim zadachu o maksimalnom parosochetanii v dvudolnom grafe est neskolko yunoshej i devushek prichyom dlya kazhdyh yunoshi i devushki izvestno simpatichny li oni drug drugu Nuzhno pozhenit maksimalnoe chislo par so vzaimnoj simpatiej Vvedyom peremennye xij displaystyle x ij kotorye sootvetstvuyut pare iz i displaystyle i go yunoshi i j displaystyle j j devushki i udovletvoryayut ogranicheniyam 0 xij 1 displaystyle 0 leqslant x ij leqslant 1 x1j x2j xnj 1 displaystyle x 1j x 2j ldots x nj leqslant 1 xi1 xi2 xim 1 displaystyle x i1 x i2 ldots x im leqslant 1 s celevoj funkciejf c11x11 c12x12 cnmxnm displaystyle f c 11 x 11 c 12 x 12 ldots c nm x nm gde cij displaystyle c ij ravny 1 ili 0 v zavisimosti ot togo simpatichny li i displaystyle i j yunosha i j displaystyle j ya devushka drug drugu Mozhno pokazat chto sredi optimalnyh reshenij etoj zadachi najdyotsya celochislennoe Peremennye ravnye 1 budut sootvetstvovat param kotorye sleduet pozhenit Maksimalnyj potok Pust imeetsya graf s orientirovannymi ryobrami v kotorom dlya kazhdogo rebra ukazana ego propusknaya sposobnost I zadany dve vershiny stok i istok Nuzhno ukazat dlya kazhdogo rebra skolko cherez nego budet protekat zhidkosti ne bolshe ego propusknoj sposobnosti tak chtoby maksimizirovat summarnyj potok iz istoka v stok zhidkost ne mozhet poyavlyatsya ili ischezat vo vseh vershinah krome istoka i stoka sootvetstvenno Vozmyom v kachestve peremennyh xi displaystyle x i kolichestvo zhidkosti protekayushej cherez i displaystyle i e rebro Togda 0 xi ci displaystyle 0 leqslant x i leqslant c i gde ci displaystyle c i propusknaya sposobnost i displaystyle i go rebra Eti neravenstva nado dopolnit ravenstvom kolichestva vtekayushej i vytekayushej zhidkosti dlya kazhdoj vershiny krome stoka i istoka V kachestve funkcii f displaystyle f estestvenno vzyat raznost mezhdu kolichestvom vytekayushej i vtekayushej zhidkosti v istoke Obobshenie predydushej zadachi maksimalnyj potok minimalnoj stoimosti V etoj zadache dany stoimosti dlya kazhdogo rebra i nuzhno sredi maksimalnyh potokov vybrat potok s minimalnoj stoimostyu Eta zadacha svoditsya k dvum zadacham linejnogo programmirovaniya snachala nuzhno reshit zadachu o maksimalnom potoke a potom dobavit k etoj zadache ogranichenie f x m displaystyle f x geqslant m gde m displaystyle m velichina maksimalnogo potoka i reshit zadachu s novoj funkciej f x displaystyle f x stoimostyu potoka Eti zadachi mogut byt resheny bystree chem obshimi algoritmami resheniya zadach linejnogo programmirovaniya za schyot osoboj struktury uravnenij i neravenstv Transportnaya zadacha Osnovnaya statya Transportnaya zadacha Imeetsya nekij odnorodnyj gruz kotoryj nuzhno perevezti s n displaystyle n skladov na m displaystyle m zavodov Dlya kazhdogo sklada i displaystyle i izvestno skolko v nyom nahoditsya gruza ai displaystyle a i a dlya kazhdogo zavoda izvestna ego potrebnost bj displaystyle b j v gruze Stoimost perevozki proporcionalna rasstoyaniyu ot sklada do zavoda vse rasstoyaniya cij displaystyle c ij ot i displaystyle i go sklada do j displaystyle j go zavoda izvestny Trebuetsya sostavit naibolee deshyovyj plan perevozki Reshayushimi peremennymi v dannom sluchae yavlyayutsya xij displaystyle x ij kolichestva gruza perevezyonnogo iz i displaystyle i go sklada na j displaystyle j j zavod Oni udovletvoryayut ogranicheniyam xi1 xi2 xim ai displaystyle x i1 x i2 ldots x im leqslant a i x1j x2j xnj bj displaystyle x 1j x 2j ldots x nj geqslant b j Celevaya funkciya imeet vid f x x11c11 x12c12 xnmcnm displaystyle f x x 11 c 11 x 12 c 12 ldots x nm c nm kotoruyu nado minimizirovat Igra s nulevoj summoj Est matrica A displaystyle A razmera n m displaystyle n times m Pervyj igrok vybiraet chislo ot 1 do n displaystyle n vtoroj ot 1 do m displaystyle m Zatem oni sveryayut chisla i pervyj igrok poluchaet aij displaystyle a ij ochkov a vtoroj aij displaystyle a ij ochkov i displaystyle i chislo vybrannoe pervym igrokom j displaystyle j vtorym Nuzhno najti optimalnuyu strategiyu pervogo igroka Pust v optimalnoj strategii naprimer pervogo igroka chislo i displaystyle i nuzhno vybirat s veroyatnostyu pi displaystyle p i Togda optimalnaya strategiya yavlyaetsya resheniem sleduyushej zadachi linejnogo programmirovaniya 0 pi 1 displaystyle 0 leqslant p i leqslant 1 p1 pn 1 displaystyle p 1 ldots p n 1 a1ip1 a2ip2 anipn c i 1 m displaystyle a 1i p 1 a 2i p 2 ldots a ni p n geqslant c quad i 1 ldots m v kotoroj nuzhno maksimizirovat funkciyu f p1 pn c c displaystyle f p 1 ldots p n c c Znachenie c displaystyle c v optimalnom reshenii budet matematicheskim ozhidaniem vyigrysha pervogo igroka v naihudshem sluchae Algoritmy resheniyaNaibolee izvestnym i shiroko primenyaemym na praktike dlya resheniya obshej zadachi linejnogo programmirovaniya LP yavlyaetsya simpleks metod Nesmotrya na to chto simpleks metod yavlyaetsya dostatochno effektivnym algoritmom pokazavshim horoshie rezultaty pri reshenii prikladnyh zadach LP on yavlyaetsya algoritmom s eksponencialnoj slozhnostyu Prichina etogo sostoit v kombinatornom haraktere simpleks metoda posledovatelno perebirayushego vershiny mnogogrannika dopustimyh reshenij pri poiske optimalnogo resheniya Pervyj polinomialnyj algoritm metod ellipsoidov byl predlozhen v 1979 godu sovetskim matematikom L Hachiyanom razreshivshim takim obrazom problemu dolgoe vremya ostavavshuyusya nereshyonnoj Metod ellipsoidov imeet sovershenno druguyu nezheli simpleks metod nekombinatornuyu prirodu Odnako v vychislitelnom plane etot metod okazalsya neperspektivnym Tem ne menee sam fakt polinomialnoj slozhnosti zadach privyol k sozdaniyu celogo klassa effektivnyh algoritmov LP metodov vnutrennej tochki pervym iz kotoryh byl algoritm N Karmarkara predlozhennyj v 1984 godu Algoritmy etogo tipa ispolzuyut nepreryvnuyu traktovku zadachi LP kogda vmesto perebora vershin mnogogrannika reshenij zadachi LP osushestvlyaetsya poisk vdol traektorij v prostranstve peremennyh zadachi ne prohodyashih cherez vershiny mnogogrannika Metod vnutrennih tochek kotoryj v otlichie ot simpleks metoda obhodit tochki iz vnutrennej chasti oblasti dopustimyh znachenij ispolzuet metody logarifmicheskih barernyh funkcij nelinejnogo programmirovaniya razrabotannye v 1960 h godah Fiako Fiacco i MakKormikom McCormick Eshe odin metod resheniya LP ispolzovanie algoritma Zejdelya Dana LP v kanonicheskoj forme s d displaystyle d peremennymi i m displaystyle m ogranicheniyami sostavlyayushimi mnozhestvo H displaystyle H Esli d 1 displaystyle d 1 ili m 0 displaystyle m 0 vyvedi optimalnoe bazisnoe reshenie H displaystyle H Inache vyberi sluchajnoe ogranichenie h H displaystyle h in H i rekursivno rasschitaj optimalnoe bazisnoe reshenie dlya H h displaystyle H setminus h Esli optimalnoe bazisnoe reshenie dlya H h displaystyle H setminus h ne narushaet ogranichenie h displaystyle h verni ego Inache rasschitaj peresechenie poliedra LP s giperploskostyu h displaystyle h i rekursivno reshi poluchivshuyusya LP s d 1 displaystyle d 1 peremennoj Dannyj metod imeet asimtoticheskuyu slozhnost O m d displaystyle O m cdot d Dvojstvennye zadachi linejnogo programmirovaniyaKazhdoj zadache linejnogo programmirovaniya vida j 1naijxj ci i 1 m displaystyle sum j 1 n a ij x j leqslant c i i overline 1 m xj 0 j 1 n displaystyle x j geqslant 0 j overline 1 n F x j 1nbjxj max displaystyle F x sum j 1 n b j x j to max mozhno opredelyonnym obrazom sopostavit nekotoruyu druguyu zadachu linejnogo programmirovaniya nazyvaemuyu dvojstvennoj ili sopryazhyonnoj po otnosheniyu k ishodnoj ili pryamoj Svyaz ishodnoj i dvojstvennoj zadach zaklyuchaetsya glavnym obrazom v tom chto reshenie odnoj iz nih mozhet byt polucheno neposredstvenno iz resheniya drugoj Dadim opredelenie dvojstvennoj zadachi po otnosheniyu k ishodnoj zadache linejnogo programmirovaniya Ishodnaya zadacha Dvojstvennaya zadacha j 1naijxj ci i 1 m displaystyle sum j 1 n a ij x j leqslant c i i overline 1 m yi 0 i 1 m displaystyle y i geqslant 0 i overline 1 m xj 0 j 1 n displaystyle x j geqslant 0 j overline 1 n i 1maijyi bj j 1 n displaystyle sum i 1 m a ij y i geqslant b j j overline 1 n F x j 1nbjxj max displaystyle F x sum j 1 n b j x j to max T y i 1mciyi min displaystyle T y sum i 1 m c i y i to min Esli vektory x displaystyle x i y displaystyle y dopustimye resheniya pryamoj i dvojstvennoj zadachi to F x T y displaystyle F x leqslant T y prichyom ravenstvo dostigaetsya togda i tolko togda kogda x displaystyle x i y displaystyle y optimalnye resheniya Esli zhe celevaya funkciya odnoj iz pary dvojstvennyh zadach ne ogranichena dlya ishodnoj sverhu dlya dvojstvennoj snizu to oblast dopustimyh reshenij drugoj zadachi pustaya Esli vektory x displaystyle x i y displaystyle y optimalnye resheniya pryamoj i dvojstvennoj zadachi sootvetstvenno to verny sleduyushie ravenstva xj i 1maijyi bj 0 j 1 n displaystyle x j sum i 1 m a ij y i b j 0 j overline 1 n yi j 1naijxj ci 0 i 1 m displaystyle y i sum j 1 n a ij x j c i 0 i overline 1 m To est dlya optimalnyh reshenij pryamoj i dvojstvennoj zadachi nenapryazhennym vypolnyaetsya strogoe neravenstvo ogranicheniyam sootvetstvuyut nulevye peremennye a nenulevym peremennym vhodyashim v opornyj plan sootvetstvuyut napryazhyonnye nestrogoe neravenstvo realizuetsya kak ravenstvo ogranicheniya No mogut byt i nulevye peremennye sootvetstvuyushie napryazhyonnym ogranicheniyam Eti svojstva dvojstvennyh reshenij pozvolyayut sushestvenno sokratit vremya resheniya esli prihoditsya reshat zadachu s chislom ogranichenij mnogo bolshim kolichestva peremennyh Togda mozhno reshiv dvojstvennuyu zadachu najti eyo opornyj plan posle chego otobrav v pryamoj zadache tolko ogranicheniya sootvetstvuyushie opornomu planu vse eti ogranicheniya dolzhny byt napryazheny reshit dlya nih obychnuyu sistemu linejnyh uravnenij Teorema Dvojstvennaya dvojstvennoj zadachi LP yavlyaetsya pryamaya zadacha LP Dokazatelstvo Rassmotrim pryamuyu LP vida maxcT displaystyle max c T pri uslovii Ax b x 0 displaystyle Ax leqslant b x geqslant 0 Sopostavim ej dvojstvennuyu LP i poluchim minbTy displaystyle min b T y pri uslovii ATy c y 0 displaystyle A T y geqslant c y geqslant 0 Privedem ee k drugoj forme ekvivalentnoj po smyslu max bTy displaystyle max b T y pri uslovii ATy c y 0 displaystyle A T y leqslant c y geqslant 0 Vnov sopostavim ej dvojstvennuyu LP i poluchim min cTx displaystyle min c T x pri uslovii Ax b x 0 displaystyle Ax geqslant b x geqslant 0 Privedem ee v ekvivalentnuyu formu i poluchim LP identichnuyu ishodnoj maxcT displaystyle max c T pri uslovii Ax b x 0 displaystyle Ax leqslant b x geqslant 0 Programmnoe obespechenielp solve otkrytoe programmnoe obespechenie licenziya LGPL GNU Standartnaya obshestvennaya licenziya GNU dlya bibliotek dlya resheniya linejnyh uravnenij LpSolve imeet IDE sobstvennyj C API i mnozhestvo drugih programmnyh interfejsov dlya Java AMPL MATLAB Wolfram Mathematica O Matrix Sysquake Scilab Octave FreeMat Euler Python Sage PHP R i Microsoft Solver Foundation Sm takzheNelinejnoe programmirovanie Algoritm Danciga Graficheskij metod resheniya zadachi linejnogo programmirovaniya Drobno linejnoe programmirovanie Model zatraty vypusk PrimechaniyaIstochnik Altajskaya kraevaya universalnaya nauchnaya biblioteka im V Ya Shishkova AKUNB Arhivnaya kopiya ot 5 marta 2022 na Wayback Machine Metody optimizacii Ucheb posobie Brazovskaya N V Altajskij gosudarstvennyj tehnicheskij universitet im I I Polzunova Centr distanc obucheniya Barnaul Izd vo AltGTU 2000 120 s ISBN 5 BNV MOr 9 00 UDK BBK 22 183 4 B871 Dikin I I Iterativnoe reshenie zadach linejnogo i kvadratichnogo programmirovaniya Dokl AN SSSR 1967 T 174 4 S 747 748 Karmanov 1986 s 63 Karmanov 1986 s 80 Karmanov 1986 s 77 Elektronnyj uchebnik Ekonomiko matematicheskie metody Dvojstvennost v linejnom programmirovanii Arhivnaya kopiya ot 17 iyunya 2016 na Wayback MachineLiteraturaAbramov L M Kapustin V F Matematicheskoe programmirovanie Uchebnoe posobie L LGU 1981 328 s Akof R Sasieni M Osnovy issledovaniya operacij Per s angl V Ya Altaeva pod red I A Ushakova M Mir 1971 551 s Akulich I L Glava 1 Zadachi linejnogo programmirovaniya Glava 2 Specialnye zadachi linejnogo programmirovaniya Matematicheskoe programmirovanie v primerah i zadachah M Vysshaya shkola 1986 319 s ISBN 5 06 002663 9 Astafev N N Beskonechnye sistemy linejnyh neravenstv v matematicheskom programmirovanii M Nauka 1991 134 s Ashmanov S A Timohov A V Teoriya optimizacii v zadachah i uprazhneniyah M Nauka 1991 446 s Gass S Linejnoe programmirovanie M Fiziko matematicheskaya literatura 1961 300 s Davydov E G Issledovanie operacij M Vysshaya shkola 1990 382 s Degtyaryov Yu I Issledovanie operacij Uchebnik dlya vuzov M Vysshaya shkola 1986 320 s Zuhovickij S I Avdeeva L I Linejnoe i vypukloe programmirovanie M Nauka 1966 348 s Karmanov V G Matematicheskoe programmirovanie 3 e izdanie M Nauka 1986 288 s Kuznecov A V Sakovich V A Holod N I Vysshaya matematika Matematicheskoe programmirovanie Minsk Vyshejshaya shkola 1994 286 s Tomas H Kormen i dr Glava 29 Linejnoe programmirovanie Algoritmy postroenie i analiz Introduction to Algorithms 2 e izd M 2006 S 1296 ISBN 5 8459 0857 4 Yudin D B Golshtejn E G Linejnoe programmirovanie M Nauka 1969 424 s Dancig Dzh B Vospominaniya o nachale linejnogo programmirovaniya Gabasov R Kirillova F M Metody linejnogo programmirovaniya Minsk BGU 1977 176 s SsylkiLinear Program Solver LiPS Besplatnyj optimizacionnyj paket prednaznachennyj dlya resheniya zadach linejnogo celochislennogo i celevogo programmirovaniya Vershik A M O L V Kantoroviche i linejnom programmirovanii Slajdy po linejnomu programmirovaniyu Bolshakova I V Kuralenko M V Linejnoe programmirovanie Uchebno metodicheskoe posobie k kontrolnoj rabote nedostupnaya ssylka s 13 05 2013 4444 dnya Barsov A S Chto takoe linejnoe programmirovanie Populyarnye lekcii po matematike Gostehizdat 1959 Vyalyj M N Linejnye neravenstva i kombinatorika MCNMO 2003

NiNa.Az

NiNa.Az - Абсолютно бесплатная система, которая делится для вас информацией и контентом 24 часа в сутки.
Взгляните
Закрыто