Pluggable route-planning module
Abstract
Among other things, one or more techniques and/or systems are provided for configuring a route-planning module using one or more configuration plug-ins. The route-planning module may be configured to create a driving route, an internet packet route, a social event route, and/or a variety of other routes. A graph used by the route-planning module to create a route may be modified by a graph configuration plug-in, which may add, remove, and/or modify nodes and/or edges within the graph. Attributes associated with edges and/or nodes within the graph may be added, removed, and/or modified by an attribute configuration plug-in. Costs associated with edges and/or turns from a first edge to a second edge at a node may be modified by a cost configuration plug-in. In this way, the route-planning module may be customized using one or more configuration plug-ins (e.g., to accommodate user preferences).
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A system for configuring a route-planning module, comprising:
one or more processing units; and memory comprising instructions that when executed by at least one of the one or more processing units perform operations comprising:
applying a graph configuration plug-in to a graph to create a modified graph, the applying comprising modifying a structure of the graph based upon graph configuration data specified by the graph configuration plug-in.
2 . The system of claim 1 , the graph configuration data comprising at least one of:
remove a directed edge from the graph; add a directed edge to the graph; remove a node and one or more directed edges associated with the node from the graph; or add a node to the graph and one or more directed edges associated with the node.
3 . The system of claim 1 , the route-planning module comprising at least one of a traffic routing module, a social event planning module, a social network module, a trip planning module, a public transportation module, or an internet traffic routing module.
4 . The system of claim 1 , the graph comprising one or more nodes connected by one or more directed edges.
5 . The system of claim 1 , the graph configuration data extracted from a source external to the route-planning module.
6 . The system of claim 1 , the operations comprising:
evaluating attributes associated with nodes and directed edges within the modified graph to create a route from a starting node to a destination node.
7 . A computer readable device comprising instructions that when executed perform a method for configuring a route-planning module, comprising:
applying an attribute configuration plug-in to a collection of attributes associated with a first directed edge from a first node to a second node within a graph to create a modified collection of attributes for the directed edge, the applying comprising modifying the collection of attributes based upon attribute configuration data specified by the attribute configuration plug-in.
8 . The computer readable device of claim 7 , the attribute configuration data comprising at least one of:
add a new attribute to the collection of attributes; remove an attribute from the collection of attributes; modify an attribute within the collection of attributes; or modify a value of an attribute within the collection of attributes.
9 . The computer readable device of claim 7 , the method comprising:
applying a cost configuration plug-in to the modified collection of attributes to create a modified edge cost for the directed edge.
10 . The computer readable device of claim 9 , the applying a cost configuration plug-in comprising calculating an inner product between the modified collection of attributes and cost configuration data of the cost configuration plug-in.
11 . The computer readable device of claim 7 , the method comprising:
applying a cost configuration plug-in to a turn cost associated with a third node within the graph to create a modified turn cost for the third node.
12 . The computer readable device of claim 11 , the third node different than the first node and the second node.
13 . The computer readable device of claim 12 , the third node associated with a second directed edge and a third directed edge, and the modified turn cost corresponding to a modified cost associated with turning from the second directed edge to the third directed edge.
14 . The computer readable device of claim 7 , the method comprising:
evaluating attributes associated with nodes and directed edges within the graph to create a route from a starting node to a destination node.
15 . The computer readable device of claim 7 , the route-planning module associated with at least one of a traffic routing module, a social event planning module, a social network module, a trip planning module, a public transportation module, or an internet traffic routing module.
16 . A method for configuring a route-planning module, comprising:
applying a cost configuration plug-in to a collection of attributes associated with a first directed edge within a graph to create a modified edge cost for the directed edge, the applying comprising calculating an inner product between the collection of attributes and cost configuration data of the cost configuration plug-in, at least some of the method implemented via a processing unit.
17 . The method of claim 16 , the cost configuration data corresponding to a weight for an attribute associated with the directed edge.
18 . The method of claim 16 , comprising:
applying the cost configuration data to a turn cost associated with a node within the graph to create a modified turn cost for the node, the node associated with a second directed edge and a third directed edge, and the modified turn cost corresponding to a modified cost associated with turning from the second directed edge to the third directed edge.
19 . The method of claim 18 , the cost configuration data corresponding to a weight for an attribute associated with the node.
20 . The method of claim 16 , the first directed edge representing a road on a map.Join the waitlist — get patent alerts
Track US2015247731A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.