Patents by Inventor Daniel Delling

Daniel Delling has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8738559
    Abstract: Graph partitioning techniques are based on the notion of natural cuts. A filtering phase performs a series of minimum cut computations to identify and contract dense regions of the graph. This reduces the graph size significantly, but preserves its general structure. An assembly phase uses a combination of greedy and local search heuristics to assemble the final partition. The techniques may be used on road networks, which have an abundance of natural cuts (such as bridges, mountain passes, and ferries).
    Type: Grant
    Filed: January 24, 2011
    Date of Patent: May 27, 2014
    Assignee: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Ilya Razenshteyn, Renato F. Werneck
  • Publication number: 20140129594
    Abstract: Techniques are described for graph partitioning, and in particular, graph bisection. A combinatorial lower bound is provided that is computed in near-linear time. These bounds may be used to determine optimum solutions to real-world graphs with many vertices (e.g., more than a million for road networks, or tens of thousands for VLSI and mesh instances). Combinatorial techniques that reduce the size of the branch-and-bound search tree may use tree packing, assign vertices to trees, and use fractional assignment of vertices to trees. For graph bisection, each node of the branch-and-bound tree corresponds to a partial assignment of vertices to both cells or sets of vertices.
    Type: Application
    Filed: November 4, 2012
    Publication date: May 8, 2014
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Renato F. Werneck
  • Publication number: 20140107921
    Abstract: A point-to-point shortest path technique supports real-time queries and fast metric update or replacement (metric customization). Determining a shortest path between two locations uses three stages: a preprocessing stage, a metric customization stage, and a query stage. Extensions to the customizable route planning (CRP) technique for routing are provided. These extensions include, for example, the computation of alternative routes, faster techniques for unpacking shortcuts, efficient query techniques for batched shortest path (one-to-many, many-to-many, and points of interest) determinations, and determining routes and alternative routes using traffic information.
    Type: Application
    Filed: October 11, 2012
    Publication date: April 17, 2014
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Renato F. Werneck
  • Patent number: 8583363
    Abstract: Alternative routes to an optimal route may be determined and presented to a user via a computing device. Alternative routes are selected from candidate routes that meet admissibility criteria. In an implementation, admissibility of a candidate route (in order for it to be considered an alternative route) may be determined based on three criteria: “limited sharing”, “local optimality”, and “stretch” such as “uniformly bounded stretch”. Limited sharing refers to the amount of difference between the alternative route and the optimal route, local optimality refers to lack of unnecessary detours, and uniformly bounded stretch refers to a length of the shortest path to travel between two points on the alternative route.
    Type: Grant
    Filed: May 26, 2010
    Date of Patent: November 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Ittai Abraham, Daniel Delling, Andrew V. Goldberg, Renato F. Werneck
  • Publication number: 20130268549
    Abstract: Techniques are described for graph partitioning, and in particular, graph bisection. A lower bound is provided that is computed in near-linear time. These bounds may be used to determine optimum solutions to real-world graphs with many vertices (e.g., more than a million for road networks, or tens of thousands for VLSI and mesh instances). A packing lower bound technique determines lower bounds in a branch-and-bound tree, reducing the number of tree nodes. Techniques are employed to assign vertices without branching on them, again reducing the size of the tree. Decomposition is provided to translate an input graph into less complex subproblems. The decomposition boosts performance and determines the optimum solution to an input by solving subproblems independently. The subproblems can be solved independently using a branch-and-bound approach to determine the optimum bisection.
    Type: Application
    Filed: April 4, 2012
    Publication date: October 10, 2013
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Ilya Razenshteyn, Renato F. Werneck
  • Publication number: 20130261965
    Abstract: Hub based labeling is used to determine a shortest path between two locations. Every point has a label, which consists of a set of hubs along with the distance from the point to all those hubs. The hubs are determined that intersect the two labels, and this information is used to find the shortest distance. A hub based labeling technique uses a preprocessing stage and a query stage. Finding the hubs is performed in the preprocessing stage, and finding the intersecting hubs (i.e., the common hubs they share) is performed in the query stage. During preprocessing, a forward label and a reverse label are defined for each vertex. A query is processed using the labels to determine the shortest path. Hub label compression may be used to preserve the use of labels but reduce space usage.
    Type: Application
    Filed: May 30, 2013
    Publication date: October 3, 2013
    Inventors: Daniel Delling, Andrew V Goldberg, Renato F. Werneck
  • Publication number: 20130231862
    Abstract: Customizable route planning is a technique for computing point-to-point shortest paths in road networks. It includes three phases: preprocessing, customization, and queries. The preprocessing phase partitions a graph into multiple levels of loosely connected components of bounded size and creates an overlay graph for each level by replacing each component with a clique connecting its boundary vertices. Clique edge lengths are computed during the customization phase. The query phase comprises a bidirectional Dijkstra's algorithm operating on the union of the overlay graphs and the components of the original graph containing the origin and the destination. The customization may be made even faster, enabling a wide range of applications including highly dynamic applications and on-line personalized cost functions. In an implementation, to compute overlay arc costs, Dijkstra's algorithm may be supplemented or replaced by other techniques, such as contraction and the Bellman-Ford algorithm.
    Type: Application
    Filed: April 23, 2013
    Publication date: September 5, 2013
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Renato F. Werneck
  • Patent number: 8494771
    Abstract: Optimum journeys in public transportation networks are determined. The determination of Pareto optimal journeys from one stop to another stop in a public transportation network uses the criteria travel time and minimum transfers. A technique for bi-criteria journey planning using the aforementioned criteria in public transportation networks operates in rounds (K rounds at most), where after round k (k?K), arrival times are computed for the stops that can be reached with up to k trips.
    Type: Grant
    Filed: September 7, 2011
    Date of Patent: July 23, 2013
    Assignee: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Thomas Pajor, Renato F. Werneck
  • Publication number: 20130132369
    Abstract: A batched shortest path problem, such as a one-to-many problem, is solved on a graph by using a preprocessing phase, a target selection phase, and then, in a query phase, computing the distances from a given source in the graph with a linear sweep over all the vertices. Contraction hierarchies may be used in the preprocessing phase and in the query phase. Optimizations may include reordering the vertices in advance to exploit locality and using parallelism.
    Type: Application
    Filed: November 17, 2011
    Publication date: May 23, 2013
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Renato F. Werneck
  • Publication number: 20130060468
    Abstract: Optimum journeys in public transportation networks are determined. The determination of Pareto optimal journeys from one stop to another stop in a public transportation network uses the criteria travel time and minimum transfers. A technique for bi-criteria journey planning using the aforementioned criteria in public transportation networks operates in rounds (K rounds at most), where after round k (k?K), arrival times are computed for the stops that can be reached with up to k trips.
    Type: Application
    Filed: September 7, 2011
    Publication date: March 7, 2013
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Thomas Pajor, Renato F. Werneck
  • Patent number: 8364717
    Abstract: The non-negative single-source shortest path (NSSP) problem is solved on a graph by using a preprocessing phase and then, in a query phase, computing the distances from a given source in the graph with a linear sweep over all the vertices. Contraction hierarchies may be used in the preprocessing phase and in the query phase. Optimizations may include reordering the vertices in advance to exploit locality, performing multiple NSSP computations simultaneously, marking vertices during initialization, and using parallelism. Techniques may be performed on a graphics processing unit (GPU). This makes applications based on all-pairs shortest-paths practical for continental-sized road networks. The applications include, for example, computing graph diameter, exact arc flags, and centrality measures such as exact reaches or betweenness.
    Type: Grant
    Filed: January 10, 2011
    Date of Patent: January 29, 2013
    Assignee: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Andreas Nowatzyk, Renato F. Werneck
  • Publication number: 20120310523
    Abstract: A point-to-point shortest path technique supports real-time queries and fast metric update or replacement (metric customization). Arbitrary metrics (cost functions) are supported without significant degradation in performance. Determining a shortest path between two locations uses three stages: a preprocessing stage, a metric customization stage, and a query stage. Preprocessing is based on a graph structure only, while metric customization augments preprocessing results taking edge costs into account. The preprocessing partitions the graph into loosely connected components of bounded size and creates an overlay graph by replacing each component with a “clique” connecting its boundary vertices. Clique edge lengths are computed during the customization phase. The customization phase can be repeated for various different metrics, and produces a small amount of data for each. The query phase is run using the metric-independent data together with the relevant metric-specific data.
    Type: Application
    Filed: June 3, 2011
    Publication date: December 6, 2012
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Renato F. Wemeck, Andrew V. Goldberg, Thomas Pajor
  • Publication number: 20120254597
    Abstract: A distributed data-parallel execution (DDPE) system splits a computational problem into a plurality of sub-problems using a branch-and-bound algorithm, designates a synchronous stop time for a “plurality of processors” (for example, a cluster) for each round of execution, processes the search tree by recursively using a branch-and-bound algorithm in multiple rounds (without inter-processor communications), determines if further processing is required based on the processing round state data, and terminates processing on the processors when processing is completed.
    Type: Application
    Filed: March 29, 2011
    Publication date: October 4, 2012
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Mihai Budiu, Renato F. Werneck
  • Publication number: 20120250535
    Abstract: Hub based labeling is used to determine a shortest path between two locations. Every point has a set of hubs: this is the label (along with the distance from the point to all those hubs). The hubs are determined using the labels. The hubs are determined that intersect the two labels, and this information is used to find the shortest distance. A hub based labeling technique uses a preprocessing stage and a query stage. Finding the hubs is performed in the preprocessing stage, and finding the intersecting hubs (i.e., the common hubs they share) is performed in the query stage. During preprocessing, a forward label and a reverse label are defined for each vertex. The labels are generated using contraction hierarchies that may be guided by shortest path covers, and may be pruned. A query is processed using the labels to determine the shortest path.
    Type: Application
    Filed: March 31, 2011
    Publication date: October 4, 2012
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Ittai Abraham, Renato F. Werneck, Andrew V. Goldberg
  • Publication number: 20120254153
    Abstract: Hub based labeling is used, in databases, to determine a shortest path between two locations. Every point has a set of hubs: this is the label (along with the distance from the point to all those hubs). The hubs are determined that intersect the two labels. This information is used to find the shortest distance. A hub based labeling technique uses, in a database, a preprocessing stage and a query stage. Finding the hubs is performed in the preprocessing stage, and finding the intersecting hubs is performed in the query stage using relational database operators, such as SQL queries. During preprocessing, a forward label and a reverse label are defined for each vertex. The labels are generated using contraction hierarchies that may be guided by shortest path covers. A query, such as an SQL query, is processed using the labels to determine the shortest path.
    Type: Application
    Filed: November 2, 2011
    Publication date: October 4, 2012
    Applicant: Microsoft Corporation
    Inventors: Ittai Abraham, Daniel Delling, Andrew V. Goldberg, Renato F. Werneck
  • Publication number: 20120192138
    Abstract: Graph partitioning techniques are based on the notion of natural cuts. A filtering phase performs a series of minimum cut computations to identify and contract dense regions of the graph. This reduces the graph size significantly, but preserves its general structure. An assembly phase uses a combination of greedy and local search heuristics to assemble the final partition. The techniques may be used on road networks, which have an abundance of natural cuts (such as bridges, mountain passes, and ferries).
    Type: Application
    Filed: January 24, 2011
    Publication date: July 26, 2012
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Ilya Razenshteyn, Renato F. Werneck
  • Publication number: 20120179674
    Abstract: The non-negative single-source shortest path (NSSP) problem is solved on a graph by using a preprocessing phase and then, in a query phase, computing the distances from a given source in the graph with a linear sweep over all the vertices. Contraction hierarchies may be used in the preprocessing phase and in the query phase. Optimizations may include reordering the vertices in advance to exploit locality, performing multiple NSSP computations simultaneously, marking vertices during initialization, and using parallelism. Techniques may be performed on a graphics processing unit (GPU). This makes applications based on all-pairs shortest-paths practical for continental-sized road networks. The applications include, for example, computing graph diameter, exact arc flags, and centrality measures such as exact reaches or betweenness.
    Type: Application
    Filed: January 10, 2011
    Publication date: July 12, 2012
    Applicant: Microsoft Corporation
    Inventors: Daniel Delling, Andrew V. Goldberg, Andreas Nowatzyk, Renato F. Werneck
  • Publication number: 20110295497
    Abstract: Alternative routes to an optimal route may be determined and presented to a user via a computing device. Alternative routes are selected from candidate routes that meet admissibility criteria. In an implementation, admissibility of a candidate route (in order for it to be considered an alternative route) may be determined based on three criteria: “limited sharing”, “local optimality”, and “stretch” such as “uniformly bounded stretch”. Limited sharing refers to the amount of difference between the alternative route and the optimal route, local optimality refers to lack of unnecessary detours, and uniformly bounded stretch refers to a length of the shortest path to travel between two points on the alternative route.
    Type: Application
    Filed: May 26, 2010
    Publication date: December 1, 2011
    Applicant: Microsoft Corporation
    Inventors: Ittai Abraham, Daniel Delling, Andrew V. Goldberg, Renato F. Werneck