当前位置: 首页 > news >正文

数学建模--蒙特卡洛算法之电子管更换刀片寿命问题

目录

1.电子管问题重述

2.电子管问题分析

3.电子管问题求解

4.刀片问题重述

5.刀片问题分析

6.刀片问题求解


1.电子管问题重述

某设备上安装有4只型号规格完全相同的电子管,已知电子管寿命服从100~200h之间的均匀分布.

只要有一个电子管损坏,设备就不能工作。

电子管损坏时有两种维修方案:

一、是每次更换损坏的那只;

二、是当其中1只损坏时4只同时更换.

已知更换时间为换1只时需1h,4只同时更换为2h.

更换时机器因停止运转每小时的损失为20元,又每只电子管价格10元,试用模拟方法确定哪一个方案经济合理?

这个里面是出现了两个方案,方案一就是每一次只用去更换掉损坏的那一个;

第二个方案就是当一个损坏的时候,全部更换掉;

这个里面无论是方案一还是方案二,都会产生一个停止运转(更换时间以内)的损失问题,我们要综合考虑这个更换成本和更换损失,计算出这个最经济的方案(就是两个的和最小,即损失加成本的和最小);

2.电子管问题分析

我们在分析问题的时候就去建立这个对应的数学模型,对于这个出现在模型里面的变量代表的含义,我们一定要搞清楚,这个对于我们的后续代码的编写很重要;

我们的这个思路就是去使用成本加上这个换电子管的损失费用之和相比较,费用低的就是经济的选择,c表示的就是一个电子管的更换成本,f表示每次更换的时候的损失成本,肯呢个有些同学会好奇这个里面的n代表的实际意义是什么,实际上这个n表示的是一个次数,下面我们细讲一下;

我们标题就说了,这个里面的两个问题就是蒙特卡洛算法的问题,而我们的蒙特卡洛算法的实质就是多次模拟,实际上这个关系是这样的:仿真模拟问题里面有很多的案例,这个蒙特卡洛算法就是这个里面的一种仿真模拟的方法,两个的实质很相似,都是多次模拟;

而我们写的这个四个人相互追逐的问题也属于方仿真问题,只不过这个属于过程仿真,需要我们在坐标系里面去解决,他们两个的关系就是下面的图里面的展示结果;

理清了关系,我们介绍思路,这个电子管问题涉及到了时间,我们却要进行多次仿真模拟,这个时候,我们就可以设置一个较长的时间,在这个实际上里面会进行多次的仿真模拟,但是也是会有一些不在这个范围里面,比如一个小写的数据,就1000小时,我们在这个时间里面进行模拟多次,可能有些电子管在这个时间的最后没有完全完成更换,就是这个时间可能不会完全使用完毕,我们只需要计算这个时间里面的完整电子管的相关费用即可,具体到matlab代码里面就是使用length函数求解一个向量的长度,这个长度就是我们这个图片里面的n的数值;

3.电子管问题求解

clc
clear
c=10;  %单个电子管的价格
f=20;  %单位时间的更换损失
ct1=1; %方案1的更换时间
ct2=2; %方案2的更换时间T=10000;%仿真观测时间tic %开始计时for i=1:1000  %仿真次数R=100+100*rand(4,100); %模拟产生4乘100只电子管的寿命t=cumsum(R,2);          %转换为时间轴的时刻%按照方案1计算成本tt1=sort(reshape(t,1,[])); %将所有的故障时刻转换到同一时间轴 并排序t1=tt1(find(tt1<=T));      %筛选出截止时间T以内的数据C1(i)=length(t1)*(c+f*ct1);  %方案1的总成本%%按照方案2计算成本tt2=cumsum(min(R));     %每次找到寿命最短的电子管更换t2=tt2(find(tt2<=T));  %筛选出截止时间T以内的数据C2(i)=length(t2)*(4*c+f*ct2); %方案2的成本
endMC1=mean(C1)
MC2=mean(C2)
toc  %结束计时

这个代码里面有很清楚的注释,下面简单的说明几点:

***length(t1)这些就是我们的分析里面说到的,选出来这个有效时间里面的数据的个数,作为我们的n的具体的数值;

***这个里面实际上是绘制的这个模拟过程的时间轴,就是把每一个灯管做成一个时间轴,每一次进行模拟的时候都会进行累积的,我们最后的mean函数再去求解这个平均值;

***rand函数就是生成的随机数,只不过这个里面是有4灯管,每一个模拟次数是100次,总共的模拟时间就是10000小时;

***R是电子管的寿命的具体的数值,这个我们如何去进行时间轴的转换呢,就是使用的cumsum函数,这个函数的第一个参数R就是寿命的时间长短,2表示行方向上进行求和;

***就是每一个电子管在模拟时间里面多次进行更换,我们cumsum参数2就是行方向求和(默认的话就是列方向求和),这样的话每一个电子管的使用寿命时长就会累加,产生一个类似于时间轴的效果;

4.刀片问题重述

5.刀片问题分析

上面这个刀片问题,很多人无法理解(最开始的时候我自己想了很长时间都想不明白),为了帮助大家理解这个问题,下面通过一个简单的图形帮助大家去理解问题:

就是我们有很多的刀片,我们可能在一个时间去更换他,但是这个刀片的寿命是不一样的,有的长,有的短,我们如果过早地更换,可能这个刀片产生的利润就不是很多,但是时间过长的话,我们的利润多,可能会使得一些刀片损坏而产生损失的费用,比如,我们把这个更换周期设置为T1,这个时候只有刀片11会产生损失,其他的都是产生的利润,更换周期变长之后,这个利润会变多,例如T2,但是损坏的刀片的数量也会变多,这个损失费用也会变大,这个也有优化问题的成分,让我们去求解利润最大的时候的更换时间,相当于是一个最优解;

6.刀片问题求解

我们在这个过程里面有很多的中间变量,为了帮助大家理解,我把这个相关的中间结果也展示在了实时脚本里面;

下面是代码:

clc
clear
N=10000;  %%刀具数目为N
RC=10:10:1000; %%设定状态变化量离散点 刀具使用时间for j=1:100     %%设定仿真次数for i=1:length(RC)  %%不同的更换周期R=normrnd(500,100,1,N);  %%产生正态分布随机数RR=R;                 %%用于记录R的原始值Rc=RC(i);             %%读取第i个刀具更换周期r=find(R>Rc);         %%查询寿命大于设定更换周期的刀具序号RR(r)=Rc;      %%替换为每把刀具的实际加工时间,RR代表了所有刀具的实际加工时间n1=length(r);  %%寿命大于设定时间的刀具n2=N-n1;       %%寿命小于设定时间的刀具get=sum(RR)*10;   %%计算毛收益lost=n2*3000;     %%计算危害损失get2(i,j)=get-lost;  %%计算净收益end
endfigure
plot(RC,mean(get2'))
xlabel('刀具更换周期/h')
ylabel('净收益')
g=mean(get2');
k=find(g==max(g))
RC(k)

***这个里面的normrnd函数,第一个参数是均值,第二个是方差,1,N表示的就是1行N列的矩阵

***find函数查找的就是寿命长,没有损坏的刀片,把这个更换的时间作为其实际工作时间去更新数据矩阵;

***mean函数求解平均值,默认的话就是对于列求解平均值,其他的注释都很清楚,这里不再赘述,有问题欢迎评论区或者私信留言~~

相关文章:

数学建模--蒙特卡洛算法之电子管更换刀片寿命问题

目录 1.电子管问题重述 2.电子管问题分析 3.电子管问题求解 4.刀片问题重述 5.刀片问题分析 6.刀片问题求解 1.电子管问题重述 某设备上安装有4只型号规格完全相同的电子管&#xff0c;已知电子管寿命服从100&#xff5e;200h之间的均匀分布&#xff0e; 只要有一个电子管…...

如何解码Linux下事件响应工具evtest的时间戳

evtest介绍 这里放一下原文链接evtest工具介绍及安装 在开发input子系统驱动时&#xff0c;常常会使用evtest工具进行测试。evtest是打印evdev内核事件的工具&#xff0c;它直接从内核设备读取并打印设备描述的带有值和符号名的事件&#xff0c;可以用来调试鼠标、键盘、触摸…...

基于STM32开发的智能门禁系统

目录 引言环境准备工作 硬件准备软件安装与配置系统设计 系统架构硬件连接代码实现 初始化代码控制代码应用场景 小区门禁管理企业办公门禁系统常见问题及解决方案 常见问题解决方案结论 1. 引言 智能门禁系统通过整合多种身份识别技术&#xff0c;如密码输入、RFID刷卡、指…...

EasyExcel-高性能的 Java Excel 处理库

EasyExcel 是阿里巴巴开发的一个高性能的 Java Excel 处理库&#xff0c;主要用于处理大规模的 Excel 文件。它特别注重性能&#xff0c;优化了内存消耗&#xff0c;适合处理大数据量的 Excel 文件&#xff0c;避免了传统 Excel 库在处理大文件时的性能瓶颈。 主要功能 高性能…...

精益生产培训秘籍:六步策略,助力企业降本增效——张驰咨询

在当今竞争激烈的市场环境中&#xff0c;企业为了提高生产效率、降低成本、增强市场竞争力&#xff0c;纷纷引入精益生产理念。精益生产作为一种以客户需求为导向&#xff0c;通过持续消除浪费、优化流程、提升质量的生产方式&#xff0c;已成为众多企业转型升级的利器。张驰咨…...

【第19章】Spring Cloud之Gateway自定义Logback配置

文章目录 前言一、内置配置1. 关联依赖2. 内置配置 二、自定义配置1. 日志级别2. 彩色日志3. 自定义配置4. 增加打印语句5. 效果展示 总结 前言 网关层作为我们程序的主入口&#xff0c;有着至关重要的作用&#xff0c;下面我们通过自定义Logback配置增强网关层的日志输出&…...

Java流式编程

一、流的基础概念 流&#xff08;Stream&#xff09;&#xff1a; 定义&#xff1a;流是一种可以在数据集合上进行操作的抽象化序列&#xff0c;它没有存储数据的能力&#xff0c;而是通过一系列的操作来处理数据。特性&#xff1a; 无存储&#xff1a;流不存储数据&#xff0c…...

高可用集群keepalived从部署到实战一篇解决

目录 一.高可用集群 1.1 集群类型 1.2 系统可用性 1.3 系统故障 1.4 实现高可用 1.5.VRRP&#xff1a; 1.5.1 VRRP 相关术语 1.5.2 VRRP 相关技术 二.Keepalived 部署 2.1 keepalived 简介 2.2keepalived架构 2.3 Keepalived 环境准备 2.4 Keepalived 相关文件 2.…...

22222222222

222222222222222222...

springboot宠物相亲平台-计算机毕业设计源码16285

目 录 摘要 1 绪论 1.1 选题背景与意义 1.2国内外研究现状 1.3论文结构与章节安排 2 开发环境及相关技术介绍 2.1 MySQL数据库的介绍 2.2 B/S架构的介绍 2.3 Java语言 2.4 SpringBoot框架 3 宠物相亲平台系统分析 3.1 可行性分析 3.1.1 技术可行性分析 3.1.2 经济…...

警惕:手机被监听时会出现这些情况

在互联网高速发展的今天&#xff0c;手机已成为我们生活中不可或缺的一部分&#xff0c;它连接着我们的工作、学习与社交。然而&#xff0c;享受科技便利的同时&#xff0c;手机监听的风险也如影随形。 美国“斯诺登”事件曝光后&#xff0c;公众才惊觉手机监控可能就在身边。…...

Windows 系统下 MongoDB和PostgreSQL数据库数据的备份和恢复

MongoDB 数据库的备份和恢复 在 Windows 系统下进行 MongoDB 数据库的备份&#xff08;mongodump&#xff09;和恢复&#xff08;mongorestore&#xff09;操作相对直接。下面我将分别介绍这两个过程。 1. 备份数据库 (mongodump) 前提条件&#xff1a; 确保 MongoDB 服务正…...

必应Bing国内搜索广告开户收费标准公示

微软必应Bing作为全球领先的搜索引擎之一&#xff0c;其广告平台为企业提供了强大的营销工具和广泛的用户覆盖。云衔科技为广大企业提供全方位的广告开户及代运营服务&#xff0c;助力企业实现营销升级。 一、必应Bing国内搜索广告开户收费标准公示 根据最新政策&#xff0c;…...

大模型汇总:文心一言大模型、腾讯混元大模型、通义千问大模型、字节豆包大模型、智普清言大模型、KIMI 大模型、紫东太初大模型、讯飞星火大模型

文心一言大模型 作为百度自主研发的大型语言模型&#xff0c;具有显著的特点、广泛的应用场景以及独特的优势。以下是对文心一言特点、应用、优势的详细介绍&#xff1a; 特点&#xff1a;知识增强&#xff1a; 文心一言通过持续学习技术&#xff0c;不断吸收海量数据和知识…...

C语言——结构体、共用体、枚举、位运算

C语言——结构体、共用体、枚举、位运算 结构体共用体枚举位运算 结构体 如果将复杂的复杂的数据类型组织成一个组合项&#xff0c;在一个组合项中包含若干个类型不同&#xff08;当然也可以相同&#xff09;的数据项。 C语言允许用户自己指定这样一种数据结构&#xff0c;它称…...

[LitCTF 2024]exx

输入任意账号密码进行抓包 考查xxe漏洞 我们加入xxe语句并让它回显我们要它会显的东西&#xff1a;先来读取一下用户名和密码 我们可以看到&#xff0c;它已经读取了服务器下的账号密码文件&#xff0c;接着我们直接读取根目录下的flag文件。通常情况下flag文件的位置一般就根…...

kafka运维常用命令

KAFKA常用命令 一、KAFKA常用命令1.1kafka造数1.2kafla抓包1.2.1实时查看kafka数据1.2.2查看kafka历史数据1.2.3查看kafka中带有某个ip的历史数据1.2.4将kafka数据存入文件中 一、KAFKA常用命令 1.1kafka造数 示例&#xff1a;给topic为 ids-test 造数 ./kafka-console-produ…...

笔记:在WPF中OverridesDefaultStyle属性如何使用

一、目的&#xff1a;介绍下在WPF中OverridesDefaultStyle属性如何使用 OverridesDefaultStyle 属性在 WPF 中用于控制控件是否使用默认的主题样式。将其设置为 True 时&#xff0c;控件将不会应用默认的主题样式&#xff0c;而是完全依赖于你在 Style 中定义的样式。以下是如何…...

MATLAB/Simulink 与Gazebo联合仿真

在机器人技术、自动化控制和仿真领域,MATLAB和Gazebo是两种常用的工具,它们各自具有不同的优势,但在某些情况下,可以联合使用以实现更复杂的仿真效果。下面将介绍如何在MATLAB环境中与Gazebo进行联合仿真。 MATLAB与Gazebo联合仿真的基础 MATLAB环境:MATLAB是一款强大的数…...

并查集-应用方向以及衍生汇总+代码实现(c++)-学习一个数据结构就会做三类大题!

并查集的核心功能&#xff0c;合并集合&#xff0c;查找元素&#xff0c;这两个最基本的功能相关题目本文不列举了&#xff0c;主要是一些和图相关的&#xff1a; 并查集的核心母题 一、连通性检测&#xff1a; 问题&#xff1a;判断在一个图中&#xff0c;任意两点是否连通。…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

Map相关知识

数据结构 二叉树 二叉树&#xff0c;顾名思义&#xff0c;每个节点最多有两个“叉”&#xff0c;也就是两个子节点&#xff0c;分别是左子 节点和右子节点。不过&#xff0c;二叉树并不要求每个节点都有两个子节点&#xff0c;有的节点只 有左子节点&#xff0c;有的节点只有…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

wpf在image控件上快速显示内存图像

wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像&#xff08;比如分辨率3000*3000的图像&#xff09;的办法&#xff0c;尤其是想把内存中的裸数据&#xff08;只有图像的数据&#xff0c;不包…...