Skip to content

Instantly share code, notes, and snippets.

@harishkashyap
Created December 21, 2022 05:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save harishkashyap/ae502e7951dd89f0a062e3b5648016aa to your computer and use it in GitHub Desktop.
Save harishkashyap/ae502e7951dd89f0a062e3b5648016aa to your computer and use it in GitHub Desktop.
risk and outage probability
# enter first two supplier values in a list
def compute_risk(cost_map, quality_map, outage_map, min_risk, max_risk, hyp_traffic_list):
outage_risk_val = 0.0
param_list = []
if len(hyp_traffic_list) == 3:
param_list = hyp_traffic_list[0:2]
elif len(hyp_traffic_list) == 2:
param_list = hyp_traffic_list[0:1]
else:
raise 'ValueError'
risk_val = optimization_risk(param_list, cost_map, quality_map, risk_type='MIN')
risk_val = (risk_val - min_risk)/(max_risk - min_risk)
for i in range(0, len(hyp_traffic_list)):
outage_risk_val += hyp_traffic_list[i]*outage_map[i]
outage_risk_val = outage_risk_val/100.0
return risk_val, outage_risk_val
user_override_traffic = {'38521-1': 10, '62743-1': 30, '38521-2': 60}
# enter first two supplier values in a list
risk_value, outage_risk_val = compute_risk(cost_map, quality_map, outage_map, risk_min, risk_max, [10, 30, 60])
print(risk_value, outage_risk_val)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment