制造业SAPR语言数据挖掘之备件物料货架管理

2023-10-25 11:40

本文主要是介绍制造业SAPR语言数据挖掘之备件物料货架管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我所在的铅酸企业设备种类多,有国外的国内的,有新设备有老设备;总之设备管理是比较头疼的问题,这也是所有制造业的通病。 设备管理中五金备件的管理也是很重要的一块,其涉及到维修保养的及时性、实物管理、成本积压等方面,如何通过数据挖掘改善五金备件的管理是本文主题。

经过与仓管员的访谈发现,五金备件管理中存在如下问题:五金库房很大,车间工人来领备件的时候要找很久(最久的要找半个小时)

解决此问题有两个方面:

一、精确的货架管理:将每一个五金物料号与其货架号收集起来,导入MES系统中

二、根据SAP的领用记录,分析货架上的五金备件的关联规则(即每次领用A物料的同时也会领用B物料),参考“啤酒和尿布”案例,合理布局货架位置

 

实施步骤一

1、我和仓管员用了十天时间,将所有在货架上的物料卡片信息和货架信息抄下来并记录成EXCEL,一共970条

2、将清单导入MES系统

改进点:

仓管员或领料员先在MES系统里查询物料的货架位置,再直接去相应位置取得实物,可以节约很多时间

 

实施步骤二

1、将清单中970个物料号对应的领料记录导出来(SAP系统)

2、将EXCEL处理成TXT文本格式

3、通过R语言apriori算法,生成关联规则

R代码如下:

library(Matrix)
library(arules)
setwd('E:/')
Trans <- read.transactions(file ="./123.txt" ,format="basket",sep=",",encoding = "UTF-8") #从EXCEL转成TXT之前,把表里的特殊符号全删掉;导出TXT之后另存为UTF-8
str(Trans)
rules <- apriori(data=Trans,parameter=list(support =0.002,confidence =0.2,minlen =4,target="rules"))
inspect(rules)

生成规则如下:

4、生成频繁项集

R代码如下:

library(arules)
library(Matrix)
setwd('E:/')
Trans <- read.transactions(file ="./五金对应领料单.txt" ,format="single",header=TRUE,cols=c("TID","ITEMS"),sep="",encoding = "UTF-8") #从EXCEL转成TXT之前,把表里的特殊符号全删掉;导出TXT之后另存为UTF-8
str(Trans)
rules <- apriori(data=Trans,parameter=list(support =0.005,confidence =0.1,minlen =1,target="frequent itemsets"))
inspect(rules)

R分析结果如下: 

 

5、将步骤4、5综合起来,得到一张表:常用的领料清单以及与之相关性很高的物料的货架位置

其中,螺钉热电偶和镜反射光电两行记录放在一起是根据步骤3得到的结论,因为根据以往的领料记录发现的关联规则中,机修工领用热电偶会同时再领用反射光电。这样的话可以方便机修工快速领取他所需的备件

 

 

最后可以将这张表打印出来,贴在五金仓库入口的看板上,方便工人查询

 

6、未采纳的建议: 根据步骤5的清单将五金仓库的货架位置换一下。比如活动扳手在24#货架,可以把它放到靠近门口的1#货架。 此建议如果实施的话需考虑综合因素,会比较麻烦,因此仓管员暂未采纳。

 

改进点: 将关联规则强的物料记录放在一起,方便工人查询从而节约取得实物的时间

 

总结: 此案例中生成的关联规则其实不多,是因为备件的总数实在太多,工人来领用备件的情况千差万别,设备故障的类型也大不相同,想从大量的离散的数据中找到能够重复出现的情况很少;但是案例中将MES和数据挖掘技术相结合,解决领用五金备件费时间的问题是一个数字化转型可行的方向

这篇关于制造业SAPR语言数据挖掘之备件物料货架管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/DATARUSHER/article/details/109070162
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/282320

相关文章

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

Spring Boot集成Druid实现数据源管理与监控的详细步骤

《SpringBoot集成Druid实现数据源管理与监控的详细步骤》本文介绍如何在SpringBoot项目中集成Druid数据库连接池,包括环境搭建、Maven依赖配置、SpringBoot配置文件... 目录1. 引言1.1 环境准备1.2 Druid介绍2. 配置Druid连接池3. 查看Druid监控

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个