나는 선형 문제에서 몇 가지 제약이 있습니다. 예를 들어그렇다면 비선형 프로그래밍에서의 제약
:
내가 선형 또는 비선형 제약 등이 조건 제약 조건을 쓸 수있는 방법In m(x+y-n)^2
If x+y-n>=0 Then m=0,
Else m=1.
?
나는 선형 문제에서 몇 가지 제약이 있습니다. 예를 들어그렇다면 비선형 프로그래밍에서의 제약
:
내가 선형 또는 비선형 제약 등이 조건 제약 조건을 쓸 수있는 방법In m(x+y-n)^2
If x+y-n>=0 Then m=0,
Else m=1.
?
글쎄 [min(x+y-n,0)]^2
으로 쓸 수 있습니다. 그게 당신을 잘 할 수 있을지 확신하지 못합니다 (이것은 차별화가 없으므로 많은 솔버에게 어렵습니다). 우리는 추가 이진 변수를 사용하여 min()
표현 선형을 만들 수 있습니다
z <= x+y-n
z <= 0
z >= x+y-n - b * M
z >= 0 - (1-b) * M
b in {0,1}
충분히 큰 상수 M
으로합니다. 많은 경우에보다 나은 재구성이 적용될 수 있지만 나머지 모델에 따라 달라집니다.
Choco Solver과 같은 제약 조건 프로그래밍 솔버를 사용하는 경우 IfThenElse 제약 조건을 직접 사용할 수 있으며 사각형과 같은 다른 비선형 제약 조건을 직접 사용할 수 있습니다.
좋아요. 도움이 더 필요하지만 gmail.com의 lurbanrivero에 직접 문의 해 주시겠습니까? –