나는 PuLP와 CBC로 MILP 문제를 풀려고한다.COIN-OR : CBC가 해결 한 최적화 과정에서 양의 정수 변수에 어떤 값이 걸리나요?
나머지 문제를 제외하고 저는 양의 정수 변수 집합에 문제가 있습니다. 나는 이완 (relaxation)과 관련된 제약 조건을 가지고 있는데, 이는 양의 정수 변수의 일부 변수가 제약 조건으로 인해 특정 값으로 고정되지 않는다는 것을 의미합니다.
양의 정수 contraint 집합에서 구두점을 수정하면 일부는 구속으로 인해 값을 얻지 만이 같은 제약 조건을 완화하면 (큰 M 완화) 나머지 변수는 특정 값을 가져올 필요가 없습니다 값.
값을 제공하는 것은 CBC의 책임입니다. 그들 중 대부분은 0으로 가고 일부는 1440 인 변수의 상한값을 얻습니다. 왜 그럴까요? CBC는 이러한 변수에 이러한 가치를 줄 수 있습니까? sovler가 따르는 규칙이 있습니까?
정보를 추가하거나 바꾸어 쓸 수있는 내용을 모르는 내용이 있으면 언제든지 알려주세요. 고맙습니다.
답변 해 주셔서 감사합니다. 변수를 특정 값 (예 : 0)으로 고정하는 것이 좋은 방법이라고 생각하십니까? 아무 것도없는 컴퓨팅 파워를 낭비하고 있습니까? 아니면 출력 프로그램에서 값이 두 경계 중 하나 인 경우 무시해야한다는 것을 알 수 있습니까? – dimrizo
일반적으로 예상하거나 찾고있는 솔루션에 대해 솔버에게 줄 수있는 모든 정보가 도움이 될 것입니다. 변수를 알려진 값으로 자주 설정했습니다. 이는 알려진 솔루션으로 모델을 디버깅하는 데 특히 유용합니다. – TimChippingtonDerrick