This project involves 4 different types of techniques to solve the CO problem, which is the cloud resource allocation problem, and the Travelling salesman problem. Four parts corresponds to 4 techniques, which are:
- Mathematical programming,
- Greedy Heuristics,
- Genetic Algorithm, and
- Genetic Programming Hyper-Heuristics(aka GPHH).
Due to the fact that I have not successfully implemented the code of part 4: GPHH , so 65 is my final marks where -30 for part 4, and -5 for other parts that the report is not deeper enough. I believe the code implementation for part 1~3 should be no problem.
For the future work, hopefully I can find the time and remember to fix part 4: Genetic Programming Hyper Heurstic.
I am using the python for this project, so program.zip and source.zip are actually the same.
I use jupyter notebook for all parts, so you can clearly observe the results by opening the jupyter notebook. For part 1 and part 2, the p1p2.ipynb can be found under the p1p2 directory, and For part 3 and part 4, the p3p4.ipynb can be found under the root directory. In addition, local-search-tsp.ipynb is also included for comparison purposes in order to write the part 3 report.
I have transformed all *.ipynb to *.py files as well, so you can run my programms using the command line as well. Below are the steps and commands to run my programs:
First, u need to unzip the program.zip and cd
to the program directory,
such as: > cd program
then, rest of this readme.txt contains commands to run the *.py for each part, you can just copy and paste in the terminal.
Part 1 and Part 2: > python p1p2.py
Part 3 and Part 4: > python p3p4.py