public static KnowledgeHolder create(PAD.Planner.PDDL.Problem problem) { KnowledgeHolder h = new KnowledgeHolder(); h.predConstGraph = new PredicateConstantGraph(problem); return(h); }
public static KnowledgeHolder compute(PAD.Planner.SAS.Problem problem) { KnowledgeHolder result = new KnowledgeHolder(); result.CG = KnowledgeExtractionGraphs.computeCausualGraph(problem); result.DTGs = new List <DomainTransitionGraph>(); result.RSE_InvertibleVariables = new HashSet <int>(); for (int i = 0; i < problem.Variables.Count; i++) { result.DTGs.Add(KnowledgeExtractionGraphs.computeDTG(problem, i)); if (result.DTGs[result.DTGs.Count - 1].isRSE_Invertible) { result.RSE_InvertibleVariables.Add(i); } } return(result); }