도메인 분해 전제 조건에 비해 멀티 그리드의 장점은 무엇입니까?


답변:


16

멀티 그리드 및 멀티 레벨 도메인 분해 방법은 공통점이 너무 많아서 각각 다른 경우의 특별한 경우로 작성 될 수 있습니다. 각 분야의 철학이 다르기 때문에 분석 프레임 워크는 다소 다릅니다. 일반적으로, 멀티 그리드 방법은 적당한 조 대화 속도간단한 스무더 를 사용하는 반면 도메인 분해 방법은 매우 빠른 조 대화강한 스무더를 사용 합니다.

멀티 그리드 (MG)

Multigrid는 적당한 조도 비율을 사용하며 보간 및 스무더의 수정을 통해 견고성을 달성합니다. 타원 문제의 경우 보간 연산자는 "낮은 에너지"여야하므로 연산자의 거의 널 공간을 유지합니다 (예 : 강체 모드). 이러한 저에너지 보간법에 대한 기하학적 접근의 예는 완찬, 스미스 ( Swan , Chan, Smith) (2000) 이며, 매끄러운 집계의 대수적 구조 인 Vaněk, Mandel, Brezina (1996) ( PCGAMG 를 통한 MLPETSc의 병렬 구현 , Prometheus 의 대체) 와 비교 )과 비교 . Trottenberg, Oosterlee 및 Schüller의 책Multigrid 방법에 대한 일반적인 참고 자료입니다.

대부분의 멀티 그리드 스무더는 부가 적으로 (Jacobi) 또는 곱셈 적으로 (Gauss Seidel) 점별 이완을 포함합니다. 이는 작은 (단일 노드 또는 단일 요소) Dirichlet 문제에 해당합니다. 체비 쇼프 스무더를 사용하여 일부 스펙트럼 적응성, 견고성 및 벡터 화성을 달성 할 수 있습니다. 화성을 Adams, Brezina, Hu, Tuminaro (2003) 참조) . 비대칭 (예를 들어, 운송) 문제의 경우, Gauss-Seidel과 같은 곱셈 스무더가 일반적으로 필요하며, 상향 보간법이 사용될 수 있습니다. 또는 Schur-complement-inspired "block preconditioners"를 통해 또는 관련 "분산 이완"을 간단한 스무더가 효과적인 시스템으로 변환하여 안 장점 및 강성 파 문제에 대한 스무더를 구성 할 수 있습니다.

교과서 멀티 그리드 효율성은 이산화 오류 를 해결하는 것을 말합니다 미세 그리드에서 4 개에 불과한 몇 가지 잔류 평가 비용의 작은 배수에서 . 이것은 고정 된 대수 허용 오차에 반복 횟수가가는 것을 의미한다 아래로 증가의 레벨 수있다. 동시에, 시간 추정에는 멀티 그리드 계층 구조에 의해 암시 된 동기화로 인해 발생하는 로그 항이 포함됩니다.

도메인 분해 (DD)

첫 번째 도메인 분해 방법에는 한 가지 수준 만있었습니다. 거친 수준이없는 경우 사전 조정 된 작업자의 조건 번호는 O ( L 2 이상) 일 수 없습니다L이도메인의 직경이고,H는공칭 하위 크기이다. 실제로, 1- 레벨 DD에 대한 조건 번호는이 범위와O(L2) 사이입니다.O(L2H2)LH여기서H는, 소자의 크기이다. Krylov 방법에 필요한 반복 횟수는 조건 수의 제곱근으로 조정됩니다. 최적화 된 Schwarz 방법(Gander 2006)은 Dirichlet 및 Neumann 방법에 비해H/h에 대한 상수 및 종속성을 개선하지만 일반적으로 거친 수준을 포함하지 않으므로 많은 하위 도메인의 경우 성능이 저하됩니다. 도메인 분해 방법에 대한 일반적인 참조는Smith, Bjørstad 및 Gropp (1996)또는Toselli and Widlund (2005)의 저서를참조하십시오.영형(2hH)hH/h

최적 또는 준 최적의 수렴 속도를 위해서는 여러 수준이 필요합니다. 대부분의 DD 방법은 2 단계 방법으로 제시되며 일부는 더 많은 수준으로 확장하기가 매우 어렵습니다. DD 방법은 겹치거나 겹치지 않는 것으로 분류 할 수 있습니다.

겹치는

이러한 Schwarz 방법은 중복을 사용하며 일반적으로 Dirichlet 문제 해결을 기반으로합니다. 오버랩을 증가시켜 방법의 강도를 높일 수 있습니다. 이 방법의 클래스는 일반적으로 강력하며, 로컬 제약 조건 (엔지니어링 공학에서 일반적)에 대한 문제에 대해 로컬 null 공간 식별 또는 기술 수정이 필요하지 않지만 중복으로 인해 추가 작업 (특히 3D)이 필요합니다. 또한, 비압축성과 같은 제한된 문제의 경우, 일반적으로 겹치는 스트립의 유입 상수가 나타나 최적의 수렴 률로 이어지지 않습니다. BDDC / FETI-DP와 유사한 거친 공간을 사용하는 현대적인 중첩 방법 (아래 설명)은 Dorhmann, Klawonn 및 Widlund (2008)Dohrmann 및 Widlund (2010)에 의해 개발되었습니다 .

겹치지 않는

이러한 방법은 일반적으로 일종의 Neumann 문제를 해결합니다. 즉, Dirichlet 방법과 달리 전역 적으로 조립 된 행렬과 함께 작동 할 수 없으며 대신 조립되지 않거나 부분적으로 조립 된 행렬이 필요합니다. 가장 널리 사용되는 Neumann 방법은 모든 반복에서 균형을 조정하거나 수렴에 도달 한 후에 만 ​​연속성을 적용하는 Lagrange 승수로 하위 도메인 간 연속성을 강화합니다. 이러한 종류의 초기 방법 (Balancing Neumann-Neumann 및 FETI)은 거친 수준을 구성하고 하위 도메인 문제를 비 단일화로 만들기 위해 각 하위 도메인의 널 공간을 정확하게 특성화해야합니다. 이후의 방법 (BDDC 및 FETI-DP)은 하위 도메인 모서리 및 / 또는 모서리 / 얼굴 모멘트를 대략적인 자유 도로 선택합니다. 보다 Klawonn 및 Rheinbach (2007)3D 탄성을위한 거친 공간 선택에 대한 심도있는 토론 Mandel, Dohrmann 및 Tazaur (2005) 는 BDDC와 FETI-DP가 0과 1을 제외한 모든 고유 값을 가지고 있음을 보여주었습니다.

2 개 이상의 레벨

대부분의 DD 방법은 2 단계 방법으로 만 제시되며 일부는 3 개 이상의 수준에서 사용하기에 불편한 거친 공간을 선택합니다. 불행하게도, 특히 3D에서, 거친 수준의 문제는 신속하게 병목 현상이되어 해결할 수있는 문제의 크기를 제한합니다. 또한, 사전 조정 된 연산자, 특히 Neumann 문제를 기반으로하는 DD 방법의 조건 수는 다음과 같이 조정되는 경향이 있습니다.

κ(DD1)=(1+영형Hh)2(1)

41012


9

이것은 훌륭한 글이지만, (다단계) DD와 MG는 공통점이 많거나 적어도 유용하지 않다고 생각합니다. 방법은 매우 다르며 한 분야의 전문 지식이 다른 분야에서는 매우 유용하다고 생각하지 않습니다.

첫째, 두 커뮤니티는 서로 다른 복잡도 정의를 사용합니다. DD는 사전 조정 된 시스템의 조건 수를 최적화하고 MG는 작업 / 메모리 복잡성을 최적화합니다. 이것은 큰 근본적인 차이입니다. "최적화"는이 두 가지 맥락에서 완전히 다른 의미를 갖습니다. 병렬 복잡성을 추가해도 상황은 변하지 않습니다 (MG에 로그 용어가 추가 되어도). 두 공동체는 거의 다른 언어를 사용하고 있습니다.

둘째, MG는 다단계로 구축되었으며 다단계 DD 방법은 모두 두 가지 수준의 이론과 구현으로 개발되었습니다. 이것은 MG에서 사용할 수있는 거친 그리드 공간의 공간을 제한합니다. 재귀 적이어야합니다. 예를 들어, MG 프레임 워크에서 FETI를 구현할 수 없습니다. 사람들은 Jed가 언급 한 것처럼 일부 다단계 DD 메소드를 수행하지만 현재 인기있는 DD 메소드 중 일부는 재귀 적으로 구현할 수없는 것으로 보입니다.

셋째, 알고리즘 자체는 실제와 매우 다르다고 생각합니다. 질적으로 말해서 DD 메소드는 도메인 경계에 투영 되어이 인터페이스 문제를 해결한다고 말합니다. MG는 기본 방정식과 직접 작동합니다. 이 투영을 피하면 MG를 비선형 및 비대칭 문제에 쉽게 적용 할 수 있습니다. 이론은 비선형 적이거나 비대칭적인 문제에 대해서는 사라졌지 만 많은 사람들을 위해 일해 왔습니다. MG는 또한 문제를 두 부분으로 명시 적으로 분리합니다. 스케일링을위한 거친 그리드 공간과 물리를 해결하기위한 반복 솔버 (부드럽게)입니다. 이것은 MG를 이해하고 작업하는 데 중요하며 저에게 매력적인 자산입니다.

이론적으로 매끄럽고 거친 그리드 공간이 밀접하게 결합되어 있지만 실제로는 최적화 매개 변수로 여러 가지 매끄럽게 교환 할 수 있습니다. Jed가 언급했듯이 포인트 또는 정점 스무더는 널리 사용되며 일반적으로 더 빠르지 만 어려운 문제에는 더 많은 스무더가 유용 할 수 있습니다. 이 그림은 Jacobi, 블록 Jacobi 및 "additive Schwarz"(겹침)에 대한 푸 아송 비율의 함수로 해결 시간을 보여주는 논문입니다. 읽기는 어렵지만 가장 높은 Poisson 비율 (0.499)로 겹쳐지는 Schwarz는 (정점) Jocobi보다 약 2 배 빠르지 만 보행자 Poisson 비율에서는 약 3 배 느립니다.

포인트, 블록 및 오버랩 된 스무더에 대한 시간 대 포아송 비율 해결


4

Jed의 답변에 따르면, MG는 중간 조 대화를 사용하고 DD는 빠른 조 대화를 사용합니다. 병렬화 될 때 이것이 차이가 있다고 생각합니다. MG가 DD의 단일 조 대화에 해당하는 여러 수준의 조 대화를 거치기위한 여러 통신 및 동기화가있을 것입니다. Jed의 대답에서 또 다른 요점은 MG는 저렴하고 부드럽게 사용하고 DD는 강하게 부드럽게 사용한다는 것입니다. 두 가지 점을 고려할 때 MG 수준의 MG는 통신 / 계산 비율이 나쁜 것으로보고되었습니다. 따라서 Amdahl의 법칙 에 따르면 병렬 속도 향상은 좋지 않습니다. 이것의 해결책은 다음과 같은 평행 거친 격자 수정입니다. BPX 사전 조정기. 또한 MG는 Adams가 지적한 것처럼 DD를 더 매끄럽게 사용할 수 있으며 DD는 DD의 하위 도메인 내에서도 사용할 수 있습니다. Barker가 지적한 고려 사항을 바탕으로 DD 내에서 MG를 사용하는 것이 더 좋으며 DD의 병렬 시뮬레이션과 MG의 최적의 복잡성을 모두 활용합니다.


1

나는 Jed의 훌륭한 답변에 하나의 작은 추가 사항을 만들고 싶습니다. 즉 두 가지 접근 방식의 동기가 다르거 나 적어도 다릅니다.

도메인 분해는 병렬 컴퓨팅 기술로 동기가 부여됩니다. 특히 1 단계 방법의 경우 DD는 병렬 시스템에서 구현하는 것이 매우 자연 스럽습니다. 도메인을 조각으로 나누고 각 조각을 다른 프로세서에 제공합니다. 어떤 의미에서 DD의 동기는 프로세서 간 산술 연산을 나누는 것입니다.

좋은 병렬 멀티 그리드 구현이 존재하지만, 병렬로 수행하는 것이 덜 자연 스럽습니다. 대신, 멀티 그리드의 동기는 처음에는 덜 산술 연산을 수행하는 것입니다.


2
이것은 좋은 지적이지만, DD는 초기 DD 대화를 본 경험에서 얻은 기존 직접 해결사 (대부분의 엔지니어링 사례)를 재사용하려는 욕구에 의해서도 동기 부여되었다고 덧붙입니다. 나는 다단계 DD 메소드를 구현 한 적이 없지만 더 "자연스럽지"않다. 멀티 그리드에 구현해야하는 단순한 벡터 연산 이외의 유일한 매트릭스 벡터 제품을 병렬화하는 것은 자연스럽게 잘 이해되지는 않습니다.
Adams

1

Hh영형(1Hh)

hH


2
참고로, 이것은 별도의 답변이 아닌 Jed의 답변에 대한 의견이어야합니다.
잭 폴슨

예, 시도했지만 Jed의 답변 아래에 의견을 추가하는 방법을 찾을 수 없습니다.
Hui Zhang

수정 해 주셔서 감사합니다. 원본을 입력 할 때 무슨 생각을했는지 전혀 모릅니다. 나는 대답에서 진술을 고쳤다. 2 단계 OSM에 대해서는 프리 프린트를 연결해 주셔서 감사합니다. 그러나 작은 지수는 고려하지 않습니다hH논문의 경계에서 현대 Dirichlet 및 Neumann 방법 (유사한 조잡한 공간을 가진 BDDC / FETI-DP 및 하이브리드 슈바르츠)에 의해 달성 된 대수 경계를 개선하기 위해, 특히 후자가 탄성과 같은 벡터 문제를 보유하고 있으며 계수의 불연속성과 무관 (포아송 비 포함).
Jed Brown

@JedBrown 사전 조건이 없으면 OSM은 사전 조건이있는 BDDC / FETI-DP와 같은 로그를 얻을 수 없습니다. 그러나 Dirichlet / Neumann 전제 조건은 비쌀 수 있으며 집중 형 전제 조건의 경우 추가 요인이 있습니다.HhBDDC / FETI-DP에서. OSM에 대한 가속 메커니즘의 대응 부분은 겹치거나 페이드 일 수 있습니다 . OSM의 어려움은 다른 PDE에 대해 최적화 된 매개 변수를 찾아야한다는 것입니다.
Hui Zhang
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.