직접 솔버는 행렬의 조건 번호에 영향을 받습니까?


12

상대적으로 작은 문제, 즉 LU와 같은 직접 방법으로 처리 할 수있는 문제를 해결하려면 선형 연산자의 조건 번호가 솔루션의 정확도에 영향을 줍니까?

내가 연구하고있는 연구 문제 중 하나는 선형 방정식 시스템을 풀기위한 최적화 기술 개발에 중점을두고 있으며, 내가 겪고있는 "문제"는 행렬의 조건 수가 매우 높을 수 있다는 것입니다.

이것이 반복적 인 방법과 전제 조건을 사용해야한다면 고려해야 할 중요한 요소이지만, 지금은 작은 문제 (1M 미만의 자유도)를 해결하고 있으므로 직접 솔버가 적합합니다.

답변:


22

그렇습니다. 조건 번호 는 반복 또는 직접 방법으로 시스템을 풀도록 선택하든 항상 부동 소수점 산술에서 중요합니다. 피벗을 사용하여 LU 인수 분해에서 얻은 에 대한 근사 솔루션의 상대 정확도 는 O ( κ ( A ) ε )입니다 . 여기서 ε 는 기계에서 1 + ε > 1 과 같은 가장 작은 부동 소수점 수 입니다. 64 비트 부동 소수점을 사용하는 경우 ε 10 16 이므로 행렬의 조건 번호가 10 인 경우Ax=bO(κ(A)ε)ε1+ε>1ε1016 당신은 유일한 솔루션 정확도의 4 자리 숫자를 가지고 있음을 보장 할 수 있습니다.1012

반복 솔버의 경우, 매트릭스 조건 번호는 종종 알고리즘의 이론적 수렴 률을 지시하기 때문에 무한 정밀도 산술에서도 쇼에 들어갑니다. 다이렉트 솔버를 사용하면 컴퓨터가 유한 정밀도로 작동한다는 사실을 고려한 후에 만 ​​고려해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.