예제 #1
0
 public void BestFirstFrontierSearchAllGraphs()
 {
     foreach (var g in TestGraphFactory.GetBidirectionalGraphs())
     {
         RunSearch(g);
     }
 }
예제 #2
0
 public void ComputeAll()
 {
     foreach (var g in TestGraphFactory.GetBidirectionalGraphs())
     {
         this.Compute(g);
     }
 }
예제 #3
0
 public void OutDegreeSumEqualsEdgeCountAll()
 {
     foreach (var g in TestGraphFactory.GetBidirectionalGraphs())
     {
         this.OutDegreeSumEqualsEdgeCount(g);
     }
 }
 public void BestFirstFrontierSearchAllGraphs()
 {
     foreach (BidirectionalGraph <string, Edge <string> > graph in TestGraphFactory.GetBidirectionalGraphs())
     {
         RunSearch(graph);
     }
 }
예제 #5
0
 public void ComputeAll()
 {
     foreach (BidirectionalGraph <string, Edge <string> > graph in TestGraphFactory.GetBidirectionalGraphs())
     {
         Compute(graph);
     }
 }
예제 #6
0
 public void SortAll()
 {
     foreach (BidirectionalGraph <string, Edge <string> > graph in TestGraphFactory.GetBidirectionalGraphs())
     {
         Sort(graph, TopologicalSortDirection.Forward);
         Sort(graph, TopologicalSortDirection.Backward);
     }
 }
예제 #7
0
 public void SortAll()
 {
     foreach (var g in TestGraphFactory.GetBidirectionalGraphs())
     {
         this.Sort(g, TopologicalSortDirection.Forward);
         this.Sort(g, TopologicalSortDirection.Backward);
     }
 }
        public void CompareBestFirstFrontierSearchAllGraphs()
        {
            Parallel.ForEach(TestGraphFactory.GetBidirectionalGraphs(), g =>
            {
                if (g.VertexCount == 0)
                {
                    return;
                }

                var root = g.Vertices.First();
                foreach (var v in g.Vertices)
                {
                    if (!root.Equals(v))
                    {
                        CompareSearch(g, root, v);
                    }
                }
            });
        }
예제 #9
0
        public void CompareBestFirstFrontierSearchAllGraphs()
        {
            foreach (var g in TestGraphFactory.GetBidirectionalGraphs())
            {
                if (g.VertexCount == 0)
                {
                    continue;
                }

                var root = g.Vertices.First();
                foreach (var v in g.Vertices)
                {
                    if (!root.Equals(v))
                    {
                        CompareSearch(g, root, v);
                    }
                }
            }
        }
        public void CompareBestFirstFrontierSearchAllGraphs()
        {
            foreach (BidirectionalGraph <string, Edge <string> > graph in TestGraphFactory.GetBidirectionalGraphs())
            {
                if (graph.VertexCount == 0)
                {
                    continue;
                }

                string root = graph.Vertices.First();
                foreach (string vertex in graph.Vertices)
                {
                    if (!root.Equals(vertex))
                    {
                        CompareSearch(graph, root, vertex);
                    }
                }
            }
        }
예제 #11
0
        public void HoffmanPavleyRankedShortestPathAll()
        {
            foreach (BidirectionalGraph <string, Edge <string> > graph in TestGraphFactory.GetBidirectionalGraphs())
            {
                if (graph.VertexCount == 0)
                {
                    continue;
                }

                var weights = new Dictionary <Edge <string>, double>();
                foreach (Edge <string> edge in graph.Edges)
                {
                    weights.Add(edge, graph.OutDegree(edge.Source) + 1);
                }

                RunHoffmanPavleyRankedShortestPathAndCheck(
                    graph,
                    weights,
                    graph.Vertices.First(),
                    graph.Vertices.Last(),
                    graph.VertexCount);
            }
        }
예제 #12
0
        public void HoffmanPavleyRankedShortestPathAll()
        {
            Parallel.ForEach(TestGraphFactory.GetBidirectionalGraphs(), g =>
            {
                if (g.VertexCount == 0)
                {
                    return;
                }

                var weights = new Dictionary <Edge <string>, double>();
                foreach (var e in g.Edges)
                {
                    weights.Add(e, g.OutDegree(e.Source) + 1);
                }

                this.HoffmanPavleyRankedShortestPath(
                    g,
                    weights,
                    Enumerable.First(g.Vertices),
                    Enumerable.Last(g.Vertices),
                    g.VertexCount
                    );
            });
        }
 public void ComputeAll()
 {
     Parallel.ForEach(TestGraphFactory.GetBidirectionalGraphs(), g =>
                      this.Compute(g));
 }
 public void BestFirstFrontierSearchAllGraphs()
 {
     Parallel.ForEach(TestGraphFactory.GetBidirectionalGraphs(), g =>
                      RunSearch(g));
 }