Esempio n. 1
0
""" Run it like:
    $ python benchmark.py < inputs/BR.txt
"""

from timeit import timeit

from graph import Graph
from dijkstra import dijkstra
from dijkstra_h import dijkstra_h

G = Graph()
G.build_graph()

s = 2646
print timeit(lambda: dijkstra(G, s), number=1)
print timeit(lambda: dijkstra_h(G, s), number=1)

# output for BR.txt
#2.55977678299
#0.0487070083618

# output for map.txt
#0.00156283378601
#0.000765800476074
Esempio n. 2
0
from graph import Graph
from kruskal import kruskal
from dijkstra_h import path, dijkstra_h

G = Graph()
G.build_graph()

# minimmum spanning tree
mst = kruskal(G)
length = sum([edge.weight for edge in mst])
print length

# shortest path from city s to f
s = 93
f = 112
d, p = dijkstra_h(G, s)
print d[f]

# shortest path tree from city s
s = 104
d, p = dijkstra_h(G, s)
edges = []
for v in G.vertices():
    edges += path(p, s, v)
edges = set(edges)
cost = 0
for a, b in edges:
    cost += G.weight(a, b)
print cost
Esempio n. 3
0
""" Run it like:
    $ python benchmark.py < inputs/BR.txt
"""

from timeit import timeit

from graph import Graph
from dijkstra import dijkstra
from dijkstra_h import dijkstra_h


G = Graph()
G.build_graph()

s = 2646
print timeit(lambda : dijkstra(G, s), number=1)
print timeit(lambda : dijkstra_h(G, s), number=1)


# output for BR.txt
#2.55977678299
#0.0487070083618

# output for map.txt
#0.00156283378601
#0.000765800476074

Esempio n. 4
0
from dijkstra_h import path, dijkstra_h


G = Graph()
G.build_graph()


# minimmum spanning tree
mst = kruskal(G)
length = sum([edge.weight for edge in mst])
print length


# shortest path from city s to f
s = 93; f = 112
d, p = dijkstra_h(G, s) 
print d[f]


# shortest path tree from city s
s = 104
d, p = dijkstra_h(G, s)
edges = []
for v in G.vertices():
    edges += path(p, s, v)
edges = set(edges)
cost = 0
for a, b in edges:
    cost += G.weight(a, b)
print cost