python - TypeError:'float' 对象在 Python 中不可下标“对于双 for 循环中的递归方程,可能与索引相关的问题”
问题描述
我试图用一些 AMVA(近似均值分析)来表示现实生活中的谷仓(封闭排队网络)问题。我有 6 个递归方程要计算。我得到这个TypeError: 'float' object is not subscriptable for my code 的最后一行。我认为这可能与索引有关,但我当然不确定。我将不胜感激任何可以帮助我的想法。
import math
H = 10 #number of cows
c = [0,1,1,12,3,27,H] #capacity of the stations
v = [0,0.164,0.155,0.235,0.17,0.276,1] #relative visit frequencies to the stations
s = [0,8.41,6.38,15.0,3.18,38.9,5.36] #mean service times
sigma = [0,2.52,6.25,11.9,2.3,60.3,0] #st. dev. of service times
R = [0] #residual service times
for i in range(1,7):
r = (s[i]/2)*(1+((sigma[i]/s[i])**2))
R.append(r)
W = [[0 for x in range (7)] for y in range (H+1)] #mean waiting time at station i
S = [[0 for x in range (7)] for y in range (H+1)] #mean visit time at station i (waiting + service time)
ARRIVAL = [[0 for x in range (7)] for y in range (H+1)] #mean number of visits per time unit to station i
L = [[0 for x in range (7)] for y in range (H+1)] #mean number of cows waiting at station i
UTIL = [[0 for x in range (7)] for y in range (H+1)] #server utilization at station i
Q = [[0 for x in range (7)] for y in range (H+1)] #probability that all servers are busy at station i
for h in range(1,H+1): #Recursive equations (to find variables when h = 2, we need variables when h = 1 for example)
for i in range(1,7):
W[h][i] = Q[h-1][i]*R[i]/c[i] + L[h-1][i]*s[i]/c[i]
S[h][i] = W[h][i] + s[i]
ARRIVAL[h][i] = (v[i]*h) / (sum(v[i]*S[h][i] for i in range(1,7)))
L[h][i] = ARRIVAL[h][i] * W[h][i]
UTIL = (ARRIVAL[h][i]*s[i])/c[i]
if h < c[i]:
Q[h][i] = 0
else:
Q[h][i] = (((c[i]*UTIL[h][i])**c[i])/math.factorial(c[i]))*((1-UTIL[h][i])*sum(((c[i]*UTIL[h][i])**k)/math.factorial(k) for k in range(c[i]-1))+(((c[i]*UTIL[h][i])**c[i])/math.factorial(c[i])))**-1
解决方案
推荐阅读
- javascript - React Native - OnSetGlobal - 承诺?或其他解决方案?
- ios - 如何在 SwiftUI 中为应用程序制作自定义导航栏?
- python-3.x - 如何在类中正确分配不同的变量而不影响它基于的类变量[python]
- angular - 具有相同路径的Angular 2模块
- elasticsearch - spark-elasticsearch连接器是否支持读取es索引的数据多于一个并行
- google-bigquery - Google Data Studio:将用户输入写回 Google Big Query 表
- javascript - 关闭所有模态引导程序
- primefaces - 如何在 CartesianChartModel 中添加动态设置的标签。以及java中每个标签的2条
- c# - 为什么 HttpRequestMessage 解码我的编码字符串
- apache-kafka - 如何让消费者始终从最后一次按摩开始阅读?