matlab中多目標規劃怎麼求解

來源:酷知科普網 2.49W

有時候我們在使用matlab的時候,想進行多目標規劃求解,怎麼求解呢,下面來分享一下方法

matlab優化求解常用函式

(01)第一步我們首先需要知道matlab優化工具箱中常用的幾種函式,fmincon函式,fminimax函式,fgoalattain函式,linprog函式四種,它們的詳細介紹如下圖所示:

matlab中多目標規劃怎麼求解

(02)第二步求解多目標規劃函式,一般有理想點法,最大最小法,主要目標法,線性加權和法四種演算法,下面通過例項來介紹一下幾種演算法求解,如下圖所示:

matlab中多目標規劃怎麼求解 第2張

理想點法求解多目標規劃

(01)第一步在我們的電腦上開啟matlab,通過linprog函式分別求出f1(x)的最大值和f2(x)的最大值,兩個最優解就是多目標規劃的最優解,這是一種理想狀態,在命令列視窗中輸入如下圖所示,可以看出f1(x)的最大值為12

matlab中多目標規劃怎麼求解 第3張

(02)第二步在命令列視窗中輸入如下圖所示程式碼,求解出f2(x)的最大值為24,整個理想點法求出的理想點是(12,24)

matlab中多目標規劃怎麼求解 第4張

目標規劃法求解多目標規劃

(01)第一步通過目標規劃法和fgoalattain函式來求解上面方程的最大值,在matlab中先建立一個myfun3()函式,輸入如下圖所示:

matlab中多目標規劃怎麼求解 第5張

(02)第二步在命令列視窗中輸入如下圖所示程式碼,按回車鍵可以看到求出的最優點是(12,18)

matlab中多目標規劃怎麼求解 第6張

最大最小法求解多目標規劃

(01)第一步通過最大最小法和fminimax函式來求解上面方程的最大值,可以看到,解出的最優點也是(12,18),如下圖所示:

matlab中多目標規劃怎麼求解 第7張
熱門標籤