Нижние и верхние границы ограничивают компоненты решения x.
Если вы знаете границы на местоположении оптимума, можно получить более быстрые и более надежные решения явным образом включая эти границы в формулировке задачи.
Задайте границы как векторы с той же длиной как x, или как матрицы с тем же числом элементов как x.
Если конкретный компонент не имеет никакой нижней границы, используйте –Inf
как связанное; точно так же используйте Inf
если компонент не имеет никакой верхней границы.
Если у вас есть только границы одного типа (верхний или ниже), вы не должны писать другой тип. Например, если у вас нет верхних границ, вы не должны предоставлять вектор из Inf
s.
Если только первый m из компонентов n имеет границы, то только необходимо предоставить вектор из длины m, содержащий границы. Однако этот ярлык заставляет решатели выдавать предупреждение.
Например, предположите, что ваши границы:
x 3 ≥ 8,
x 2 ≤ 3.
l = [–Inf; –Inf; 8]
,
u = [Inf; 3]
(выдает предупреждение), или u = [Inf; 3; Inf]
.
Совет
Чтобы понизить скорость решателя использования памяти и увеличения, используйте Inf
или –Inf
вместо большого, связанного произвольного. Для получения дополнительной информации смотрите Использование Inf Вместо Большого, Связанного Произвольного.
Вы не должны давать градиенты для связанных ограничений; решатели вычисляют их автоматически. Границы не влияют на Гессианы.
Для более комплексного примера границ смотрите Настроенный Линейная Программа, Основанная на решателе.