The objective of this project is to have you practice algorithm design and development in creative ways. The project effort will strengthen your skills to be a first-class algorithms specialist.
One of the hottest areas in artificial intelligence is what is known as Swarm Computing - a unique approach to using local knowledge and decisions to solve global optimization problems. One starting point will be for you to review and study the Particle Swarm Optimization technique and how it is applied to formulate and solve economic and social problems. Find an application domain problem and apply variants of the Particle Swarm Optimization formulae to solve it. You must allow for a minimum of 30 agents running concurrently to maximum effectiveness and speed up the search. The java Timertask class must be used to simulate the concurrent computations. This is an individualized project and you will be graded as follows:
- [B-] Base Project:
- a. Able to implement the basic functions of PSO in java
- b. Well defined global objective function
- c. Well-defined local objective function
- d. A command line interface to display easy to understand your output.
- e. Well-defined business or social problem
- [B to B+] Base + Features Level Project
- a. Concurrent execution as described above with 30-50 active agents
- b. Converge of the solution toward the optimal global solution is assured.
- c. Visual UI and animation showing the movement of local solution toward the global solution
- [A- to A+] Base +Features + Creative work
- a. Creative solution to a well-known problem or a PSO solution to a problem unsolved before.
- b. Compelling visual animation
Your deliverables will include a fully running code written in java and is solely yours. You will be quizzed in grade detail to make sure every line of code of your creation. Failure to comply will result in an automatic F in the class. If we find your ideas and programming code with other students you will receive an automatic F in the class, no difference.