问题一代码:
import networkx as nx
# 读取附件中的交通网络数据
G = nx.read_adjlist("attachment2.txt", nodetype=int)# 定义函数来计算期望可达率
def expected_reachability(G, edge_failure_probabilities):
total_demand = sum(G[u][v]['demand'] for u, v in G.edges())
total_reachable_demand = 0for u, v in G.edges():
# 计算边(u, v)上的可达率
edge_demand = G[u][v]['demand']
edge_reachability = 1 - edge_failure_probabilities[(u, v)]
total_reachable_demand += edge_demand * edge_reachabilityreturn total_reachable_demand / total_demand
# 计算每条边的故障概率,假设每个边的故障概率相同(此处可根据实际情况调整)
edge_failure_probabi