2014 dxdy logo

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

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


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


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 09:31 
Заслуженный участник
Аватара пользователя


28/04/16
2395
Снаружи ускорителя
ilghiz в сообщении #1441734 писал(а):
С радостью услышу более правильную теорию,

Ох, по мне это извращение для учебной задачки.
ilghiz в сообщении #1441734 писал(а):
ТС ничего про гессиан не сказал, значит его у него скорей всего нет. Чем будем минимизировать? Квазиньютоном?

Ну так ТС вроде градиентным спуском собрался работать. А там то ввести Лагранжа не составит труда, если линеаризовать функцию (и молиться, что уравнение на неопределенный коэффициент будет всегда иметь решение).
Фу, какая ересь.

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 09:53 
Аватара пользователя


26/05/12
1694
приходит весна?
Я вот не пойму: ограничение линейное, в чём проблема выразить одну из координат и решать задачу с размерностью на единицу меньше?

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 10:01 
Заслуженный участник
Аватара пользователя


28/04/16
2395
Снаружи ускорителя
B@R5uk в сообщении #1441781 писал(а):
Я вот не пойму: ограничение линейное, в чём проблема выразить одну из координат и решать задачу с размерностью на единицу меньше?

feedinglight в сообщении #1441638 писал(а):
а нельзя в данном случае из ограничения выразить одну из переменных и подставить в минимизируемую функцию?

Уже предлагали, и вроде предположил, что в задаче подразумевалось нечто иное.

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 10:12 
Аватара пользователя


26/05/12
1694
приходит весна?
Если это учебная задача, то надо уточнить все подробности условия и указать какие темы должны использовать со ссылками на рекомендуемую литературу. А пока уменьшение размерности на 1 — единственное, что человек в здравом уме будет использовать для практического решения данной задачи.

-- 27.02.2020, 10:30 --

svv в сообщении #1441651 писал(а):
Тут выразить можно, а что делать, если ни одна переменная явно не выражается?
В случае поверхностей второго порядка всегда можно ввести параметризацию, например. Что опять же снизит размерность на единицу.

Я не утверждаю, что снижение размерности — это универсальный рецепт на все времена. Просто если можно упростить себе жизнь, то нужно упростить себе жизнь.

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 10:46 
Заслуженный участник
Аватара пользователя


23/07/08
10908
Crna Gora
feedinglight в сообщении #1441660 писал(а):
Всегда раздражает "методичность" задания, когда нужно искать скрытый смысл, чтобы "правильно" его решить. Придумывать постановку задачи, для решения которой самый оптимальный путь - это путь, который методически подразумевается, естественно, некоторые ленятся.
B@R5uk в сообщении #1441784 писал(а):
Просто если можно упростить себе жизнь, то нужно упростить себе жизнь.
Я, наоборот, думаю, что более универсальные и «высокоуровневые» методы удобно изучать на таких задачах, в которых с проблемой в принципе можно справиться и кустарным способом (причём в конкретном случае это может быть и проще). Для сравнения, для лучшего понимания, для проверки.

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 11:45 
Аватара пользователя


26/05/12
1694
приходит весна?
svv в сообщении #1441785 писал(а):
для проверки
Разве только это.
svv в сообщении #1441785 писал(а):
в которых с проблемой в принципе можно справиться и кустарным способом
Что же здесь кустарно?! В самом общем случае, если есть N-мерная функция, подлежащая оптимизации, и есть M линейных ограничений на её координаты (совместные и линейно независимые, разумеется), то можно построить преобразование $(N-M)$-мерного пространства в N-мерное и решать задачу с меньшей размерностью. Это всегда предпочтительней наращиванию размерности, как в методе множителей Лагранжа. Плюс, если напрячься, то можно поставить дополнительное условие (и удовлетворить ему) на линейное преобразование пространства свободных координат в пространство координат функции и ограничений. А именно: чтобы линейное преобразование было максимально хорошо обусловлено.

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

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение27.02.2020, 17:07 
Аватара пользователя


26/05/12
1694
приходит весна?
ilghiz в сообщении #1441734 писал(а):
С радостью услышу более правильную теорию, хорошо проверенную на практике, как такое можно решать.
Один из лучших алгоритмов для оптимизации "овражистой" функции — метод Нелдера-Мида. Кроме всего прочего, он ещё и не требует знания производных, так как работает только со значениями целевой функции. К сожалению, чтобы воспользоваться им, задачу с ограничениями придётся "допилить". Лучший способ — это ввести параметризацию, которая сразу удовлетворит граничным условиям и за одно понизит размерность задачи. Но это работает не всегда.

-- 27.02.2020, 17:21 --

feedinglight в сообщении #1441660 писал(а):
метод Лагранжа
Вот, не понимаю, если честно, как его использовать на практике для численных вычислений. В случае аналитических вычислений всё просто: записываем функцию Лагранжа, берём градиент (аналитически), приравниваем нулю, решаем систему. Только вот решать систему всегда сложнее, чем искать экстремум.

А в лоб найти численно экстремум у функции Лагранжа не получится. Просто потому, что его нет: по множителям Лагранжа функция не ограничена в обе стороны (они входят в виде линейных множителей, на то и множители), соответственно не имеет экстремума. Можно, конечно, взять эти множители в виде квадратов, но тогда надо угадать со знаком каждого множителя (вернее, даже перебрать все $2^m$ вариантов), так как множители Лагранжа в сущности — это коэффициенты линейной комбинации, и могут быть любых знаков. Если потребовать знакоопределённость, то решения будут теряться.

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

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение29.02.2020, 20:37 


16/04/19
161
svv в сообщении #1441785 писал(а):
более универсальные и «высокоуровневые» методы удобно изучать на таких задачах
svv в сообщении #1441785 писал(а):
Для сравнения, для лучшего понимания, для проверки
Ну да, если это явно сказано в условии(какие методы можно применять)
B@R5uk в сообщении #1441822 писал(а):
как его использовать на практике для численных вычислений
Метод множителей Лагранжа вполне применяется, например, в контактных задачах механики [Коробейников С.Н. Нелинейное деформирование твердых тел, 2000, стр. 153] но я его не реализовывал

(Оффтоп)

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

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

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение03.03.2020, 11:51 


16/08/05
1153
B@R5uk в сообщении #1441781 писал(а):
Я вот не пойму: ограничение линейное, в чём проблема выразить одну из координат и решать задачу с размерностью на единицу меньше?

В мат.программировании так не бывает, это же не алгебра.
Если из ограничения $x_1+x_2+x_3+x_4=1$ Вы выразили, допустим, $x_4 \to 1-x_1-x_2-x_3$ и подставили в $F(x_1,x_2,x_3,x_4)$, то в итоге получили новую задачу мат.программирования для оптимизации некой новой целевой функции $G(x_1,x_2,x_3)$, связанную с первоначальной $F(x_1,x_2,x_3,x_4)$ тем же самым первоначальным ограничением $x_1+x_2+x_3+x_4=1$. Т.е. вычислительно ничего не изменилось, оптимизировав $G(x_1,x_2,x_3)$ и получив некие якобы оптимальные $(x_1,x_2,x_3)$, нужно дополнительным шагом проверить ограничение $x_1+x_2+x_3+x_4=1$, которое может и не выполниться при формально оптимальной цели $G(x_1,x_2,x_3)$. Ведь значение $x_4 = 1-x_1-x_2-x_3$ может оказаться за пределами его допустимого диапазона.

 Профиль  
                  
 
 Re: Градиентный метод с линейным ограничением
Сообщение03.03.2020, 21:38 
Аватара пользователя


26/05/12
1694
приходит весна?
dmd в сообщении #1442713 писал(а):
...нужно дополнительным шагом проверить ограничение $x_1+x_2+x_3+x_4=1$, которое может и не выполниться...
Вот это вы чушь написали.

dmd в сообщении #1442713 писал(а):
Ведь значение $x_4 = 1-x_1-x_2-x_3$ может оказаться за пределами его допустимого диапазона.
Сдаётся мне вы пытаетесь решать совсем другую задачу.

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

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



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

Сейчас этот форум просматривают: VanD


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

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