특정 시점에 다양한 지점 사이를 이동해야하는 개체 그룹이있는 문제를 해결하려고합니다.이것은 혼합 정수 선형 프로그래밍의 관점에서 공식화 될 수 있습니까?
나는 모든 오브젝트와 도착/출발의 모든 : 선형 프로그래밍의 관점에서 등등
object1FirstDepartureTime > X
object1FirstArrivalTime < Y
object1FirstArrivalTime - object1FirstDepartureTime > Z
object1SecondDepartureTime - object1FirstArrivalTime > A
등과 즉를 제약의 대부분을 공식화 할 수 있었다. 목표 기능은 운송 중에 최소한 또는 가능한 시간을 소비하는 것입니다.
내가 겪고있는 문제는 하나의 추가 제약이 있습니다. 특정 물체는 다른 물체가 여행하는 동안 함께 있어야합니다. 예를 들어, object1은 object2, object3 또는 object4를 수반 할 수 있습니다. 이러한 객체 자체에는 특정 도착 또는 출발 제약 조건이 있습니다. 내 (아마 정수가 혼합 된) 선형 프로그램이 수반 객체의 선택을 처리하도록하고 싶습니다. 그러나 이것을 형식화하려고 시도하면서, 그것을 선형으로 유지하는 방법을 알 수는 없습니다. 나는
object2GoWIthObject1 + object3GoWithObject1 + object4GoWithObject1 < 2
object2GoWIthObject1, object3GoWithObject1, object4GoWithObject1 are all less than 2
object2GoWIthObject1, object3GoWithObject1, object4GoWithObject1 are all integers
같은 혼합 정수 제약 생각하지만 목적이 함께 1 개체 경우는 Y를 목적 1 시간 X에 출발 시간에 도착할 것입니다 "와 같은 제약을 표현하는 방법을 알아낼 수 없습니다 . " 이것은 부울 변수 (객체 2가 객체 1에 수반되는 경우)를 이동 시간으로 곱하는 것처럼 비선형 적으로 보입니다.
당연히 모든 "if ... then ..."문에 대해 서로 다른 선형 문제를 만들 수 있지만 60ish를 따르는 경로와 10 개의 개체를 동반 한 경우이 문제로 인해 10^60 선형 프로그램이 해결됩니다 , 그것은 좋지 않다.
이 선형 프로그래밍 문제를 공식화하는 방법에 대해 직관이있는 사람이라면 "Y는 Y를 동반합니까?" 문제 자체에서 표현 될 수 있습니다, 나는 많은 의무가있을 것입니다!