package optimization.linesearch; /** * Non newtwon since we don't always try 1... * Not sure if that is even usefull for newton * @author javg * */ public class NonNewtonInterpolationPickFirstStep extends GenericPickFirstStep{ public NonNewtonInterpolationPickFirstStep(double initValue) { super(initValue); } public double getFirstStep(LineSearchMethod ls){ // System.out.println("Previous step used " + ls.getPreviousStepUsed()); // System.out.println("PreviousGradinebt " + ls.getPreviousInitialGradient()); // System.out.println("CurrentGradinebt " + ls.getInitialGradient()); if(ls.getPreviousStepUsed() != -1 && ls.getPreviousInitialGradient()!=0){ double newStep = 1.01*ls.getPreviousInitialGradient()*ls.getPreviousStepUsed()/ls.getInitialGradient(); //System.out.println("Suggesting " + newStep); return newStep; } return _initValue; } public void collectInitValues(WolfRuleLineSearch ls){ } public void collectFinalValues(WolfRuleLineSearch ls){ } }