首页 > 其他分享 >6.10

6.10

时间:2024-06-19 17:36:46浏览次数:20  
标签:quadprog 6.10 fval 3x1 x2 Ax beq

完成工程数学实验五MATLAB 最优化工具箱的使用

1. 算法步骤

设x1,x2,x3分别表示农作物A,B,C的种植面积

问题模型:

max z = 1500x1 + 1200x2 + 1800x3

s.t.  

x1 + x2 + x3 = 100

450x1 + 600x2 + 900x3 <=63000

35x1 + 25x2 + 30x3 <=3300

350x1 + 400x2 + 300x3 <=33000

x1, x2, x3 >= 0

 

 

2. 代码

>>f=[1500 1200 1800]';

>> f=-f;

>> a=[450 600 900;35 25 30;350 400 300];

>> b=[63000 3300 33000]';

>> acq=[1 1 1];

>> aeq=[1 1 1];

>> beq=[100];

>> lb=zeros(3,1);

>> [x,fval,exitflag,output,lamdba]=linprog(f,a,b,aeq,beq,lb)

 

3. 结果

x =

   60.0000

    0.0000

   40.0000

 

fval =

 

  -1.6200e+05

 

 exitflag =

 

     1

  

output =

 

         iterations: 5

          algorithm: 'interior-point-legacy'

       cgiterations: 0

            message: 'Optimization terminated.'

    constrviolation: 1.8917e-10

      firstorderopt: 1.6385e-08

 

lamdba =

 

    ineqlin: [3x1 double]

      eqlin: -1.1927e+05

      upper: [3x1 double]

      lower: [3x1 double]

最优种植方案为种植A作物60公顷,B作物0公顷,C作物40公顷,总利润16200元 

 

 

 

问题二:   

  1. 算法步骤:

该问题可以用二次规划来求解。首先,我们需要确定这个问题的数学模型。
设点( Xi , X , Xy )到超平面 Ax = b 的最短距离为 d .则该问题的目标是求最短距离 d ,即:

 min 

而约束条件为点(,,)在超平面 Ax = b 上,因此有:
 Ax = b 

同时, d 表示所求的距离,可以表示为:
 df =

将 of 表示成决策变量的形式,得到:
 d = xTx 
其中 X =[ X ],为,为 g ] T ,为决策变量。因此,我们可以列出如下的二次规划模型:

 min XX 
 s . t . Ax = b 
 xERs 

接下来,使用 MATLAB 的二次规划函数 quadprog 求解该模型:

  1. 代码:

% 构造二次规划模型

H = 2 * eye(3);

f = zeros(3,1);

Aeq = [1 1 0; 1 0 1];

beq = [1;0];

x0 = [0; 0; 0];

% 调用quadprog函数求解

[x,fval] = quadprog(H, f, [], [], Aeq, beq, [], [], x0);

 

 

 

  1. 结果:

x =

 

    0.3333

    0.3333

   -0.6667

 

fval =

 

    0.6667

 

 

标签:quadprog,6.10,fval,3x1,x2,Ax,beq
From: https://www.cnblogs.com/jais/p/18256756

相关文章

  • 上周热点回顾(6.10-6.16)
    热点随笔:· 「指间灵动,快码加编」:阿里云通义灵码,再次降临博客园 (博客园团队)· 老生常谈!程序员为什么要阅读源代码? (Yxh_blogs)· 千万级流量冲击下,如何保证极致性能 (Hello-Brand)· 面试官:你讲下接口防重放如何处理? (程序员博博)· C#开发的目录图标更改器-开源研......
  • 6.10
    接昨天的补充代码DetailView.vue<template>  <div>   <divv-html="text"></div>  </div> </template>  <script> exportdefault{  data(){   return{    text:''   };  ......
  • 6.10博客
    放松也放松完了快考试了进入状态了该学习内容:安卓<?xmlversion="1.0"encoding="utf-8"?><RelativeLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools" ......
  • 6.10
    今日学习心得《人月神话》是一部经典的软件工程著作,作者弗雷德里克·布鲁克斯在书的结尾对软件工程的未来发展方向进行了深刻的展望。他强调了持续改进软件开发实践、加强团队协作和沟通、以及持续学习和创新的重要性。这些观点对于当今的软件开发实践仍然具有重要意义。首先,持......
  • 6.10
    《构建之法》是一本深入探讨软件工程实践与项目管理精髓的书籍,它不仅仅局限于技术层面的讲解,而是从更广阔的视角出发,涵盖了团队协作、项目规划、质量控制、持续集成等多个方面,为读者提供了一套全面而实用的软件开发方法论。阅读此书后,我深受启发,以下是我几点深刻的体会。首先,书中......
  • 6.10学习进度
    今天为端午节,完成了数据库的实验二实验二SQL语言的使用一、实验目的:掌握使用SQL语言进行各种查询的操作和视图的操纵方法。二、实验要求:在现有的数据库上进行各种查询操作,对视图的创建、使用等操作。三、实验步骤:1、开始→程序→MicrosoftSQLServer→SQLServerMan......
  • 2024.6.10漏洞探针
    探针(扫描器)1、nmap漏洞库,根目录下scripts中调用2、Goby(红队版)直接输入ip扫描资产,漏洞库较少;3、Nessus本地安装:下载安装普通版;注册获取验证码;注册用户nessus,nessus123漏洞利用1、工具框架metasploit和searchsploit忍者系统可以一键使用msf;2、单点exp(漏洞库)cnvd、s......
  • 6.10
    packagecom.example.spring2.mapper;importcom.example.spring2.entity.User;importorg.apache.ibatis.annotations.Insert;importorg.apache.ibatis.annotations.Mapper;importorg.apache.ibatis.annotations.Param;importorg.apache.ibatis.annotations.Select;import......
  • 2024.6.10
    01背包问题详解01背包是一种动态规划问题。动态规划的核心就是状态转移方程,本文主要解释01背包状态转移方程的原理。问题描述01背包问题可描述为如下问题:有一个容量为V的背包,还有n个物体。现在忽略物体实际几何形状,我们认为只要背包的剩余容量大于等于物体体积,那就可以装进背包里......
  • 6.10
    《构建之法》是一本深入探讨软件工程实践与项目管理精髓的书籍,它不仅仅局限于技术层面的讲解,而是从更广阔的视角出发,涵盖了团队协作、项目规划、质量控制、持续集成等多个方面,为读者提供了一套全面而实用的软件开发方法论。阅读此书后,我深受启发,以下是我几点深刻的体会。首先,书中......