Advertisement
VladNitu

test vim

Mar 14th, 2023
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. // NACO - Nodes Ant Colony Optimisation = ACO, but the pheromones are stored on nodes, instead of on edges
  2.  
  3. def findShortestRoute(start, end): // Returns the optimal found path from start to end
  4.  
  5. initiliasePheromones() // Set the initial values of pheromones in each cell (node) to `1`
  6.  
  7. For each genertion in generations:
  8. routes = ()
  9. For each ant in ants_per_gen:
  10. route = find_path(start, end)
  11. routes.add(route)
  12. bestRoute min= route // Keep track of the shortest path found by an ant so far
  13.  
  14. updatePheromones(routes) // Update the pheromones in each cell using the formulas from the report
  15.  
  16. return bestRoute
  17.  
  18.  
  19. // Returns a path from start to end after choosing each next node in the path, using a probablity directly proportional to the pheromone values
  20. def find_path(start, end):
  21. path = ()
  22. current = start
  23. while current != end:
  24. if current does not have any neighbor that was not visited before:
  25. current = move current one step back // to the cell it came from
  26. else
  27.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement