數學建模-非線性規劃(NLP)

1-理論知識

介紹

應用

2-基于matlab實現非線性規劃

?1)例1

% 清除工作臺和命令行
clear;clc;
x0=[0 0 0];
A = [-1 1 -1];
b = 0;
[x,value] = fmincon(@f1,x0,A,b,[],[],[],[],@nonlfun1)
function f = f1(x)f = x(1)^2+x(2)^2+x(3)^2+8;
end
function [c,ceq] = nonlfun1(x)c = [x(1)+x(2)^2+x(3)^2-20];ceq = [-x(1)-x(2)^2+2];
end

2)例2

% 清除工作臺和命令行
clear;clc;
x0=[0 0 0];
A = [-1 1 -1];
b = 0;
Aeq = [1 -1 0];
beq = 10;
lb = [10;-Inf;-Inf];
ub = [20;+Inf;+Inf];
[x,value] = fmincon(@f1,x0,A,b,Aeq,beq,lb,ub,@nonlfun1);
disp(['x = ' num2str(x)]);
disp(['value = ' num2str(-value)]);
function f = f1(x)f = -x(1)*x(2)*x(3);
end
function [c,ceq] = nonlfun1(x)c = [x(1)+x(2)^2+x(3)^2-20;x(1)*x(2)-x(3)-1];ceq = [-x(1)-x(2)^2+2];
end

3)怪獸入侵星球問題

%% 清除工作臺和命令行
clear;clc;
% 前6個變量為燕雙鷹,后6個變量為手撕俠
x0=zeros(1,12);%% 線性不等式約束
% 前6個變量為燕雙鷹在6個星球消滅的怪獸量
% 后6個變量為手撕俠在6個星球消滅的怪獸量
A = [ones(1,6),zeros(1,6);zeros(1,6),ones(1,6)];
b = [30;20];
%% 線性等式約束
% 把兩個六維單位矩陣作為元素拼在同一行
Aeq = [eye(6),eye(6)];
% 兩個人在同一星球消滅的怪獸量之和不超過該星球的怪獸量
beq = [5;9;4;8;14;11];%% 上下界約束
lb = zeros(1,12);
ub = repmat(+Inf,1,12);%% 求解
[x,value] = fmincon(@f1,x0,A,b,Aeq,beq,lb,ub,[]);
value = -value;
disp(['x = ' num2str(x)]);
disp(['value = ' num2str(-value)]);%% 局部函數
function f = f1(x)% 給的是一個行向量% 因計算習慣,把x變成列向量x = x';% 燕雙鷹和手撕俠的坐標x1 = 4;y1 = 1;x2 = 8;y2 = 9;% 燕雙鷹和手撕俠每消耗一個怪獸需要消耗的饃數p1 = 3;p2 = 1;% 燕雙鷹和手撕俠每百公里消耗的饃數k1 = 1;k2 = 3;% 各星球橫坐標a = [1.37 9.45 4.43 6.66 3.14 15.92];% 各星球縱坐標b = [10.21 9.45 8.88 5 16.44 18];% 表達式系數矩陣X = x ./ (1+x);% 目標函數,分三行寫以提高可讀性% % 兩人打怪獸消耗的饃數之和f = [repmat(p1,1,6),repmat(p2,1,6)]*x;% i=1,x1j/(1 + x1j) = X([1:6],:)f = f + sqrt(sum(([a;b] - repmat([x1;y1],1,6)) .^ 2)) .* repmat(k1,1,6) * X([1:6],:);% i=2,x2j/(1 + x2j) = X([7:12],:)f = f + sqrt(sum(([a;b] - repmat([x2;y2],1,6)) .^ 2)) .* repmat(k2,1,6) * X([7:12],:);
end

4)飛機碰撞問題

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/921439.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/921439.shtml
英文地址,請注明出處:http://en.pswp.cn/news/921439.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

人工智能學習:什么是seq2seq模型

一、seq2seq模型 Seq2Seq(Sequence-to-Sequence)模型是一種用于處理序列轉換問題的深度學習模型,廣泛應用于機器翻譯、文本摘要、對話系統、語音識別等領域。Seq2Seq模型的核心思想是通過一個編碼器(Encoder)將輸入序列編碼為一個固定長度的上下文向量(Context Vector),…

生態 | 華院計算與深至科技達成戰略合作,攜手推動AI+醫學影像算法升級迭代

8月25日,華院計算技術(上海)股份有限公司(以下簡稱“華院計算”)與上海深至信息科技有限公司(以下簡稱“深至科技”)正式簽署戰略合作協議。雙方將秉持“優勢互補、資源共享、戰略協同、共同發展…

詳解MySQL環境變量配置及其在備份中的應用

正確配置MySQL環境變量是保障數據庫穩定運行和高效管理的基礎。這些變量涵蓋了從內存分配、連接設置到日志行為等方方面面,直接決定了數據庫的性能表現和功能特性。對于數據庫管理員而言,熟練掌握環境變量的配置,是進行性能調優和故障排查的必…

scikit-learn零基礎配置(含python、anaconda)

一、Anaconda環境搭建 1、關于Anaconda Anaconda 是一個非常 popular 的 Python 發行版,它不僅包含了 Python 語言本身,還預裝了眾多常用的科學計算庫,如 NumPy、Pandas、Matplotlib 等,能夠極大地方便用戶的開發和數據分析工作。…

RAG提示詞(日本語版)

RAG提示詞(日本語版) System Message # 知能型質問応答アシスタント(RAGシステムプロンプト)## 役割定義 あなたは「知能型質問応答アシスタント」として、提供されたコンテキスト情報に基づいてユーザーの質問に回答する専門的な…

qData 數據中臺【開源版】發布 1.0.5 版本,全面提升規則治理、非結構化數據處理與部署體驗

2025年9月3日 —— 企業級開源數據中臺 qData 開源版 正式發布 1.0.5 版本。本次更新聚焦 規則治理一體化、非結構化數據支持、以及開源版的體驗與部署優化,進一步提升規則復用能力、數據接入廣度與運維效率,幫助企業和開發者更輕松地構建高質量數據治理…

RecSys:用戶行為序列建模以及DIN、SIM模型

引言 在推薦系統中,用戶歷史行為序列是極其重要的信息源。用戶最近的點擊、點贊、收藏、轉發等行為能夠有效反映其即時興趣,無論是在召回、粗排還是精排階段,合理利用這些行為序列都能顯著提升推薦效果。本文將系統介紹用戶行為序列建模的幾…

QGIS二次開發01:環境配置-OSGeo4W鏡像

寫在前面: 本筆記根據多方資料整理而成,旨在為QGIS二次開發提供學習參考。內容僅供交流學習,歡迎共同探討。 一、關于QGIS QGIS 是一個功能強大的桌面GIS軟件本身,為用戶提供了圖形化界面(GUI)來進行地圖制…

對接旅游行業安全需求:旅游安全急救實訓室的功能構建與育人目標

隨著我國旅游行業的快速發展,游客安全需求日益凸顯,安全應急處置能力已成為旅游服務人才的核心競爭力。旅游安全急救實訓室作為旅游服務與管理專業中的重要教學場所,其功能構建與育人目標影響人才培養質量與行業安全水平。點擊獲取方案 一、行…

Typora處理markdown文件【給.md文檔加水印】

①文件→偏好設置→外觀→打開主題文件夾②在打開的文件夾中放入水印圖像③右鍵點擊github.css文件后,點擊編輯,進入編輯頁面④將代碼塊中內容粘貼到文件最后 更多效果請自行探索 #write::before {content: "CSDN果子當夜宵:bigxie.blog…

基于單片機的六足機器人控制系統設計

基于單片機的六足機器人控制系統設計摘 要本設計主要是基于單片機的六足機器人控制系統設計,綜合分析六足機器人的結構、步態和控制算法,結合云端服務器、WIFI 技術、藍牙技術、語音識別技術和手勢識別技術進行多種控制模式的設計,并提出不同…

RK3568 Trust

文章目錄1、環境介紹2、前言3、ARM TrustZone3.1、什么是ARM TrustZone3.2、cpu特權等級3.3、ARM Trusted Firmware4、Rockchip 平臺的 Trust4.1、實現機制4.2、啟動流程4.3、生命周期4.4、Trust 編譯打包流程分析5、總結1、環境介紹 硬件:飛凌ok3568-c開發板 軟件…

C語言數據結構——詳細講解《二叉樹與堆的基本概念》

C語言數據結構——詳細講解《二叉樹與堆的基本概念》前言一、樹的基礎概念1.1 為什么需要樹?1.2 樹的定義與結構1.3 樹的核心術語1.3 樹的核心術語1.4 樹的表示方法(孩子兄弟表示法)結構定義為什么用孩子兄弟表示法?1.5 樹的實際應…

STAR-CCM+|雷諾數回顧

【1】引言 前序已經學習了K-epsilon湍流模型溯源的基礎知識,今天再學習一些更為基礎的知識,回顧一下雷諾數ReReRe。 【2】雷諾數定義 雷諾數公式為: ReρvDμRe\frac{\rho vD}{\mu}ReμρvD? 式中, ρ\rhoρ——流體密度&…

Java中的死鎖

鎖的合理使用能夠保證共享數據的安全性,但是 使用不當也會可能引起死鎖。1. 死鎖概念 死鎖是指兩個或兩個以上的線程在執行過程中,因爭奪資源而造成的一種互相等待的現象,若無外力干涉那它們都將無法推進下去,如果系統資源充足,進程的資源請求…

基于STM32F103C8T6的智能家居健康環境監測系統

項目開發背景 隨著城市化進程加速和居民生活水平提升,人們對家居環境健康與安全的需求日益增強。現代住宅常因裝修材料、密閉空間及外部污染導致甲醛超標、PM2.5濃度升高、溫濕度失衡等問題,長期暴露此類環境中易引發呼吸道疾病、過敏反應等健康隱患。傳…

2025職場進階:B端產品經理必備的計算機專業技能精要

當前企業級服務市場競爭日益激烈,2025年的B端產品經理不僅需要深厚的行業認知,還必須具備扎實的計算機專業技能,才能設計出真正符合技術趨勢與業務需求的企業級產品。而其中,人工智能技術已經成為B端產品不可或缺的組成部分&#…

有效三角形的個數(數組單調性)

目錄 一:題目鏈接 二:題目思路 三:代碼實現 一:題目鏈接 題目的要求是找出當前數組能組成三角形三元組的個數。 二:題目思路 有一種暴力枚舉解法,利用三層 for 循環來一一枚舉三元組的情況,如…

Rust在醫療系統中的應用:安全、性能與合規性實踐(上)

Rust在醫療系統中的應用:安全、性能與合規性實踐 摘要 醫療系統對軟件安全與性能存在嚴苛雙重需求,既需抵御內存漏洞、數據加密風險等安全威脅(如歷史醫療設備因軟件問題召回案例所示),又需滿足電子健康記錄(EHR)系統、醫學影像處理等高并發數據場景的性能要求,同時需…

讀寫鎖 shared_mutex 共享互斥量介紹

文章目錄讀數據對數據沒有影響,為什么還需要shared_mutex1. 保證讀取數據的“一致性”和“時效性”2. 協調“讀”與“寫”的競爭關系總結好的,我們來詳細介紹 C17 中的 std::shared_mutex(共享互斥量,俗稱讀寫鎖)的使用…