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

org.chocosolver.solver.learn.IExplanation Maven / Gradle / Ivy

There is a newer version: 4.10.17
Show newest version
/*
 * This file is part of choco-solver, http://choco-solver.org/
 *
 * Copyright (c) 2023, IMT Atlantique. All rights reserved.
 *
 * Licensed under the BSD 4-clause license.
 *
 * See LICENSE file in the project root for full license information.
 */
package org.chocosolver.solver.learn;

import org.chocosolver.solver.Model;
import org.chocosolver.solver.constraints.nary.clauses.ClauseStore;

/**
 * An abstract class that defines required methods for an explanation.
 * An explanation tells about the reason of a failure.
 * It gives information relatives to:
 * 
    *
  • decision to backtrack to
  • *
  • additional constraint to add to the model
  • *
*

* Project: choco-solver. * @author Charles Prud'homme * @since 27/01/2017. */ public abstract class IExplanation { /** * Extract and post the nogood related to this explanation * @param mModel the model to post the nogood in */ public abstract void extractConstraint(Model mModel, ClauseStore ngstore); /** * Recycle this explanation when it is not used anymore. */ public abstract void recycle(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy