網站首頁 健康小知識 母嬰教育 起名 運動知識 職場理財 情感生活 綠色生活 遊戲數碼 美容 特色美食 愛好

matlab中多目標規劃怎麼求解

欄目: 互聯網 / 發佈於: / 人氣:2.46W

有時候我們在使用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張