congrats Icon
New! Tabnine Pro 14-day free trial
Start a free trial
Tabnine Logo
PreProcessDijkstra
Code IndexAdd Tabnine to your IDE (free)

How to use
PreProcessDijkstra
in
org.matsim.core.router.util

Best Java code snippets using org.matsim.core.router.util.PreProcessDijkstra (Showing top 14 results out of 315)

origin: matsim-org/matsim

public TransitRouterVariableImpl(final TransitRouterConfig config, final TransitRouterNetworkTravelTimeAndDisutility ttCalculator, final TransitRouterNetworkWW routerNetwork) {
  this.config = config;
  this.transitNetwork = routerNetwork;
  this.ttCalculator = ttCalculator;
  this.dijkstra = new MultiNodeDijkstra(this.transitNetwork, this.ttCalculator, this.ttCalculator);
  PreProcessDijkstra preProcessDijkstra = new PreProcessDijkstra();
  preProcessDijkstra.run(routerNetwork);
  mDijkstra = new MultiDestinationDijkstra(routerNetwork, this.ttCalculator, this.ttCalculator, preProcessDijkstra);
}

origin: matsim-org/matsim

public BackwardDijkstraMultipleDestinations(final Network network, final TravelDisutility costFunction, final TravelTime timeFunction,
    final PreProcessDijkstra preProcessData) {
  
  super(network, costFunction, timeFunction, preProcessData);
  this.network = network;
  this.costFunction = costFunction;
  this.timeFunction = timeFunction;
  if (preProcessData != null) {
    if (preProcessData.containsData() == false) {
      this.pruneDeadEnds = false;
      log.warn("The preprocessing data provided to router class Dijkstra contains no data! Please execute its run(...) method first!");
      log.warn("Running without dead-end pruning.");
    } else {
      this.pruneDeadEnds = true;
    }
  } else {
    this.pruneDeadEnds = false;
  }
}

origin: matsim-org/matsim

protected PreProcessDijkstra.DeadEndData getPreProcessData(final Node n) {
  return this.preProcessData.getNodeData(n);
}
origin: matsim-org/matsim

  @Override
  public LeastCostPathCalculator createPathCalculator(final Network network, final TravelDisutility travelCosts, final TravelTime travelTimes) {
    
    RoutingNetwork routingNetwork = this.routingNetworks.get(network);
    PreProcessDijkstra preProcessDijkstra = this.preProcessData.get(network);
  
    if (routingNetwork == null) {
      routingNetwork = this.routingNetworkFactory.createRoutingNetwork(network);
      
      if (this.usePreProcessData) {
        if (preProcessDijkstra == null) {
          preProcessDijkstra = new PreProcessDijkstra();
          preProcessDijkstra.run(network);
          this.preProcessData.put(network, preProcessDijkstra);
        }
        if (preProcessDijkstra.containsData()) {
          for (RoutingNetworkNode node : routingNetwork.getNodes().values()) {
            node.setDeadEndData(preProcessDijkstra.getNodeData(node.getNode()));
          }
        }
      }
      
      this.routingNetworks.put(network, routingNetwork);
    }
    FastRouterDelegateFactory fastRouterFactory = new ArrayFastRouterDelegateFactory();
    
    return new BackwardFastMultiNodeDijkstra(routingNetwork, travelCosts, travelTimes, 
        preProcessDijkstra, fastRouterFactory, this.searchAllEndNodes);
  }
}
origin: matsim-org/matsim

  @Override
  public synchronized LeastCostPathCalculator createPathCalculator(final Network network, final TravelDisutility travelCosts, final TravelTime travelTimes) {
    
    RoutingNetwork routingNetwork = this.routingNetworks.get(network);
    PreProcessDijkstra preProcessDijkstra = this.preProcessData.get(network);

    if (routingNetwork == null) {
      routingNetwork = this.routingNetworkFactory.createRoutingNetwork(network);
      
      if (this.usePreProcessData) {
        if (preProcessDijkstra == null) {
          preProcessDijkstra = new PreProcessDijkstra();
          preProcessDijkstra.run(network);
          this.preProcessData.put(network, preProcessDijkstra);

          for (RoutingNetworkNode node : routingNetwork.getNodes().values()) {
            node.setDeadEndData(preProcessDijkstra.getNodeData(node.getNode()));
          }
        }
      }
      
      this.routingNetworks.put(network, routingNetwork);
    }
    FastRouterDelegateFactory fastRouterFactory = new ArrayFastRouterDelegateFactory();
    
    return new FastMultiNodeDijkstra(routingNetwork, travelCosts, travelTimes, preProcessDijkstra, fastRouterFactory, this.searchAllEndNodes);
  }
}
origin: matsim-org/matsim

deadEndData = getNodeData(node);
Map<Id<Node>, Node> incidentNodes = getIncidentNodes(node);
if (incidentNodes.size() == 1) {
  ArrayList<Node> deadEndNodes = new ArrayList<Node>();
    while (deadEndData.getDeadEndEntryNode() != null && it.hasNext()) {
      node = it.next();
      deadEndData = getNodeData(node);
      incidentNodes = getIncidentNodes(node);
    } else {
      log.error("All " + incidentNodes.size() + " incident nodes of node " + node.getId() + " are dead ends!");
deadEndData = getNodeData(node);
for (Node n : deadEndData.getDeadEndNodes()) {
  DeadEndData r = getNodeData(n);
  r.setDeadEndEntryNode(node);
  deadEndNodeCount++;
origin: matsim-org/matsim

@Override
public void run(final Network network) {
  super.run(network);
  if (!checkLinkLengths(network)) {
    log.warn("There are links with stored length smaller than their Euclidean distance in this network. Thus, A* cannot guarantee to calculate the least-cost paths between two nodes.");
  }
  updateMinTravelCostPerLength(network);
}
origin: matsim-org/matsim

public void run(final Network network) {
  markDeadEnds(network);
  this.containsData = true;
}
origin: matsim-org/matsim

  @Override
  public synchronized LeastCostPathCalculator createPathCalculator(final Network network, final TravelDisutility travelCosts, final TravelTime travelTimes) {
    RoutingNetwork routingNetwork = this.routingNetworks.get(network);
    PreProcessDijkstra preProcessDijkstra = this.preProcessData.get(network);

    if (routingNetwork == null) {
      routingNetwork = this.routingNetworkFactory.createRoutingNetwork(network);
      
      if (this.usePreProcessData) {
        if (preProcessDijkstra == null) {
          preProcessDijkstra = new PreProcessDijkstra();
          preProcessDijkstra.run(network);
          this.preProcessData.put(network, preProcessDijkstra);
          
          for (RoutingNetworkNode node : routingNetwork.getNodes().values()) {
            node.setDeadEndData(preProcessDijkstra.getNodeData(node.getNode()));
          }
        }
      }
      
      this.routingNetworks.put(network, routingNetwork);
    }
    FastRouterDelegateFactory fastRouterFactory = new ArrayFastRouterDelegateFactory();
    
    return new FastDijkstra(routingNetwork, travelCosts, travelTimes, preProcessDijkstra, fastRouterFactory);
  }
}
origin: matsim-org/matsim

  @Override
  public synchronized LeastCostPathCalculator createPathCalculator(final Network network, final TravelDisutility travelCosts, final TravelTime travelTimes) {
    if (this.usePreProcessData) {
      PreProcessDijkstra preProcessDijkstra = this.preProcessData.get(network);
      if (preProcessDijkstra == null) {
        preProcessDijkstra = new PreProcessDijkstra();
        preProcessDijkstra.run(network);
        this.preProcessData.put(network, preProcessDijkstra);
      }
      return new Dijkstra(network, travelCosts, travelTimes, preProcessDijkstra);
    }
    return new Dijkstra(network, travelCosts, travelTimes);
  }
}
origin: matsim-org/matsim

if (preProcessData.containsData() == false) {
  this.pruneDeadEnds = false;
  log.warn("The preprocessing data provided to router class Dijkstra contains no data! Please execute its run(...) method first!");
origin: matsim-org/matsim

protected PreProcessDijkstra.DeadEndData getPreProcessData(final Node n) {
  return this.preProcessData.getNodeData(n);
}
origin: matsim-org/matsim

  @Override
  public synchronized LeastCostPathCalculator createPathCalculator(final Network network, final TravelDisutility travelCosts, final TravelTime travelTimes) {		
    if (this.usePreProcessData) {
      PreProcessDijkstra preProcessDijkstra = this.preProcessData.get(network);
      if (preProcessDijkstra == null) {
        preProcessDijkstra = new PreProcessDijkstra();
        preProcessDijkstra.run(network);
        this.preProcessData.put(network, preProcessDijkstra);
      }
      return new MultiNodeDijkstra(network, travelCosts, travelTimes, preProcessDijkstra, this.searchAllEndNodes);
    }
    
    return new MultiNodeDijkstra(network, travelCosts, travelTimes, this.searchAllEndNodes);
  }
}
origin: matsim-org/matsim

if (!preProcessData.containsData()) {
  this.pruneDeadEnds = false;
  log.warn("The preprocessing data provided to router class Dijkstra contains no data! Please execute its run(...) method first!");
org.matsim.core.router.utilPreProcessDijkstra

Javadoc

Pre-processes a given network, gathering information which can be used by a Dijkstra when computing least-cost paths between a start and an end node. Specifically, marks the nodes that are in dead-end, i.e. that are connected to the rest of the network by a single 'entry' node only.

Most used methods

  • <init>
  • containsData
  • getNodeData
    Returns the role for the given Node. Creates a new Role if none exists yet.
  • run
  • getIncidentNodes
  • markDeadEnds
    Marks nodes that are in dead ends (i.e. nodes that are connected through a single node to the rest o

Popular in Java

  • Reading from database using SQL prepared statement
  • setScale (BigDecimal)
  • getOriginalFilename (MultipartFile)
    Return the original filename in the client's filesystem.This may contain path information depending
  • scheduleAtFixedRate (ScheduledExecutorService)
  • InputStreamReader (java.io)
    A class for turning a byte stream into a character stream. Data read from the source input stream is
  • BigDecimal (java.math)
    An immutable arbitrary-precision signed decimal.A value is represented by an arbitrary-precision "un
  • URI (java.net)
    A Uniform Resource Identifier that identifies an abstract or physical resource, as specified by RFC
  • GregorianCalendar (java.util)
    GregorianCalendar is a concrete subclass of Calendarand provides the standard calendar used by most
  • TimeZone (java.util)
    TimeZone represents a time zone offset, and also figures out daylight savings. Typically, you get a
  • Notification (javax.management)
  • 21 Best IntelliJ Plugins
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyStudentsTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now