| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Air transport Description
Further explanation of this example: 'Applications of optimization with Xpress-MP', Chapter 11: Air transport
Source Files By clicking on a file name, a preview is opened at the bottom of this page.
Data Files
f1connect.mos (!****************************************************** Mosel Example Problems ====================== file f1connect.mos `````````````````` Planning flight connections at a hub An airline has 6 planes landing within 90 minutes. During the following hour, these planes must travel to 6 new destinations. How should the incoming planes be used for the new departures to minimize the number of passengers who must change planes during the connection? For infeasible departure assignments, we assign a large negative number for how many passengers will remain on the plane during the connection. By maximizing the number of passengers who stay on the plane, this eliminates these infeasible departures. (c) 2008 Fair Isaac Corporation author: S. Heipcke, Mar. 2002 *******************************************************!) model "F-1 Flight connections" uses "mmxprs" declarations PLANES = 1..6 ! Set of airplanes PASS: array(PLANES,PLANES) of integer ! Passengers with flight connections cont: array(PLANES,PLANES) of mpvar ! 1 if flight i continues to j end-declarations initializations from 'f1connect.dat' PASS end-initializations ! Objective: number of passengers on connecting flights Transfer:= sum(i,j in PLANES) PASS(i,j)*cont(i,j) ! One incoming and one outgoing flight per plane forall(i in PLANES) sum(j in PLANES) cont(i,j) = 1 forall(j in PLANES) sum(i in PLANES) cont(i,j) = 1 forall(i,j in PLANES) cont(i,j) is_binary ! Solve the problem: maximize the number of passengers staying on board maximize(Transfer) ! Solution printing writeln("Passengers staying on board: ", getobjval) forall(i in PLANES) writeln(i, " -> ", getsol(sum(j in PLANES) j*cont(i,j)), " (", getsol(sum(j in PLANES) PASS(i,j)*cont(i,j)), ")") end-model | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
© Copyright 2024 Fair Isaac Corporation. |