🔗 Graf skierowany siłami
Interaktywny układ sprężynowy Fruchtermana-Reingolda dla grafów Erdősa-Rényiego, bezskalowych Barabásiego-Alberta i małych światów Wattsa-Strogatza. Przeciągalne wierzchołki kolorowane stopniem, histogram rozkładu stopni na żywo.
O tej symulacji
Ta symulacja rozmieszcza losowo wygenerowaną sieć za pomocą algorytmu sprężynowego Fruchtermana-Reingolda, w którym każdy wierzchołek odpycha wszystkie pozostałe, podczas gdy połączone wierzchołki przyciągają się wzdłuż swoich krawędzi. Możesz przełączać się między trzema klasycznymi modelami grafów — losowym Erdősa-Rényiego, bezskalowym Barabásiego-Alberta (scale-free) oraz małego świata Wattsa-Strogatza — i obserwować, jak każdy z nich osiąga charakterystyczny kształt. Wierzchołki są kolorowane i skalowane według ich stopnia, a histogram na żywo pokazuje, jak rozkładają się połączenia w sieci.
🔬 Co przedstawia
Graf nieskierowany rysowany metodą układu skierowanego siłami: siła odpychania k²/d działa między wszystkimi parami wierzchołków, a krawędzie przyciągają swoje końce siłą d²/k, do czego dochodzi słaby składnik grawitacji skierowany do środka. Topologię budują trzy generatory — jednorodne losowe połączenia, dołączanie preferencyjne generujące huby o rozkładzie potęgowym oraz sieć pierścieniowa z przełączaniem krawędzi, dająca krótkie ścieżki przy wysokim klastrowaniu.
🎮 Jak korzystać
Wybierz typ grafu przyciskami Losowy, Bezskalowy i Mały świat. Suwak Wierzchołki ustawia rozmiar od 20 do 150, a suwak Grawitacja (0–20) zwiększa lub zmniejsza skupienie wokół środka. Użyj ×1/×2/×4, aby wykonywać więcej kroków układu na klatkę, Nowy graf, by wygenerować układ od nowa, oraz Pauza, by go zatrzymać. Przeciągnij dowolny wierzchołek myszą lub dotykiem, by zaburzyć układ.
💡 Czy wiesz, że?
W bezskalowej sieci Barabásiego-Alberta rozkład stopni podąża za prawem potęgowym P(k) ∝ k⁻³, dzięki czemu garstka bogato połączonych hubów współistnieje z wieloma słabo połączonymi wierzchołkami — ten wzorzec widać w długim prawym ogonie histogramu na żywo.
Najczęściej zadawane pytania
Czym jest układ grafu skierowany siłami?
To metoda rysowania sieci tak, aby obraz ujawniał jej strukturę. Każdy wierzchołek jest traktowany jak naładowana cząstka odpychająca pozostałe, a krawędzie działają jak sprężyny ściągające połączone wierzchołki. System jest symulowany aż do zrównoważenia sił, dzięki czemu dobrze połączone skupiska znajdują się blisko siebie, a słabo połączone wierzchołki są rozproszone.
Jak działa tutaj algorytm Fruchtermana-Reingolda?
Oblicza siłę odpychania rzędu k²/odległość między każdą parą wierzchołków oraz siłę przyciągania rzędu odległość²/k wzdłuż każdej krawędzi, gdzie k to idealny odstęp wyznaczony na podstawie powierzchni płótna i liczby wierzchołków. Siły są sumowane, prędkości są tłumione w każdym kroku, a niewielkie przyciąganie grawitacyjne utrzymuje graf wyśrodkowany, dzięki czemu układ stopniowo relaksuje się do stabilnego rozmieszczenia.
Jaka jest różnica między trzema typami grafów?
Model losowy (Erdősa-Rényiego) łączy każdą parę wierzchołków z ustalonym, niewielkim prawdopodobieństwem, dając rozkład stopni w kształcie dzwonu. Model bezskalowy (Barabásiego-Alberta) rośnie poprzez dołączanie preferencyjne, więc nowe wierzchołki wolą już popularne węzły i powstają duże huby. Model małego świata (Wattsa-Strogatza) zaczyna od regularnego pierścienia i przełącza część krawędzi, dając krótkie ścieżki przy wysokim lokalnym klastrowaniu.
Co oznaczają kolory i rozmiary wierzchołków?
Oba kodują stopień każdego wierzchołka, czyli liczbę krawędzi do niego przyłączonych. Wierzchołki o niskim stopniu są niebieskie i małe, a huby o wysokim stopniu przechodzą przez zieleń w stronę pomarańczu i rosną. Panel boczny podaje też liczbę wierzchołków i krawędzi, średni oraz maksymalny stopień, a także gęstość, wraz z histogramem pełnego rozkładu stopni.
Czy układ jest fizycznie dokładny?
Jest to wierna implementacja heurystyki Fruchtermana-Reingolda, a nie model prawdziwej fizyki, więc siły dobrano tak, by dawały czytelne diagramy, a nie odwzorowywały naturę. Odpychanie jest liczone dla wszystkich par, co jest dokładne, ale skaluje się z kwadratem liczby wierzchołków, dlatego symulacja ogranicza sieć do 150 wierzchołków, by pozostać płynna w przeglądarce.