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 }