Дискуссионный математический форумМатематический форум
Математический форум Math Help Planet

Обсуждение и решение задач по математике, физике, химии, экономике

Теоретический раздел
Часовой пояс: UTC + 3 часа [ Летнее время ]
новый онлайн-сервис
число, сумма и дата прописью

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Поиск минимума функции
СообщениеДобавлено: 21 фев 2019, 00:54 
Не в сети
Одарённый
Зарегистрирован:
20 дек 2016, 11:08
Сообщений: 153
Cпасибо сказано: 2
Спасибо получено:
6 раз в 5 сообщениях
Очков репутации: -3

Добавить очки репутацииУменьшить очки репутации
Подскажите пожалуйста как быть с решением следующей задачи (сначала напишу в общем случае, потом приведу свой частный случай):

Есть функция [math]f(a, b, c)[/math].
Требуется найти такие параметры [math]a, b, c[/math], при которых указанная функция минимальна [math]f(a, b, c) = min[/math].

Частные производные по [math]a, b, c[/math] таковы, что
для [math]f_{a}^{'}=0[/math] возможно аналитически получить [math]a=r(b, c)[/math], а для [math]f_{b}^{'}=0[/math] и [math]f_{c}^{'}=0[/math] аналогичных формул нет.

Определение параметры [math]a[/math]
Таким образом, если мы как-то определим параметры [math]b_{min}, c_{min}[/math], то параметр [math]a[/math] мы получаем сразу как [math]a_{min} = r(b_{min}, c_{min})[/math].

Определение параметра [math]b[/math]
Оказалось, что [math]f(b,c_{min})_{b}^{'} = 0[/math] имеет лишь одно решение [math]b_{min}[/math].
Для поиска решения можно было бы применить метод Ньютона, но производная f(b,c_{min})_{b}^{''} имеет такое поведение, что метод себя ведет не очень стабильно и сходится только при определённом диапазоне начального значения [math]b_0[/math] и потребовалась бы определённая заточка метода.
Однако к счастью оказалось, что поведение функции [math]f(b,c)_{b}^{'}[/math], таково, что
[math]\left\{\!\begin{aligned}
& f(b,c_{min})_{b}^{'} < 0, b < b_{min} \\
& f(b,c_{min})_{b}^{'} > 0, b > b_{min}
\end{aligned}\right.[/math]

А значит для поиска решения можно применить бинарный поиск.
Работает быстро (очень быстро сходится) и очень очень точно.

Определение параметра [math]c[/math]
Оказалось, что [math]f(b_{min},c)_{c}^{'} = 0[/math] имеет такое же поведение (хотя функции и отличаются), как и [math]f(b,c_{min})_{b}^{'} = 0[/math], описанное выше и можно было бы вместо определения параметра [math]b_{min}[/math], зная параметр [math]c_{min}[/math] определить параметр [math]c_{min}[/math], зная параметр [math]b_{min}[/math].

Но третий (хотя первый по очередности естественно) параметр приходится искать через градиентный спуск - определять 3 значения [math]c[/math], смотреть для них значение функции [math]f[/math], определять наилучшее значение, выбирать новые 2 точки, сужать диапазон и т.д., в общем классика, что работает уже значительно медленнее и менее точно :(

У меня вопрос - можно ли обойтись без градиентного спуска в таком частном случае поведения функции [math]f[/math] и ее производных?

Я сначала по молодости лет подумал, что можно бинарный поиск применить для параметров [math]b, c[/math] - выбираем производную [math]c[/math], определяем оптимальную [math]b[/math], потом на основе оптимальной [math]b[/math] определяем оптимальную [math]c[/math] и так по циклу, пока результат не сойдется к каким-то [math]b_{min}, c_{min}[/math], но это не сработало - результаты наоборот стали расходиться.

Вот я и подумал можно ли как-то соптимизировать такой частный случай.


Теперь о непосредственно моем случае:

Функция
[math]S=\sum\limits_{i} (y_i - f(x_i, a, \sigma, \mu ))^2=min[/math]
где
[math]f(x_i, a, \sigma, \mu ) = \frac{ 1 }{ \sigma x_i } e^{- \frac{ (ln(x_i) - \mu)^2 }{ \sigma^2 } }[/math]

Производная [math]S_{a}^{'} = 0[/math] даёт
[math]\sum\limits_{i} (y_i k_i) = \frac{ a }{ \sigma } \sum\limits_{i} (k_{i}^2)[/math]
где
[math]k_i = \frac{ 1 }{ x } e^{- \frac{ (ln(x_i) - \mu)^2 }{ \sigma^2 } }[/math]

Производная [math]S_{\mu}^{'} = 0[/math] даёт с учетом предыдущего выражения (компонент обнуляется)

[math]\sum\limits_{i} (y_i k_i ln(x_i)) = \frac{ a }{ \sigma } \sum\limits_{i} (k_{i}^2 ln(x))[/math]

Производная [math]S_{\sigma}^{'} = 0[/math] даёт с учетом двух предыдущих выражений (компоненты обнуляются)

[math]\sum\limits_{i} (y_i k_i ln^2(x_i)) = \frac{ a }{ \sigma } \sum\limits_{i} (k_{i}^2 ln^2(x))[/math]

Т.е. если заменить [math]\frac{ a }{ \sigma }[/math] в последних двух выражениях, то встает задача найти корни уравнений [math]\sigma_{min}, \mu_{min}[/math]

[math]f(\sigma_{min}, \mu_{min}) = \sum\limits_{i} (y_i k_i ln(x_i)) \sum\limits_{i} (k_{i}^2) - \sum\limits_{i} (k_{i}^2 ln(x)) \sum\limits_{i} (y_i k_i) = 0[/math]

[math]g(\sigma_{min}, \mu_{min}) = \sum\limits_{i} (y_i k_i ln^2(x_i)) \sum\limits_{i} (k_{i}^2) - \sum\limits_{i} (k_{i}^2 ln^2(x)) \sum\limits_{i} (y_i k_i) = 0[/math]

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

 Похожие темы   Автор   Ответы   Просмотры   Последнее сообщение 
Метод условного градиента(поиск минимума)

в форуме Исследование операций и Задачи оптимизации

Evgenii123456

3

310

01 дек 2021, 14:00

Нахождение минимума функции

в форуме Интересные задачи участников форума MHP

pewpimkin

8

150

11 авг 2023, 21:53

МНК и необходимое условие минимума функции

в форуме Математическая статистика и Эконометрика

Elizobarra21

0

270

18 май 2014, 13:57

Нахождение минимума функции. Метод Ньютона

в форуме Пределы числовых последовательностей и функций, Исследования функций

stylecolor

12

1452

17 окт 2015, 18:38

Поиск Функции

в форуме Задачи со школьных и студенческих олимпиад

bladester

10

672

31 окт 2016, 19:16

Поиск экстремума функции

в форуме Пределы числовых последовательностей и функций, Исследования функций

Fedorov_ai

3

318

15 дек 2018, 05:15

Задача на поиск функции распределения

в форуме Теория вероятностей

jeanedit19

0

211

22 ноя 2019, 22:33

Поиск значения функции от сплайна

в форуме Численные методы

nikalnp

5

208

08 дек 2019, 12:18

Поиск аппроксимирующей функции по заданным параметрам

в форуме Численные методы

Master Magistrov

5

373

03 дек 2017, 16:06

Нахождение минимума

в форуме Дифференциальное исчисление

anpe0681

12

598

19 ноя 2016, 01:20


Часовой пояс: UTC + 3 часа [ Летнее время ]



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

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


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

Найти:
Перейти:  

Яндекс.Метрика

Copyright © 2010-2023 MathHelpPlanet.com. All rights reserved