Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Методика решения задач ЛП графическим методом. I. В ограничениях задачи (1.2) заменить знаки неравенств знаками точных равенств и



I. В ограничениях задачи (1.2) заменить знаки неравенств знаками точных равенств и построить соответствующие прямые.

II. Найти и заштриховать полуплоскости, разрешенные каждым из ограничений-неравенств задачи (1.2). Для этого нужно подставить в конкретное неравенство координаты какой-либо точки [например, (0; 0)], и проверить истинность полученного неравенства.

Если неравенство истинное,

то надо заштриховать полуплоскость, содержащую данную точку;

иначе (неравенство ложное) надо заштриховать полуплоскость, не содержащую данную точку.

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

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

III. Определить ОДР как часть плоскости, принадлежащую одновременно всем разрешенным областям, и выделить ее. При отсутствии ОДР задача не имеет решений.

IV. Если ОДР – не пустое множество, то нужно построить целевую прямую, т.е. любую из линий уровня  (где L – произвольное число, например, кратное  и , т.е. удобное для проведения расчетов). Способ построения аналогичен построению прямых ограничений.

V. Построить вектор , который начинается в точке (0; 0) и заканчивается в точке . Если целевая прямая и вектор  построены верно, то они будут перпендикулярны.

VI. При поиске максимума ЦФ необходимо передвигать целевую прямую в направлении вектора , при поиске минимума ЦФ – против направления вектора . Последняя по ходу движения вершина ОДР будет точкой максимума или минимума ЦФ. Если такой точки (точек) не существует, то можно сделать вывод о неограниченности ЦФ на множестве планов сверху (при поиске максимума) или снизу (при поиске минимум).

VII. Определить координаты точки max (min) ЦФ  и вычислить значение ЦФ . Для вычисления координат оптимальной точки  необходимо решить систему уравнений прямых, на пересечении которых находится .

Решить задачу линейного программирования

1. f ( x )=2 x 1 + x 2 -> extr


x 1 + x 2 < =3

x 1 +3 x 2 < =5

5 x 1 - x 2 < =5

x 1 + x 2 > =0

x 1 > = 0, x 2 > =0

 

> plots[inequal]({a+b< =3, a+3*b< =5, 5*a-b< =5, a+b> =0, a> =0, b> =0}, a=-2..5, b=-2..5, optionsfeasible=(color=red),

optionsopen=(color=blue, thickness=2),

optionsclosed=(color=green, thickness=3),

optionsexcluded=(color=yellow));

 

 

> with(simplex):

> C: ={ x+y < =3, x+3*y < =5, 5*x-y < =5, x+y > =0};

> dp: =setup({ x+y < =3, x+3*y < =5, 5*x-y < =5, x+y > =0});

> n: =basis(dp);


Ø display(C, [x, y]);

 

 

> f: =2*x+y:

> L: =cterm(C);

> feasible(C, NONNEGATIVE, 'NewC', 'Transform');

Ø X: =dual(f, C, p);

 

 

Ø R: =maximize(f, C, NONNEGATIVE );

 

 

Ø f_max: =subs(R, f);

 

 

Ø R1: =minimize(f, C, NONNEGATIVE );

 


f_min: =subs(R1, f);

 

 

ОТВЕТ: При x 1=5/4 x 2=5/4 f_max=15/4; При x 1=0 x 2=0 f_min=0;

Урок № 5.Решение матричных игр, используя методы линейного программирования и симплекс метод

Тип урока: урок контроль + урок изучения нового материала. Вид урока: Лекция.

Продолжительность: 2 часа.

Цели: 1)Проверить и закрепить знания по прошедшему материалу на прошлых уроках.

2) Изучить новый метод решения матричных игр.

3) развить память, математическое мышление и внимание.

1 этап: проверить домашнее задание в виде самостоятельной работы.

2 этап: дать краткое описание метода зигзага

3 этап: закрепить новый материал и дать домашнее задание.

Ход занятия.

Методы линейного программирования - численные методы решения оптимизационных задач, cводящихся к формальным моделям линейного программирования.

Как известно, любая задача линейного программирования может быть приведена к канонической модели минимизации линейной целевой функции с линейными ограничениями типа равенств. Поскольку число переменных в задаче линейного программирования больше числа ограничений (n > m), то можно получить решение, приравняв нулю (n - m) переменных, называемых свободными. Оставшиеся m переменных, называемых базисными, можно легко определить из системы ограничений-равенств обычными методами линейной алгебры. Если решение существует, то оно называется базисным. Если базисное решение допустимо, то оно называется базисным допустимым. Геометрически, базисные допустимые решения соответствуют вершинам (крайним точкам) выпуклого многогранника, который ограничивает множество допустимых решений. Если задача линейного программирования имеет оптимальные решения, то по крайней мере одно из них является базисным.

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

 

С = m n! / n m! * (n - m)!

 

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

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

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

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

Cледует также отметить, что для важных в практическом смысле прикладных задач линейного программирования разработаны специальные методы, учитывающие конкретный характер ограничений задачи. B частности, для однородной транспортной задачи применяются специальные алгоритмы выбора начального базиса, наиболее известными из которых являются метод северо-западного угла и приближенный метод Фогеля, а сама алгоритмическая реализация симплекс-метода приближена к специфике задачи. Для решения задачи линейного назначении (задачи выбора) вместо симплекс-метода обычно применяется либо венгерский алгоритм, основанный на интерпретации задачи в терминах теории графов как задачи поиска максимального по весу совершенного паросочетания в двудольном графе, либо метод Мака.

Этап.

Решить матричную игру размера 3х3

f(x)=x1+x2+x3

3x2+2x3 < =1

2x1+x3 < =1

3x1 < =1

x1> = 0, x2> =0, x3> =0

> with(simplex):

> C: ={ 0*x+3*y+2*z < =1, 2*x+0*y+1*z < =1, 3*x+0*y+0*z < =1};

 

 

Ø display(C, [x, y, z]);

 

 

> f: =x+y+z:

> feasible(C, NONNEGATIVE, 'NewC', 'Transform');

> S: =dual(f, C, p);

 


Ø R: =maximize(f, C, NONNEGATIVE );

 

 

Ø f_max: =subs(R, f);

 

 

Ø R1: =minimize(S, NONNEGATIVE);

 

> G: =p1+p2+p3;

 

> f_min: =subs(R1, G);

 

 

Найдём цену игры

> V: =1/f_max;

 

Найдём оптимальную стратегию первого игрока > X: =V*R1;

 


Найдём оптимальную стратегию второго игрока

> Y: =V*R;

 

ОТВЕТ: При X=(3/7, 3/7, 1/7) V=9/7; При Y=(3/7, 1/7, 3/7) V=9/7;

Этап.

Каждому ученику даётся один из 20 вариантов, в котором ученику предлагается самостоятельно решить матричную игру 2x2, а остальные примеры в качестве домашнего задания.

 


Заключение

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

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

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

Для написания теоретического материала я воспользовался такими книга как «Основные теории игр. Бескоалиционные игры», автор Вороьев Н.Н; «Теория игр», авторы Петросян Л.А., Зенкевич Н.А., Семина Е.А; «Теория игр для экономистов», авторы Печерский С.Л. и Беляев А.А.

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

Апробация проводилась в Вольном институте среди студентов второго курса. Данный спец-курс был проведён Матвеевым Владимиром Александровичем для студентов вольного института на 3 курсе в группах юристов и экономистов, я был ассистентом. Курс был успешно усвоен, и студенты без особого труда освоили теорию Матричных игр и математический пакет Maple.


[1] Вектор нормали имеет координаты (С1; С2), где C1 и C2 коэффициенты при неизвестных в целевой функции f=C1◦ X1+C2◦ X2+C0.


Поделиться:



Последнее изменение этой страницы: 2019-10-04; Просмотров: 177; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.052 с.)
Главная | Случайная страница | Обратная связь