AMPL

AMPL

AMPL(A Mathematical Programming Language)是一種描述並求解大規模複雜數學問題的建模語言。AMPL支持世界上大部分的求解器,如CBC、CPLEX、FortMP、Gurobi、MINOS、IPOPT、SNOPT和KNITRO。AMPL語言的的一個主要的特點是對最佳化問題的數學表達式的簡化,這使得簡明地可讀地定義最佳化問題成為可能。根據NEOS的統計AMPL是使用最為廣泛的數學模型語言。

基本介紹

  • 中文名:AMPL
  • 外文名:A Mathematical Programming Language
  • AMPL特點:較強的可移植性
  • 基本語法:區分大小寫
簡介,AMPL基本信息,AMPL基本語法,AMPL特點,

簡介

AMPL——“A Mathematical Programming Language”,
是一種強大靈活的綜合性數學模型語言,它可以解決最佳化
過程中經常遇到的線性,非線性和整型數學規劃問題。A
MPL提供直觀簡明的數學符號用以描述複雜的模型。AMP
L軟體是付費的,不過可以使用免費的學生版,在其官方
網站可以下載。

AMPL基本信息

AMPL由朗訊公司(Lucent Technologies)的研發部門的貝爾實驗室(Bell Laboratories)開發,用於解決大規模最佳化問題。 AMPL本身不能直接地解決那些問題,起作用只是類似的編譯器,它將模型.mod 轉換成專門的.nl 檔案。在讀入模型檔案和數據檔案後調用其他能夠求解各類數學規劃問題的求解器(solver)進行求解。目前AMPL支持世界上大多數流行的求解軟體(如 MINOS, IPOPT,,SNOPT ,IBM_CPLEX等等)。
AMPL解決數學文的框架見下圖
AMPL

AMPL基本語法

區分大小寫
忽略空格
每個語句以分號“;”結尾
以#開始的一行為注釋部分
;=表示賦值,=表示約束 ,==表示判斷
AMPL用接近數學描述的語言把數學規劃問題寫成一個模型檔案,以".mod"為擴展名,如example.mod。

AMPL特點

較強的可移植性
易於用戶操作的界面
適用於多種類型問題
靈活的數學函式

相關詞條

熱門詞條

聯絡我們