- Julia高性能科學計算(第2版)
- (韓)權(quán)昌賢(Changhyun Kwon)
- 355字
- 2021-10-29 21:36:57
2.2 寫線性規(guī)劃問題的其他方式
我們可以使用數(shù)組來定義變量。例如,上一節(jié)那個線性規(guī)劃問題,我們也可以將其寫成如下所示的Julia代碼。
將變量x定義為三維向量,代碼如下所示。

這里的1:3代表一個從1到3的數(shù)組(遞增值為1)。
然后,準備一個列向量c,并用它來定義對象函數(shù)。

這其實與下面的公式的意思相同。

在LP問題中,限定條件通常寫成像Ax≤b這樣的向量-矩陣表示法。遵照這個慣例,我們準備矩陣A和向量b,并使用它們來添加限定條件。

當有100個而不是2個限定條件時,以上方式就不可行了。為應(yīng)對這種情況,我們可以換一種方式。

另一種更好的方式如下所示。

你可以選擇任何可行的方式。JuMP包提供了很多添加限定條件的方法。閱讀官方文檔(見參考資料[27])可以了解詳情。
最后,對x1添加邊界約束。

最終的代碼展示如下。

注意,關(guān)于打印方式的代碼發(fā)生了變化,結(jié)果如下所示。

推薦閱讀
- ASP.NET Core:Cloud-ready,Enterprise Web Application Development
- Power Up Your PowToon Studio Project
- Boost C++ Application Development Cookbook(Second Edition)
- 認識編程:以Python語言講透編程的本質(zhì)
- 三維圖形化C++趣味編程
- Selenium Design Patterns and Best Practices
- Learning Laravel 4 Application Development
- 計算機應(yīng)用基礎(chǔ)實踐教程
- Statistical Application Development with R and Python(Second Edition)
- Unity&VR游戲美術(shù)設(shè)計實戰(zhàn)
- QlikView Unlocked
- Offer來了:Java面試核心知識點精講(框架篇)
- 測試工程師Python開發(fā)實戰(zhàn)
- Mastering Unity 2017 Game Development with C#(Second Edition)
- Building Microservices with .NET Core 2.0(Second Edition)