ADVANCED ANALYTICS AND , ISE 5113 Tuesdays and Thursdays 12:00p – 1:15p SEC 204 Spring 2016

Instructor: Charles Nicholson TA: Matthew McCarter Email: [email protected] Email: [email protected] Office: CEC 116H Office: TBD Office hours: T/R 1:30-2:30p Office hours: M/W TBD Skype ID: cd.nicholson.ou

Course description: Advanced Analytics and Metaheuristics builds on the foundation established in Intelligent Data Analytics to explore and apply advanced techniques for addressing complex and potentially data intensive problems. Focus is on developing and employing problem solving strategies using advanced methods in the context of Data Science and Analytics. Topics include both continuous and combinatorial optimization with an emphasis on traditional techniques such as mathematical programming as well as modern heuristics such as , evolutionary algorithms, and swarm optimization. Students will use programming skills to implement algorithms and solve problems.

Student outcomes: Students will demonstrate competence in three areas: (1) Identification of pros/cons/issues in a variety of problem types and solution approaches (2) Collaborative development of solution strategies (3) Implementation of advanced analytics method to solve complex problems

Textbook: Zbigniew Michalewicz and David B. Fogel. 2004. How to Solve It: Modern Heuristics. Springer The textbook is accessible for free for OU enrolled students here: http://link.springer.com/book/10.1007%2F978-3-662-07807-5

Recommended Textbooks: Gendreau and Potvin, (Eds.). 2010. Handbook of Metaheuristics. Springer The textbook is accessible for free for OU enrolled students here: http://link.springer.com/book/10.1007%2F978-1-4419-1665-5

Fourer, Gay, and Kernighan. 2002. AMPL: A Modeling Language for Mathematical Programming. Cengage Learning, 2nd Edition The textbook is accessible for free here: http://ampl.com/resources/the-ampl-book/ Software, IDE’s, and Links:

Modeling Software: AMPL http://ampl.com/

Solvers : Gurobi http://www.gurobi.com/ Server-based Solver: NEOS http://www.neos-server.org/neos/solvers/

Software Resource: Python http://www.python.org/ Recommended Python IDE: WingIDE http://wingware.com/

Grading Policy: All assignments are due at the beginning of class on the date due unless otherwise announced. Late assignments will be penalized. Deductions are taken based on the lateness. See table for breakdown:

Submission is: Maximum grade possible: On time 100% Up to 4 hours late 85% 4 to 24 hours late 70% 24 to 48 hours late 50% More than 48 hours late 0%

Assignments should be submitted in advance of an anticipated absence. Exam date(s) will be announced well in advance. Missing an exam without substantial PRIOR notification will result in a zero grade for that exam.

Grading Details:

Percentages of course grading requirements are as follows:

Homework…………..60% Quiz/Exam…………..35% Participation………….5%

The homework assignments will consist of a variety of written and programming problems. Each homework assignment will be worth approximately 12% of the final grade. Students will program in AMPL, Python, R, and/or VBA. The first two of these will be used / discussed in class. The mid-term is worth 15% and the final exam is worth 20% of the class grade. Students will be expected to participate in class discussions. In particular, students may be assigned to lead discussions, explain solutions, or perform in-class problem-solving exercises. Participation is graded.

Grading scale: Total grade percentages in the following intervals result in the associated letter grade: [90-100] ← A, [80-90) ←B, [70,80) ← C, [60,70) ← D, [0,60) ←F .

Grading discrepancy review: Midterm grades can be reviewed and possibly revised only if (i) a student requests a grade review, and (ii) requests are made within one week of the grade posting.

Final exam: The final exam is scheduled for Thursday, May 12, 2015 from 1:30p-3:30p. Tentative Schedule:

Week Possible Topics Due 18-Jan Introduction to Course; Problem Solving 25-Jan LP; Introduction to AMPL 1-Feb LP, Network Flows HW#1 Due 8-Feb Network Flows 15-Feb Formulation (IP) 22-Feb IP and Branch-and-bound HW#2 Due 29-Feb Pseudocode and Algorithm Complexity 7-Mar Introduction to heuristics and local search: Mid-Term Exam (15%) search space, neighborhoods, encoding 14-Mar Spring Break 21-Mar and variants, Iterated Local Search, Guided local search 28-Mar Simulated Annealing, VNS HW#3 Due 4-Apr and Path relinking 11-Apr Genetic Algorithms HW#4 Due 18-Apr Swarm Optimization: PSO 25-Apr Swarm Optimization: ACO HW#5 Due 2-May Multiple Objective Optimization: NSGA-II, MOPSO 9-May Final Exam (20%): Thursday, May 12, 2015 from 1:30p-3:30p

Required material: There may be reading material, videos, or tutorials outside of the textbook and lectures. These supplemental items will help you learn vital skills such as AMPL, Python, or other relevant tools. Information regarding this material will be posted in the course website.

Professional behavior: Attendance is required for this course. If you know in advance that you will be unable to attend a class, please make certain that (1) you notify the instructor, (2) you submit any assignments prior to the relevant deadlines; and (3) follow-up with your peers to obtain notes/information that you might have missed. There will be no make-up work for missed in-class assignments.

Academic honesty: Cheating, plagiarism, or any act of dishonesty will NOT be tolerated. This policy applies to all parties involved in the incident. Never take credit for anyone else’s intellectual property, be it on an exam or homework assignment. This includes, but is not limited to, copying from another student’s paper, copying from a paper from a previous semester, using forbidden information on exams, and copying from published writings. Students are responsible for knowing the requirements of the Academic Misconduct Code. Please see http://integrity.ou.edu/students_guide.html for a student’s guide to academic integrity. If you decide to cheat, please do not be surprised at the consequences.

Reasonable accommodation policy: Any student in this course who has a disability that may prevent him/her from fully demonstrating his/her abilities should contact me personally as soon as possible so we can discuss accommodations necessary to ensure full participation and facilitate your educational opportunities.

Students are responsible for any changes/additions to this syllabus announced in class.