2014 dxdy logo

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

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




Начать новую тему Ответить на тему
 
 Сходимость итерационных процессов
Сообщение13.06.2014, 10:38 


17/05/14
7
Здравствуйте.
Вопрос в следующем- в ходе итерационного процесса получаю вектор невязки r. Элементы вектора- модуль разности значений в ячейке между предыдущим и текущим значением. Каким образом лучше вводить критерий для окончания расчета? Норма вектора меньше заданной величины |r|<eps или сравнивать каждое значение для вектора |r[i]|<epsi? Второй вариант кажется более надежным (не получится, что во всех точках погрешность нулевая, а в одной очень большая, для примера), но, вроде, и более медленным. Что посоветуете?

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение13.06.2014, 13:10 
Заслуженный участник


09/05/12
25179
А это зависит от задачи, которую Вы решаете. Второе ограничение более жесткое, но и более ресурсоемкое. Соответственно, надо думать, каким может быть вектор невязки на реально используемых данных, насколько часто надо будет производить такую проверку и т.д. и т.п., универсального ответа на все случаи жизни просто нет.

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение13.06.2014, 16:16 
Заслуженный участник


11/05/08
32166
AndrSlav в сообщении #874853 писал(а):
но, вроде, и более медленным.

Ну, замедление-то малосущественно: просто пробежаться по массиву со сравнением -- всяко гораздо быстрее, чем любая итерация. Другой вопрос -- а откуда Вы этот вектор допустимых погрешностей возьмёте?

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение13.06.2014, 16:31 


05/09/12
2587
Имхо, эти варианты эквивалентны. Первый правда помедленнее будет в плане вычислений и поточнее в плане отклонения - то есть, мое имхо полностью противоположно ТС в этом плане.
А откуда брать вектор допустимых погрешностей - оттуда же, откуда и эпсилон в первом случае. Допустим, у нас все компоненты вектора имеют разные допустимые погрешности и при этом могут выражаться в разных единицах измерения. Как считать норму в первом случае? Например, вот так $$\sqrt{(\frac{r_1}{e_1})^2 + .... + (\frac{r_n}{e_n})^2}$$ и сравнивать ее с единицей. Будет условие - попадание в многомерную сферу вокруг нуля. Во втором случае - в многомерный куб.

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение13.06.2014, 16:37 
Заслуженный участник


11/05/08
32166
_Ivana в сообщении #874966 писал(а):
Допустим, у нас все компоненты вектора имеют разные допустимые погрешности и при этом могут выражаться в разных единицах измерения.

Проблема в том, что ограничения по точности обычно естественны для самого решения, но вовсе не для невязки. Т.е. контроль невязки -- малоинформативен.

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение13.06.2014, 16:55 


05/09/12
2587
ТС, вот вам до кучи еще несколько вариантов мер отклонений в статье на хабре.
Цитата:
Выбор метрики полностью лежит на исследователе, поскольку результаты кластеризации могут существенно отличаться при использовании разных мер.
- то, о чем писал Pphantom.

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

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение13.06.2014, 18:56 


17/05/14
7
[/quote]Ну, замедление-то малосущественно: просто пробежаться по массиву со сравнением -- всяко гораздо быстрее, чем любая итерация. Другой вопрос -- а откуда Вы этот вектор допустимых погрешностей возьмёте?[/quote]
Здесь, наверно, соглашусь, замедление не критичное. А погрешность- исходя из того, что изменение решения не должно значительно повлиять на получаемые параметры. Т.е. , например, нахожу поле давления => изменение давления на последующих итерациях не должно изменить скорость в поле более, чем на заданную малую величину. Однако, как было сказано,
[/quote]Проблема в том, что ограничения по точности обычно естественны для самого решения, но вовсе не для невязки. Т.е. контроль невязки -- малоинформативен.[/quote]
Действительно, связь между невязкой и получаемыми из решения значениями неоднозначна (а точнее, я пока не осознал) :-) Но кроме невязки оценить точность, вроде бы, никак нельзя.

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение16.06.2014, 15:12 
Заслуженный участник


11/05/08
32166
AndrSlav в сообщении #875022 писал(а):
Но кроме невязки оценить точность, вроде бы, никак нельзя.

В итерационных процессах скорость сходимости обычно линейная (т.е. погрешность убывает в геометрической прогрессии). Тогда она довольно надёжно оценивается как $\frac{q}{1-q}\cdot\|\vec x_k-\vec x_{k-1}\|$.

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение16.06.2014, 23:35 
Заслуженный участник


11/05/08
32166

(Оффтоп)

Я готов к вопросу типа "а что такое $q$, собссно?..."

Это да, вопрос содержательный (ежели вдруг у кого возникнет). Но на него и ответы содержательные вполне возможны.

 Профиль  
                  
 
 Re: Сходимость итерационных процессов
Сообщение02.07.2014, 19:37 


17/05/14
7
ewert в сообщении #876240 писал(а):
Я готов к вопросу типа "а что такое $q$, собссно?..."

Это да, вопрос содержательный (ежели вдруг у кого возникнет). Но на него и ответы содержательные вполне возможны.


Да, интересно бы было узнать:) Но фраза про линейную сходимость несколько смущает- у меня разные методы за разное количество итераций сходятся. А если в методе подпространств Крылова задать пространство размерностью задачи- сойдется за 1 итерацию- это ведь не линейная сходимость? У меня с математикой не очень хорошие отношения, возможно, бред пишу:)

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

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



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

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


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

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