◆ solveGraph() [1/4]
| SolveGraphResponse gpudb::GPUdb::solveGraph | ( | const SolveGraphRequest & | request_ | ) | const |
Solves an existing graph for a type of problem (e.g., shortest path, page rank, traveling salesman, etc.) using source nodes, destination nodes, and additional, optional weights and restrictions.
IMPORTANT: It’s highly recommended that you review the Graphs and Solvers concepts documentation, the Graph REST Tutorial, and/or some /solve/graph examples before using this endpoint.
| [in] | request_ | Request object containing the parameters for the operation. |
◆ solveGraph() [2/4]
| SolveGraphResponse & gpudb::GPUdb::solveGraph | ( | const SolveGraphRequest & | request_, |
| SolveGraphResponse & | response_ ) const |
Solves an existing graph for a type of problem (e.g., shortest path, page rank, traveling salesman, etc.) using source nodes, destination nodes, and additional, optional weights and restrictions.
IMPORTANT: It’s highly recommended that you review the Graphs and Solvers concepts documentation, the Graph REST Tutorial, and/or some /solve/graph examples before using this endpoint.
◆ solveGraph() [3/4]
| SolveGraphResponse gpudb::GPUdb::solveGraph | ( | const std::string & | graphName, |
| const std::vector< std::string > & | weightsOnEdges, | ||
| const std::vector< std::string > & | restrictions, | ||
| const std::string & | solverType, | ||
| const std::vector< std::string > & | sourceNodes, | ||
| const std::vector< std::string > & | destinationNodes, | ||
| const std::string & | solutionTable, | ||
| const std::map< std::string, std::string > & | options ) const |
Solves an existing graph for a type of problem (e.g., shortest path, page rank, traveling salesman, etc.) using source nodes, destination nodes, and additional, optional weights and restrictions.
IMPORTANT: It’s highly recommended that you review the Graphs and Solvers concepts documentation, the Graph REST Tutorial, and/or some /solve/graph examples before using this endpoint.
| [in] | graphName | Name of the graph resource to solve. |
| [in] | weightsOnEdges | Additional weights to apply to the edges of an existing graph. Weights must be specified using identifiers; identifiers are grouped as combinations. Identifiers can be used with existing column names, e.g., ‘table.column AS WEIGHTS_EDGE_ID’, expressions, e.g., ‘ST_LENGTH(wkt) AS WEIGHTS_VALUESPECIFIED’, or constant values, e.g., ‘4, 15, 2 AS WEIGHTS_VALUESPECIFIED’. Any provided weights will be added (in the case of ‘WEIGHTS_VALUESPECIFIED’) to or multiplied with (in the case of ‘WEIGHTS_FACTORSPECIFIED’) the existing weight(s). If using constant values in an identifier combination, the number of values specified must match across the combination. The default value is an empty vector. |
| [in] | restrictions | Additional restrictions to apply to the nodes/edges of an existing graph. Restrictions must be specified using identifiers; identifiers are grouped as combinations. Identifiers can be used with existing column names, e.g., ‘table.column AS RESTRICTIONS_EDGE_ID’, expressions, e.g., ‘column/2 AS RESTRICTIONS_VALUECOMPARED’, or constant values, e.g., ‘0, 0, 0, 1 AS RESTRICTIONS_ONOFFCOMPARED’. If using constant values in an identifier combination, the number of values specified must match across the combination. If remove_previous_restrictions option is set to true, any provided restrictions will replace the existing restrictions. Otherwise, any provided restrictions will be added (in the case of ‘RESTRICTIONS_VALUECOMPARED’) to or replaced (in the case of ‘RESTRICTIONS_ONOFFCOMPARED’). The default value is an empty vector. |
| [in] | solverType | The type of solver to use for the graph. Supported values:
|
| [in] | sourceNodes | It can be one of the nodal identifiers - e.g: ‘NODE_WKTPOINT’ for source nodes. For BACKHAUL_ROUTING, this list depicts the fixed assets. The default value is an empty vector. |
| [in] | destinationNodes | It can be one of the nodal identifiers - e.g: ‘NODE_WKTPOINT’ for destination (target) nodes. For BACKHAUL_ROUTING, this list depicts the remote assets. The default value is an empty vector. |
| [in] | solutionTable | Name of the table to store the solution, in [schema_name.]table_name format, using standard name resolution rules. The default value is ‘graph_solutions’. |
| [in] | options | Additional parameters.
|
◆ solveGraph() [4/4]
| SolveGraphResponse & gpudb::GPUdb::solveGraph | ( | const std::string & | graphName, |
| const std::vector< std::string > & | weightsOnEdges, | ||
| const std::vector< std::string > & | restrictions, | ||
| const std::string & | solverType, | ||
| const std::vector< std::string > & | sourceNodes, | ||
| const std::vector< std::string > & | destinationNodes, | ||
| const std::string & | solutionTable, | ||
| const std::map< std::string, std::string > & | options, | ||
| SolveGraphResponse & | response_ ) const |
Solves an existing graph for a type of problem (e.g., shortest path, page rank, traveling salesman, etc.) using source nodes, destination nodes, and additional, optional weights and restrictions.
IMPORTANT: It’s highly recommended that you review the Graphs and Solvers concepts documentation, the Graph REST Tutorial, and/or some /solve/graph examples before using this endpoint.
| [in] | graphName | Name of the graph resource to solve. |
| [in] | weightsOnEdges | Additional weights to apply to the edges of an existing graph. Weights must be specified using identifiers; identifiers are grouped as combinations. Identifiers can be used with existing column names, e.g., ‘table.column AS WEIGHTS_EDGE_ID’, expressions, e.g., ‘ST_LENGTH(wkt) AS WEIGHTS_VALUESPECIFIED’, or constant values, e.g., ‘4, 15, 2 AS WEIGHTS_VALUESPECIFIED’. Any provided weights will be added (in the case of ‘WEIGHTS_VALUESPECIFIED’) to or multiplied with (in the case of ‘WEIGHTS_FACTORSPECIFIED’) the existing weight(s). If using constant values in an identifier combination, the number of values specified must match across the combination. The default value is an empty vector. |
| [in] | restrictions | Additional restrictions to apply to the nodes/edges of an existing graph. Restrictions must be specified using identifiers; identifiers are grouped as combinations. Identifiers can be used with existing column names, e.g., ‘table.column AS RESTRICTIONS_EDGE_ID’, expressions, e.g., ‘column/2 AS RESTRICTIONS_VALUECOMPARED’, or constant values, e.g., ‘0, 0, 0, 1 AS RESTRICTIONS_ONOFFCOMPARED’. If using constant values in an identifier combination, the number of values specified must match across the combination. If remove_previous_restrictions option is set to true, any provided restrictions will replace the existing restrictions. Otherwise, any provided restrictions will be added (in the case of ‘RESTRICTIONS_VALUECOMPARED’) to or replaced (in the case of ‘RESTRICTIONS_ONOFFCOMPARED’). The default value is an empty vector. |
| [in] | solverType | The type of solver to use for the graph. Supported values:
|
| [in] | sourceNodes | It can be one of the nodal identifiers - e.g: ‘NODE_WKTPOINT’ for source nodes. For BACKHAUL_ROUTING, this list depicts the fixed assets. The default value is an empty vector. |
| [in] | destinationNodes | It can be one of the nodal identifiers - e.g: ‘NODE_WKTPOINT’ for destination (target) nodes. For BACKHAUL_ROUTING, this list depicts the remote assets. The default value is an empty vector. |
| [in] | solutionTable | Name of the table to store the solution, in [schema_name.]table_name format, using standard name resolution rules. The default value is ‘graph_solutions’. |
| [in] | options | Additional parameters.
|
| [out] | response_ | Response object containing the results of the operation. |