Chcę rozwiązać nieliniowy problem z nieliniowymi ograniczeniami równości i używam rozszerzonego Lagrangiana z terminem regularnej kary, który, jak wiadomo, psuje liczbę warunków moich zlinearyzowanych układów (przy każdej iteracji Newtona) . Im dłuższy okres kary, tym gorszy numer warunku. Czy ktoś znałby skuteczny sposób na pozbycie się tego złego uwarunkowania w tym konkretnym przypadku?
Mówiąc ściślej, używam klasycznego rozszerzonego lagrangian, ponieważ mam wiele ograniczeń, które na ogół mogą być zbędne. Tak więc ślepe włączenie ograniczeń bezpośrednio do zmiennych pierwotnych jest bardzo wygodne. Próbowałem innych bardziej wyrafinowanych metod opartych na eliminacjach zmiennych lub wydajnych warun- kach wstępnych bezpośrednio w systemie KKT, ale z powodu nadmiarowości ograniczeń mam pewne problemy.
Problem związany ze zmiennymi jest sformułowany w następujący sposób według mojego Lagrangiana jako forma
Ogólnie więc celem każdej iteracji Newtona jest rozwiązanie problemu o postaci Za pomocą (upuszczamy hessian ograniczenia) i a duże jest przeznaczone dla .A ( u , ρ ) : = ∇ 2 u W ( u ) + ρ C T ( u ) C ( u ) b ( u , ρ ) : = - ( ∇ u W ( u ) + ( ρ + λ T c ( u ) ) ∇ u (
Dziękuję Ci.
Odpowiedzi:
W zależności od struktury problemu można bezpośrednio rozwiązać źle uwarunkowany system Augmented Lagrangian. Na przykład BDDC / FETI-DP może rozwiązać prawie nieściśliwą elastyczność w pierwotnej postaci ze współczynnikiem zbieżności niezależnym od współczynnika Poissona (stała cząstkowa w poddomenach, ale z dowolnymi skokami). Podobnie metody wielosiatkowe, które dokładnie odtwarzają tryb wolumetryczny, mogą mieć tę właściwość. Takie metody są specyficzne dla problemu i na ogół wysokie kary powodują, że systemy są trudne do spełnienia.
Aby zapewnić większą elastyczność w wyborze warunku wstępnego, zalecam wprowadzenie wyraźnych zmiennych podwójnych i napisanie większego systemu punktów siodłowych
zgodnie z sugestią Arnolda Neumaiera. Ten system jest znacznie lepiej uwarunkowany i umożliwia dokładną ocenę pozostałości. Jeśli istnieje warunek wstępny dla jakiegoś ukaranego systemu (gdzie ), można go użyć jako warunku wstępnego bloku dla systemu punktu siodłowego. Przykład tego znajduje się w Dohrmann i Lehoucq (2006), który warunkuje nieściśliwą elastyczność w postaci mieszanej przy użyciu BDDC zastosowanego do problemów ściśliwych. Inna popularna klasa metod opiera się na aproksymacji dopełniacza Schur za pomocą argumentów „przybliżonego komutatora”. Istnieje niezwykle zróżnicowany zakres metod rozwiązywania problemów z siodełkiem, patrz Benzi, Golub i Liesen,˜ ρ ≤ ρ - ρ - 1 - C A - 1 C TA−ρ~CTC ρ~≤ρ −ρ−1−CA−1CT Numeryczne rozwiązanie problemów z siodłem (2005) do przeglądu. Jeśli używasz PETSc, wiele metod opisanych w powyższym przeglądzie można skonstruować przy użyciu opcji wykonawczych za pośrednictwem
PCFIELDSPLIT
komponentu.Jeśli możesz sprecyzować źródło problemu (co minimalizujesz i jakie jest ograniczenie), być może uda mi się zasugerować bardziej szczegółowe odniesienia.
źródło
Wprowadź dodatkowe zmienne dla zepsutych warunków w warunku KT, a znajdziesz większy układ symetryczny, który jest liczbowo dobrze zachowany, z tylko odwrotnością współczynnika kary wchodzącego do matrycy.
Aby rozwiązać źle warunkowany system gdy jest duży , i przekształć swój problem w postaci , , co jest ogólnie dobrze uwarunkowane.( A + ρ CT.do) x = b ρ y= ρ Cx A x + CT.y= b dox - ρ- 1y= 0
źródło