/// <summary>Initializes a new instance of the <see cref="GoldenSectionSearchOptimizer"/> class. /// </summary> /// <param name="bracketingApproach">The Bracketing approach.</param> /// <param name="abortCondition">The abort (stopping) condition for the Golden Section Search optimizer.</param> public GoldenSectionSearchOptimizer(IMinimumBracketing bracketingApproach, GoldenSectionSearchAbortCondition abortCondition) { BracketingApproach = bracketingApproach ?? throw new ArgumentNullException(nameof(bracketingApproach)); AbortCondition = abortCondition ?? throw new ArgumentNullException(nameof(abortCondition)); m_Name = new IdentifierString(String.Format("Golden Section Search; {0}", abortCondition.ToString())); m_ObjectiveFunctionFactory = new OneDimOptimizerFunctionFactory(); m_ConstraintDescriptor = new OneDimOptimizerConstraintFactory(OneDimOptimizerConstraintFactory.ConstraintType.All); }
/// <summary>Initializes a new instance of the <see cref="OneDimSAOptimizer"/> class. /// </summary> /// <param name="randomNumberStream">The random number stream.</param> /// <param name="configuration">The configuration of the Simulated Annealing optimizer.</param> /// <param name="abortCondition">The abort (stopping) condition for the Simulated Annealing optimizer.</param> public OneDimSAOptimizer(IRandomNumberStream randomNumberStream, OneDimSAOptimizerConfiguration configuration, OneDimSAOptimizerAbortCondition abortCondition) { AbortCondition = abortCondition ?? throw new ArgumentNullException(nameof(abortCondition)); Configuration = configuration ?? throw new ArgumentNullException(nameof(configuration)); if (randomNumberStream == null) { throw new ArgumentNullException(nameof(randomNumberStream)); } m_SingleRandomNumberStream = new SingleRandomNumberStream(randomNumberStream, 250); m_Name = new IdentifierString(String.Format("1-dim Simulated Annealing; {0}", abortCondition.ToString())); m_ObjectiveFunctionFactory = new OneDimOptimizerFunctionFactory(); m_ConstraintDescriptor = new OneDimOptimizerConstraintFactory(OneDimOptimizerConstraintFactory.ConstraintType.BoundedInterval); }
/// <summary>Initializes a new instance of the <see cref="OneDimOptimizerConstraint" /> class. /// </summary> /// <param name="constraintDescriptor">The constraint descriptor in its <see cref="OneDimOptimizerConstraintFactory"/> representation that serves as factory for the current object.</param> /// <param name="constraint">The constraint of the optimizer in its <see cref="IOneDimRegion"/> representation.</param> internal OneDimOptimizerConstraint(OneDimOptimizerConstraintFactory constraintDescriptor, IOneDimRegion constraint) { Factory = constraintDescriptor; IntervalRepresentation = constraint; }