運籌學及其lingo實現(1)-lingo入門

lingo是什么

LINGO是Linear Interactive and General Optimizer的縮寫,即“交互式的線性和通用優化求解器”,由美國LINDO系統公司(Lindo System Inc.)推出的,可以用于求解非線性規劃,也可以用于一些線性和非線性方程組的求解等,功能十分強大,是求解優化模型的最佳選擇。
其特色在于內置建模語言,提供十幾個內部函數,可以允許決策變量是整數(即整數規劃,包括 0-1 整數規劃),方便靈活,而且執行速度非常快。能方便與EXCEL,數據庫等其他軟件交換數據。LINGO16.0為最新版本。

lingo常用于線性優化問題,結合運籌學中主要的優化問題類型,本系列將使用lingo求解常見的運籌學優化模型,主要包含:

  • 線性規劃
  • 運輸問題
  • 整數規劃
  • 目標規劃
  • 圖論與網絡
  • 排隊輪
  • 存儲論
  • 對策論
    等一系列問題。

優化問題基本結構

一般來說,一個優化模型將由以下三部分組成:
1.目標函數(Objective Function):要達到的目標。
2.決策變量(Decision variables):每組決策變量的值代表一種方案。在優化模型中需要確定決策變量的最優值,優化的目標就是找到決策變量的最優值使得目標函數取得最優。
3.約束條件(Constraints):對于決策變量的一些約束,它限定決策變量可以取的值。
在寫數學模型時,一般第一行是目標函數,接下來是約束條件,再接著是一些非負限制等。

lingo基本語法

LINGO模型(程序)從LINGO模型窗口輸入,它以語句“MODEL:”開始,以語句“END”結束.它是由一系列語句組成,每個語句都是以分號“;”結束,語句是組成LINGO模型的基本單位.每行可以寫多個語句,為了保持模型的可讀性,最好一行只寫一個語句,并且按照語句之間的嵌套關系對語句安排適當的縮進,增強層次感.以感嘆號“!”開始的語句是注釋語句(注釋語句也需要以分號“;”結束).

lingo工作界面
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 機器學習是做NLP和計算機視覺這類應用算法的基礎,雖然現在深度學習模型大行其道,但是懂一些傳統算法的原理和它們之間...
    在河之簡閱讀 20,551評論 4 65
  • Lingo是學習成本最低的,求解各種規模規劃問題的神器。本文用一個例子讓你快速上手Lingo。 優化問題 現實生活...
    MrGod閱讀 30,592評論 4 48
  • 注:題中所指的『機器學習』不包括『深度學習』。本篇文章以理論推導為主,不涉及代碼實現。 前些日子定下了未來三年左右...
    我偏笑_NSNirvana閱讀 40,099評論 12 145
  • 每個人的生命, 都潛伏著深深淺淺的哀與痛 ,它們像不能根治的病癥, 時不時提醒你它的存在 。 那是不能觸摸的傷口 ...
    王家淇閱讀 536評論 2 1
  • 每天若只花十分鐘,不在乎質量和字數,或許寫作壓力會小很多。 最初加入讀寫族的原因就是想鍛煉自己,讓自己想表達自己觀...
    057Bonnie閱讀 192評論 0 3