AI and Engineering: ------------------- * Brief description and AI targeted area: Projet avec Louis Everett ou Thompson : equipe mixte. !!!!!!! As soon as you've got modules, employees, tasks, ... to organize, you face a scheduling problem. Therefore solving scheduling problems has many applications in real-world problems, critical (money-wise) in the industry for instance. This can also be very useful to efficiency-conscious chefs who want their cooking to be as well organized and quick as possible :-) In general, a scheduling problem is given as follows: you are given a set of jobs to be carried out, information about: 1. precedence / order of the tasks to be done, 2. on which machines they should be performed, 3. the cost of running each task on each machine, 4. the global cost involved by the time it takes to perform all these task (e.g., 24 hours to manufacture a product will cost $24,000). The objective is that the expected solution (a possible schedule) minimizes the production cost. But this may be very tricky to determine such a schedule. In this project, you will aim at designing and implementing a tool that automates the search and determination of the best schedule, give the tasks and other information as described before. By working on this project, you will be exposed to: problem-solving, constraint solving and optimization, etc. ---------- * Description of the objectives and tasks: By the end of the project, you will have: - written a short tutorial about job scheduling: definition, traditional solving techniques, your project, its applications to real-life situations: this tutorial will be handed out to all students in the class; this tutorial should be ready by the end of week 4 of the project timeline; - implemented software able to do what is described above; run experiments and report / analyze the results. You will also have to write a report in which you will include: - an introduction: presenting the problem you plan to address, and explain how you will tackle it; explain how it is related to AI and what specific area it is related to; - the description of your team: names of the students, tasks assignment (contribution of each one), timeline of your work; - the description of your system: * which method(s) you used and how you implemented it (justify your choice and make your descriptions clear) * what strategy(ies) you used to make your system efficient: explain why your system is expected to be more efficient than your challengers'; - the report of your testing your system: * with a sample of users; * does your system meet your expectations? why? - a discussion of what went wrong and why: self-criticism; - a conclusion: synthesis of your work, future work directions (what you would do if you were given more time on your project). ---------- * Names of the students, and respective responsabilities: ----------