《零基础数学建模》——最大最小化模型

article/2025/8/26 18:00:15

目录

  • ​ 前言
  • 一、最大最小化模型概述
  • 二、模型标准型
  • 三、经典例题

​ 前言

本文大部分是对于数学建模清风老师的课程学习总结归纳而来,我的理解可能有错误,大家发现错误可以在评论区批评指正,课程地址:《数学建模清风》
前置文章请了解:

  • 《线性规划》
  • 《整数规划》
  • 《非线性规划》

一、最大最小化模型概述

  对策论中,我们常遇到这样的问题:在不利的条件下,寻求最有利的策略。
  在实际问题中也有许多求最大值的最小化问题,例如急救中心选址问题,就是要规划其到所有地点最大距离的最小值,在投资规划中要确定最大风险的最低限度等。
  为此,对每个 x ∈ R n x\in R^n xRn,我们先求每个目标值 f i ( x ) f_i(x) fi(x)的最大值,然后再求这些最大值中的最小值。

二、模型标准型

最大最小化问题的一般数学模型:
m i n x { m a x [ f 1 ( x ) , f 2 ( x ) , ⋯ , f m ( x ) ] } s . t . { A x ≤ b A e q ⋅ x = b e q C ( x ) ≤ 0 C e q ( x ) = 0 V L B ≤ X ≤ V U B min_x\{max[f_1(x),f_2(x),\cdots,f_m(x)]\} \\ s.t.\begin{cases} Ax\leq b\\ Aeq·x=beq\\ C(x)\leq0\\ Ceq(x)=0\\ VLB\leq X \leq VUB \end{cases} minx{max[f1(x),f2(x),,fm(x)]}s.t. AxbAeqx=beqC(x)0Ceq(x)=0VLBXVUB
m a t l a b matlab matlab标准型:
[ x , f v a l ] = f m i n i m a x ( @ F u n , x 0 , A , b , A e q , b e q , l b , u b , @ n o n l f u n , o p t i o n ) [x,fval]=fminimax(@Fun,x_0,A,b,Aeq,beq,lb,ub,@nonlfun,option) [x,fval]=fminimax(@Fun,x0,A,b,Aeq,beq,lb,ub,@nonlfun,option)
PS:目标函数用一个函数向量表示。

三、经典例题

  选址问题:设某城市有某种物品的10个需求点,第 i i i个需求点 p i p_i pi的坐标为 ( a i , b i ) (a_i,b_i) (ai,bi)(见表4-2),道路网与坐标轴平行,彼此正交。现打算建一个该物品的供应中心,且由于收到城市某些条件的限制,该供应中心只能设在 x x x界于 [ 3 , 8 ] [3,8] [3,8] y y y界于 [ 4 , 10 ] [4,10] [4,10]的范围之内。
  问该中心应建在何处为好?
在这里插入图片描述
解题思路:

解题代码:

%% 最大最小化模型  :   min{max[f1,f2,···,fm]}
x0 = [6, 6];      % 给定初始值
lb = [3, 4];  % 决策变量的下界
ub = [8, 10];  % 决策变量的上界
[x,feval] = fminimax(@Fun,x0,[],[],[],[],lb,ub)
max(feval)
% x =
%     8.0000    8.5000
% feval =
%    13.5000    5.5000    5.5000   12.5000    8.5000    8.5000    5.5000   13.5000    9.5000    0.5000
% 结论:
% 在坐标为(8,8.5)处建立供应中心可以使该点到各需求点的最大距离最小,最小的最大距离为13.5单位。
function f = Fun(x)a=[1 4 3 5 9 12 6 20 17 8];b=[2 10 8 18 1 4 5 10 8 9];%  函数向量f=zeros(10,1);for i = 1:10f(i) = abs(x(1)-a(i))+abs(x(2)-b(i));  end
% f(1) = abs(x(1)-a(1))+abs(x(2)-b(1));  
% f(2) = abs(x(1)-a(2))+abs(x(2)-b(2));
% f(3) = abs(x(1)-a(3))+abs(x(2)-b(3));
% f(4) = abs(x(1)-a(4))+abs(x(2)-b(4));
% f(5) = abs(x(1)-a(5))+abs(x(2)-b(5));
% f(6) = abs(x(1)-a(6))+abs(x(2)-b(6));
% f(7) = abs(x(1)-a(7))+abs(x(2)-b(7));
% f(8) = abs(x(1)-a(8))+abs(x(2)-b(8));
% f(9) = abs(x(1)-a(9))+abs(x(2)-b(9));
% f(10) = abs(x(1)-a(10))+abs(x(2)-b(10));
end 


http://chatgpt.dhexx.cn/article/UIyW4ctY.shtml

相关文章

数学建模 matlab 数据建模基础

一、数据的获取 1.从Excel中读取数据 (1)xlsread函数 :从EXCEL读入数据到MATLAB中。 例如: a xlsread(‘D:\adc.xlsx’,1,‘A1:D2’) 其中,‘D:\abc.xlsx’表示读入的EXCEL数据所在的路径以及EXCEL的文件名称&…

【数学建模】数学建模(一)——数学模型概述

一. 模型 1. 原型和模型 原型指人们在现实世界里关心、研究或从事生产、管理的实际对象。模型则指为了某个特定目的将原型的某一部分信息简缩、提炼而构造的原型替代物。 按照模型替代原型的方式,模型可以分为物质模型(形象模型)和理想模型&a…

数学建模——MATLAB基础知识

前言:MATLAB和我们平时学的C语言相类似,大体也是由于三部分组成的。任何的复杂的程序由顺序结构,选择结构,循环结构组成的。 一、顺序结构 1.数据的输入: input 用法:Ainput(字符串)-->>影响程序流…

数学建模竞赛基础知识

国际大学生数学建模 世界大学生数学建模 美国大学生数学建模竞赛,一个比赛多个称呼而已,美赛是一项面向高中生、大学本科层次的一个国际性比赛。 美赛可分为两种: The Mathematical Contest in Modeling (MCM): 俗称数学建模竞赛&#xf…

数学建模——基础

目录 第1章 MATLAB基础知识 1,矩阵的表示 1,数值矩阵的生成 2,符号矩阵的生成 3,特殊矩阵生成 4,一般矩阵运算 5,基本图形绘制 6,简单图像处理 7,建立函数文件/.M文件 8&a…

数据库除法理解

理解 给定关系R和关系S,求RS。 关系R和关系S拥有共同的属性A2、A3 , 首先确定得到的属性为A1。(RS得到的属性是关系R包含而关系S不包含的属性,即A1) 其次确定A1中符合条件的属性值为{a,d}。(关系R中A1的…

数据库课程设计——MOOC学习平台

文章目录 1. 项目介绍:2.代码部分 1. 项目介绍: 采用JDBC接口连接数据库,简单实现Mooc学习平台相关功能。 2.代码部分 1.方法类 package com.mooc; import untlis.DButlis; import java.sql.PreparedStatement; import java.sql.ResultS…

oracle数据库怎么创建数据库 oracle数据库工作流程

oracle数据库怎么创建数据库 数据库用户的创建、权限的分配 数据库安装完成后,有两个系统级的用户: system 默认密码为:manager sys 默认密码为:change_on_install 在安装的数据库目录中找到 \oracle\product\9.2\bin 中的sq…

数据库复习--并发控制

1、并发控制:为了保证事务的隔离性和一致性,数据库管理系统需要对并发操作进行正确调度 并发控制的主要技术有:封锁、时间戳、乐观控制法、多版本并发控制等 并发操作带来的数据不一致性: 丢失修改:两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了…

gbase 连接数据库

1.gbase客户端 gbase data studio 2.gbase数据源 #数据库驱动 spring.datasource.driver-class-namecom.informix.jdbc.IfxDriver #数据源地址 spring.datasource.urljdbc:informix-sqli://10.2.35.142:9088/mztj:INFORMIXSERVERgbaseserver;NEWCODESETUTF8,zh_cn.UTF8,573…

数据库使用率对比【CSDN指数】

所有数据来自【CSDN指数】 mysql、sqlserver、redis、oracle数据库使用率对比 从以下数据可得,最抢手的数据库依然是【mysql】,但是每年的【11】月份【oracle】的使用率会突然增高,说明很多国有企业年底查数据的时候都会对数据做一次大清洗。…

ClickHouse 数据库建库

1 创建数据库 create database test[ ENGINE Atomic] 库引擎 1 Atomic 2 其他库引擎 MySQL 注意大小写 实验性阶段,使用mysql binlog 日志复制

数据库原理

绪论 数据:描述事物的符号记录称为数据,数据的含义称为语义数据库(DB):数据库是长期存储在计算机内,有组织的,可共享的大量数据的集合数据库管理系统(DBMS):…

记录一下数据库大作业

查看服务器 select servername python语句增删减改数据但数据库未保存 connect.commit() 这句话一定要加上,是在我发现修改数据后发现数据库并没有保存才知道的 设置登录名安全性 新建登录名后设置各个表的插入、查询等权限,具体是在表的属性然后权…

数据库的介绍

1. 数据库的介绍 数据库(Database DB)是按照数据结构来组织、存储和管理数据的仓库(存储数据的仓库),它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据&#xff0c…

【数据库】数据库基本概念和类型

一、数据库基本概念 1、数据 所谓数据(Data)是指对客观事物进行描述并可以鉴别的符号,这些符号是可识别的、抽象的。它不仅仅指狭义上的数字,而是有多种表现形式:字母、文字、文本、图形、音频、视频等。现在…

Linux下ll命令

ll命令其实就是ls -l,当然如果想显示隐藏信息就是 ls -al。 我个人是特别喜欢ll代替ls -al命令,并且还要有颜色的那种。 今天卸载软件重新安装环境变量怎么都不对了,一生气把环境变量都清空了。命令:unset PATH 然后就手动添加…

【Linux】ll命令报错-bash: ll: command not found

报错信息 : -bash: ll: command not found root用户没有显示 普通用户下,即目录的拥有者,可以使用ll命令 报错原因: root用户在当前目录没权限,或者, ll 并不是Linux 下一个基本的命令,它实际上…

语法分析:LL(1)分析

本篇介绍的LL(1)分析,这是一种自上而下分析的方法,第一个 L 表示从左向右扫描, 第二个 L 表示分析过程是最左推导,(1)表示每次只向前看一个符号进行分析 关于语法描述的概念 本文中,若无特别说明,小写字母[…