)

print(obs)

print("\nPath in terms of arcs:")
for path in obs:
    string = "Orig: "
    f = "Empty Path, should not happen"
    for arc_index in path:
        string += f"-{arc_index + 1}- => "
    string += ": Dest"

    print(string)

obs_fname = "my_networks_obs2.json"
write_obs_to_json(obs_fname, obs, allow_rewrite=True)

# np.core.arrayprint._line_width = 500
# obs_fname = 'my_networks_obs.json'
obs_lil = load_obs_from_json(obs_fname)
obs_ak = ak.from_json(obs_fname)
print("len ", len(obs_ak))

# silly levels of inefficiency but will fix later

# obs = np.array(obs_lil)
# obs = scipy.sparse.dok_matrix(obs_lil)

#
# DATA
distances = np.array(
        string += f"({s}) -> "
    string += ": Dest"

    print(string)
print("\nreport arcs and nodes")
for path in obs:
    string = "Orig: "
    f = "Empty Path, should not happen"
    for arc_index in path:
        if arc_index == len(index_node_pair_map):
            # pass
            continue  # we are at the dummy dest arc
        s, f = index_node_pair_map[arc_index]
        string += f"({s}) -{arc_index + 1}- => "
    string += ": Dest"

    print(string)

print("\nPath in terms of arcs:")
for path in obs:
    string = "Orig: "
    f = "Empty Path, should not happen"
    for arc_index in path:
        string += f"-{arc_index + 1}- => "
    string += ": Dest"

    print(string)

print(obs)
write_obs_to_json("sioux_out_obs.json", obs, allow_rewrite=True)
Beispiel #3
0
                                      mu=1)
# obs_indices = [i for i in range(8)]
# obs = model.generate_observations(origin_indices=obs_indices,
#                                   dest_indices=obs_indices,
#                                   num_obs_per_pair=1, iter_cap=2000, rng_seed=1,
#                                   )
obs_indices = [0, 1, 2, 3, 4, 5, 6, 7]
dest_indices = [0, 1, 2, 3, 4, 5, 6, 7]
obs = model.generate_observations(
    origin_indices=obs_indices,
    dest_indices=dest_indices,
    num_obs_per_pair=2,
    iter_cap=2000,
    rng_seed=1,
)

print(obs)

print("\nPath in terms of arcs:")
for path in obs:
    string = "Orig: "
    f = "Empty Path, should not happen"
    for arc_index in path:
        string += f"-{arc_index + 1}- => "
    string += ": Dest"

    print(string)

print(obs)
write_obs_to_json("my_networks_obs.json", obs, allow_rewrite=True)
# network_struct = ModelDataStruct(data_list, incidence_mat,
#                                           data_array_names_debug=("distances", "capacity"))
#
# beta_vec = np.array([-0.7, -0.0001])
network_struct = ModelDataStruct(data_list, incidence_mat,
                                          data_array_names_debug=("distances",))

beta_vec = np.array([-0.4])
model = RecursiveLogitModelPrediction(network_struct,
                                      initial_beta=beta_vec, mu=1)
# orig_indices = np.arange(1, 70, 50)
orig_indices = [12]
# dest_indices = np.arange(1, 8, 2)
dest_indices = [5]
obs_per_pair = 1000
obs = model.generate_observations(origin_indices=orig_indices, dest_indices=dest_indices,
                                  num_obs_per_pair=obs_per_pair, iter_cap=8000, rng_seed=1,
                                  )
# print(obs)

# Print paths in terms of nodes
print("\nNode Paths")
for path in obs:
    print([i +1 for i in path[1:]])
print(obs)
from recursiveRouteChoice.data_loading import write_obs_to_json
write_obs_to_json(f"beta{beta_vec[0]}obs.json", obs, allow_rewrite=False)
#
# print(obs)
# write_obs_to_json("sioux_out_obs.json", obs, allow_rewrite=True)