CIS 440—Summer 2013 Texas A&M University Central Texas CIS 440-110 Algorithm Design and Analysis TR 4:45 pm – 7:15 pm Instructor: Office: Phone: Email: Office Hours: Dr. Timothy G. Woodcock 323G - Founders Hall 254-519-5783 WoodcockTG@ct.tamus.edu TW – Noon to 4:00 PM or by appointment Course Overview and description: Introduces the modern study of computer algorithms with emphasis on how to select the best algorithm for a task considering the specific computing environment. Students extensively study searching and sorting algorithms for their importance in computing. Other topics include: efficiency, readability, maintainability, advanced design and analysis techniques, advanced data structures, and graph algorithms. Course Objective: Review "Big-O" notation as a means of expressing relative efficiency of an algorithm: Review sorting algorithms with emphasis on sophisticated sorts using "divide and conquer" approaches and variations of the quick sort. Examine the "divide and conquer" approach to other programming problems. Study recursion as it applies to binary search and quick sort. Study graphs as mathematical representations of networks. Review graph manipulation algorithms including spanning tree and shortest path traversal algorithms. Implement a program to find the shortest path in a graph. Understand the difference between an abstract structure/algorithm and a concrete implementation. Study examples of algorithms described in natural language, structured natural language, and pseudocode. Introduce the use of heuristic methods as "good enough" methods to attack otherwise unsolvable problems. Apply heuristics in a program to solve the traveling salesman problem. Understand the "space versus time versus complexity" trade-off in designing programs. Evaluate selected data structures and algorithms for strengths and weaknesses in terms of space, time, and complexity. Apply the "NP-Completeness" theorem to the identification of intractable problems. Demonstrate the ability to incorporate an algorithm into a program. Required Reading and Textbook(s): “Analysis of Algorithms 2th Ed”, McConnell, Jones and Bartlett Note - A student of this institution is not under any obligation to purchase a textbook from a university-affiliated bookstore. CIS 440—Summer 2013 Course Requirements: There will be one term paper worth 300 points. The paper must be a review of on the work of one of the authors referenced in Appendix D of the class text. This paper should NOT be a biography of the author, but a review of the work, discoveries, and papers of the author. The instructor must approve the author selected before the second week of class. The paper style must be the APA style. A minimum of three reference are required and all must be from peer reviewed journal articles or conference papers. (An automatic 20 points will be deducted for using Wikipedia or the class text as a reference.) This paper should be at least 10 pages long. Grading Rubric Met the criteria Partially met the criteria Late – Topic approved by March 1st 7 points Did not meet criteria Not done or done after March 1st 0 points Paper topic approved before second week of class 15 points Strict APA style (see APA Format Guide) 85 points At least 3 references from peer reviewed journals 30 points Spelling and grammar 85 points On time 15 points In APA style 85 points Incomplete or incorrect 60 to 5 points Not in APA style 0 points Three references from peer reviewed journals 30 points No issues 85 points Less than three peer reviewed references 25 to 5 points No references or use of Wikipedia or class text 0 points Using passive voice or minor grammar issues 80 to 5 points Ideas not well expressed or paper poorly organized. 65 to 25 points More than 10 grammar or spelling issues 0 points Very unclear 0 points Paper is about the author’s work, NOT a biography of the author 85 points Clear and well organized Describes the author’s work 85 points There will be seven assignments each worth 100 points. All assignments except Project 5 must be turned in as either a Word document or a zip file. Each Word or zip file must be named with your last name followed by the assignment number (i.e. Woodcock Project 1.docx). Reports will be graded on spelling and grammar as well as on demonstrating that the calculations, programs and measurements were correctly implemented. Project 5 must be turned in as a zipped project folder that is named with your last name. CIS 440—Summer 2013 Project 1 –Programming Exercise 4 on page 58. Calculate the recurrence relations first, then write and execute the program. Submit the results only in a word document. Project 2 – Programming Exercise 2 on page 128. Submit a report showing the results. Project 3 – Do Exercise 1 on page 187. Submit a report showing the results. Project 4 – Programming Exercise 3 on page 225. Submit a report showing the results. Project 5 – Programming Exercise 1 on page 264. Submit a report showing the results. Project 6- Write a program to implement a simple Language Acceptor Turing Machine. Submit the zip project folder, named with your last name. Make the Turing Machine programmable so you can accept different languages. Program the Turing Machine to accept the language {anbncn: n>=1} Program the Turing Machine to accept the language {anbcn: n>0} Project 7 – Programming Exercise 9 on page 398. Run the exercise 50 times and submit a report showing all the data from each run and your analysis of the results. Grading Criteria Rubric Assignment Projects Term Paper Grade A B C D F Total Points 700 300 Complete Course Calendar Date 6/4/2013 6/6/2013 6/11/2013 6/13/2013 6/18/2013 Topic Assignment Chapter 1 & 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Project 1 Due Project 2 Due Points 900-1000 800-899 700-799 600-699 Below 600 CIS 440—Summer 2013 Date Topic Assignment 6/20/2013 Chapter 6 6/25/2013 Chapter 6 Project 3 Due 6/27/2013 Chapter 6 7/2/2013 Chapter 7 Term paper Due 7/4/2013 Fourth of July No Class 7/9/2013 7/11/2013 7/16/2013 7/18/2013 7/23/2013 7/25/2013 7/26/2013 Chapter 8 Chapter 10 Chapter 10 Chapter 10 Chapter 11 Chapter 9 Grades must be submitted to Registrar by 4:00PM Project 4 Due Project 5 Due Project 6 Due Project 7 Due Drop Policy If you discover that you need to drop this class, you must go to the Records Office and ask for the necessary paperwork. Professors cannot drop students; this is always the responsibility of the student. The record’s office will provide a deadline for which the form must be returned, completed and signed. Once you return the signed form to the records office and wait 24 hours, you must go into Duck Trax and confirm that you are no longer enrolled. If you are still enrolled FOLLOW-UP with the records office immediately. You are to attend class until the procedure is complete to avoid penalty for absence. Should you miss the deadline or fail to follow the procedure, you will receive an F in the course. Academic Integrity Statement Texas A&M University - Central Texas expects all students to maintain high standards of personal and scholarly conduct. Students found responsible of academic dishonesty are subject to disciplinary action. Academic dishonesty includes, but is not limited to, cheating on an examination or other academic work, plagiarism, collusion, and the abuse of resource materials. The faculty member is responsible for initiating action for each case of academic dishonesty and CIS 440—Summer 2013 report the incident to the Director of Student Affairs. More information can be found at www.ct.tamus.edu/StudentConduct. Disability Support and Access Texas A&M University – Central Texas complies with Section 504 of the Rehabilitation Act of 1973 and the Americans with Disabilities Act of 1990. TAMUCT promotes the use of the Principles of Universal Design to ensure that course design and activities are accessible to the greatest extent possible. Students who require reasonable accommodations based on the impact of a disability should contact Gail Johnson, Disability Support Coordinator at (254) 501-5831 in Student Affairs, Office 114E. The Disability Support Coordinator is responsible for reviewing documentation provided by students requesting accommodations, determining eligibility for accommodations, helping students request and use accommodations, and coordinating accommodations. Tutoring Tutoring is available to all TAMUCT students, both on-campus and online. Subjects tutored include Accounting, Finance, Statistics, Mathematics, and Writing (APA). Tutors are available at the Tutoring Center in Founder's Hall, Room 204, and also in the Library in the North Building. Visit www.ct.tamus.edu/AcademicSupport and click "Tutoring Support" for tutor schedules and contact info. If you have questions, need to schedule a tutoring session, or if you're interested in becoming a tutor, contact Academic Support Programs at 254-501-5830 or by emailing cecilia.morales@ct.tamus.edu. Chat live with a tutor 24/7 for almost any subject on your computer! Tutor.com is an online tutoring platform that enables TAMU-CT students to log-in and receive FREE online tutoring and writing support. This tool provides tutoring in Mathematics, Writing, Career Writing, Chemistry, Physics, Biology, Spanish, Calculus, and Statistics. To access Tutor.com, click on www.tutor.com/tamuct. Library Services INFORMATION LITERACY focuses on research skills, which prepare individuals to live and work in an information-centered society. Librarians will work with students in the development of critical reasoning, ethical use of information, and the appropriate use of secondary research techniques. Help may include, yet is not limited to: exploration of information resources such as library collections and services, identification of subject databases and scholarly journals, and execution of effective search strategies. Library Resources are outlined and accessed at. http://www.tarleton.edu/centraltexas/departments/library/ UNILERT Emergency Warning System for Texas A&M University – Central Texas UNILERT is an emergency notification service that gives Texas A&M University-Central Texas the ability to communicate health and safety emergency information quickly via email and text message. By enrolling in UNILERT, university officials can quickly pass on safety-related CIS 440—Summer 2013 information, regardless of your location. Please enroll today at http://TAMUCT.org/UNILERT INSTRUCTOR POLICIES Students should come to class prepared, ready to ask questions and participate in discussions. While in other classes, the direct quoting of other authors is considered acceptable; in this class, it is not acceptable. You may not directly quote any other published paper, web site, or textbook in any writing assignment, including papers, homework, discussion boards, PowerPoint presentations, or any other written assignments. The simple reason for this is that copying (quoting) is a lower level skill. However, reading, understanding, and then communicating the ideas in your own words is a high level skill, which is the skill that I want you to develop. Dr. Woodcock reserves the right to modify this syllabus during the semester. Instructor Information Dr. Woodcock has a PhD in Computer Science from Florida Atlantic University. He has over 25 years of real world experience working for IBM and Sony-Ericsson. Dr. Woodcock believes that you will learn best by being engaged in class, asking questions, participating in discussion, and doing the hands on exercises. This class will be a lot of work, but it will also be fun.