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

基于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互动应用时间控制状态管理用户交互 一、功能说明 在这个计时器应用中,用户…...

计算机专业开题报告写法,该怎么写好?

不会写开题报告,或者想要一些论文模版的,欢迎评论,会第一时间给大家。 题报告是计算机专业大学毕业生在开展毕业设计或论文研究前,对研究课题进行详细介绍和计划的重要环节。作为开题者对科研课题的一种文字说明,开题…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...

大模型——基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程

基于Docker+DeepSeek+Dify :搭建企业级本地私有化知识库超详细教程 下载安装Docker Docker官网:https://www.docker.com/ 自定义Docker安装路径 Docker默认安装在C盘,大小大概2.9G,做这行最忌讳的就是安装软件全装C盘,所以我调整了下安装路径。 新建安装目录:E:\MyS…...

uniapp获取当前位置和经纬度信息

1.1. 获取当前位置和经纬度信息&#xff08;需要配置高的SDK&#xff09; 调用uni-app官方API中的uni.chooseLocation()&#xff0c;即打开地图选择位置。 <button click"getAddress">获取定位</button> const getAddress () > {uni.chooseLocatio…...

【Linux】使用1Panel 面板让服务器定时自动执行任务

服务器就是一台24小时开机的主机&#xff0c;相比自己家中不定时开关机的主机更适合完成定时任务&#xff0c;例如下载资源、备份上传&#xff0c;或者登录某个网站执行一些操作&#xff0c;只需要编写 脚本&#xff0c;然后让服务器定时来执行这个脚本就可以。 有很多方法实现…...

循环语句之while

While语句包括一个循环条件和一段代码块&#xff0c;只要条件为真&#xff0c;就不断 循环执行代码块。 1 2 3 while (条件) { 语句 ; } var i 0; while (i < 100) {console.log(i 当前为&#xff1a; i); i i 1; } 下面的例子是一个无限循环&#xff0c;因…...

设计模式-3 行为型模式

一、观察者模式 1、定义 定义对象之间的一对多的依赖关系&#xff0c;这样当一个对象改变状态时&#xff0c;它的所有依赖项都会自动得到通知和更新。 描述复杂的流程控制 描述多个类或者对象之间怎样互相协作共同完成单个对象都无法单独度完成的任务 它涉及算法与对象间职责…...

成工fpga(知识星球号)——精品来袭

&#xff08;如需要相关的工程文件请关注知识星球&#xff1a;成工fpga&#xff0c;https://t.zsxq.com/DMeqH&#xff0c;关注即送200GB学习资料&#xff0c;链接已置顶&#xff01;&#xff09; 《孩子都能学会的FPGA》系列是成工完成的第一个系列&#xff0c;也有一年多的时…...

AGV|无人叉车工业语音播报器|预警提示器LBE-LEX系列性能与接线说明

LBE-LEX系列AGV|无人叉车工业语音播报器|预警提示器&#xff0c;涵盖LBE-LEI-M-00、LBE-LESM-00、LBE-LES-M-01、LBE-LEC-M-00、LBE-KEI-M-00、LBE-KES-M-00、LBE-KES-M-01、LBE-KEC-M-00等型号&#xff0c;适用于各种需要语音提示的场景&#xff0c;主要有AGV、AMR机器人、无人…...

Oracle 19c RAC集群ADG搭建

1、将主库的pfile和passwdfile发送到备库 #主库一节点操作 scp -P1234 /tmp/pfile2025.ora bak_ip:/home/oracle sco -P1234 /oracle/app/oracle/product/19.0.0/db/dbs/orapw$ORACLE_SID bak_ip:/oracle/app/oracle/product/19.0.0/db/dbs 2、备库修改参数文件成standby相关…...

我爱学算法之—— 前缀和(中)

一、724. 寻找数组的中心下标 题目解析 这道题&#xff0c;给定数组nums&#xff0c;要求我们找出这个数组的中心下标。 **中心下标&#xff1a;**指左侧所有元素的和等于右侧所有元素的和。 如果存在多个中心数组下标&#xff0c;就返回最左侧的中心数组下标。 算法思路 暴…...