Связанные ограничения

Нижние и верхние границы ограничивают компоненты решения x.

Если вы знаете границы на местоположении оптимума, можно получить более быстрые и более надежные решения явным образом включая эти границы в формулировке задачи.

Задайте границы как векторы с той же длиной как x, или как матрицы с тем же числом элементов как x.

  • Если конкретный компонент не имеет никакой нижней границы, используйте –Inf как связанное; точно так же используйте Inf если компонент не имеет никакой верхней границы.

  • Если у вас есть только границы одного типа (верхний или ниже), вы не должны писать другой тип. Например, если у вас нет верхних границ, вы не должны предоставлять вектор из Infs.

  • Если только первый m из компонентов n имеет границы, то только необходимо предоставить вектор из длины m, содержащий границы. Однако этот ярлык заставляет решатели выдавать предупреждение.

Например, предположите, что ваши границы:

x 3 ≥ 8,
x 2 ≤ 3.

Запишите ограничительные векторы как

l = [–Inf; –Inf; 8],
u = [Inf; 3] (выдает предупреждение), или u = [Inf; 3; Inf].

Совет

Чтобы понизить скорость решателя использования памяти и увеличения, используйте Inf или –Inf вместо большого, связанного произвольного. Для получения дополнительной информации смотрите Использование Inf Вместо Большого, Связанного Произвольного.

Вы не должны давать градиенты для связанных ограничений; решатели вычисляют их автоматически. Границы не влияют на Гессианы.

Для более комплексного примера границ смотрите Настроенный Линейная Программа, Основанная на решателе.

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте