teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

編集

2018/06/27 09:53

投稿

Hayato1201
Hayato1201

スコア232

title CHANGED
File without changes
body CHANGED
@@ -28,6 +28,8 @@
28
28
  ```Python
29
29
  import networkx as nx
30
30
 
31
+ routing_nodes = np.full([self.ACTIVE_NODES]*2, -1.0, dtype=int)
32
+
31
33
  all_shortest = list(nx.all_pairs_dijkstra_path(self.graph))
32
34
 
33
35
  for s in range(self.ACTIVE_NODES):

1

追記

2018/06/27 09:53

投稿

Hayato1201
Hayato1201

スコア232

title CHANGED
File without changes
body CHANGED
@@ -17,4 +17,29 @@
17
17
  routing_ports[s][d] = -1
18
18
  ```
19
19
 
20
- ある論文に載っていたプログラムです。その為動くとは思うのですがエラーが出ているという事は何かしら環境に問題があると思います。他の部分でnetworkxのバージョンの違いによるエラーがあったので、これもnx.all_pairs_dijkstra_path(self.graph)の戻り値であるall_shortestに何か問題があるのでは無いかと思います。しかしそもそもこのエラーはどういう事なのでしょうか?
20
+ ある論文に載っていたプログラムです。その為動くとは思うのですがエラーが出ているという事は何かしら環境に問題があると思います。他の部分でnetworkxのバージョンの違いによるエラーがあったので、これもnx.all_pairs_dijkstra_path(self.graph)の戻り値であるall_shortestに何か問題があるのでは無いかと思います。しかしそもそもこのエラーはどういう事なのでしょうか?
21
+
22
+
23
+ 追記ーーーーーーーーーーーーーーーーーー
24
+
25
+ 以下の様にしました。
26
+ すると今度は別の場所でValueError: setting an array element with a sequence.となります、、、
27
+
28
+ ```Python
29
+ import networkx as nx
30
+
31
+ all_shortest = list(nx.all_pairs_dijkstra_path(self.graph))
32
+
33
+ for s in range(self.ACTIVE_NODES):
34
+ for d in range(self.ACTIVE_NODES):
35
+ if s != d:
36
+ next = all_shortest[s][d][1]
37
+ port = self.ports[s][next]
38
+ routing_nodes[s][d] = next #ここでValueError: setting an array element with a sequence.
39
+ routing_ports[s][d] = port
40
+ else:
41
+ routing_nodes[s][d] = -1
42
+ routing_ports[s][d] = -1
43
+
44
+ ```
45
+ 今度はどういう事でしょうか?