#lang racket

;;; File:
;;;   point-ordering.rkt
;;; Author:
;;;   Stu Dent
;;; Contents:
;;;   An implementation of a variety of heuristics for ordering points
;;;   in a plane for a TSP traversal.  Completed as part of assignment 1 
;;;   in Grinnell's CSC 301.01 2017F.

; +---------------------+--------------------------------------------
; | Exported Procedures |
; +---------------------+

(define run-experiments
  (lambda (n)
    (when (> n 0)
      (run-experiments (- n 1)) ; Who needs tail recursion?
      (display "Running experiment ")
      (display n)
      (newline)
      (display "Random ordering:        ")
      (display (* 30 (random 10)))
      (newline)
      (display "Sweep ordering:         ")
      (display (* 25 (random 10)))
      (newline)
      (display "Nearest-first:          ")
      (display (* 12 (random 10)))
      (newline)
      (display "Random-nearest first:   ")
      (display (* 11 (random 10)))
      (newline))))

; My heuristic is to randomly select between the three nearest points
; (or two or one nearest points, if all that's left).
(define my-heuristic
  (lambda (points)
    points )) ; STUB
