Позволять , симметричный и положительно определенный. Предположим, это займет единицы работы, чтобы умножить вектор на , Хорошо известно, что выполнение алгоритма CG на с номером условия требует , ед.
Теперь, конечно, будучи Утверждение, что это верхняя граница. А алгоритм CG всегда может завершиться нулевым шагом с удачным начальным предположением.
Знаем ли мы, что существует RHS и первоначальное (неудачное) предположение, которое потребует шаги? Другими словами, сложность работы CG в худшем случае действительно?
Этот вопрос возникает, когда я пытался определить, является ли преимущество предварительного кондиционера (ниже ) перевесил его стоимость (выше ). Прямо сейчас я работаю с игрушечными проблемами и хотел бы иметь лучшую идею, прежде чем реализовывать что-либо на скомпилированном языке.
Ответы:
Ответ оглушительный да. Граница скорости сходимости(κ−−√−1)/(κ−−√+1) точен на множестве симметричных положительно определенных матриц с условным числом κ , Другими словами, ничего не зная оA чем номер условия, CG действительно может принять ∼κ−−√ итерации, чтобы сходиться. Грубо говоря, верхняя граница достигается, если собственные значенияA равномерно распределены (то есть «поперчены») в пределах интервала номера условия κ ,
Вот более строгое утверждение. Детерминированные версии более сложны, но работают по тем же принципам.
Теорема (Выбор в худшем случаеA ). Выберите любую случайную ортогональную матрицуU , позволять λ1,…,λn быть n реальные числа, равномерно выбранные из реального интервала [1,κ] , и разреши b=[b1;…;bn] быть n реальные цифры взяты из стандартного гауссова. определять
Доказательство. Стандартное доказательство основано на оптимальных полиномиальных аппроксимациях Чебышева с использованием методов, найденных в ряде мест, таких как книга Гринбаума или книга Саада .
источник
Принимая это как мой первоначальный вопрос: знаем ли мы, что существует RHS и первоначальное (неудачное) предположение, для которого потребуются шаги?Θ(κ−−√)
Ответ на вопрос «нет». Идея этого ответа исходит из комментария Гвидо Каншата.
Утверждение: для любого заданного номера условия существует матрица с тем номером условия, для которого алгоритм CG завершится не более чем за два шага (для любого заданного RHS и начального предположения).k A
ConsiderA∈Rn×n where A=diag(1,κ,κ,…,κ) . Then the condition number of A is κ . Let b∈Rn be the RHS, and denote the eigenvalues of A as λi where
Сначала рассмотрим случай, когда , первоначальное предположение, равно нулю. Обозначим в качестве второй оценки из алгоритма CG. Мы показываем, что , показывая . Действительно, у нас естьx(0)∈Rn x(2)∈Rn A−1b x(2)=A−1b ⟨x(2)−A−1b,A(x(2)−A−1b)⟩=0
Где мы используем многочлен первого порядка определенный как . Таким образом, мы доказали случай для .pˆ pˆ(x)=(1+κ−x)/κ x(0)=0
Если , то где - это вторая оценка алгоритма CG с заменой на . Таким образом, мы сократили этот случай до предыдущего.x(0)≠0 x(2)=x(2)¯¯¯¯¯¯¯¯+x(0) x(2)¯¯¯¯¯¯¯¯ b b¯¯=b−Ax(0)
источник