Автор работы: Пользователь скрыл имя, 11 Октября 2011 в 16:04, реферат
Термин линейное программирование появился в Америке в середине 40-х годов (первая американская работа по частной задаче линейного программирования опубликована в 1941 г.). В Советском Союзе исследования в этой области начались ранее. В конце 30-х годов целый ряд существенных результатов по линейному программированию был установлен Л.В. Канторовичем.
Задача линейного программирования – это задача нахождения значений параметров, обеспечивающих экстремум функции при наличии ограничений на аргументы.
s/λ1]=—l и [as/λ2]=—l. Столбец
α0 изменяется следующим образом:
Следовательно, чем меньше λ, тем сильнее лексикографически уменьшится
нулевой столбец. Значение λ следует выбирать так, чтобы, во-первых,
ведущий элемент стал равным —1 и, во-вторых, чтобы λ давало максимальное
уменьшение столбцу α0. Правило формулируется следующим образом.
Шаг 0. Пусть строка с номером v является производящей.
Шаг 1. Пусть αs, — лексикографически минимальный столбец среди
столбцов с αvj< 0.
Шаг 2. Для каждого с αvj< 0 , пусть μi
—наибольшее целое, такое ,что αs<αj/μ
j
Шаг 3. Пусть [μj=-avj/λj]. Тогда
Шаг 4. Положить λ = max λj для аvj < 0.
Правило выбора λ, описанное выше, позволяет сделать ведущий элемент
равным —1, при этом будет сохраняться двойственная допустимость таблицы и в
то же время нулевой столбец будет максимально лексикографически уменьшаться.
Следует заметить, что отсечение Гомори не является самым «сильным» возможным
неравенством. Оно также может быть «сильнее» или «слабее» самого
производящего неравенства. Например, пусть производящей строкой будет
X=
-4-3 (-x1) – 5 (-x2)
Если использовать λ=2, то получим отсечение
S=
-2-2 (-x1) – 3 (-x2)≥0
Для λ=3 имеем
S=
-2-1 (-x1) – 2 (-x2)≥0
Для λ=4
S=-1-1 (-x1)-2 (-x2)≥0
(15)
Как видно, неравенство (14) сильнее, чем (12), (12) сильнее, чем (13), а (13)
сильнее, чем (15).
Другое замечание касается того, что если величина λ, получаемая указанным
выше способом, может быть увеличена так, чтобы [a0/λ] и [a
j/λ] (аj > 0) оставались без изменения, то отсечение
Гомори можно усилить, несмотря на то, что нулевой столбец -уменьшится на ту же
величину.
Выпишем производящую строку
Чем больше величина λ, тем меньше абсолютная величина коэффициентов
отсечения. Естественно, что мы хотели бы иметь абсолютную величину [a0
/λ] большой, а абсолютные величины [aj/λ] — малыми. Если
значение λ (полученное по приведенному выше правилу) может быть увеличено
так, чтобы значения [aj/λ [] и [a0/λ] не
изменялись, то используется большее значение для λ. Тем самым по
возможности уменьшится абсолютная величина [aj/λ] для некоторых
j, и отсечение станет сильнее.
Например, пусть целевая функция имеет вид
X0= - 20 – x1- 2x2 – 3x2 – x4 ,
И производящая строка
X= -20+ (-7) (-x1)+ (-8) (-x2)+ (-15) (-x3)+18 (-x4).
Используя описанную выше процедуру выбора λ, получим λ = 7.
Соответствующее отсечение
s = -3 + x1 + 2x2 + Зx3 — 2x4≥ 0.
Если использовать λ = 9 вместо λ = 7, получим отсечение
s* = -3 + x1 + x2 + 2x3 — 2x4 ≥ О,
являющееся более сильным .
Интересная
особенность полностью
его использования не обязательно требовать целочисленности всех аij.
Пусть задача целочисленного программирования имеет вид
максимизировать
при условиях
xn+i= ai0 - ∑aijxj ≥0 (i=1,...,m)
где a 00 и cj — целые, аi0 о и аij
могут быть произвольными действительными числами. Таблица 14.1 содержит в
первых n + 1 строках только целые числа.
Выпишем произвольную производящую строку (опуская обозначение строки)
Вне зависимости от того, являются ли a0 и aj целыми ли
действительными, коэффициенты отсечения сегда целые, а ведущий элемент равен
—1. В результате итерации с таким ведущим элементом первые n+1 строк таблицы
останутся целочисленными. Заметим, что переменная s — неотрицательная целая. В
силу
приведенных рассуждений
чем отличается от описанного выше. Когда в нулевом столбце ai0
== 1, . . ., n)становятся неотрицательными целыми, а остальные элементы нулевого
столбца — неотрицательными, то получается оптимальное решение.
В последних главах были обсуждены два алгоритма целочисленного
программирования, первый из которых называется циклическим алгоритмом (λ
=
1), а второй — полностью
Задача о рюкзаке
Контейнер оборудован m отсеками вместимостью
для перевозки n видов продукции
.
Виды продукции
количестве 0, 1, 2, ... единиц. Пусть
-
расход i-го отсека для перевозки
единицы j-ой продукции.
полезность единицы j-ой продукции. Требуется найти план
перевозки, при котором максимизируется общая полезность рейса.
Модель задачи примет вид:
при ограничениях на вместимости отсеков
условии неотрицательности
условии целочисленности
- целые .
Когда для перевозки имеется один отсек и каждый вид продукции может быть взят
или нет, то модель задачи принимает вид:
.
Задача о назначении
Имеет n исполнителей, которые могут выполнять n различных работ. Известна
полезность , связанная с
выполнением i-м исполнителем j-й работы
.
Необходимо назначить
полезности, при условии, что каждый исполнитель может быть назначен только на
одну работу и за каждой работой должне быть закреплен только один исполнитель.
Математическая модель задачи примет вид:
Каждый исполнитель назначается только на одну работу:
На каждую работу назначается только один исполнитель:
Условия
неотрицательности и
, .
Задача коммивояжера
Коммивояжер должен посетить один, и только один, раз каждый из n городов и
вернуться в исходный пункт. Его маршрут должен минимизировать суммарную длину
пройденного пути.
Математическая модель задачи:
Условия
неотрицательности и
, .
Добавляется условие прохождение маршрута через все города, т.е. так
называемое условие цикличности. Иначе, маршрут должен представлять собой
замкнутую
ломаную, без пересечений в городах-
Заключение.
В данной работе была рассмотрена сущность целочисленного программирования.
Затронуты специальные методы решения целочисленных задач. Такие задачи
возникают
при моделировании
технических, военных и других ситуаций. В то же время ряд проблем самой
математики
может быть сформулирован как
целочисленные экстремальные
Задачи такого типа весьма актуальны, так как к их решению сводится анализ
разнообразных ситуаций , возникающих в экономике, технике, военном деле и
других областях. Эти задачи интересны и с математической точки зрения. С
появлением ЭВМ, ростом их производительности повысился интерес к задачам
такого типа и к математике в целом.
1. Теория оптимального управления: учебное пособие | |
|
Информация о работе Классификация задач линейного программирования