// Load tree
File taxoFile = new File(jsapResult.getString("taxonomy-file"));
Taxonomy tree = new Taxonomy(taxoFile);
// Build initial candidate
Candidate initialCandidate;
if (jsapResult.userSpecified("init-explicit")) {
initialCandidate = new Candidate(tree, Util.split(jsapResult.getString("init-explicit")), null, null);
} else if (jsapResult.userSpecified("init-all-level")) {
initialCandidate = Candidate.createFixedLevelCandidate(tree, jsapResult.getInt("init-all-level"));
} else if (jsapResult.getBoolean("init-all-leaves")) {
initialCandidate = Candidate.createLeafCandidate(tree);
} else {
throw new IllegalArgumentException("Either --init-explicit, --init-all-leaves, or --init-all-level should be specified. See --help.");
}
logger.debug("Initial candidate is " + initialCandidate.toBriefString());
// Set learning parameters
Class<SearchStrategy> strategy = (Class<SearchStrategy>) Class.forName(SearchStrategy.class.getPackage().getName() + "." + jsapResult.getString("search-method"));
logger.debug("Search strategy is " + strategy);