Devlog #92 – Fala 71: PageRank, Turniej Axelroda, Figura Lichtenberga, Regulator PID, Archimedes i Mikropęknięcia

Fala 71 łączy matematykę internetu, teorię gier, przebicie elektryczne, inżynierię sterowania, fizykę klasyczną i naukę o materiałach — sześć symulacji, w których precyzyjna matematyka rzuca światło na zjawiska od indeksowania stron internetowych po katastrofalne uszkodzenia konstrukcji.

Fala 71 — 6 dodanych symulacji
627
Symulacji łącznie
6
Nowych w tej fali
71
Numer fali
92
Devlog nr

Nowe symulacje

🔗

PageRank

Iteracja potęgowa z poprawką dla węzłów wiszących: p = (1-d)/N + d·(dangling/N + A^T·p/out). Model losowego surfera. 4 gotowe grafy. Promień węzła proporcjonalny do rangi. Wykres zbieżności log-L1 w oknie pomocniczym.

🤝

Turniej IPD Axelroda

10 kanonicznych strategii w turnieju IPD typu każdy z każdym: AllC, AllD, TFT, TF2T, Hojne TFT, Grim, Pavlov, Random, Joss, Friedman. Macierz par + posortowany wykres słupkowy. Szum ε pokazuje, że Hojne TFT pokonuje TFT.

Figura Lichtenberga (DBM)

Model przebicia dielektrycznego: solwer Laplace'a SOR (ω=1,8), kandydaci na obwodzie proporcjonalni do φ^η. η=0 daje DLA, η=3 daje spikule. Wymiar fraktalny liczony metodą box-counting. Renderowanie addytywne poświaty.

🎛️

Regulator PID

Trzy modele obiektu w postaci równań różniczkowych: cieplny, wózek ze sprężyną i tłumikiem, zbiornik. PID z anti-windup. Oscyloskop 20-sekundowy. Metryki: czas narastania, przeregulowanie, czas ustalania, błąd ustalony. Autotuning Zieglera-Nicholsa z zysku granicznego.

⚖️

Zasada Archimedesa

F_w = ρgV_wyp dokładnie: obcięty prostopadłościan, wzór czaszy kulistej, kadłub metodą Simpsona. 5 cieczy + 9 materiałów + 4 grawitacje. Waga sprężynowa. Stabilność statku: moment przywracający GM·sinθ, wywrotka gdy metacentrum poniżej środka ciężkości.

🩹

Wzrost pęknięć zmęczeniowych (prawo Parisa)

da/dN = C(ΔK)^m, ΔK = YΔσ√(πa). Cztery materiały: stal A36, Al 7075, Ti-6Al-4V, żeliwo. Wykres logarytmiczny a-N z podświetlonym reżimem Parisa. Animacja katastrofalnego pęknięcia przy K_IC.

PageRank: matematyka stojąca za wyszukiwaniem internetowym

PageRank modeluje losowego surfera internetowego: z prawdopodobieństwem d (współczynnik tłumienia, zwykle 0,85) podąża za losowym hiperłączem z bieżącej strony; z prawdopodobieństwem 1−d teleportuje się na dowolną stronę, wybraną jednostajnie losowo. Ranga każdej strony to jej stacjonarne prawdopodobieństwo w tym łańcuchu Markowa.

Wzór iteracji potęgowej

Równanie aktualizacji w każdej iteracji to: p = (1−d)/N + d · (dangling/N + A^T · p / out_degree). Człon dla węzłów wiszących (Σp_i dla stron bez wychodzących odnośników, redystrybuowana jednostajnie) jest kluczowy — bez niego ranga "wycieka" z węzłów-ujść, a wektor przestaje sumować się do 1. Symulacja pokazuje zbieżność log-L1 ||p_new − p_old||₁ na wykresie pomocniczym, zwykle osiągając precyzję maszynową w 50–100 iteracjach.

Gotowe grafy

Turniej Axelroda: kooperacja w warunkach konkurencji

Komputerowy turniej Roberta Axelroda z 1984 roku zadał pytanie: jaka strategia wygrywa w powtarzanym dylemacie więźnia? Zaskakująca odpowiedź: Tit-for-Tat — miła, odwetowa, wybaczająca i czytelna. Ale przy realistycznym szumie (przypadkowych zdradach) obraz staje się bogatszy.

Dziesięć strategii

Turniej obejmuje 10 kanonicznych strategii: AllCooperate (zawsze C), AllDefect (zawsze D), Tit-for-Tat (kopiuj ostatni ruch), Tit-for-Two-Tats (zdradzaj tylko po dwóch kolejnych zdradach), Hojne TFT (czasem wybacza zdradę z prawdopodobieństwem p), Grim Trigger (współpracuj, dopóki nie zostaniesz zdradzony, potem zdradzaj już zawsze), Pavlov (win-stay, lose-shift), Random (50/50), Joss (TFT z 10% ukrytej zdrady) i Friedman (wariant TFT). Rozgrywka każdy z każdym z samograniem daje pełną macierz wyników.

Szum i przewaga hojności

Przy parametrze szumu ε > 0 (każdy zamierzony ruch odwraca się z prawdopodobieństwem ε) TFT wpada w "wojny echa" — pojedyncza przypadkowa zdrada wywołuje wzajemny odwet, który nigdy się nie kończy. Hojne TFT dodaje wybaczanie: z prawdopodobieństwem g ≈ 1 − 3P/(T+R+P) współpracuje nawet po zdradzie. Przy szumie Hojne TFT zbiera znacząco wyższą wypłatę niż ścisłe TFT — ilościowy dowód, że wybaczanie jest strategicznie optymalne.

Figura Lichtenberga: model przebicia dielektrycznego

Figury Lichtenberga to fraktalne wzory wyładowań powstające, gdy prąd o wysokim napięciu przechodzi przez materiał izolacyjny. Model przebicia dielektrycznego (Niemeyer, Pietronero, Wiesmann, 1984) opisuje ich powstawanie prostą probabilistyczną regułą wzrostu na polu potencjału rozwiązanym równaniem Laplace'a.

Solwer Laplace'a SOR i reguła wzrostu

Potencjał elektryczny φ spełnia równanie Laplace'a ∇²φ = 0 z ustalonymi warunkami brzegowymi (elektroda przy φ=1, uziemienie przy φ=0). Solwer nadrelaksacji sukcesywnej (SOR) z ω=1,8 zbiega się około 10× szybciej niż Gauss-Seidel. W każdym kroku wszystkie puste komórki sąsiadujące z rosnącym klastrem są kandydatami do wzrostu. Każdy kandydat "wystrzeliwuje" z prawdopodobieństwem proporcjonalnym do φ^η — lokalnego potencjału podniesionego do potęgi η.

Parametr η: od DLA do figury Lichtenberga

η w sposób ciągły kontroluje morfologię. Przy η=0 wszystkie miejsca na obwodzie są równie prawdopodobne — to odtwarza agregację ograniczoną dyfuzją (DLA), dając krzaczasty fraktal o wymiarze ≈ 1,71. Wraz ze wzrostem η miejsca o wyższym potencjale (bliżej elektrody) są wykładniczo faworyzowane, co daje wąskie, spikularne rozgałęzienia charakterystyczne dla prawdziwych figur Lichtenberga przy η ≈ 3. Wymiar fraktalny box-counting jest mierzony na żywo na klastrze.

Regulator PID: inżynieria sterowania z sprzężeniem zwrotnym

Regulator PID (proporcjonalno-całkująco-różniczkujący) to koń roboczy sterowania przemysłowego — szacuje się, że około 95% wszystkich dziś stosowanych regulatorów sprzężenia zwrotnego to warianty PID lub PI. Mimo prostoty, dobre strojenie wymaga zrozumienia dynamiki sterowanego obiektu.

Trzy modele obiektu

Anti-windup i Ziegler-Nichols

Gdy wyjście osiąga nasycenie, człon całkujący może akumulować się bez ograniczeń (windup), powodując duże przeregulowania po zakończeniu nasycenia. Symulacja implementuje całkowanie warunkowe: człon całkujący akumuluje się tylko wtedy, gdy wyjście nie jest nasycone. Autotuning Zieglera-Nicholsa znajduje zysk graniczny K_u, zwiększając K_p aż do trwałych oscylacji, a następnie ustawia K_p = 0,6K_u, K_i = 1,2K_u/T_u, K_d = 0,075K_u·T_u — solidny punkt startowy do dalszego ręcznego dostrajania.

Zasada Archimedesa: dokładne obliczanie wyporności

Zasada Archimedesa mówi, że F_w = ρ_ciecz · g · V_wyparta. Interesującym wyzwaniem jest obliczenie V_wyparta dokładnie dla nietrywialnych kształtów — a symulacja robi to analitycznie, a nie przez przybliżenie wokselowe.

Dokładne wzory na objętość wypartą

Stabilność metacentryczna statku

Pływające ciało jest stabilne, jeśli jego metacentrum M znajduje się powyżej środka ciężkości G. Gdy statek przechyla się o kąt θ, moment przywracający wynosi M_przywr = ρgV·GM·sinθ. Jeśli GM < 0 (metacentrum poniżej środka ciężkości), moment przywracający staje się destabilizujący i statek się wywraca. Symulacja pokazuje obliczenie wysokości metacentrycznej z drugiego momentu pola powierzchni wodnicy I_wl / V_wyp i animuje wywrotkę, gdy kryterium stabilności zostaje naruszone.

Mikropęknięcia: wzrost pęknięć zmęczeniowych według prawa Parisa

Większość uszkodzeń konstrukcyjnych nie zdarza się dlatego, że przyłożone obciążenie przekroczyło wytrzymałość statyczną — zdarzają się, ponieważ maleńkie pęknięcie rosło, cykl po cyklu, aż osiągnęło rozmiar krytyczny. Prawo Parisa i Erdogana z 1963 roku opisuje ten proces ilościowo.

Prawo Parisa i współczynnik intensywności naprężeń

Tempo wzrostu pęknięcia na cykl obciążenia to da/dN = C(ΔK)^m, gdzie a to długość pęknięcia, N to liczba cykli, a ΔK to zakres współczynnika intensywności naprężeń ΔK = Y · Δσ · √(πa). Y to współczynnik geometryczny (≈1 dla pęknięcia centralnego w nieskończonej płycie), Δσ to zakres naprężeń. C i m to stałe materiałowe różniące się o rzędy wielkości między materiałami.

Cztery materiały i katastrofalne pęknięcie

Symulacja pokazuje logarytmiczny wykres a-N dla czterech materiałów inżynierskich: stal A36 (twarda, wolny wzrost pęknięć), Al 7075 (stosowany w lotnictwie, szybszy wzrost), Ti-6Al-4V (stop lotniczy, doskonała odporność na pękanie) i żeliwo (kruche, szybkie rozprzestrzenianie). Gdy K_max = Y · σ_max · √(πa) osiąga odporność na pękanie K_IC, symulacja uruchamia animację katastrofalnego pęknięcia z błyskiem ekranu i rozgałęzianiem pęknięcia — koniec żywotności zmęczeniowej.

Co dalej

Fala 72 przynosi pełny 4-wymiarowy filtr Kalmana z wizualizacją elipsy kowariancji, ręczną propagację wsteczną przez MLP z animacją przepływu gradientu, wahadło 3D z więzami mnożników Lagrange'a, sprzężony model eutrofizacji z pętlą histerezy, symulację akustycznej fali FDTD z czterema typami soczewek oraz keplerowskie pierścienie planetarne z formowaniem luki rezonansowej podziału Cassiniego.

← Devlog #91 Devlog #93 →