【产生初始解利器】基于蒙特卡洛模拟产生满足固定需求和固定供给的随机供给矩阵

如何生成一个总和是定值的随机矩阵

  • 震惊,如果做一个约束比较强的模型,解的矩阵需要满足很多等式约束,而且都是整数,随机产生初始解很困难,该怎么办?

震惊,如果做一个约束比较强的模型,解的矩阵需要满足很多等式约束,而且都是整数,随机产生初始解很困难,该怎么办?

举个例子,比如说有10个需求点A,每个需求点的需求是固定的ai,有10个供给点B,每个供给点的供给量是固定的。

最恶劣的情况:总需求==总供给,那么有20个等式需求满足,非常非常强的约束,如果按照常规的思路取随机产生满足条件的矩阵,会非常费时间。

拯救这个问题的方法就是:蒙特卡洛模拟!!!!!!
用蒙特卡洛算法 产生满足任意约束的矩阵,非常非常好用

太方便太好用了,呜呜呜

举个粒子:
在这里插入图片描述

fixrow 是每行的和的约束 fixcol 是每列的和的约束。也就是说,我们要产生一个随机矩阵,每行的和是一个固定且不同的值,同时每列的和也是一个固定且不同的值。
通过MC模拟,很快的实现了这个功能,比我之前写的代码采用的方案快了一万倍。。。。

在这里插入图片描述
在这里插入图片描述

经过检验,均满足约束

强烈推荐,遇到相关问题的朋友使用这种方法,生成行和列有一定约束的随机矩阵,非常非常非常好用

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

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

相关文章

抖音seo矩阵系统源码开发部署--开发文档分享

目录 一、抖音seo矩阵系统源码自研概况分析 二、 技术开发语言及功能框架 技术要求: 功能框架: 三、 抖音seo矩阵系统开发原则 四、 抖音seo矩阵系统源码开发示例 一、抖音seo矩阵系统源码自研概况分析 关于抖音seo矩阵系统源码自研,在开…

模块化规范

常用模块化有两种规范,commonJS和ES6 一:两者区别 二:如何转义? 我们常遇到的使用场景是,在commonJS的模块里需要引入ES6规范的模块。这时就需要把ES6模块转译为commonJS规范的模块,否则报错 转义工具有…

CMU15-445 2022 Fall 通关记录 —— Project 2:B+ Tree(下篇)

Project 2:B Tree Project #2 - BTree | CMU 15-445/645 :: Intro to Database Systems (Fall 2022) NOTE: 记录完成该Pro中,一些可能会遇到的问题: 本实验中,有很多API是需要自己去实现的,因此&#x…

多元分类预测 | Matlab基于北方苍鹰优化深度置信网络(NGO-DBN)的分类预测,多输入模型,NGO-DBN分类预测

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元分类预测 | Matlab基于北方苍鹰优化深度置信网络(NGO-DBN)的分类预测,多输入模型,NGO-DBN分类预测 多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matlab,程序可…

4G理论概述

文章目录 LTE网络基础架构UMTS(通用移动通信系统,Universal Mobile Telecommunications System)UTRAN(UMTS陆地无线接入网,UMTS Terrestrial Radio Access Network)RNC(无线网络控制器&#xff…

Quiz 14_2-1: Using Web Services | Python for Everybody 配套练习_解题记录

文章目录 Python for Everybody课程简介Quiz 14_2-1: Using Web Services单选题(1-15)操作题Autograder : Extracting Data from XML Python for Everybody 课程简介 Python for Everybody 零基础程序设计(Python 入门) This cou…

linux 命令之find

find 命令 1. 作用 命令用于在指定目录下以及其子母路查找文件和目录。 2. 语法 find [path] [expression] 不指定path的默认为当前路径 2.1 常见的参数 -name pattern:按文件名查找,支持使用通配符 * 和 ?。 -type type:按文件类型查…

【kubernetes系列】kubernetes之initcontainer初始化容器

概述 Init Container就是用来做初始化工作的容器,可以是一个或者多个,如果有多个的话,这些容器会按定义的顺序依次执行,只有所有的Init Container执行完后,主容器才会被启动。我们知道一个Pod里面的所有容器是共享数据…

<Java导出Excel> 4.0 Java实现Excel动态模板字段增删改查

思路: 主要是同时操作两张表:一张存储数据的表,一张存储模板字段的表; 查询:只查询模板字段的表; 新增,修改,删除:需要同时操作两张表中的字段 如果两张表字段不一致&…

【Mac】安装DbServer

1.下载 链接: https://pan.baidu.com/s/13Vzsv1sLAq-J8RsRgtL-pw 提取码: 8gsr 2.安装 如果提示已损坏,无法打开。 解决方式: 打开“终端”,输入命令:sudo spctl --master-disable,这个过程中会提示要输入密码&…

硬件电路设计--运算放大器(一)参数和分类

文章目录 前言一、运放分类1.1 功能分类1.2 按单颗IC封装1.3 第一脚的判断 二、运放参数2.1 理想运放2.2 实际运放2.3 数据手册中的重要参数2.3.1 供电电压Vs(power supply)2.3.2 虚短虚断2.3.3 输入偏置电流Ib2.3.4 噪声Vn2.3.5 静态电流IQ2.3.6 输入失…

【Distributed】分布式监控系统zabbix应用(一)

文章目录 前言一、Zabbix基本概述1. Zabbix 的概念2. Zabbix 的工作原理3. Zabbix 6.0 新特性3.1 Zabbix 可以实现高可用3.2 Zabbix 新增监控系统 4. Zabbix 的构成5. Zabbix 的功能组件5.1 数据库5.2 Web 界面5.3 Zabbix Agent5.4 Zabbix Proxy5.5 Java Gateway 6. Zabbix 和 …