Форум программистов, компьютерный форум, киберфорум
Численные методы
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
10 / 8 / 0
Регистрация: 02.06.2013
Сообщений: 54
1

Решение системы нелинейных уравнений НЕ "простыми итерациями" и НЕ "Ньютоном"

16.02.2017, 22:38. Показов 746. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Требуется найти максимальное значение функции нескольких переменных (функции правдоподобия) в в ограниченной замкнутой области (соответственно https://www.cyberforum.ru/cgi-bin/latex.cgi?0 \leq  {x}_{i} \leq 1).

Согласно классике требуется:
1) найти экстремум функции
2) найти экстремумы функций при различных фиксированных краевых значениях
Т.е. получается нужно решить множество систем уравнений.
https://www.cyberforum.ru/cgi-bin/latex.cgi?\left\{\begin{matrix}\\ \frac{dL({x}_{0}, {x}_{1} ... {x}_{n})}{d{x}_{0}}=0\\ \frac{dL({x}_{0}, {x}_{1} ... {x}_{n})}{d{x}_{1}}=0\\...\\ \frac{dL({x}_{0}, {x}_{1} ... {x}_{n})}{d{x}_{n}}=0\end{matrix}\right.

Чтобы избежать многократного решения, думается было бы рационально применить алгоритм, который бы "удерживал" переменные в заданной области.
Что-то вроде метода половинного деления для решения уравнения одной неизвестной.
Но никаких подходящих подходов я не нашел и не уверен как правильно делить область в случае нескольких переменных.

Буду благодарен если кто-то поделится своими соображениями.

Дополнительная информация:
Сама функция https://www.cyberforum.ru/cgi-bin/latex.cgi?L({x}_{0}, {x}_{1} ... {x}_{n}) довольно громоздкая и изменяется в зависимости от входных параметров. Таким образом:
а) выразить каждую переменную как в методе простых итераций не представляется возможным.
б) Вычисление первых и вторых производных задача решаемая, но она сопряжена со значительными математическим вычислениями, которые в результате могут давать большую погрешность. Так, например, проводились параллельные вычисления в MathCad и на C++ и итоговое значение одной производной происходило из суммы 15 слагаемых. Значения самих слагаемых совпадало до 15-20 знака, однако их сумма различалась уже на 5 или 6 знаке. И в результате при использовании метода Ньютона, результат явно "промахивался" - удавалось найти вектор, который давал большее значение целевой функции.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.02.2017, 22:38
Ответы с готовыми решениями:

Решение системы нелинейных уравнений (для двух уравнений)
Нужна написать программный модуль для решения систем неленейных уравнений методом ньютона и методом...

Решение системы нелинейных уравнений 12 уравнений – 12 неизвестных переменных
мне надо решать такую задачу, помогите мне пожалуйста даны 12 уравнений 1/...

Решение системы нелинейных уравнений 8 уравнений – 8 неизвестных переменных
Решаю систему нелинейных уравнений в символьном виде, решение выполняю с помощью математических...

Решение системы нелинейных уравнений
Всем привет,помогите решить систему уравнений методом Ньятона и методом простых итераций ,нужен код...

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

3
Эксперт по математике/физике
10436 / 6921 / 3766
Регистрация: 14.01.2014
Сообщений: 15,902
17.02.2017, 08:56 2
Вы в курсе, что методы оптимизации делятся на три группы: 1) методы нулевого порядка (без производных), 2) первого порядка (градиентные, квазиньютоновские), 2) второго порядка (Ньютона-Рафсона с матрицей Гессе)? Очевидно, вам надо смотреть в сторону первой группы методов - метод Хука-Дживса, сжимающего симплекса и др., для которых характерно большое число вычислений целевой функций, но без её производных, все они хорошо работают в задачах с линейными ограничениями
1
1471 / 826 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
19.02.2017, 01:28 3
Оформите в приличном мат пакете и считайте.
Давно есть глобальный поиск в mathematica несколькими методами. Есть компиляция функции в С. Маткад вроде в разы примитивней в этом плане как блокнот против ворда.

Кому нужны велики в 2017?
0
10 / 8 / 0
Регистрация: 02.06.2013
Сообщений: 54
24.02.2017, 05:20  [ТС] 4
mathidiot,
Да, точно. Спасибо.
Слона то я и не заметил. Мне же по существу не систему нужно решить, а оптимизировать параметры.
Реализовал модификацию Хука-Дживса.
0
24.02.2017, 05:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.02.2017, 05:20
Помогаю со студенческими работами здесь

Решение системы нелинейных уравнений
cos(x+0.5)-y=2 siny-2x=1 Помогите пожалуйста решить систему нелинейных уравнений

Решение системы нелинейных уравнений
Я в матлабе новичок, было задано решить систему не линейных уравнений , сказали через FSOLVE но...

Решение системы нелинейных уравнений
Вот задание) http://upload.akusherstvo.ru/thumbs/703684.jpg F = @(x) ; x0 = ; X = fsolve(F,x0);...

Решение системы нелинейных уравнений
Плз помогите написать прогу для решения системы нелинейных уравнений, а то я в этом дуб-дерево =(

Решение системы нелинейных уравнений
найти решения уравнения графическим методом и методом поиска решений {cos(y+0,5)+x=0,8; {...

Решение системы нелинейных уравнений
Всем привет! Сразу оговорюсь, задача уже решена, но возможно кто нибудь подскажет решение лучше....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru