
es.urjc.etsii.grafo.services.TimeLimitCalculator Maven / Gradle / Ivy
package es.urjc.etsii.grafo.services;
import es.urjc.etsii.grafo.algorithms.Algorithm;
import es.urjc.etsii.grafo.annotations.InheritedComponent;
import es.urjc.etsii.grafo.io.Instance;
import es.urjc.etsii.grafo.solution.Solution;
/**
* Time limit
* @param Solution class
* @param Instance class
*/
@InheritedComponent
public abstract class TimeLimitCalculator, I extends Instance> {
/**
* Calculate timelimit in milliseconds, can be customized per instance and algorithm
* @param instance current instance being solved
* @param algorithm algorithm that is going to be executed
*/
public abstract long timeLimitInMillis(I instance, Algorithm algorithm);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy