public void init(){
		Log.finer(Log.start(new Throwable()));

		//家電登録
		for(Integer electronicsID : Conf.Electronics.keySet()){
			Electronics e = Conf.Electronics.get(electronicsID);
			electronicsMap.put(electronicsID, new Electronics(e.getName(), e.getConsume(), electronicsID,e.getIconID()));
		}
		Log.fine("maked Electronics List.");
		Log.config(electronicsMap.toString());
		//World生成
		world = new World(Conf.Weather,null);
		Log.fine("maked World");
		//家を構成する
		for(Integer houseID : Conf.BelongHomes.keySet()){
			SettingHouse settingHouse = Conf.BelongHomes.get(houseID);
			//アクションの順番を最適化→登録
			ArrayList<Action> actions = new ArrayList<Action>(settingHouse.actions);
			Collections.sort(actions, new TimeComparator());
			AMs.aM().put(houseID, actions);
			AMs.finishAM().put(houseID, 0);
			AMs.activeAM().put(houseID, new ArrayList<Action>());

			House house = new House(houseID);
			//人を構成
			for(Integer humanID : settingHouse.belongHumans.keySet()){
				SettingHuman settingHuman = settingHouse.belongHumans.get(humanID);
				Human human = new Human(settingHuman.name,settingHuman.order ,humanID,settingHuman.iconID);
				house.getHuman().add(human);
			}
			//部屋を構成
			for(Integer roomID : settingHouse.belongRooms.keySet()){
				SettingRoom settingRoom = settingHouse.belongRooms.get(roomID);
				Room room = new Room(roomID,settingRoom.name);
				for(Integer electronicsID : settingRoom.electronics){
					Concent concent = new Concent((Electronics)electronicsMap.get(electronicsID).clone(),
							house.getEms().getdBoad());
					house.getEms().getdBoad().getConcents().add(concent);
					room.getConcents().add(concent);
				}
				house.getRooms().add(room);
			}
			world.getHouses().add(house);
		}
		Log.fine("made homes");

		//GUIManaager初期化
		if(GUI==null){
			GUI = new GUIManager();
			Log.fine("made gui");
		}else{
			GUI.init();
		}


		//GUI関連
		{
			//天気
			JLabel weatherLabel = GUI.getMainWindow().getWeatherLabel();
			weatherLabel.setIcon(GUIManager.weatherIcons90.get(world.getWeather().getId()));

			//MainWindowのテーブル
			JTable table_1 = GUI.getMainWindow().getTable_1();
			table_1.setValueAt(Conf.StartTime.toString(), 0, 1);
			table_1.setValueAt(Conf.EndTime.toString(), 1, 1);
			table_1.setValueAt(Conf.UnitTime.toHowLong(), 2, 1);
			table_1.setValueAt("1秒に"+Conf.CountPeriod+"単位時間", 3, 1);
			table_1.setValueAt(Conf.BSUnitTime.toHowLong(), 4, 1);

			//家電を登録
			for(Integer i : electronicsMap.keySet()){
				GUI.getKadenWindow().addNewKaden(electronicsMap.get(i));
			}
			GUI.getKadenWindow().getFrame().repaint();
		}

		printWorldData();
		Log.finer(Log.finish(new Throwable()));
	}