All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ai.libs.jaicore.planning.hierarchical.problems.htn.CostSensitiveHTNPlanningProblem Maven / Gradle / Ivy

package ai.libs.jaicore.planning.hierarchical.problems.htn;

import java.util.HashMap;
import java.util.Map;

import ai.libs.jaicore.basic.IObjectEvaluator;
import ai.libs.jaicore.logging.ToJSONStringUtil;
import ai.libs.jaicore.logic.fol.structure.CNFFormula;
import ai.libs.jaicore.logic.fol.structure.Monom;
import ai.libs.jaicore.planning.core.Plan;
import ai.libs.jaicore.planning.hierarchical.problems.stn.STNPlanningDomain;
import ai.libs.jaicore.planning.hierarchical.problems.stn.TaskNetwork;

public class CostSensitiveHTNPlanningProblem

> implements IHTNPlanningProblem { private final P corePlanningProblem; private final IObjectEvaluator planEvaluator; public CostSensitiveHTNPlanningProblem(final P corePlanningProblem, final IObjectEvaluator planEvaluator) { super(); this.corePlanningProblem = corePlanningProblem; this.planEvaluator = planEvaluator; } public P getCorePlanningProblem() { return this.corePlanningProblem; } public IObjectEvaluator getPlanEvaluator() { return this.planEvaluator; } @Override public String toString() { Map fields = new HashMap<>(); fields.put("corePlanningProblem", this.corePlanningProblem); fields.put("planEvaluator", this.planEvaluator); return ToJSONStringUtil.toJSONString(this.getClass().getSimpleName(), fields); } @Override public STNPlanningDomain getDomain() { return this.corePlanningProblem.getDomain(); } @Override public CNFFormula getKnowledge() { return this.corePlanningProblem.getKnowledge(); } @Override public Monom getInit() { return this.corePlanningProblem.getInit(); } @Override public TaskNetwork getNetwork() { return this.corePlanningProblem.getNetwork(); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy