/// <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);
        }
示例#2
0
        /// <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);
        }
示例#3
0
 /// <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;
 }