请原谅我的密码,我是新来的,不太像Python。我正在努力建立一个基本的模拟监视器。最好使用Simpy的Monitor类。你知道吗
我已经定义了三个比萨饼的概率分布,每个比萨饼都有不同的配料。我想模拟1000天的订单,为每种配料的每日需求量生成概率分布。我的代码生成了一个平均值,但我也需要方差,而对于清洁度,我宁愿只监视输出。你知道吗
我确信这很简单,因为无法让Monitor()和.observ()代码正常工作。有什么帮助吗?干杯!!你知道吗
下面的p.s.披萨配料不一定反映作者的喜好。你知道吗
import numpy as np
import random, sys
from SimPy.Simulation import *
class g:
crust = 0
cheese = 0
pepperoni = 0
pineapple = 0
olive = 0
def pepperoni_pizza():
mean = 10 #average pepperoni pizzas ordered
std = 2 #standard deviation of pizzas ordered
norders = np.random.normal(mean, std) #draw random value
g.crust += norders * 10 #value indicates the amount of ingredient required for this pizza
g.cheese += norders * 5
g.pepperoni += norders * 5
g.pineapple += norders * 0
g.olive += norders * 5
def pineapple_pizza():
mean = 20
std = 6
norders = np.random.normal(mean, std)
g.crust += norders * 10
g.cheese += norders * 0
g.pepperoni += norders * 0
g.pineapple += norders * 5
g.olive += norders * 5
def cheese_pizza():
mean = 7
std = 3
norders = np.random.normal(mean, std)
g.crust += norders * 10
g.cheese += norders * 10
g.pepperoni += norders * 0
g.pineapple += norders * 0
g.olive += norders * 5
def main():
nreps = 1000
for rep in range(nreps):
while True:
pepperoni_pizza()
pineapple_pizza()
cheese_pizza()
break
print 'crust needed =', g.crust/float(nreps)
print 'cheese needed =', g.cheese/float(nreps)
print 'pepperoni needed =', g.pepperoni/float(nreps)
print 'pineapple needed =', g.pineapple/float(nreps)
print 'olive needed =', g.olive/float(nreps)
if __name__ == '__main__': main()
目前没有回答
相关问题 更多 >
编程相关推荐