Найти максимум ф-ии при условиях
От: NetRaider Россия  
Дата: 30.04.03 02:28
Оценка:
Что-то у меня из головы вылетело как находится максимум ф-ии при условиях. Например

функция:

f = 2x1 + 4x2

система условий:

x1 + 2x2 <= 8
2x1 - x2 <=12

x1,x2 >=0

Нужно найти максимум ф-ии для заданных условий.



Как ???
Re: Найти максимум ф-ии при условиях
От: ZORK Россия www.zorkaltsev.com
Дата: 30.04.03 03:09
Оценка:
Здравствуйте, NetRaider, Вы писали:

NR>Что-то у меня из головы вылетело как находится максимум ф-ии при условиях.


Для двух X, можно решить графически — в Инете, в качестве примера, нашел вот это http://www.ecourses.ru:9000/courses/9/r2/r_2_6.html , а если надо вычислительным способом решать для N X, то смотри Симплекс-метод

-zork
Думать надо ...головой :)
Re[2]: Найти максимум ф-ии при условиях
От: NetRaider Россия  
Дата: 30.04.03 03:28
Оценка:
Здравствуйте, ZORK, Вы писали:


ZOR>Для двух X, можно решить графически — в Инете, в качестве примера, нашел вот это http://www.ecourses.ru:9000/courses/9/r2/r_2_6.html , а если надо вычислительным способом решать для N X, то смотри Симплекс-метод


Это симплекс-методом ??? как из пушки по воробьям.
По моему там все проще должно быть... уравнение и условия простые до безобразия.
Re[3]: Найти максимум ф-ии при условиях
От: ZORK Россия www.zorkaltsev.com
Дата: 30.04.03 03:39
Оценка:
Здравствуйте, NetRaider, Вы писали:

NR>Это симплекс-методом ??? как из пушки по воробьям.

NR>По моему там все проще должно быть... уравнение и условия простые до безобразия.

Ну, вообщем-то, Симплекс-метод сложным и не считается. И предложенная задача — задача линейной-оптимизации с линейными-ограничениями, а это как раз то то про что этот метод. Насколько я знаю, как исключение рассматривается случай только для 2-х X, так как его можно просто нарисовать. Я полагаю, что попытка решить эту задачу "на пальцах", будет по сути неявным применением Симплекс-метода, только не упоминая его названия

-zork
Думать надо ...головой :)
Re[4]: Найти максимум ф-ии при условиях
От: NetRaider Россия  
Дата: 30.04.03 04:51
Оценка:
Здравствуйте, ZORK, Вы писали:

ZOR> Ну, вообщем-то, Симплекс-метод сложным и не считается. И предложенная задача — задача линейной-оптимизации с линейными-ограничениями, а это как раз то то про что этот метод. Насколько я знаю, как исключение рассматривается случай только для 2-х X, так как его можно просто нарисовать. Я полагаю, что попытка решить эту задачу "на пальцах", будет по сути неявным применением Симплекс-метода, только не упоминая его названия


Мдя... Первоначальная задача:

Есть функция 2x1+4x2-x1^1 -2x2^2 и некоторые условия.
Необходимо найти максимум. Можно решить используя Симплекс-метод.
Но надо решить используя метод Франка-Вулфа.
Пре решении этим методом в каждой итерации нужно находить максимумы для функций подобных функции из первого поста.

Вопрос: Какой наиболее простой способ их решения ? (кроме Симплекс-метода)
Re[5]: Найти максимум ф-ии при условиях
От: Bell Россия  
Дата: 30.04.03 07:49
Оценка:
Здравствуйте, NetRaider, Вы писали:


NR>Мдя... Первоначальная задача:


NR>Есть функция 2x1+4x2-x1^1 -2x2^2 и некоторые условия.

NR>Необходимо найти максимум. Можно решить используя Симплекс-метод.

Функция содержит степени, так что Симплекс-методом ее решить нельзя.

NR>Но надо решить используя метод Франка-Вулфа.

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

NR>Вопрос: Какой наиболее простой способ их решения ? (кроме Симплекс-метода)

Не знаю чем объяснить такую нелюбовь к Симплекс-методу, который собственно для решения таких задач и предназначен
Ну да ладно — в данном случае система ограничений очень проста, так что построить многогранник допустимых решений — как 2 пальца об асфальт. После этого посчитай значения в каждой вершине, и выбири максимальное.
Конечно же это тот же Симплекс-метод, только в другой руке...
Любите книгу — источник знаний (с) М.Горький
Re[6]: Найти максимум ф-ии при условиях
От: mrhru Россия  
Дата: 30.04.03 08:04
Оценка: -1
Здравствуйте, Bell, Вы писали:

B>Здравствуйте, NetRaider, Вы писали:


B>

NR>>Мдя... Первоначальная задача:

NR>>Есть функция 2x1+4x2-x1^1 -2x2^2 и некоторые условия.

NR>>Необходимо найти максимум. Можно решить используя Симплекс-метод.

...

NR>>Вопрос: Какой наиболее простой способ их решения ? (кроме Симплекс-метода)

B>Не знаю чем объяснить такую нелюбовь к Симплекс-методу, который собственно для решения таких задач и предназначен
B>Ну да ладно — в данном случае система ограничений очень проста, так что построить многогранник допустимых решений — как 2 пальца об асфальт. После этого посчитай значения в каждой вершине, и выбири максимальное.
B>Конечно же это тот же Симплекс-метод, только в другой руке...

Только надо предварительно убедится в отсутствии локальных максимумов внутри, с учётом конкретной функции — достаточно только по х2.
Re[7]: Найти максимум ф-ии при условиях
От: Bell Россия  
Дата: 30.04.03 08:14
Оценка: +1
Здравствуйте, mrhru, Вы писали:

MM> Только надо предварительно убедится в отсутствии локальных максимумов внутри, с учётом конкретной функции — достаточно только по х2.


Дак их там и не будет Оптимальное решение гарантированно находится в одной из вершинин (ну или на одной грани в случае альтернативного оптимума).
Любите книгу — источник знаний (с) М.Горький
Re[8]: Найти максимум ф-ии при условиях
От: mrhru Россия  
Дата: 30.04.03 08:24
Оценка:
Здравствуйте, Bell, Вы писали:

B>Здравствуйте, mrhru, Вы писали:


MM>> Только надо предварительно убедится в отсутствии локальных максимумов внутри, с учётом конкретной функции — достаточно только по х2.


B>Дак их там и не будет Оптимальное решение гарантированно находится в одной из вершинин (ну или на одной грани в случае альтернативного оптимума).


А почему? Функция, вроде, полином степени больше 1.
Re[9]: Найти максимум ф-ии при условиях
От: Bell Россия  
Дата: 30.04.03 08:42
Оценка:
Здравствуйте, mrhru, Вы писали:

M>Здравствуйте, Bell, Вы писали:


B>Здравствуйте, mrhru, Вы писали:


MM>> Только надо предварительно убедится в отсутствии локальных максимумов внутри, с учётом конкретной функции — достаточно только по х2.


B>Дак их там и не будет Оптимальное решение гарантированно находится в одной из вершинин (ну или на одной грани в случае альтернативного оптимума).


M>А почему? Функция, вроде, полином степени больше 1.


Стоп. Мы говорим о разных вещах. Я имел ввиду линейную функцию из самого первого поста. Полином роявился позже
Ну а для полинома ты все верно сказал — находим экстремумы, проверяем их на максимум, проверяем удовлетворяет ли решение ограничениям, и если нет — проверяем вершины многогранника доп. решений.
По-моему такие задачи в школе решают... Правда я не знаю, как этот метод соотносится с методом Франка-Вулфа (я о нем сейчас первый раз услышал). Может в нем как-то обходится необходимость аналитических вычисдений, связанных с нахождением экстремумов?
Любите книгу — источник знаний (с) М.Горький
Re: Найти максимум ф-ии при условиях
От: ilnar Россия  
Дата: 30.04.03 10:57
Оценка:
Здравствуйте, NetRaider, Вы писали:

NR>Что-то у меня из головы вылетело как находится максимум ф-ии при условиях. Например


NR>
NR>функция:

NR>f = 2x1 + 4x2

NR>система условий:

NR>x1 + 2x2 <= 8
NR>2x1 - x2 <=12

NR>x1,x2 >=0

NR>Нужно найти максимум ф-ии для заданных условий.
NR>



NR>Как ???


используется симплекс метод
Re[10]: Найти максимум ф-ии при условиях
От: LCR Россия lj://_lcr_
Дата: 02.05.03 11:18
Оценка:
Здравствуйте, Bell, Вы писали:

B>По-моему такие задачи в школе решают... Правда я не знаю, как этот метод соотносится с методом Франка-Вулфа (я о нем сейчас первый раз услышал). Может в нем как-то обходится необходимость аналитических вычисдений, связанных с нахождением экстремумов?


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

Теперь о методе Франка-Вулфа. Метод применим, если задача является задачей квадратичного программирования, то есть целевая функция есть полином степени 2, причём в случае минимизации это должна быть положительно определённая функция, то есть грубо говоря "стакан", представляющий функцию, должен быть направлен вверх. Все ограничения должны быть линейными.

Если все эти условия выполнены, то задача становится частным случаем задачи выпуклого программирования, и мы можем гарантировать, что экстремум существует и является единственным. Также, оказывается применима одна теоремка (Куна-Таккера), с помощью которой выписываются вспомогательные условия и задача сводится к задаче линейного программирования, и можно уже применять Симплекс-метод (столь нелюбимый автором топика ).

Если нужны ссылки на книжки, то завтра. Интернет-ресурсы по этой теме мне неизвестны
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re: Найти максимум ф-ии при условиях
От: Аноним  
Дата: 02.05.03 13:23
Оценка: 1 (1)
Это называется условный экстремум (conditional)
Используй метод Лагранжа.
Найти его можно где угодно, например mathworld.wolfram.com
Re: Найти максимум ф-ии при условиях
От: skyline Россия  
Дата: 02.05.03 15:04
Оценка:
Здравствуйте, NetRaider, Вы писали:

NR>Что-то у меня из головы вылетело как находится максимум ф-ии при условиях. Например


NR>
NR>функция:

NR>f = 2x1 + 4x2

NR>система условий:

NR>x1 + 2x2 <= 8
NR>2x1 - x2 <=12

NR>x1,x2 >=0

NR>Нужно найти максимум ф-ии для заданных условий.
NR>



NR>Как ???



Вообще-то, это задача линейного программирования.
Алгоритм можно найти в лекциях по ИО любого препода с ВМК МГУ (просто я там учился, поэтому и ссылаюсь, умаю, что в других ВУЗах на курсе Исследовании Опереции это тоже учат). например www.karganov.ru
If the milk turns out to be sour,
I ain't the kind of pussy to drink it
Re[2]: Найти максимум ф-ии при условиях
От: skyline Россия  
Дата: 02.05.03 15:06
Оценка:
Виноват, этот курс называе6тся Теорией Игр (ТигРы)
If the milk turns out to be sour,
I ain't the kind of pussy to drink it
Re: Найти максимум ф-ии при условиях
От: LCR Россия lj://_lcr_
Дата: 03.05.03 08:27
Оценка: 6 (1)
Здравствуйте, NetRaider, Вы писали:

NR>Что-то у меня из головы вылетело как находится максимум ф-ии при условиях. Например


NR>
NR>функция:

NR>f = 2x1 + 4x2

NR>система условий:

NR>x1 + 2x2 <= 8
NR>2x1 - x2 <=12

NR>x1,x2 >=0

NR>Нужно найти максимум ф-ии для заданных условий.
NR>



NR>Как ???


Симплекс-метод — это очень просто, есть куда более сложные алгоритмы, в которых "без бутылки" не разберёшься, а если реализовывать, то совсем жуть Вводим вспомогательные переменные, чтобы был базис и выписываем начальную симплексную таблицу:
 0 | -2 -4
---+------
 8 |  1  2
12 |  2 -1

Первая итерация: находим первое попавшееся отрицательное число в первой строке, пусть это будет -4, и в этом столбце выбираем ведущий элемент. Согласно алгоритму это 2 во второй строке в третьем столбце. Пересчитываем таблицу с этим ведущим элементом:
16 |    0    2
---+-----------
 4 |  1/2  1/2
20 |  3/2  1/2

Всё, получилась конечная таблица, (таким образом нам хватило одной итерации), отсюда получаем x2=4, x1=0. Оптимальное значение целевой функции = 16.

Усё.
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re[2]: Найти максимум ф-ии при условиях
От: NetRaider Россия  
Дата: 05.05.03 05:52
Оценка:
Здравствуйте, LCR, Вы писали:
...
LCR>Всё, получилась конечная таблица, (таким образом нам хватило одной итерации), отсюда получаем x2=4, x1=0. Оптимальное значение целевой функции = 16.

LCR>Усё.



Именно это и надо было
Re[3]: Найти максимум ф-ии при условиях
От: LCR Россия lj://_lcr_
Дата: 05.05.03 06:12
Оценка:
Здравствуйте, NetRaider, Вы писали:

NR>Именно это и надо было


Рад помочь
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re: Найти максимум ф-ии при условиях
От: Bull  
Дата: 05.05.03 12:52
Оценка:
Привет, чел!!! Я, как человек изуч. 1,5 года эту лабуду, могу тебе сказать, что в принципе эта задача решается симплексным методом, но т.к. параметров всего 2, то легче графически. Т. е. находишь вершины области(сист. ограничений и x[i]>0) и находишь в них значение функции(тот же симп. метод). Выбираешь max или min (зависит от того что надо получить). Это и будет решение.

P.S. Если в 2-х разных точках значение f одинаково, то решение- отрезок, соед. эти точки. И ничего мудрить не нужно!!!
Re[2]: Найти максимум ф-ии при условиях
От: Bell Россия  
Дата: 05.05.03 13:21
Оценка: :)
Здравствуйте, Bull, Вы писали:

...

"симплексный метод" — это сильно
Любите книгу — источник знаний (с) М.Горький
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.