2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

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

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

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



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Об условиях применимости разновидностей симплекс-метода.
Сообщение23.04.2010, 23:44 


15/04/10
985
г.Москва
На тему симплекс метода и его разновидностей много ссылок в интернете.
Есть т.н. каноническая форма уравнений в виде
max F
 $Ax\leqslant b$
$ x \leqslant 0 $

При этом «Если ограничения исходной задачи содержат единичную матрицу порядка М, то при неотрицательности правых частей уравнения определяется первоначальный план, из которого с помощью преобразований Жордана над симплекс-таблицами находим оптимальный план.”
т.е если дополнительно $ b \geqslant 0 $
то система ограничений содержит единичную матрицу всегда и первоначальный план имеет вид
$ X_1=X_2=...X_n=0, S_1=b_1,...S_m=b_m  $
(при этом предполагается неотрицательность решений).
Логично предположить, что нарушение любого из перечисленных условий
А) неотрицательность переменных, неотрицательности вектора B или замена неравенства
<= на >= хотя бы в одном уравнении приведут к отсутствию нахождения простого начального плана и как следствие применять другие разновидности метода – т.н. двухфазный или M-метод
При котором хотя бы в одно уравнение добавляется не 1 базисная а 2 переменные т.н искусственная переменная,
А в качестве критерия вспомогательный критерий, т.е в симплекс таблице становится на 1 строку больше чем обычно и дальше решается в 2 этапа….
Вроде все так. Да вот только подал я своей программе симплекс метода на вход Систему
Max F=X1+X2 При условиях
$2X_1+X_2 \leqslant 6 $
$X_1+2X_2 \leqslant 6 $
$X_1+X_2 \geqslant 2 $ /* нарушение знака*/
$X_1,X_2 \geqslant 0 $
Думал – не сработает, а она преспокойно выплюнула верное оптимальное решение
Fmax=4 при X1=X2=2 почему?
Действительно ли важна неотрицательность вектора правых частей b?
(иначе можно было бы лихо изменив знак всей строки матрицы добиться <=)
Тогда как видоизменить критерий выбора по виду матрицы и ограничений. альтернативного симплекс-метода?

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 02:02 
Заслуженный участник


08/09/07
841
Обычно симплекс-метод приводится для задачи
$\max c_1x_1+c_2x_2+...+c_nx_n$
$Ax=b$
$x \geq 0$.
То есть мы знаем как решить эту задачу симплекс-методом ($A$ - $m \times n$).
Для того, чтобы начать симплекс-метод, нам необходимо начальное решение, которое не всегда легко найти. Для этого, рассматривается вспомогательная задача
$\max y_1+y_2+...+y_m$
$Ax+y=b$
$x \geq 0$
$y \geq 0$.
И эту задачу мы тоже знаем как решать, так как она ничем не отличается от предыдущей. Однако, первоначальное решение легко найти если все компонеты вектора $b$ неотрицательны (первоначальное решение это $x=0,y=b$). Отсюда следует необходимость неотрицательности вектора $b$ в общем случае.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 08:28 


15/04/10
985
г.Москва
1) извините описка. дожно быть x>=0
Cогласен , и я также думал. Но еще раз вопрос - значит ли это что это необходимо и достаточно, т.е. отрицание любого из требований канонической задачи - означает невозможность получения начального базиса и как следствие невозможность решения классическим способом? У меня получилось, что нет.
Другими словами, я пишу "всеядную" программу, рассчитывающую все виды ограничениий, вводимые пользователем. Наверно можно внутрь заложить только 2-фазный метод, а я хочу ,чтобы было 2 метода и программа сама принимала решение когда можно и применяла бы классический, а когда по необходимости двухфазный

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 09:07 
Заслуженный участник


08/09/07
841
eugrita в сообщении #312702 писал(а):
Но еще раз вопрос - значит ли это что это необходимо и достаточно, т.е. отрицание любого из требований канонической задачи - означает невозможность получения начального базиса и как следствие невозможность решения классическим способом? У меня получилось, что нет.
Вы же понимаете, что двух-фазный метод с неотрицательными $b$ это универсальный способ получения начального решения. Вы пишете "означает невозможность получения начального базиса". Да означает, если для его получения используется двух-фазный метод ($x=0, y=b$ в моём первом сообщении), так как нарушение условия $b \geq 0$ уже означает, что решение $x=0, y=b$ не является начальным, так как не удовлетворяет условию $y \geq 0$ вспомогательной задачи.
В общем же случае, делайте $b$ любыми, но тогда придётся описывать способ которым будете получать начальное решение.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 09:23 


15/04/10
985
г.Москва
"двухфазный с неотрицательным b" - это неточно,
хотите видно сказать "двухфазный с любым b - универсален в поиске начальн решения" ?

Т.е. B>=0 важно и фишка с изменением >= на <= в рамках классического не проходит, так как после этого Bi становится отрицательным.
Кроме того, случай отсутствия ограничений Xi >=0 вообще - тоже
Интересно, что задача поиска min вместо max проходит и при классическом
если хотя бы один из Ci < 0
А в таком случае может вообще забыть про классический метод.
И решать все задачи двухфазным или M -методом?
------------------------------------------------------------------------------
А как все-таки с ответом на мой пример?
Он решался классическим способом но условия применимости классического
не были выполнены, тем не менее он решен. Можете сами проверить на бумаге

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 09:35 
Заслуженный участник


08/09/07
841
eugrita в сообщении #312712 писал(а):
А в таком случае может вообще забыть про классический метод.
И решать все задачи двухфазным или M -методом?
Почему Вы разделяете классический (симплекс-метод) и двух-фазный методы? Двух-фазный метод это применение классического, сначала к вспомогательной задаче, а потом к первоначальной задаче после того, как найдено допустимое решение.
Что касается $M$-метода, то это просто альтернатива двух-фазному.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 09:47 


15/04/10
985
г.Москва
В конечном счете все разновидности методов применяют симплекс-алгоритм, т.е. преобразование Жордана над матрицей. Различия лишь в том, что подается на вход 1 итерации, и в том сколько раз применяется симплекс-алгоритм.
когда я говорю классический я понимаю формирование неотрицательных базисн переменных, т.е приписывание справа к исходной матрице единичной.
Так вот ,как вы объясняете что мой пример при изменении знака последнего неравенства на >= и тем самым B3=-2 <0 все таки решен обычным симплес-алгоритмом???

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 10:08 
Заслуженный участник


08/09/07
841
eugrita в сообщении #312712 писал(а):
"двухфазный с неотрицательным b" - это неточно,
хотите видно сказать "двухфазный с любым b - универсален в поиске начальн решения" ?
Сначала, задача линейного программирования приводится к виду
$\max c_1x_1+c_2x_2+...+c_nx_n$
$Ax=b$
$x \geq 0$.
где сделать $b$ неотрицательными не составляет сложности, поэтому без потери общности $b$ при использовании двух-фазового метода можно считать неотрицательными.
eugrita в сообщении #312720 писал(а):
Так вот ,как вы объясняете что мой пример при изменении знака последнего неравенства на >= и тем самым B3=-2 <0 все таки решен обычным симплес-алгоритмом???
Может совпадение? Вы сами все вычисления вручную делали или программа решала? Если задача решалась симплекс-методом, то это не правильно, так как симплекс-метод должен начинаться с допустимого решения.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 21:56 


15/04/10
985
г.Москва
Смотрите сами - вот решение этой задачи без компа только в симплекс таблицах
Начальное решение как видите:
X1=X2=X3=0, S1=S2=6, S3=-2 (т.е есть отрицательный элемент!!!)
Тем не менее метод доработал и дал правильный результат (проверить легко геометрически)
Какой это метод? Полагаю классический, хотя и начальный вектор отрицателен
Ведь я же не вводил в последнем уравнении 2 переменные s3 и w3 вместо только s3
Изображение

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 22:19 
Заслуженный участник


08/09/07
841
Во-первых, ссылка не работает. Во-вторых, в симплекс-таблицах решается симплекс-методом. Теперь о Вашей задаче. Вы знаете, как работает симплекс-алгоритм? Он переходит из одной вершины многогранника в другую. То есть алгоритм начинает работу в какой-либо вершине многранника (допустимое начальное базисное решение). Может Вы имеете ввиду двойственный симплекс-метод, там начальная точка может иметь отрицательные координаты.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение24.04.2010, 23:11 


15/04/10
985
г.Москва
Вот вам еще ссылка. А что тег img или url не работает, так это не моя проблема, а админа данного форума. Я делаю все правильно. Такой сайт видимо
Те же проблемы и на www.exponenta.ru
[img]foto.mail.ru/mail/eugrita/_myphoto/4.html[/img]
[url]foto.mail.ru/mail/eugrita/_myphoto/4.html[/url]

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение25.04.2010, 00:33 
Заслуженный участник


08/09/07
841
Ну просто совпало так. У Вас и на втором шаге, полученное решение $s_1=3, x_1=3, s_3=1$ тоже не является допустимым (не удовлетворяет системе ограничений).

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение25.04.2010, 07:59 


15/04/10
985
г.Москва
исходный вопрос так и остался нераскрытым:
Можно ли глядя на входную систему ограничений и целевую функцию
придумать несложное правило по которому можно однозначно принять
решение будет ли обычный (однофазный) алгоритм находить или не находить верное оптимальное решение и заложить это правило в программу.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение25.04.2010, 08:51 
Заслуженный участник


08/09/07
841
eugrita в сообщении #312999 писал(а):
исходный вопрос так и остался нераскрытым:
Можно ли глядя на входную систему ограничений и целевую функцию
придумать несложное правило по которому можно однозначно принять
решение будет ли обычный (однофазный) алгоритм находить или не находить верное оптимальное решение и заложить это правило в программу.
Возьмите любую книгу, любой источник в интернете, в которых говорится о линейном программировании и симплекс-методе. Прежде чем описывать метод даётся общий вид задачи, которая этим методом решается. Можете посмотреть например здесь. Поэтому правило такое: если задача которую Вы хотите решить совпадает с общим видом задачи для которой описан симплекс-метод, то симплекс-алгоритм может быть использован для решения задачи. Если нет, то алгоритм использовать нельзя.
Теперь что значит "...находит или не находит верное оптимальное решение"? Если алгоритм применим (задача приведена к общему виду), то после применения алгоритма (с учетом правил антизацикливания): находится оптимальное решение или оптимальное решение отсутствует.

 Профиль  
                  
 
 Re: Об условиях применимости разновидностей симплекс-метода.
Сообщение25.04.2010, 10:51 


15/04/10
985
г.Москва
Спасибо конечно. Куда вы ткнули меня в википедию, я конечно смотрел,
но там описание неполное.
Уже повторял, повторю еще раз.
С формальной точки зрения мой приведенный пример не попадает в область применимости классического симплекс метода, описанную в разных источниках.
А фактически - симплекс метод работает на нем. Тем самым понятие "область применимости" сформулированы не чётко а расплывчато - вне области может сработает может не сработает.
Математика - строгая наука

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group