Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Ii . Основные направления использования линейного программирования в военном деле.




 

Наиболее распространенными направлениями использования линейного программирования в военном деле являются:

- задача о перевозках (транспортная задача)

- задача на распределение сил и средств (распределение сил и средств поражения по целям, распределение сил и средств разведки и др.)

 

1. ЗАДАЧИ О ПЕРЕВОЗКАХ (ТРАНСПОРТНАЯ ЗАДАЧА).

 

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

Сформулируем в общем виде транспортную задачу линейного программирования по критерию стоимости. Эта задача имеет значение тогда, когда время не является определяющим фактором при организации перевозок.

Пусть имеется m складов, в которых сосредоточен некоторый однородный продукт (ГСМ, боеприпасы и т.д.) в количествах соответственно аi(i=1,2,…,m) единиц. Имеется n потребителей этого продукта в количествах соответственно bj(j=1,2,…,n) единиц. На основании опытов и расчетов известно, что на доставку одной единицы продукта с i-того склада j-тому потребителю затрачивается сij денежных единиц.

Все значения cij являются постоянными величинами. Перечисленные исходные данные помещены в таблице 1.

Обозначим через xij³0 (i=1,2,…,m; j=1,2,…n) количество продукта, планируемого для доставки с i-того склада j-тому потребителю. Естественно, что если xij=0, то доставка продукта с i-того склада j-тому потребителю не планируется. План обеспечения всех потребителей определяется таблицей (матрицей):

 

             (1)

 

 

Таблица 1.

Склады

          Потребители

Запасы на складах

1 2 N
1   cn                c12      …          c1n a1
2   c21   c22   c2n a2
M   cm1   cm2   cmn am
Потребность b1 b2 bn  

 

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

 

         (2)

 

          (3)

 

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

 

 

Последнее выражение означает, что запасов на складах достаточно для снабжения всех потребителей.

Суммарная стоимость перевозок для любого выбранного плана (1) определяется выражением:

 

           (4)

 

Транспортная задача линейного программирования по критерию стоимости формулируется следующим образом.

Найти такие значения xij (т.е. найти такой план перевозок (1)), удовлетворяющий условиям (2), (3), при которых суммарная стоимость перевозок (4) будет минимальной.

При больших m и n эта задача решается на ЭВМ. Для этого нужно ввести в машину исходные данные, помещенные в таблице 1 и воспользоваться разработанной программой. При небольших m и n задача может быть решена вручную с использованием общих методов решения. Для значений m и n до 5-6 задачу часто удается решить путем прикидочных расчетов, перебором вариантов и логических размышлений.

Задача. Для обеспечения ГСМ четырех танковых соединений имеется три склада. Известны запасы ГСМ и потребности в нем соединений. Определение стоимости доставки одной тонны ГСМ из каждого склада в любое соединение. Все исходные данные записаны в таблице 2.

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

Решение: Обозначим через xij(i=1,2,3; j=1,2,3,4) количество ГСМ, планируемых для доставки с i-того склада (i=1,2,3) j-тому соединению (j=1,2,3,4).

 

Таблица 2.

Склады

          Соединения

Запасы ГСМ на складах

1 2 3 4
1 x11=350 3*              x12=0 4      x13=50           x14=500 3* 900
2 x21=0 5 x22=200 4 x23=0 7 x24=0 8 300
3 x31=0 4 x32=250 3* x33=350 5* x34=0 4 60
Потребность в ГСМ 350 450 400 500  

 

 

Выбор планов зависит от запасов ГСМ на складах и потребностей в нем соединений, что математически определяется выражениями:

 

   (21)

        (31)

 

Суммарные расходы на перевозку ГСМ определяются линейными выражениями:

 

 (41)

 

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

Эта задача решается элементарными подсчетами и рассуждениями.

Отметим в столбцах звездочками минимальные значения стоимости перевозки одной тонны ГСМ. В каждое соединение нужно планировать доставку из того склада, для которого эта стоимость будет наименьшей или близкой к ней, но с учетом расходов на доставку ГСМ и в другие соединения. Очевидно, в 1-е и 4-е соединение целесообразно завозить ГСМ полностью из 1-го склада, поэтому целесообразно выбрать x11=350, x14=500. Во второе соединение выгодно доставить горючее целиком с 3-го склада. Но тогда будут большие расходы при доставке ГСМ в 3-е соединение из 2-го склада. Поэтому целесообразно выбрать x13=50, x33=350, т.е. завести горючее в 3-е соединение с 1-го и 3-го складов, а 200 т. для 2-го соединения завести из склада, x22=200, x32=250. Результаты расчетов занесены в таблице 2, по которой удобно проверить выполнение условий (21), (31), найдя суммы xij по строкам и столбцам.

При таком плане расходы будут минимальными:

 

 

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

x11=350, x12=450, x13=x14=0, x21=x22=x23=0,

x24=300, x31=x32=0, x33=400, x34=200

При этом плане стоимость перевозок будет равна:

 

 

Она больше на 1950 единиц Kmin, что составляет более чем 30%.

Полученное оптимальное решение является основой для применения объективного решения на снабжение ГСМ соединений с учетом конкретной обстановки.

 

2.ЗАДАЧИ ОПТИМАЛЬНОГО РАСПРЕДЕЛЕНИЯ СРЕДСТВ ПОРАЖЕНИЯ.

 

Задачи оптимального распределения средств поражения в общем виде формулируются так: имеется некоторое количество средств поражения и целей. Требуется так распределить средства поражения по целям, чтобы общий эффект применения был в определенном смысле оптимален.

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

Различают два основных типа задач целераспределения:

- для средств поражения, находящихся в обороне;

- для средств поражения нападения;

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

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

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

Рассмотрим первую из таких задач. Имеется m различных средств поражения и n целей. Принимаются следующие допущения:

- число средств поражения не превосходит числа целей m£n;

- цели имеют разную важность, определяемую коэффициентом важности kj (j=1,2,…,n);

- за каждой целью не может быть закреплено более одного средства поражения, то есть должно быть обстреляно максимальное число целей;

- известны вероятности pij поражения i-ым средством j-ой цели, которые составляют таблицу вероятностей поражения :

 

 

         (5)

 

Таблица вероятности поражения вычисляется по соответствующим формулам теории стрельбы.

Закрепление или не закрепление i-того средства поражения за j-той целью выражается величиной xij, принимающей значение 1, когда имеется закрепление, и 0, когда его нет.

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

 

        (6)

 

где kj (j=1,2,…,m) – коэффициенты, определяющие важность целей. Если цели имеют одинаковую важность, то k1=k2=…=km=1. При этих значениях выражение (6) является математическим ожиданием числа уничтоженных целей. Требование, чтобы каждое средство было закреплено за какой либо целью, определяется выражениями

 

(i=1,2,…,m)  (7)

 

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

 

(j=1,2,…,n)  (8)

 

В случае знака равенства во всех выражениях (8) имеет место m=n, в противном случае m<n. Первая задача целераспределения может быть сформулирована следующим образом.

Найти такие целые значения xij³0 (найти такой план), удовлетворяющие условиям (7) и (8), которые обращают критерий эффективности (6) в максимум.

Как видно, эта задача линейного программирования, причем транспортного типа. В отличие от задачи на перевозку здесь ищутся значения xij, принимающие только два возможных значения: 0 и 1.

При малых m и n задачи целераспределения могут решаться путем элементарных расчетов и рассуждений.

Задача. Разведкой обнаружены три равноценные цели противника. Для их уничтожения выделяется командованием три средства поражения. Известны вероятности поражения каждой цели любым средством (таблица 3).

 

Таблица 3.

Средства поражения

       цели

Количество

средств

поражения

1 2 3
1 x11=1 0,8*              x12=0 0,4      x13=0    0,8* 1
2 x21=0 0,5 x22=0 0,1 x23=1 0,7 1
3 x31=0 0,2 x32=1 0,5* x33=0 0,5 1
Количество целей 1 1 1  

 

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

Решение. Критерий эффективности в этой задаче согласно формуле (6) определяем выражением:

 

(9)

 

Здесь положено k1=k2=k3=1, т.к. все цели равноценны. Выражения (7) и (8) для условия задачи будут иметь вид:

 

         (10)

 

         (11)

 

Найти такие целые положительные корни xij уравнений (10) и (11), при которых критерий эффективности (9) примет максимальное значение.

Для определения оптимального плана найдем в столбцах таблицы 3 максимальные значения вероятностей и отметим их звездочками. Очевидно, что за второй целью нужно закрепить 3-е средство (x32=1). Первое средство одинаково целесообразно закрепить за 1-ой или 3-ей целью. Но так как ближайшее значение к максимальной вероятности для 3-ей цели больше, чем для 1-ой, то целесообразно 1-ое средство закрепить за 1-ой целью (x11=1), a 2-oe средство за 3-ей целью (x23=1).

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

 

 

При оптимальном плане будет поражено в среднем две цели. Для сравнения рассмотрим следующий план: x13=1, x22=1 и x31=1. При этом плане средние потери будут равны

 

 

Таким образом, только за счет оптимального целераспределения эффективность средств поражения может быть значительно повышена (в данном примере почти в два раза). Этот факт имеет не только экономическое значение, но и повышает оперативность выполнения задачи на поражение цели.

 

III. СИМПЛЕКС-МЕТОД.

Симплекс-метод решения задачи линейного программирования. Пусть дана система n линейных уравнений с m переменными (n<m).

 

(3.22)

 

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

 

 

Тогда систему (3.22) можно разрешить относительно переменных x1, x2, …,xn которые, как и раньше, будем называть базисными переменными. В результате решения системы (3.22) базисные переменные будут выражены через остальные переменные xn+1, xn+2, …, xm, называемые свободными. Число свободных переменных k=m-n. Мы имеем решение системы (3.22) в виде:

 

(3.23)

 

Свободные переменные остаются произвольными. Давая им различные значения, получим все решения системы (3.22). Одно из решений найдем, если все свободные переменные приравняем к нулю. Тогда получим:

 

x1=b1, x2=b2, …, xn=bn; xn+1=xn+2=…=xm=0

 

Если все числа b1, b1, …,bn неотрицательны, то мы будем иметь неотрицательное решение системы (3.22), соответствующее угловой точке (вершине) многогранника неотрицательных решений, это так называемое опорное решение.

Решить систему относительно базисных переменных x1, x2, …,xn, используя свойства определителей n-го порядка, очень удобно. Мы будем решать эту систему путем последовательного исключения неизвестных.

Запишем в виде таблицы коэффициенты уравнений (3.24) и элемент a11 заключим в рамку

 

   (3.27)

 

коэффициенты от неизвестных свободных членов отделим чертой, а элемент a11, заключенный в рамочку, будем называть разрешающим элементом.

Выпишем соответствующую таблицу для коэффициентов уравнений (3.26)

 

      (3.28)

 

Коэффициент a’21 равен нулю

Из уравнения (3.25) следует, что

 

           (3.29)

 

На таблице (3.27) соединим элемент a2j c разрешающим элементом прямой линией. Рассмотрим прямоугольник, диагональю которого является проведенная линия. Эту диагональ будем называть первой диагональю. Второй диагональю является прямая, соединяющая элементы a21 и a1j, обведенные кружком. Как следует из формулы (3.29), чтобы получить элемент a2j, нужно из произведения элементов первой диагонали вычесть произведение второй диагонали. Остальные элементы второй строки вычисляются по этому же правилу. Это правило напоминает правило вычисления детерминантов второго порядка, поэтому будем коротко называть его D-правилом.

Переход от таблицы коэффициентов (3.27) к таблице (3.28), совершаемый с помощью D-правила, будем называть симплекс преобразованием или S-преобразованием одной таблицы в другую.

Очевидно, для выполнения S-преобразования с помощью первого уравнения необходимо, чтобы коэффициент a11¹0 в противном случае переменная x1 в первом уравнении будет отсутствовать.

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

 

  (3.30)

 

Если a11¹0, и мы хотим исключить x1 с помощью первого уравнения, то принимаем элемент a11 за разрешающий и в таблице (3.30) обводим его рамкой. Строка и столбец, в которых находится разрешающий элемент, называются соответственно разрешающей строкой и разрешающим столбцом. В таблице (3.30) это первая строка и первый столбец.

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

Остальные элементы новой таблицы вычисляются по D-правилу. Например, для вычисления элемента a’ij соединяем элемент aij на таблице (3.30) с элементом a11 прямой. В результате имеем первую диагональ. Вторая диагональ получается от соединения элементов ai1 и a1j, обведенных на таблице кружками. По D-правилу имеем

 

 

 

При выполнении симплекс преобразования диагонали, изображенные на таблице (3.30), на самом деле проводить не нужно: они легко выделяются в уме.

Выполнив S-преобразование над таблицей (3.30), мы получим новую таблицу

 

    (3.31)

 

Этой таблице соответствует система уравнений:

 

     (3.32)

 

Система (3.32) эквивалентна первоначальной системе (3.22), но в системе (3.32) переменная x1 исключена из всех уравнений, кроме первого. Если в таблице (3.31) элемент a’22¹0, то, приняв его за разрешающий элемент и проделав над таблицей (3.31) S-преобразование, получим новую таблицу. И в системе уравнений, соответствующей этой таблице, переменная x2 будет исключена из всех уравнений, кроме второго.

Если в таблице (3.31) a’22=0, то во втором столбце найдем элемент, не равный нулю, и примем его за разрешающий. Пусть это будет a’12. Тогда выполняя симплекс преобразование над таблицей (3.31), мы исключим x2 из всех уравнений, кроме i-того. Продолжая так дальше, мы после n преобразований придем к таблице, имеющей, например, следующий вид.

 


(3.33)

 

Таблице (3.33) соответствует система уравнений, эквивалентная первоначальной системе. Эта система уравнений имеет вид:

 

(3.34)

 

Можно считать, что система (3.34) решена относительно базисных переменных x1, x2, …, xn. Переносить члены, соответствующие свободным переменным, в правую часть для фактического решения системы (3.34) относительно базисных переменных не будем, так как в дальнейшем нас будет интересовать решение, где все свободные переменные равны 0.

Полагая xn+1=xn+2=…=xm=0, получим:

 

     

 

Если окажется, что x1³0, x2³0, …, xm³0, то совокупность чисел (x1, x2, …, xn, 0, 0, …, 0) дает неотрицательное решение системы.

Рассмотрим пример. Дана система уравнений

 

 

Нужно данную систему разрешить относительно переменных x1, x2, x3. Следовательно свободными переменными будут x4, x5, x6. Напишем таблицу, соответствующую данной системе уравнений.

 

 

Решим систему относительно x1 с помощью первого уравнения. За разрешающий элемент принимаем первый элемент первой строки, и подвергнем таблицу S-преобразованию. Получим новую таблицу, где первая строка переписывается, в первом столбце записываются нули, а остальные элементы вычисляются по D-правилу.

 

 

Этой таблице соответствует система уравнений, разрешенная относительно x1 (x1 входит только в первое уравнение). Исключить x2 удобнее с помощью третьего уравнения, так как коэффициент при x2 в третьем уравнении равен единице. Принимаем его за разрешающий элемент. Пишем новую таблицу

 

 

Система уравнений, соответствующая этой таблице, разрешена относительно x1 и x2 (x1 входит только в первое уравнение, а x2 только в третье).

Для разрешения системы относительно x3 за разрешающий элемент берем коэффициент при x3 во втором уравнении. Новая таблица имеет вид

 

 

Последняя таблица соответствует системе, решенной относительно базисных переменных x1, x2, x3. Полагая свободные переменные x4, x5, x6 равными нулю, получим уравнения:

 

-3x1=-18, откуда x1=6

-3x2=-6, откуда x2=2

-3x3=3, откуда x3=-1

 

Совокупность чисел x1=6, x2=2, x3=-1, x4=0, x5=0, x6=0 есть одно из решений данной системы. Оно не принадлежит к области допустимых решений, так как одна из координат x3 отрицательна.

Для решения задачи линейного программирования важно уметь находить неотрицательные (опорные) решения данной системы уравнений.

 

Правило выбора разрешающего элемента при отыскании неотрицательного решения системы уравнений.

Пусть дана система уравнений

 

(3.36)

 

В системе (3.36) свободные члены можно считать неотрицательными, так как в обеих частях уравнения всегда можно поменять знаки.

Если при выполнении симплекс преобразований при переходе от одной системы к другой будем следить за тем, чтобы разрешающие элементы были положительными, то на последнем этапе разрешения системы относительно базисных переменных получим систему вида (3.34) и по формулам (3.35) найдем неотрицательные значения базисных переменных. Составляем отношения свободных членов bk к положительным элементам akj разрешающего столбца и среди чисел выбираем наименьшее значение. Если наименьшее значение  достигается при k=i, то i-номер разрешающей строки, а разрешающим элементом будет aij.

Рассмотрим пример отыскания неотрицательных решений системы уравнений.

Пример. Найти неотрицательное решение системы уравнений

 

 

Пишем таблицу, соответствующую данной системе

 


 

Пробуем разрешить эту систему относительно x1, т.е. переменную x1 будем считать базисной переменной. Первый столбец будет базисным столбцом. Составляем отношения свободных членов к положительным элементам первого столбца 10/2=5; 4/7. Наименьшее из этих чисел 4/7. Числа 4 и 7 находятся во второй строке. Следовательно разрешающей строкой будет вторая строка и разрешающим элементом число 7. Выполняя симплекс преобразование, получим новую таблицу

 

 

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

 


 

Введем в базис переменную x3, т.е. примем за разрешающий столбец третий столбец.

Из двух отношений 62/13 и 10/3 меньшим является второе. Следовательно, разрешающим элементом будет 3. Выполняя симплекс преобразование получим таблицу

 

 

Первую строку сокращаем на 28, вторую на 21

 

Введем в базис переменную x2. Разрешающим элементом будет 5. Снова выполняя симплекс преобразования, получим таблицу

 

 

Последнюю строку сокращаем на 3

 


 

Эта таблица соответствует системе уравнений, разрешенной относительно базисных переменных x1, x2, x3. Свободными переменными здесь являются x4 и x5. Полагая свободные переменные равными нулю, получим:

5x1=12, x1=12/5; 5x2=2, x2=2/5; 5x3=18, x3=18/5;

Совокупность чисел x1=12/5; x2=2/5; x3=18/5; x4=0; x5=0

Дает неотрицательный ответ данной системы уравнений. Эти числа можно рассматривать как координаты угловой точки (вершины) множества (многогранника) допустимых решений.

 

             ЛИТЕРАТУРА

Малявко К.Ф. «Применение математических методов в военном

        деле».

Журко М.Д. «Математические методы и основы их применения

      в управлении войсками».

Журнал Квант №6 за 1989г.

   Квант №7 за 1979г.

 

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...