public void buildAllModels() throws Exception {
		// get training dataset.
		DatasetBuilder builder = new DatasetBuilder(prototypeName);
		// get ActionType attribute from ActionType dataset.
		// Use it to get index number of different action
		Instances dataset = builder.getDataset(StringUtil.ACTION_TYPE);
		Attribute action = dataset.attribute(dataset.numAttributes() - 1);
		// build ActionType model
		buildModel(StringUtil.ACTION_TYPE);
		// build power and/or angle model(s) for each action
		// if action.indexOfValue("action") == -1, means this
		// action doesn't appear in log file.
		if (action.indexOfValue("kick") != -1) {
			buildModel(StringUtil.KICK_ANGLE);
			buildModel(StringUtil.KICK_POWER);
		}
		if (action.indexOfValue("dash") != -1) {
			buildModel(StringUtil.DASH_POWER);
		}
		if (action.indexOfValue("turn") != -1) {
			buildModel(StringUtil.TURN_ANGLE);
		}
		if (action.indexOfValue("catch") != -1) {
			buildModel(StringUtil.CATCH_ANGLE);
		}
	}