Idiomatic ruby to calculate distance to points on a graph
Enumerable.each_cons(n) will pass the array items in groups of n, using a sliding window.  So [pt1, pt2], [pt2, pt3], [pt3, pt4], etc.

After that you can use inject to calculate the distance and sum the points.

def manhattan(pt1, pt2)
  (pt1[0]-pt2[0]).abs + (pt1[1]-pt2[1]).abs
end

def cost
  @random_tour
    .each_cons(2)
    .inject(0) { |sum, pts| sum + manhattan(pts[0], pts[1]) }
end