FICO
FICO Xpress Optimization Examples Repository
FICO Optimization Community FICO Xpress Optimization Home
Back to examples browserPrevious exampleNext example

Multi-commodity network flow

Description
A private telephone company exploits a network between five cities. At a given moment, the company is facing a given set of demands for circuits (telephone calls). The objective is to transmit as much as possible of the demands and to indicate the corresponding routing, that is, the access paths used.

Further explanation of this example: 'Applications of optimization with Xpress-MP', Section 12.3 'Routing telephone calls' (g3routing.mos)

multicomflowgr.zip[download all files]

Source Files
By clicking on a file name, a preview is opened at the bottom of this page.
multicomflow_graph.mos[download]

Data Files





multicomflow.dat

! Data file for `multicomflow.mos'

CAP: [("Nantes-Paris") 300 ("Nantes-Nice") 120 ("Paris-Nice") 300
      ("Paris-Valenciennes") 200 ("Troyes-Nice") 80 ("Troyes-Valenciennes") 70]

DEM: [("Nantes-Nice") 100 ("Nantes-Troyes") 80 ("Nantes-Valenciennes") 75  
      ("Nice-Valenciennes") 100 ("Paris-Troyes") 70]

ROUTE: [
 (1 1) "Nantes-Nice"
 (2 1) "Nantes-Paris" "Paris-Nice"
 (3 1) "Nantes-Paris" "Paris-Valenciennes" "Valenciennes-Troyes" "Troyes-Nice"
 (4 1) "Nantes-Paris" "Paris-Valenciennes" "Valenciennes-Troyes"
 (5 1) "Nantes-Paris" "Paris-Nice" "Troyes-Nice"
 (6 1) "Nantes-Nice" "Troyes-Nice"
 (7 1) "Nantes-Nice" "Paris-Nice" "Paris-Valenciennes" "Valenciennes-Troyes"
 (8 1) "Nantes-Paris" "Paris-Valenciennes"
 (9 1) "Nantes-Nice" "Paris-Nice" "Paris-Valenciennes"
(10 1) "Nantes-Paris" "Paris-Nice" "Troyes-Nice" "Valenciennes-Troyes"
(11 1) "Nantes-Nice" "Troyes-Nice" "Valenciennes-Troyes"
(12 1) "Nantes-Nice" "Nantes-Paris" "Paris-Valenciennes"
(13 1) "Paris-Nice" "Paris-Valenciennes"
(14 1) "Troyes-Nice" "Valenciennes-Troyes"
(15 1) "Paris-Valenciennes" "Valenciennes-Troyes"
(16 1) "Nantes-Paris" "Nantes-Nice" "Troyes-Nice"
(17 1) "Paris-Nice" "Troyes-Nice" ]

        
CINDEX: [(1) "Nantes-Nice" (2) "Nantes-Nice" (3) "Nantes-Nice"
         (4) "Nantes-Troyes" (5) "Nantes-Troyes" (6) "Nantes-Troyes"
         (7) "Nantes-Troyes"
         (8) "Nantes-Valenciennes" (9) "Nantes-Valenciennes"
         (10) "Nantes-Valenciennes" (11) "Nantes-Valenciennes"
         (12) "Nice-Valenciennes" (13) "Nice-Valenciennes" 
         (14) "Nice-Valenciennes"
         (15) "Paris-Troyes" (16) "Paris-Troyes" (17) "Paris-Troyes"]

POS: [("Nantes-Paris") [10 40 50 50] ("Nantes-Nice") [10 40 60 5] 
      ("Paris-Nice") [50 50 60 5] ("Paris-Valenciennes") [50 50 80 80]
       ("Troyes-Nice") [90 30 60 5] ("Troyes-Valenciennes") [90 30 80 80]]
        

Back to examples browserPrevious exampleNext example