Каковы симптомы плохой подготовки при использовании прямых методов?

14

Предположим, у нас есть линейная система, и мы ничего не знаем о ее обусловленности и не имеем предварительной информации о решении. Мы слепо применяем исключение Гаусса и получаем некоторое решение x . Можно ли определить, заслуживает ли доверия данное решение (т. Е. Хорошо ли обусловлена ​​система) без тщательного предварительного анализа матрицы ? Величина опорных точек дает достоверную информацию?

И вообще, каковы основные рекомендации по обнаружению плохой подготовки "на лету"?

faleichik
источник

Ответы:

13

Когда матрица плохо обусловлена ? Это зависит от точности решения, которое вы ищете, а также "красота в глазах смотрящего" ...

Может быть, ваш вопрос лучше перефразировать, так как существуют дешевые и надежные оценки числа условий, основанные на факторизации ?LU

Предполагая, что вас интересует реальная общая (плотная, несимметричная) задача в арифметике двойной точности, я бы предложил вам использовать экспертный решатель LAPACK DGESVX, который дает оценку состояния в форме ее обратной , RCOND 1 / κ ( A ) . В качестве бонуса у вас есть и другие полезности, такие как уравнение / балансировка уравнений, итеративное уточнение, границы ошибок вперед и назад. Кстати, патологическое недоброжелательное состояние ( κ ( A ) > 1 / ϵ ) сигнализируется как ошибка .RCOND1/κ(A)κ(A)>1/εINFO>0

Если говорить более подробно, LAPACK оценивает число условий в 1-норме (или -норме, если вы решаете A T x = b ) через DGECON . Базовый алгоритм описан на газоне 36: «Надежные треугольные решения для использования в оценке условий» .ATИксзнак равноб

Я должен признаться, что я не эксперт в этой области, но моя философия такова: «если это достаточно хорошо для LAPACK, это для меня».

Стефано М
источник
8

При решении плохо обусловленной системы уравнений с матрицей нормы 1 случайная правая часть нормы 1 с большой вероятностью будет иметь норму порядка номера условия. Таким образом, вычисление нескольких таких решений покажет вам, что происходит.

Арнольд Ноймайер
источник
Это действительно то, что делает DGECON, с добавленной утонченностью итеративного уточнения направления поиска, чтобы максимизировать результат, и с использованием специального треугольного решателя (не BLAS), чтобы не искажать вещи из-за ошибок аппроксимации. Таким образом, вычислительная стоимость DGECON сопоставима с вашим простым тестом. +1 за то, что помнили нам о простом значении норм матрицы и номера условия. Было бы интересно узнать, действительно ли DGECON более устойчив к простой случайной проверке.
Стефано М
Учитывая, что число условий решения совпадает с числом условий вычисления A x , достаточно ли просто умножить масштабированную матрицу на эти случайные векторы вместо фактического решения A x = b ? Ax=bAxAx=b
фалейчик
2
@faleichik Конечно нет: хитрость здесь не в масштабе так , что | | | | = 1 и κ ( ) = | | | | | | - 1 | | = | | - 1 . Конечно, будучи линейной алгеброй, вам не нужно фактически масштабировать A, а только A x ... тем не менее, вам сначала нужно вычислить A . Ваш обратный аргумент потребует сначала вычислить A - 1AA=1κ(A)=AA1=A1AAxAA1что то, что мы стремимся оценить.
Стефано М
5

Почти невозможно сказать, плохо ли ваша система обусловлена ​​одним результатом. Если у вас нет некоторого предвидения поведения вашей системы (т.е. вы не знаете, какое решение ДОЛЖНО быть), вы мало что можете сказать из одного решения.

Сказав это, вы можете получить больше информации , если вы решите более чем одну систему с тем же . Предположим, у вас есть система вида A x = b . Для конкретного А, который у вас нет предварительных знаний о его обусловленности, вы можете выполнить следующий тест: AAx=b

  1. Ax=bb
  2. bnew=b+ε||ϵ||||b||
  3. Axnew=bnew
  4. ||xxnew||||xxnew||

Θ(n3)Θ(n2)||A||||A1||

Пол
источник
2
Θ(kn3)AAO(n3)O(n2)
@JackPoulson: Вы абсолютно правы ... Я думаю, что я полностью отошел от этого. Не беспокойся :) Я обновлю свой ответ
Пол
||AИкс-б||
||A||||Икс||
A
@ Reid.Atcheson: Не совсем. Приближенное решение для плохо обусловленной системы все еще может привести к небольшому остатку. Это на самом деле не дает никаких указаний на то, как далеко это от истинного решения.
Пол
1
| |ε| | | |б| |