001    import swarm.*;
002    
003    /**
004     * パーコレーションの視覚化<BR>
005     * <BR>
006     * 2次元正方格子にランダムに点を置いていく。
007     * となりあう点はつながっているとみなす。
008     * 点が増えていくと、つながった点による大きなクラスタができる。<BR>
009     * <BR>
010     * 空間が無限に大きい場合、点がある密度を超えると、
011     * クラスタのサイズも無限に大きくなることが知られている。<BR>
012     * <BR>
013     * この臨界点において、任意に選んだ格子点が無限に大きなクラスタの一部になっている確率
014     * を浸透確率という。これは、最大クラスタに含まれる点の数と、全格子点の数の比である。<BR>
015     * <BR>
016     * ここでは空間が有限の場合のシミュレーションで、浸透確率を調べる。<BR>
017     * <BR>
018     * 参考:小田垣孝「つながりの科学」・「パーコレーションの科学」<BR>
019     * <BR>
020     * <IMG src="../percolation.png" border="0"><BR>
021     * <BR>
022     * @author YABUKI Taro
023     */
024    public class Percolation{
025            public static void main(String[] args) {
026                    ObserverSwarm observerSwarm;
027                    
028                    Globals.env.initSwarm("percolation", "0.0", "YABUKI Taro", args);
029                    observerSwarm=new ObserverSwarm(Globals.env.globalZone);
030                    observerSwarm.buildObjects();
031                    observerSwarm.buildActions();
032                    observerSwarm.activateIn(null);
033                    observerSwarm.go();
034            }
035    }