def hillClimbWithRandomTour(tour): """ Use the given tour as initial tour, Use your generate2optNeighbours() to generate all possible 2opt neighbours and apply hill climbing algorithm. Store the tour lengths that you are getting after every hill climb step in a list and pass it to the generateGraph(list) function. You will find 'task2.png' in current directory which shows hill climb algorithm performace that is hill climb iterations against tour length""" tourLengthList = [1, 2, 3] "*** YOUR CODE HERE***" graph_plot.generateGraph(tourLengthlist)
if args.task == 1: tour = generateRandomTour(args.r2seed) save2optNeighbours(tour) if args.task == 5: tour = generateRandomTour(args.r2seed) save3optNeighbours(tour) if not args.submit: if args.task == 2: tour = generateRandomTour(args.r2seed) tourLengthList = hillClimbWithRandomTour(tour, generate2optNeighbours) print(tourLengthList[-1]) graph_plot.generateGraph(tourLengthList, "task2.png") if args.task == 3: tourLengthList = hillClimbWithNearestNeighbour( args.start_city, generate2optNeighbours) print(tourLengthList[-1]) graph_plot.generateGraph(tourLengthList, "task3.png") if args.task == 4: tourLengthList = hillClimbWithEucledianMST(args.start_city, generate2optNeighbours) print(tourLengthList[-1]) graph_plot.generateGraph(tourLengthList, "task4.png") if args.task == 6: tour = generateRandomTour(args.r2seed)