Python 在工业生产规划中的应用

2023-12-27 14:20

本文主要是介绍Python 在工业生产规划中的应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

       在制造业中,往往会因为数据结构的复杂(系统+线下,订单+制造等等)以及对接口的繁多,在进行数据处理、可视化、业务判断方面会消耗大量精力。这点尤其是在当今客户需求多样化的时代显得尤为突出。客户多样的需求,少则小几十条,多则上百条。如何整合现存资源、未来资源、长远资源以满足业务需求,和运营、成本达到平衡显得十分重要。

       在我实际操作的过程中,系统能解决一部分问题。但随着业务量的增长和精细化,很多时候我们需要做出最快的响应,模拟出最优化的解决方案。因这些需求很多情况是新增的,甚至是临时的,因此,若完全依赖系统,会因为开放周期较长、资源等原因,不一定能100%相应到业务的变化和调整。

        相较之下,对数据源方面进行扩充,增加新的数据内容是相对容易很多的,将这些数据根据实际的业务需求,进行处理、筛选、计算,做成相应的模板,可以大大提高工作效率和精准度,通过模拟计算,及时响应到业务需求

        单独拿“生产—销售”来说,我们要关心的问题有,目前的订单现有情况、订单未来情况、现有的资源情况、即将产生的资源情况,在拿到这些信息后,进行匹配、测试、通过调整,演算出可能产生的结果。最传统的模式是通过Excel进行计算和传递。但随着业务量的增长和客户需求的多样化,仅仅用excel很难跟上业务需求,单纯的某一次运算,都会花费大量的时间。但借助Python的运算,能在极短的时间内产生出大量我们想要的结果。

     在用python进行计算时,主要需要的有以下几个步骤。

车同轨书同文

这一点是一切运算的基石和前提。在生产规划中,我们的数据源多种多样,有销售方的,有制造方的,有库存方的等等。这些数据往往是不对称的。比如同一种商品,销售方成为A,制造方称为B,库存方称为C。就好比《海贼王》在不同平台叫法不一是同一个道理,在腾讯就叫《航海王》;比如因翻译不同,《宝可梦》、《宠物小精灵》、《口袋妖怪》、《神奇宝贝》说的实际上是一个东西。在生产—销售中也存在这样的问题。只有统一了名称,我们才能在各个平台间达成共识,以确保信息的对称性。解决这个问题的方法,就是给每一种商品特定的ID,就跟身份证一样。

     只有统一的ID,才能把所有的商品给串起来。

     但有时候,可能会因为产品的更迭,导致同一种商品,在今年和去年拥有2个ID,所以,我们也需要格外注意把新老ID也统一起来。

       以上说的从商品的种类角度出发。当涉及到具体的某个订单对应到某个商品时,我们还需要给每个商品和每个订单给予特定的ID,以进行匹配。

       Again,以上的统一,是可以通过EXCEL来实现的,但会存在运算复杂,而影响效率的情况。尤其是当数据量暴增时,常常会出现excel转圈圈的情况,更别说后面我们还需要进行更加复杂的运算(当然换个电脑也不是不行)。

建立常用数据库

这点和上一步的车同轨书同文其实同样重要,优先级甚至可以说不分先后。在python上统一ID有两种方法。一种是直接写入代码,比如A商品对应的ID是12345678,B商品对应的ID是23345678……。但显然这不是最优解。因为如果要新增另一模块的代码时,就会要求我们在另一个模块把这段代码添加进去,当新增模块多的时候,难免会有疏漏。

因此,在实际操作中,建立自己的数据库是最优化的方式。我们仅仅通过更新数据库,在代码中调用这个数据库就可以了。完全节省每个模块都更新代码的工作量,不仅如此,还能极大的提升准确率。

业务分析的优先级

在进行完上面两个步骤后,我们才能进一步的到业务分析的模块。在对业务进行分析时,同样会有优先级,当然也会有不影响的并行情况存在。但如果是我们要总结所有资源来进行模拟分析时,这种并行的情况就会越来越少,所有的资源可以理解成一个生态系统(订单、商品、库存、生产等等),当一个部分的某一个点发生变化后,都会影响整个生态。只不过是影响多少的问题。当资源盘大时,某一个点变化对生态的影响微乎其微,但当资源有限时,即使蝴蝶扇一下翅膀,都会对整个生态产生巨大影响。1对于1000的影响只是0.1%,但对10的影响就是10%了

因此,在资源有限的情况下,我们要更加关注精确性。

那我们应该如何对资源进行演算和分配优先级呢?先锁定变化比较慢或者相对容易控制的模块,在进一步推进变化稍微快一些的模块,把变化最快的放在最后再进行演算。举个形象的例子,先分析行动最慢的树懒,最后再分析速度最快的猎豹。当然这里的树懒和猎豹是相对的。根据实际情况的不同,树懒有时会是猎豹,猎豹有时会是树懒。

落脚到实际业务,在计算的过程中,优先级便是先库存、再生产、再订单。值得注意的是,这里的优先级并不是指先把库存分析的透透的,过一段时间再分析生产,再分析订单。这里的优先级,是指运算次序上的优先级。先算库存、再算生产、再算订单,实际上,在最后还会通过订单再倒推库存、生产。在时间的维度上,这几方面是可以看成是同时进行的。

那通过运用python,能达到什么效果呢?可以说,想得到什么样的效果完全取决于业务的需求,想达到什么样的效果都可以实现。比如我现在得到的,能通过这一系列的分析,1min就能得到10张想要的报表。这些报价表或独立,或相关。再进一步,我们可以通过可视化软件(如tableau),将这些报表的展现形式做成模板,以实现自动输出。

 

这篇关于Python 在工业生产规划中的应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/543411

相关文章

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

Python 字符串占位

在Python中,可以使用字符串的格式化方法来实现字符串的占位。常见的方法有百分号操作符 % 以及 str.format() 方法 百分号操作符 % name = "张三"age = 20message = "我叫%s,今年%d岁。" % (name, age)print(message) # 我叫张三,今年20岁。 str.format() 方法 name = "张三"age

亮相WOT全球技术创新大会,揭秘火山引擎边缘容器技术在泛CDN场景的应用与实践

2024年6月21日-22日,51CTO“WOT全球技术创新大会2024”在北京举办。火山引擎边缘计算架构师李志明受邀参与,以“边缘容器技术在泛CDN场景的应用和实践”为主题,与多位行业资深专家,共同探讨泛CDN行业技术架构以及云原生与边缘计算的发展和展望。 火山引擎边缘计算架构师李志明表示:为更好地解决传统泛CDN类业务运行中的问题,火山引擎边缘容器团队参考行业做法,结合实践经验,打造火山

自制的浏览器主页,可以是最简单的桌面应用,可以把它当成备忘录桌面应用

自制的浏览器主页,可以是最简单的桌面应用,可以把它当成备忘录桌面应用。如果你看不懂,请留言。 完整代码: <!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><ti

一道经典Python程序样例带你飞速掌握Python的字典和列表

Python中的列表(list)和字典(dict)是两种常用的数据结构,它们在数据组织和存储方面有很大的不同。 列表(List) 列表是Python中的一种有序集合,可以随时添加和删除其中的元素。列表中的元素可以是任何数据类型,包括数字、字符串、其他列表等。列表使用方括号[]表示,元素之间用逗号,分隔。 定义和使用 # 定义一个列表 fruits = ['apple', 'banana

Python应用开发——30天学习Streamlit Python包进行APP的构建(9)

st.area_chart 显示区域图。 这是围绕 st.altair_chart 的语法糖。主要区别在于该命令使用数据自身的列和指数来计算图表的 Altair 规格。因此,在许多 "只需绘制此图 "的情况下,该命令更易于使用,但可定制性较差。 如果 st.area_chart 无法正确猜测数据规格,请尝试使用 st.altair_chart 指定所需的图表。 Function signa

python实现最简单循环神经网络(RNNs)

Recurrent Neural Networks(RNNs) 的模型: 上图中红色部分是输入向量。文本、单词、数据都是输入,在网络里都以向量的形式进行表示。 绿色部分是隐藏向量。是加工处理过程。 蓝色部分是输出向量。 python代码表示如下: rnn = RNN()y = rnn.step(x) # x为输入向量,y为输出向量 RNNs神经网络由神经元组成, python

python 喷泉码

因为要完成毕业设计,毕业设计做的是数据分发与传输的东西。在网络中数据容易丢失,所以我用fountain code做所发送数据包的数据恢复。fountain code属于有限域编码的一部分,有很广泛的应用。 我们日常生活中使用的二维码,就用到foutain code做数据恢复。你遮住二维码的四分之一,用手机的相机也照样能识别。你遮住的四分之一就相当于丢失的数据包。 为了实现并理解foutain

python 点滴学

1 python 里面tuple是无法改变的 tuple = (1,),计算tuple里面只有一个元素,也要加上逗号 2  1 毕业论文改 2 leetcode第一题做出来

Python爬虫-贝壳新房

前言 本文是该专栏的第32篇,后面会持续分享python爬虫干货知识,记得关注。 本文以某房网为例,如下图所示,采集对应城市的新房房源数据。具体实现思路和详细逻辑,笔者将在正文结合完整代码进行详细介绍。接下来,跟着笔者直接往下看正文详细内容。(附带完整代码) 正文 地址:aHR0cHM6Ly93aC5mYW5nLmtlLmNvbS9sb3VwYW4v 目标:采集对应城市的