数学建模算法

算法部分

  • 1. 评价类模型
  • 2. TOPSIS
  • 3. 线性规划
  • 4. 聚类分析
  • 5. 预测模型
  • 6. 拉伊达准则(对异常值进行剔除)
  • 7. 数据拟合
  • 8. 图论
  • 代码练习
    • 1. 模拟圆周率
    • 2. 斐波那契数列
    • 3. 四只鸭子落在一个圆中概率
    • 4. 方程2: y" = uy' + y,初值y(0) = 1,y(0) =0

算法讲解
matlab代码大全

1. 评价类模型

算数平均法
几何法
最大特征值法
一致性比较

评价类模型内容1
评价类模型内容2

2. TOPSIS

构造计算评分的公式:公式

topsis评价模型:将原始数据矩阵统一指标类型(一般正向化处理) 得到正向化的矩阵
代码

3. 线性规划

  1. 线性规划(linprog)模型:高中知识所学

  2. 整数线性规划(intlinprog)模型:变量有部分限制为整数的线性规划

  3. 匈牙利算法:求解任务分配问题的组合优化算法(一对一的问题)
    二分图最大匹配 匈牙利算法:用于寻找最大匹配,通过不断寻找怎光路径,来寻找最大匹配问题
    讲解传送
    二分图分配,匈牙利

匈牙利算法matlab实现    python实现
在这里插入图片描述

  1. 非线性规划(fmincon)模型:目标函数或者约束条件中包含非线性函数
    非线性规划例题传送阵
  2. 二次规划(quadprog)模型:目标函数自变量为x的二次函数约束条件又全是线性的
  3. 多目标规划(fgoalattain)模型:研究多于一个的目标函数在给定区域上的最优化,给予权重来评判目标重要性
    matlab代码传送阵
  4. 绘制柱形竞赛图:https://blog.csdn.net/zhwzhaowei/article/details/110915135

4. 聚类分析

聚类分析(pdist)是根据在数据中发现的描述对象及其关系的信息,将数据对象分组。目的是,组内的对象相互之间是相似的(相关的),而不同组中的对象是不同的(不相关的)。
组内相似性越大,组间差距越大,说明聚类效果越好
K-Means聚类算法代码通道

X=[0 0;1 0;0 1;1 1;2 1;1 2;2 2;3 2;6 6;7 6;8 6;6 7;7 7;8 7;9 7;7 8;8 8;9 8;8 9;9 9];		% X:N*P的数据矩阵
[idx,C,sumd,d] = kmeans(X,2);	%  idx:N*1的向量,存储的是每个点的聚类标号
figure;		% K = 2;表示将X划分为几类,为整数。 C:K*P的矩阵,存储的是K个聚类质心位置
plot(X(:,1),X(:,2),'.'); 	% sumd:1*K的和向量,存储的是类间所有点与该类质心点距离之和。 d:N*K的矩阵,存储的是每个点与所有质心的距离
title 'Randomly Generated Data';
figure;
plot(X(idx==1,1),X(idx==1,2),'r.','MarkerSize',12)
hold on
plot(X(idx==2,1),X(idx==2,2),'b.','MarkerSize',12)
plot(C(:,1),C(:,2),'kx',...'MarkerSize',15,'LineWidth',3)
legend('Cluster 1','Cluster 2','Centroids',...'Location','NW')
title 'Cluster Assignments and Centroids'
hold off

figure1
figure2

5. 预测模型

  • 灰色预测模型:对原始数据进行生成处理来寻找系统变动的规律,并生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。
    最小二乘法代码传送         矩阵基本法使用与代码讲解
  • 时间序列预测模型:按照时间顺序,一定的时间间隔取得的一系列观测值,进而预测以后的数据
    时间序列分析传送阵  时间序列例题及代码分析
  • 模拟退火优化算法1
    模拟退火优化算法2

6. 拉伊达准则(对异常值进行剔除)

      假设一组检测数据只含有随机误差,对其进行计算处理得到标准偏差,按一定概率确定一个区间,认为凡超过这个区间的误差,就不属于随机误差而是粗大误差,含有该误差的数据应予以剔除,基于3σ原则
代码实现传送阵    正太检验

7. 数据拟合

  • 插值法介绍传送阵
    插值法代码传送阵
  • 数据拟合与插值介绍及部分matlab
    matlab做曲线拟合的教程
    拟合在线传送阵

8. 图论

握手定理

  • 在任何有向图图中,所有顶点的度数之和等于边数的2倍,所有顶点的入度之和等于所有顶点出度之和,等于边数
  • 无向简单图,同样所有顶点的度数之和等于边数的2倍

有限简单图

  • 顶点个数有限

  • 任意一条边有且只有两个不同的点与它相互关联

  • 边之间不能够重复
    矩阵次方关系矩阵的表示PPt

  • Dijkstra讲解:求最短路径问题
    Dijkstra算法matlab传送阵1
    Dijkstra算法matlab传送阵2

  • kruskal:连通网中查找最小生成树
    讲解视频
    kruskal matlab传送阵

  • 神经网络:实现分类与预测模型
    Bp神经预测代码传送
    Bp神经分类代码传送
    匹配讲解:在一个图中,两个不相邻的边,称之为匹配;其边上的两个端点称之为配对的;若匹配集M的某条边与顶点v是关联的,则称M饱和顶点v

代码练习

1. 模拟圆周率

题目图

allPoints = input("请输入总点数:")
count = 0
for i = 1:allPointsif rand^2 + rand^2 <=1count = count + 1end
end
res = count / allPoints * 4
disp(res)

2. 斐波那契数列

N = input("请输入项数:")
res = [1,1]
for i = 3:Nelement = res(length(res)) + res(length(res) - 1)res = [res,element]
disp(res)

3. 四只鸭子落在一个圆中概率

N = 4
count = 0
total =1000 %试验次数
for i = 1:totalp1 = 2*[rand,rand]-1;p2 = 2*[rand,rand]-1;p3 = 2*[rand,rand]-1;p4 = 2*[rand,rand]-1;p = [p1,p2,p3,p4]; %生成4 2 矩阵for j = 1:Nk = p(i,2) / p(i,1);b = [];if (i == j)continue;elseb = [b, p(i,2) - p(i,1)*k];endend
end
if (b(1)>=0 & b(2)>=0 & b(3)>=0 | b(1)<=0 & b(2)<=0 & b(3)<=0)count = count + 1;
res = count/total;
disp(res);
# 拓展N只鸭子
% 生成N个随机点
function p Npoints(N)p = [];for i = 1:Np = [p;2*[rand,rand]-1]  % 每一列end
end% 判断截距的一致性
function isEqual ifisEqual(b)isEqual = 1;if b(1)>=0for i = 1:length(b)if b(i)<0isEqual = 0;endendelsefor i = 1:length(b)if b(i)>0isEqual = 0;endendend
end

4. 方程2: y" = uy’ + y,初值y(0) = 1,y(0) =0

syms y(x) mu
eqn = diff(y,2) == mu*diff(y)+y;
cond1 = y(0) == 1;
Dy(0) == 0;
dsolve(eqn)  % dsolve(方程,初值) 常微分方程求解

B = repmat(A,m, n):将矩阵A复制m×n块,即把A作为B的元素,Btm×n个A平铺而成。
prod():与sunm类似,求积
数据导入函数:weitetable()
数据导出函数:readtable()
Y = round(X,N,type) 指定四舍五入的类型
type filename 在 MATLAB 命令行窗口中显示指定文件的内容
imread(x.jpg):图片读入,以(0:255)读入,格式为 unit8
imshow(x)矩阵图片显示
imresize(x,0.5)图片大小更改
imwrite(x.jpg):图片写入,以图片存入路径
imbinarize(a):将图片矩阵二值化
logical(A):将矩阵A转换为逻辑值(即非零即为1)
bwlabel(A,4/8):联通分量化
solve(方程1,方程2…,变量1,变量2…):求解函数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/213928.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python】修改pip 默认安装位置

使用pip安装的时候&#xff0c;一般是默认安装在c盘里的。这样做很容易会让c盘的文件堆满。那么如何让pip安装的包放入d盘呢&#xff1f; 查看pip默认安装的位置 在cmd里输入python -m site&#xff0c;这里可以看到&#xff0c;安装包会默认下载到c盘中 从这里可以看到&am…

【Spring教程15】Spring框架实战:详解解读AOP的工作流程和AOP的核心概念

目录 1 AOP工作流程2 AOP核心概念 欢迎大家回到《 Java教程之Spring30天快速入门》&#xff0c;本教程所有示例均基于Maven实现&#xff0c;如果您对Maven还很陌生&#xff0c;请移步本人的博文《 如何在windows11下安装Maven并配置以及 IDEA配置Maven环境》&#xff0c;本文…

如何使用cpolar+Inis在Ubuntu系统快速搭建本地博客网站公网可访问

文章目录 前言1. Inis博客网站搭建1.1. Inis博客网站下载和安装1.2 Inis博客网站测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;2.3.Cpolar稳定隧道&#xff08;本地设置&#xff09; 3. 公网访问测试总…

AspNetCore 中使用 Knife4jUI 更加友好的Swagger界面

&#x1f680;介绍 aspnetcore.knife4j是一个基于.NET Core平台的Swagger UI库&#xff0c;它提供了API文档的生成和管理功能。这个库的前身是swagger-bootstrap-ui&#xff0c;在Java项目中广泛使用&#xff0c;由于其优秀的界面和易用性被许多开发者所推崇。现在&#xff0c…

LV.13 D2 开发板启动流程 学习笔记

一、开发板启动过程 EMMC&#xff1a;相当于电脑的外存&#xff0c;断电不丢失 开发板上电后首先运行SOC内部iROM中固化的代码(BL0)&#xff0c;这段代码先对基本的软硬件环境(时钟等...)进行初始化&#xff0c;然后再检测拨码开关位置获取启动方式&#xff0c;然后再将对应存储…

基于SSM+MySQL学生宿舍管理系统的设计与实现(源码+数据库+文档)

摘 要 近年来&#xff0c;随着计算机技术的不断发展和运用&#xff0c;许多实际问题都得到了较好地解决。随着现代社会对企业经营的需求日益增长&#xff0c;企业的无纸办公也逐渐得到了推广。本学生宿舍管理系统的设计开发&#xff0c;目标就是解决宿舍管理复杂的人为管理&a…

[23] Self-conditioned Image Generation via Generating Representations

[paper | code] 用生成对象本身作为控制信号&#xff0c;实现无条件图像生成。训练阶段。Step1&#xff1a;用预训练模型&#xff08;例如&#xff1a;Moco v3&#xff09;提取生成对象的特征编码&#xff1b;Step2&#xff1a;基于特征编码&#xff0c;训练一个扩散模型RDM&a…

pycharm手动安装包

1.下载对应的包 TTS PyPI 2.手动解压&#xff0c;找到文件放到pycharm对应项目的lib文件夹中 以TTS包为例&#xff0c;找到下载并解压的包中的2个文件&#xff0c;一个名称一个info结尾 3.放到项目的lib文件夹中 eg&#xff1a;路径&#xff1b;C:\doc\myProject\speaker\venv…

Android View的 getHeight 和 getMeasuredHeight 的区别

前言 先简单复习一下Android View 的 绘制顺序&#xff1a; 1、onMeasure&#xff08;测量&#xff09;&#xff0c;先根据构造器传进来的LayoutParams&#xff08;布局参数&#xff09;&#xff0c;测量view宽高。 2、onLayout&#xff08;布局&#xff09;&#xff0c;再根…

SQL进阶 | 自连接

概述 SQL的自连接是指在一个SQL表中&#xff0c;使用自身表格中的实例进行联接并查询的操作。自连接通常使用别名来标识一个表格&#xff0c;在自连接中&#xff0c;表格被视为两个不同的表格&#xff0c;并分别用不同的别名来标识。然后&#xff0c;在WHERE子句中使用这些别名…

二十、FreeRTOS之Tickless低功耗模式

本节需要掌握以下内容&#xff1a; 1&#xff0c;低功耗模式简介&#xff08;了解&#xff09; 2&#xff0c; Tickless模式详解&#xff08;熟悉&#xff09; 3&#xff0c; Tickless模式相关配置项&#xff08;掌握&#xff09; 4&#xff0c;Tickless低功耗模式实验&…

自定义异步任务管理器和线程

import com.lancoo.common.utils.Threads; import com.lancoo.common.utils.spring.SpringUtils;import java.util.TimerTask; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit;/*** 异步任务管理器* * author lancoo*/ public c…

操作系统大会 openEuler Summit 2023即将召开,亮点不容错过

【12月11日&#xff0c;北京】数字化、智能化浪潮正奔涌而来。操作系统作为数字基础设施的底座&#xff0c;已经成为推动产业数字化、智能化发展的核心力量&#xff0c;为数智未来提供无限可能。12月15-16日&#xff0c;以“崛起数字时代 引领数智未来”为主题的操作系统大会 &…

〖Python网络爬虫实战㊷〗- 极验滑块介绍(四)

订阅&#xff1a;新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列&#xff08;零基础小白搬砖逆袭) 说明&#xff1a;本专栏持续更新中&#xff0c;订阅本专栏前必读关于专栏〖Python网络爬虫实战〗转为付费专栏的订阅说明作者&#xff1…

【ArcGIS Pro微课1000例】0049:根据坐标快速定位(创建点位)的常见方法

文章目录 一、转到XY1. 闪烁位置2. 平移3. 标记位置二、定位1. 坐标定位2. 添加到图形3. 添加至要素类三、添加XY坐标四、创建点要素一、转到XY 举例:经纬度坐标:113.2583286东, 23.1492340北 。 1. 闪烁位置 输入坐标,点击闪烁位置工具,即可在对应的位置出现一个绿色闪烁…

shiro入门demo

搭建springboot项目&#xff0c;引入以下依赖&#xff1a; <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--单元测试--><depe…

.9.png的创建

1、创建.9.png 选中图片&#xff0c;右击&#xff0c;选择Create 9-Patch file&#xff0c;点击确定会生成一个xxx.9.png的图片 2、绘制拉伸区域 在图片的最外边界绘制拉伸区域&#xff0c;按住鼠标左键不放&#xff0c;绘制完成后保存就可以使用了。绘制结果示意如下&…

phpstudy小皮(PHP集成环境)下载及使用

下载 https://www.xp.cn/download.html直接官网下载即可&#xff0c;下载完解压是个.exe程序&#xff0c;直接点击安装就可以&#xff0c;它会自动在D盘目录为D:\phpstudy_pro 使用 phpMyAdmin是集成的数据库可视化&#xff0c;这里需要下载一下&#xff0c;在软件管理-》网站程…

OPPO怎么录屏?教程来了,让你成为录屏达人

“有人知道OPPO怎么录屏吗&#xff0c;前阵子刚买的OPPO手机&#xff0c;用起来感觉挺流畅的&#xff0c;功能也很齐全&#xff0c;最近因为工作原因&#xff0c;需要用到录屏功能&#xff0c;但是我不知道怎么打开&#xff0c;就想问问大伙&#xff0c;OPPO怎么录屏呀。” 在…

Redis分片集群一步一步全过程搭建

文章目录 Redis搭建分片集群1. 搭建的分片集群结构2.准备实例和配置&#xff08;1&#xff09;创建目录&#xff08;2&#xff09;创建配置文件&#xff08;3&#xff09;将这个文件拷贝到每个目录下&#xff08;4&#xff09;修改每个目录下的redis.conf&#xff0c;将其中的6…