simpy中的资源

0 投票
2 回答
914 浏览
提问于 2025-04-18 04:31

有人能帮我入门一下simpy模拟吗?我刚接触simpy,觉得编程非常困难。这里有个场景:

工厂里有不同的工作流程来处理工作。 这些工作流程决定了使用哪些机器。机器之间是不同的。 操作员需要同时操作几台机器——只要有工作可做,就要让机器保持忙碌。

任何帮助都非常感谢。

2 个回答

0

我建议你先看看文档和一些示例。不过,有几个重要的功能你可能需要在文档中关注一下:

class Machine(env):
     products = simpy.resouce(env, capacity=10) // 10 products for Machine1
    # any other properties and functions you want a machine to have

class Consumer(env, machine1):
    simpy.process(ConsumeProduct(env, machine1.products))
    def ConsumeProduct(env, machine1):
        #yield machine1.request() #waits for the resource to free up

以上这些应该能帮助你入门。你可以创建很多不同的机器,使用一些相似的资源。接着,你会在一个循环中创建一堆消费者,这些消费者会向机器请求资源,而Simpy会帮你管理排队的事情。这样,当你把OOPSimpy结合起来时,就能稍微控制一下混乱的局面。

4

你可以先从这个教程入手,跟着它一步步学习,同时可以试试这里的示例

接下来,尝试建模并实现一个简单的例子。如果一切正常,就慢慢扩展你的代码;如果发现方向不对,也可以选择放弃重新开始。

可以看看这些主题指南(虽然还有一些指南缺失,但很快就会补上),同时也可以使用API参考

如果文档没有帮到你,可以通过这个邮件列表联系社区,寻求帮助。

撰写回答