Math Programming Language

Developed by Bell Laboratories of Lucent Technologies, AMPL is an award-winning mathematical programming language system. With AMPL, users can expedite prototyping and model deployment, and facilitate system management and maintenance.

AMPL is particularly suited for OR professionals who analyze various decision problems and design decision support systems. Model development is accomplished extremely quickly with--it is a matter of hours, rather than the weeks or months required using traditional methods.

Features Include:
  • Portability among popular UNIX workstations
  • Easy-to-use user interface
  • Variety of problem types (e.g., linear, integer, network, etc.)
  • Flexible mathematical functions
  • Direct interface to SOPT without creating MPS files.
To purchase the AMPL book, go to AMPL 2nd Edition

Supported Plaforms:


AMPL can be used stand-alone, or as a subroutine library or DLL.

Purchasing AMPL

If you would like to purchase AMPL, please download the AMPL order form, and fax it to us with your signature. Upon receiving your order form, we will send you the software. Note that the software installation requires that you agree with the license contract. You can download the license agreement by clicking AMPL License Agreement.

Example Transportation Problem

Corresponding AMPL Code

###
### AMPL Model:  Transportation Problem
###

### Set Definition

set supply_location;
set demand_location;

### Parameter Definition

param ship_cost {supply_location, demand_location};
param supply_amt (supply_location};
param demand_amt {demand_location};

### Variable Definition

var X {supply_location, demand_location} >= 0.0;

### Objective Function

minimize costs:  sum {s in supply_location, d in demand_location}
                        ship_cost[s,d] * X[x,d];

### Constraints

supply_limit {s in supply_location}:
  sum {d in deman_location} X[s,d] <= supply_amt[s];

demand_limit {d in demand_location}:
  sum {s in supply_location} X[s,d] >= demand_amt[d];

### Data Section

data;

set supply_location := Atlanta Chicago;
set demand_location := New_York Houston Denver LA;

param supply_amt :=
     Atlanta                500.0
     Chicago                750.0;

param demand_amt :=
     New_York               400.0
     Houston                150.0
     Denver                 250.0
     LA                     450.0;

param ship_cost : New_York  Houston  Denver  LA :=
       Atlanta        15.0     12.0    18.0  25.0
       Chicago        18.0     17.0    11.0  16.0;

### End Statement
     
end;

Home | Products | Links | Contact | SmartTMS
All Contents @ Copyright 2008, SAITECH, Inc.