Question

Topology Path issue. Getting the path to a hub.

  • 19 September 2019
  • 5 replies
  • 1 view

Hi, I am currently trying to get the shortest route of a fiber network that is in the forum of an autocad file. I created the topology using the topologybuilder transformer and I sent my edges to the networktoplogycaluclator which produced a network id while I sent my nodes to an attribute filter that filters out the hub. However, when I try to calculate the shortest toute using the shortest route transformer, I send my hub to the network port while I send my network lines to the from-to port. The results do not create a path (only nopath and <rejected>). I tried multiple ways such as putting a snapper before the shortest path but that also failed. Is there anyway to generate a path to the hub?


5 replies

Userlevel 3
Badge +13

Hi @jashea72 The ShortestPathFinder requires a network with good topology and a From-To line. Snapping is a good idea - just make sure that there is a node (end of a line in the network) within snapping distance of the vertices in the From-To line. Can you attach your data or a screenshot here?

Badge +22

I'm not sure your are using the ShortestPathFinder transformer correctly.

 

 

The Network port should contain all the linears of the network (edges port from the TopologyBuilder)

 

 

The From-To port should contain a line that has as it's vertices the start and end nodes (plus any intervening point you need to include in the path). This presumably would have the hub as the first vertex and the destination as the final vertex. You can use the LineBuilder to join the relevant nodes together to create the required line.

That is the thing, I can send my screenshot tomorrow. I haven't did that yet but I made some slight progress. It turns out I had the wrong reader autocad format.

I'm not sure your are using the ShortestPathFinder transformer correctly.

 

 

The Network port should contain all the linears of the network (edges port from the TopologyBuilder)

 

 

The From-To port should contain a line that has as it's vertices the start and end nodes (plus any intervening point you need to include in the path). This presumably would have the hub as the first vertex and the destination as the final vertex. You can use the LineBuilder to join the relevant nodes together to create the required line.

I tried the way you suggested. Created a line builder from the nodes but I had to filter it out because of a certain condition that must be met. When I used the line builder, the lines were not in the format of a network, more of a mess if anything. However, I was able to filter out the conditions and I was able to make a path but it wasn't based on the original network.

Badge +22

I tried the way you suggested. Created a line builder from the nodes but I had to filter it out because of a certain condition that must be met. When I used the line builder, the lines were not in the format of a network, more of a mess if anything. However, I was able to filter out the conditions and I was able to make a path but it wasn't based on the original network.

What exactly are you trying to calculate?

 

The shortest path from the hub to a specific node - your From-To should contain just those two vertices.

The shortest paths from the hub to every other node - you should have many From-To lines, each containing two vertices (hub, and destination node)

 

 

The shortest path starting at the hub and going to every other node in sequence (Travelling Salesman Problem) - see https://www.safe.com/blog/2016/11/fmeevangelist158/

Reply