logo search
ммпур методичка

Постановка задачи.

Среди совокупности n неделимых предметов, каждый j-й (j=1, 2, … , n) из которых обладает по i-й характеристике показателем aij и полезностью cî, найти такой набор, который позволяет максимизировать эффективность использования ресурсов величины bi (i=1, 2, … , m).

Математическая модель этой задачи может быть представлена следующим образом: в области, определенной условиями

найти решение x=(x1, x2, …, xn), при котором максимизируется (минимизируется) значение целевой функции

(7)

Если n1=n, то (4—7) является моделью задачи целочисленного программирования, если n1<n — моделью задачи частично целочисленного программирования.

Частным случаем задачи целочисленного программирования является задача с булевыми переменными. Ее математическая модель в общем виде записывается следующим образом: в области, определенной условиями

найти решение x=(x1, x2, …, xn), при котором максимизируется (минимизируется) значение функции

(10)

К классу задач целочисленного програмирования примыкают задачи, в которых условие целочисленности всех или части переменных заменено требованием дискретности. А именно, для каждой j-й переменной xj (j=1, 2,… ,n) заранее определен набор значений (не обязательно целых), которые она может принимать:

Предполагается, что Ajlj , j=1, 2, …, n; lj=1, 2, … , kj , проранжированы, т. е. Aj1< Aj2 <…< Ajkj.

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

найти решение x=(x1, x2,…, xn), при котором максимизируется (минимизируется) линейная функция

(13)

Условие (12) определило название этого класса задач. Если n1=n, то (11— 13) называется задачей дискретного программирования; если n1<n, то (11—13) называется задачей частично дискретного программирования.

П р и м е р. В области, опре-деленной условиями

2x1 +11x2  38,

x1 + x2  7,

4x1– 5x2  5,

x10, x20, x1, x2 — целые

найти максимум функции

Z(x1, x2)=x1+x2.

Р е ш е н и е. Решим задачу геометрически. Область поиска экстремума — многоугольник ODABC, но так как линия уровня целевой функции параллельна стороне АВ многоугольника, экстремум достигается в вершинах А(8/3, 13/3) и В(23/9, 40/9), а также в любой точке отрезка АВ, и равен 7. Однако нас интересуют точки с целочислеными координатами, следовательно, ни А, ни В не являются допустимым решением задачи. Округляя значения координат А, получим А’ (2, 4). Но точка А’ не принадлежит области поиска. Целочисленный оптимум достигается в точках N(3, 2) и M(2, 3) и равен 5. Обе точки внутри области поиска.

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