基于ExtendSim的库存与订购实验

说明: 库存和订购实验室是一个单部件模拟模型,旨在测试从组件需求站点到组件分发站点的订购策略,以及 在组件分销现场的生产区域内。最佳解决方案允许为需求站点提供高服务级别,同时最大限度地降低总库存水平。 该模型演示了分层模块、ExtendSim数据库、克隆的使用。
输入参数面板: 此模型顶层左侧的输入参数面板用于配置测试的零件场景 每月需求量:需求现场对该零件的总预测需求量。
每月生成:如果一个月有20个生成日,并且此参数设置为10,则该零件将用于 每隔一天访问一次网站。
构建Q的方差:每次构建期间构建数量的+/-因子(围绕平均值)。例如,如果需求为2000,并且该零件每月在构建中使用10天,则平均构建数量为200。
如果方差为+/-.1,则实际构建数量将在180到220之间。 Q每箱:箱内零件的数量。零件从配送站点以箱为单位订购。 Q每生产M单位:生产移动单位(如托盘)中的零件数量。当移动单元 数量在生产加工中完成,该数量转移到外包加工或进入 库存。
运输(天):将货物从组件分发地点运输到组件需求地点的天数。
检验(天):在将已到达组件需求现场的货物放入库存之前,对其进行检验的天数。
目标库存:计算值为 (运输天数+检验天数)*每日需求Q*目标乘数
每天生产小时数:每天可用于生产零件的工艺小时数。
设置(天):配置机器/区域所需的时间,然后才能开始处理一批零件批量:生产订单中生产的最小零件数量。
每个零件的加工时间(小时):每个零件所需的机器/区域时间。 每移动单位外包(天):每移动单位完成任何外包加工的零件数量所需的时间。
目标库存:计算值为 (处理时间+外包时间)*每日需求Q*目标乘数
组件需求站点: 组件需求站点层次结构块具有用于从组件分销商站点发送订单和接收装运的模型构造
每天中午都会进行一次检查,以确定所研究的零件是否在当天用于构建。构建概率是二项式随机数 根据输入参数Builds Per Month除以20天进行绘制(即,如果每月通常有10个构建,则这一天成为构建日的概率为.5)。如果已经进行了构建,则构建数量将根据基于输入参数“每月需求”、“每月构建”和“构建Q的方差”的随机抽取进行计算。例如,如果每月需求为2000,则每月构建为10,方差为.1,则每个构建的平均值为200个单位,随机抽取为180-220之间的整数。然后从需求位置数据库表中的现有库存水平中减去该数量。然后,订单被发送到配送点进行补货,要求完全纠正当前库存状况所需的最小零件箱数(OrderQ=TargetInv(OnShelf+Pipeline) 订单Q调整到最接近的满箱)。此订单的记录将在模型数据库表Orders Sent中创建。

货物在工作日收到,并按照“输入参数”面板中的规定进行检查。然后,在DemandPosition中更新货架数量 带有订单数量和“已发送订单”记录的数据库表将以交货日期关闭。这也是计算订单循环时间的地方

组件分销商网站: 组件分销商层次结构模块具有用于接收订单、履行和装运订单、创建生产订单和关闭的模型构造 生产订单。
订单在从组件需求站点发送的同一天被接收和检查。如果订单的货架上有足够的库存,则从货架上提取订单数量,将其码垛并放置在码头上,供下一辆出库卡车使用。如果货架上没有足够的零件来完成订单,订单将在再次检查前一天被扣留

订单: 卡车按照运输资源分层块中模型的卡车时间表部分显示的时间表到达装运

每天都会检查是否需要生产订单。
这个 位置计算是
position = (OnShelf + Pipeline) - ((BatchDays * dailyQ) + orders + targetInv)
where
dailyQ = ceil(monthlyDemand / 20)
batchDays = ceil(BatchSize / DailyQ)

如果发现某个位置大于批量大小,则会为批量大小加上移动单位单位中超出批量大小所需的数量创建一个生产订单。在中为订单创建记录 已完成的生产订单包括 在生产订单中退回并关闭 数据库。这也是循环时间所在的地方 为每个订单计算。


组件生产: 组件生产层次结构块具有用于完成生产订单的模型构造。
一次只能有一个生产订单在线。如果系统空闲,则设置订单,然后将其拆分为移动单位数量。每个移动单元数量都经过单独处理,然后发送给外包,然后放入货架库存。

输出
顶层: 顶层提供订单和装运流程的基本动画。
笔记本:点击“结果”按钮或打开笔记本,显示每个位置的货架库存图以及许多其他输出参数。需求服务水平是指工作日货架库存水平大于零的比例。建造数量可能会在货架上产生负的零件,表明希望建造但库存不足以满足需求(即服务失败)。 组件和生产订单的平均周期时间是订单交付的平均时间(以天为单位)。还显示了平均库存和当前库存 每个位置,以及目前在组件分销商现场等待充足库存的订单数量。
多运行统计: 要执行多次运行并获得具有置信区间的统计数据,请在模拟设置中进行以下更改 -在菜单栏中,选择运行>>>模拟设置或 使用快捷键Control+Y -将参数Runs设置为20,然后设置OK按钮 关闭对话框。

现在,每当模型运行时,它都会自动 执行20次模型运行并收集均值和方差 统计数据块中每次运行的统计数据。
请注意,根据处理器的速度 电脑,每次运行需要几秒钟。加速运行的一个好建议是向下滚动顶层窗口,这样就不会显示任何输出参数。无需更新屏幕,模型即可运行 更快。
运行完成后,打开 统计块,然后选择置信区间。 20次运行的数据将合并显示 结果为平均值和置信区间 确保在模拟设置中重置Runs参数 返回1进行单次运行分析。

数据库表: 在模型数据库中收集需求订单和生产订单的日志记录。要打开数据库查看器,请在菜单栏中选择数据库>>> 基础(Inventory Lab.mox)。
在查看器中,选择“日志”选项卡。 可以选择两个输出表 在左侧窗格中。然后,这些数据可以 选择并移动到Excel以获取更多信息 后处理和分析。

优化: 该模型配置了ExtendSim优化块。通过设置所需的服务级别,该模型将自动搜索 在组件需求和组件分销商站点设定目标库存 优化运行可能很长(超过一个小时) 因此,建议对场景进行测试 优化前的单次运行。 优化完成后,输出 下表将显示目标的十大解决方案 库存乘数。这相当于总计 每个位置的库存计算,可以 可用于进一步分析。


相关文章:
基于ExtendSim的库存与订购实验
说明: 库存和订购实验室是一个单部件模拟模型,旨在测试从组件需求站点到组件分发站点的订购策略,以及 在组件分销现场的生产区域内。最佳解决方案允许为需求站点提供高服务级别,同时最大限度地降低总库存水平。 该模型演示了分层模…...
操作系统个人八股文总结
1.进程和线程的区别 进程和线程的定义 进程: 进程是一个运行中的程序实例,是资源分配的基本单位。每个进程都有自己的地址空间、数据、堆栈以及其他辅助数据。线程: 线程是进程中的一个执行单元,是CPU调度的基本单位。一个进程可…...
scala set训练
Set实训内容: 1.创建一个可变Set,用于存储图书馆中的书籍信息(假设书籍信息用字符串表示),初始化为包含几本你喜欢的书籍 2.添加两本新的书籍到图书馆集合中,使用操作符 3.删除一本图书馆集合中的书籍&…...
【d63】【Java】【力扣】141.训练计划III
思路 使用递归实现 出口 ,遇到null 每一层要做:把下层放进去,把本层放下去 代码 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { …...
【Linux】- 权限(2)
接上一篇文章,继续介绍linux权限的相关知识。https://blog.csdn.net/hffh123/article/details/143432940?spm1001.2014.3001.5501j 目录 一、chown:修改文件的拥有者 二、chgrp:修改文件所属组 三、关于other的介绍 四、文件类型 1、分类…...
如何设置内网IP的端口映射到公网
在现代网络环境中,端口映射(Port Mapping)是一项非常实用的技术,它允许用户将内网设备的服务端口映射到公网,使外网用户可以访问内网中的服务。这项技术在远程办公、设备远程控制、游戏服务器、家庭监控等场景中得到了…...
Matplotlib | 条形图中的每个条形(patch)设置标签数据的方法
方法一 不使用子图对象如何给形图中的每个条形设置数据 plt.figure(figsize(8, 4)) sns.countplot(xWorkout_Frequency (days/week), datadf)plt.title(会员每周锻炼频率分布) plt.xlabel(锻炼频率 (每周次数)) plt.ylabel(人数)# 获取当前活动的轴对象 ax plt.gca()# 循环遍…...
机器学习3_支持向量机_线性不可分——MOOC
线性不可分的情况 如果训练样本是线性不可分的,那么上一节问题的是无解的,即不存在 和 满足上面所有N个限制条件。 对于线性不可分的情况,需要适当放松限制条件,使得问题有解。 放松限制条件的基本思路: 对每个训…...
bash: git: command not found
在windows上重新安装Git之后,遇到cmd可以使用git命令,但是git bash中使用的git命令的时候,会提示: $ git bash: git: command not found 解决办法 找到用户目录下的.bash_profile和.bashrc文件,编辑打开,找…...
大模型LLama3!!!Ollama下载、部署和应用(保姆级详细教程)
首先呢,大家在网站先下载ollama软件 这就和anaconda和python是一样的 废话不多说 直接上链接:Download Ollama on Windows 三个系统都支持 注意: 这里的Models,就是在上面,大家点开之后,里面有很多模型…...
ReactPress系列—NestJS 服务端开发流程简介
ReactPress Github项目地址:https://github.com/fecommunity/reactpress 欢迎提出宝贵的建议,感谢Star。 NestJS 服务端开发流程简介 NestJS 是一个用于构建高效、可靠和可扩展的服务器端应用程序的框架。它使用 TypeScript(但也支持纯 Java…...
Maven 下载配置 详解 我的学习笔记
Maven 下载配置 详解 我的学习笔记 一、Maven 简介二、maven安装配置三、maven基本使用四、idea配置mavenidea配置maven环境maven坐标idea创建maven项目配置Maven-Helper插件 五、依赖管理 一、Maven 简介 Apache Maven 是一个项目管理和构建工具,它基于项目对象模型…...
【学术精选】SCI期刊《Electronics》特刊“New Challenges in Remote Sensing Image Processing“
英文名称:New Challenges in Remote Sensing Image Processing 中文名称:"遥感图像处理的新挑战"特刊 期刊介绍 “New Challenges in Remote Sensing Image Processing”特刊隶属于《Electronics》期刊,聚焦遥感图像处理领域快速…...
卷积神经网络——pytorch与paddle实现卷积神经网络
卷积神经网络——pytorch与paddle实现卷积神经网络 本文将深入探讨卷积神经网络的理论基础,并通过PyTorch和PaddlePaddle两个深度学习框架来展示如何实现卷积神经网络模型。我们将首先介绍卷积神经网络、图像处理的基本概念,这些理论基础是理解和实现卷…...
云平台虚拟机运维笔记整理,使用libvirt创建和管理虚拟机,以及开启虚拟机嵌套,虚拟磁盘扩容,物理磁盘扩容等等
云平台虚拟机运维笔记整理,使用libvirt创建和管理虚拟机,以及开启虚拟机嵌套,虚拟磁盘扩容,物理磁盘扩容等等。 掌握和使用qemu和libvirt,分别使用它们创建一个cirros虚拟机,并配置好网络。 宿主机node0的系统为ubuntu16,IP为192.168.56.200。 qemu和libvirt简介 QEMU…...
最佳实践:如何实现函数参数之间的TS类型相依赖和自动推断
引入 最近在开发一款极致优雅的前端状态管理库AutoStore时碰到这样一个问题。 拟实现Field组件,该组件相关类型简化代码如下: type Field (props:{validate,render:(props:{value,isValid}) })该组件,具有validate和render两个属性: 其中…...
Linux基础指令1
好久没写博客了,这次我将重新做人,每星期都更,做不到的话直接倒立洗头。最近在学Linux,感觉很厉害的样子,先浅学一下再弄数据结构去。 Linux的基本操作是通过指令来执行的,所以我们先来学习下指令。 1.简…...
软件设计师:排序算法总结
一、直接插入 排序方式:从第一个数开始,拿两个数比较,把后面一位跟前面的数比较,把较小的数放在前面一位 二、希尔 排序方式:按“增量序列(步长)”分组比较,组内元素比较交换 假设…...
「Mac畅玩鸿蒙与硬件25」UI互动应用篇2 - 计时器应用实现
本篇将带领你实现一个实用的计时器应用,用户可以启动、暂停或重置计时器。该项目将涉及时间控制、状态管理以及按钮交互,是掌握鸿蒙应用开发的重要步骤。 关键词 UI互动应用时间控制状态管理用户交互 一、功能说明 在这个计时器应用中,用户…...
计算机专业开题报告写法,该怎么写好?
不会写开题报告,或者想要一些论文模版的,欢迎评论,会第一时间给大家。 题报告是计算机专业大学毕业生在开展毕业设计或论文研究前,对研究课题进行详细介绍和计划的重要环节。作为开题者对科研课题的一种文字说明,开题…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
LabVIEW双光子成像系统技术
双光子成像技术的核心特性 双光子成像通过双低能量光子协同激发机制,展现出显著的技术优势: 深层组织穿透能力:适用于活体组织深度成像 高分辨率观测性能:满足微观结构的精细研究需求 低光毒性特点:减少对样本的损伤…...
医疗AI模型可解释性编程研究:基于SHAP、LIME与Anchor
1 医疗树模型与可解释人工智能基础 医疗领域的人工智能应用正迅速从理论研究转向临床实践,在这一过程中,模型可解释性已成为确保AI系统被医疗专业人员接受和信任的关键因素。基于树模型的集成算法(如RandomForest、XGBoost、LightGBM)因其卓越的预测性能和相对良好的解释性…...
Python的__call__ 方法
在 Python 中,__call__ 是一个特殊的魔术方法(magic method),它允许一个类的实例像函数一样被调用。当你在一个对象后面加上 () 并执行时(例如 obj()),Python 会自动调用该对象的 __call__ 方法…...
