質問編集履歴
2
編集
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
追記
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
|
+
今度はどういう事でしょうか?
|