2014 dxdy logo

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

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


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


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



Начать новую тему Ответить на тему
 
 Как правильнее поступить
Сообщение13.10.2021, 13:00 


29/12/09
301
Привет, всем!

Я ищу глобальный минимум функции 6 переменных.
Изначально идея была в том, чтобы разыграть ~ 100 выборок разыгранных случайным образом значений входных параметров и использовать их как начальные точки для нахождения глобального минимума.
Но, стало известно, что для других целей будет нужно будет выполнить 10 000 расчетов кода с случайными выборками входных параметров.
Учитывая этот факт, у меня возникла идея из эти 10 000 вариантов отобрать ~100, которые дают наименьшие значения и их использовать в качестве начальных приближений для алгоритма поиска максимума.
У меня вопрос, насколько это будет правильным так делать? Потому что у меня сомнения так как не все те расчеты которые дали минимум могут быть близки к глобальному минимуму.

 Профиль  
                  
 
 Re: Как правильнее поступить
Сообщение13.10.2021, 13:06 


10/03/16
2098
Aeroport
alexey007 в сообщении #1534813 писал(а):
из эти 10 000 вариантов отобрать ~100


Посмотрите эволюционные и роевые алгоритмы. И напишите мне в ЛС

 Профиль  
                  
 
 Re: Как правильнее поступить
Сообщение13.10.2021, 14:33 
Заслуженный участник


16/02/13
3901
Владивосток
В общем случае, как понимаю, невозможно предсказать ни того, что точка будет близка к минимуму, ни даже того, что, начав с этой точки, процесс вообще сойдётся к минимуму. Так что ваш способ, имхо, не хуже любого другого.

 Профиль  
                  
 
 Re: Как правильнее поступить
Сообщение13.10.2021, 14:52 
Аватара пользователя


06/04/21
126
Если функция гладкая и первые производные ограничены, то можно вдохновиться идеям Васильева "Методы оптимизации". В иных случаях может случиться невесть что.

 Профиль  
                  
 
 Re: Как правильнее поступить
Сообщение13.10.2021, 16:43 
Заслуженный участник


12/08/10
1296
Ну, по идее, надо брать не 100 минимальных точек, а 100 точек равномерно распределенных по области. И еще, при поиске минимума мы будем еще кучу раз считать эту функцию(будем ли?), и лишние 100 запросов могут не сыграть ни какой роли. Хотя, если они платные или считаются час, то да.

 Профиль  
                  
 
 Re: Как правильнее поступить
Сообщение13.10.2021, 17:22 
Заслуженный участник
Аватара пользователя


05/12/09
1406
Москва
Null в сообщении #1534835 писал(а):
Ну, по идее, надо брать не 100 минимальных точек, а 100 точек равномерно распределенных по области.
Он берет сначала 10000 равномерно распределенных, и из них топ-100 минимальных, которые затем использует в качестве начальных приближений для 100 итерационных процессов поиска минимума. Это меньше работы, чем запускать 10000 процессов поиска минимума, и более вероятно выйти на глобальный минимум, чем исходить из 100 равномерно распределенных точек. Кстати, я и сама так делала в подобной ситуации, только изначально там брала не 10000 точек, а миллион. Функция была очень плохая, не гладкая, со множеством изломов и локальных минимумов. Так что в смысле математической строгости нельзя утверждать, что нашли глобальный минимум. Хотя и обратное маловероятно.

 Профиль  
                  
 
 Re: Как правильнее поступить
Сообщение13.10.2021, 18:34 
Заслуженный участник


12/08/10
1296
Если есть узкая область $A$ с глобальным минимумом и широкая область $B$ с локальным, но не глобальным минимумом, то 100 минимальных точек могут оказаться в области $B$ и точку случайно попавшую на край области $A$ мы пропустим. Хотя если локальных минимумов много и они распределены равномерно, то ваш способ лучше.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

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



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

Сейчас этот форум просматривают: YandexBot [bot]


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

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