日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python 线性规划问题_一学高数,线代就头疼?让python帮你解决(内含教程)

發布時間:2025/3/15 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 线性规划问题_一学高数,线代就头疼?让python帮你解决(内含教程) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

欄目「有學問」是UBook知識在線的趣味科普專欄,專注于分享有趣好玩的科普知識,旨在發現更多有趣好玩的冷知識,發掘更多生活中的趣味。

自從上了大學以后,各種高數線代數學課防不勝防,有人說,如果你覺得高數難,那是因為你沒有遇到過線性規劃

但是小編一直覺得線性規劃問題不大,每次作業我都能保證全對,并且能夠快速做完,因為在大學里早已經學會了用python來幫我解決問題

當然,也不是鼓勵大家自己不做作業,只是學會利用工具使得自己更加效(tou)率(lan),最重要的是,每次做出題目答案后可以檢驗下自己是否能做對,再者說,能夠用編程實現問題求解,本身也是對知識的掌握。

市面上有不少軟件可以直接求解,但是靈活性要低于python,python提供了很多包可以用來數學計算,今天我為大家介紹的是scripy的linprog,我們利用linprog可以很好的求解線性規劃問題。

話不多說,讓我們一起進入正式學習——

我們以一個實際例題為例:

例1 求解下列線性規劃問題

Min Z = 2x1 + 3x2 + x3

s.t.? ? ?

-x1 - x2 + 2x3 <= 10

2x1 - 2x2 + x3 >= 2

x1 + 2x2 + x3 = 5

在這里我們用到scipy中的linprog進行求解,linprog官方的介紹鏈接如下:https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.linprog.html?

我們要使用的函數為:

scipy.optimize.linprog(c,A_ub=None,b_ub=None,A_eq=None,b_eq=None,bounds=None, method='simplex', callback=None, options=None)

注意要使用linprog,目標函數要變成求最小值,如果原題目要求求max(最大值),只需對目標函數取負,但要注意求解的最終值是取負后的目標函數的最小值,取負即為最大值

下面開始代碼編寫——

導入我們所需要的linprog

運行結果如下:

un為目標函數的最優值slack松弛變量status表示優化結果狀態x最優解

在該例題中,目標函數最小值約為-22.5,最優解為 x1=-5.75, x2=12.25, x3=-13.75。

好啦,本次python求解線性規劃的問題就介紹到這,如果大家感興趣的話,后期會繼續推出更為復雜的數學求解

代碼已打包,在后臺回復“線性規劃”即可獲取。

Archer

UBook簽約作者

勵志做一個不掉頭發的程序員

對改變世界尤其熱衷

喜歡就星標我們,不要走丟了哦~

總結

以上是生活随笔為你收集整理的python 线性规划问题_一学高数,线代就头疼?让python帮你解决(内含教程)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。