Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ekonomikomatematicheskie_metody_i_modeli_prinya...docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
1.08 Mб
Скачать

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

Пусть требуется принять решение о выделении средств для нескольких из n вариантов капиталовложений с целью максимизации прибыли.

Имеются прогнозные данные аналитического отдела, представленные в таблице. Требуется выбрать несколько вариантов из потенциально возможных.

Вариант

Чистая прибыль,

тыс. д.е.

Вложения по годам, тыс. д.е.

1

2

3

4

5

Расширение завода в стране А

400

100

50

200

100

0

Расширение мощностей по производству ПК в своей стране

700

300

200

100

100

100

Открытие нового завода в стране Б

800

100

200

270

200

100

Расширение мощностей по производству комплектующих в своей стране

1000

200

100

400

200

200

Имеющиеся средства

500

450

700

400

300

Данная задача является характерным примером двоичной модели ЦЛП. Пусть , если проект принимается, и в противном случае. При этих обозначениях модель примет следующий вид:

при ограничениях

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

(следует принять первые три проекта). Отметим, что метод округления дает при этом неправильный результат – он рекомендует отвергнуть третий проект.

Важной областью использования двоичных переменных является формирование ограничений на базе логических условий, принимающих значения “истинно” или “ложно”.

Например, ограничение

,

где - двоичные переменные, а k – целое число, означает, что можно выбрать не более k из возможных n вариантов. Поскольку каждая переменная может принимать только значение 0 или 1, то не более k из этих переменных могут быть равны единице. Если в нашем примере руководство компании считает целесообразным принять не более одного зарубежного проекта и исключить варианты, включающие одновременно расширение завода в стране А и строительство нового завода в стране Б, то нужно добавить ограничение .

Формирование зависимых решений

С помощью двоичных переменных можно описать зависимость между двумя или несколькими переменными решения. Например, если руководство компании из примера не хочет принимать вариант k, если не будет принят вариант m, то это условие можно представить с помощью ограничения

Если вариант m не принят, то и ограничение требует, чтобы значение также было равно нулю (т.е. вариант k принят не будет). Если же вариант m принят, и ограничение принимает вид . В этом случае программа может выбрать .

Предположим, что совет директоров решил: если принимается решение расширять производственные мощности внутри страны, следует увеличить производственные мощности по выпуску как ПК, так и комплектующих. В этом случае необходимо добавить к модели ЦЛП ограничение , тогда, очевидно, будут принимать лишь одинаковые значения.

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

где - заданная функция от переменных . В модель вводится m дополнительных двоичных переменных и задается очень большое число M, такое, чтобы для всех заведомо выполнялись неравенства

Тогда следующие m + 1 ограничения выражают нужное условие:

Ограничение требует, чтобы ровно k новых переменных решения принимали значение 1. Это означает, что ровно k вышеприведенных ограничений-неравенств будут эквивалентны неравенствам

Оставшиеся m – k ограничений принимают вид

а поскольку M – очень большое число, все эти ограничения оказываются избыточными и не влияют на оптимальное решение задачи.

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

Простое указание этих ограничений в модели ЛП означало бы, что в процессе производства должны выполняться оба ограничения одновременно, а не одно из них. В данном случае в модель ЛП необходимо ввести две новые двоичные переменные и , тем самым преобразовав ее в модель частично целочисленного ЛП. Двоичные переменные определяются следующим образом: если , это означает выбор технологии I; если - технология I не выбирается, и все совершенно аналогично для переменной .

После этого требуется изменить ограничения модели следующим образом:

В этом случае первое ограничение заставит программу-оптимизатор выбрать только одну технологию, а большое число (в данном случае 999999) необходимо подобрать так, чтобы или первое или второе ограничение оказалось избыточным, если соответственно или или будут равны единице.