Course Syllabus

Course Information

Course name and number: CPSC 4115 - Algorithms

Credit Hours: 3

Course Description: This course emphasizes the understanding of data structures and algorithms from an analytical perspective rather than from an implementation standpoint. The concepts developed allow discussion of the efficiency of an algorithm and the comparison of two or more algorithms with respect to space and run-time requirements. Analytical methods are used to describe theoretical bounds as well as practical ones. In general, this course addresses the constraints that affect problem solvability.

Prerequisites: CPSC 2108 with a minimum grade of "C" or better and MATH 5125U with a minimum grade of "C" or better

Course Offering (days/times and room): 3:00 – 3:50 PM Mondays, Wednesdays and Fridays in SCCT 408

Section: 01

Course Registration Number (CRN): 85120

Websites:

The last day to drop without a grade and receive a 100% refund: Friday, August 16, 2024

Deadline to withdraw with a WP (Withdraw Pass):  Monday, October 7, 2024

Instructor Information

Textbooks and Materials

Required Textbook

Algorithm Design Textbook Algorithm Design, by Jon Kleinberg and Eva Tardos (1st Edition) (ISBN 13: 9780321295354)

Optional Textbooks

Introduction to Algorithms, Fourth Edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, ISBN: 9780262046305, Publisher: MIT Press

Modules

  1. Orientation & Overview
  2. Algorithm Analysis
  3. Graphs
  4. Greedy Algorithms
  5. Divide and Conquer
  6. Dynamic Programming
  7. Network Flow
  8. Intractability

Course Learning Outcomes

Upon completion of this course, students will
  1. Learn how to design efficient algorithms and to recognize situations where this is not possible.
  2. Analyze the asymptotic performance of algorithms.
  3. Demonstrate a familiarity with major algorithms and data structures.
  4. Apply important algorithmic design paradigms and methods of analysis.
  5. Synthesize efficient algorithms in common engineering design situations.

Activity Expectations and Assignment Requirements

Attendance

Attendance is required by the university and will be recorded at the beginning of each class. It is the student's responsibility to independently cover any materials missed. Makeup quizzes or exams are generally not given, so please make sure you are present for all quizzes and exams.

I expect each student to be in attendance for each class in-person. Attendance will be calculated by your arrival and duration in class. It is your responsibility to make sure your attendance gets recorded correctly for every class meeting. If you can not make a class, please inform me and get the relevant materials from a classmate.

Students that do not attend both of the first two lectures may be dropped from the course. For this course, excessive absences (the point at which you can be dropped from the course and assigned a WF (Withdrawal Failing)) is defined as missing the equivalent of two or more weeks of classes. Refer to the CSU Catalog (https://catalog.columbusstate.edu/academic-regulations/undergraduate-academic-regulations/) for more information on class attendance and withdrawal.

Computers are permitted in lecture for note taking and completing exercises. Other activities such as web surfing, stock trading, and social networking are inappropriate. Not only do they distract you but also others.

Attendance Bonus: Research shows a strong positive correlation between attending class and a good grade in that class. To make that correlation even more positive, the following attendance bonus is offered. If a student attends each class, then their overall course grade will be increased by 1%. If a student only misses the equivalent of one class, then 0.67% will be added; if a student only misses the equivalent of two classes, then 0.33% will be added. No bonus will be applied for students missing the equivalent of three or more classes.
Note: University events with required attendance will not penalize your attendance bonus.

AI Policy

Permitted when Assigned in this Course with Attribution

You are allowed to use Generative AI tools like ChatGPT or Microsoft CoPilot for specific assignments, as designated by the instructor. You must acknowledge the use of AI and properly attribute it. This includes providing in-text citations, quotations, and references.

You should include the following statement in assignments to indicate use of a Generative AI Tool: "The author(s) would like to acknowledge the use of [Generative AI Tool Name], in the preparation of this assignment. The [Generative AI Tool Name] was used in the following way(s) in this assignment [e.g., brainstorming, grammatical correction, citation] in the [which portion of the assignment]."

*You should be cautious and avoid sharing confidential or personal information when using these tools. Remember, anything you input into these tools could potentially be stored and used to improve the tool’s algorithms.

Research Project

You get to complete a research project this semester in teams of up to three students. Deliverables include a proposal, written paper and a presentation (during the final exam time). Instructions are found at http://csc.columbusstate.edu/carroll/4115/projects/researchProject.pdf. Submit your deliverables to the appropriate Assignments in CougarVIEW.

Exams

There will be two exams during the regular semester. They will be proctored using Respondus LockDown Browser. It is known to not work with the following devices:

Final Exam Time

The final exam time is Monday, December 9, 2024, 4:15 – 6:15 PM. This time will be used for research project presentations.

Grading

Grading category weights:
Pie chart depicting: Quizzes 20%, Assignments 20%, Exams 40%, Research Project 20%
Each of the grading categories is capped at 100%.

Course letter grades are determined by the final course average according to the following chart:
Course Grade Calculation
% Range Course
Grade
90 – 100 A
80 – 89 B
70 – 79 C
60 – 69 D
<60 F

Expectations

WHAT YOU CAN EXPECT FROM ME

WHAT IS EXPECTED FROM YOU

Information regarding student rights and responsibilities can be found in the CSU Student Handbook.

As a student in this course, you are responsible to:

Time Commitment

The amount of time it will take you to complete the work for the course will depend on many factors, which will vary with each individual. The ACM recommends the following: "As a general guideline, the amount of out-of-class work is approximately three times the in-class time. Thus, a course that is listed as requiring 3 hours typically entails a total of 12 hours (3 in class and 9 outside)." Student in my classes typically spend more time than this guideline. Students will be expected to spend this time outside class reading the book, online materials and other materials; writing solutions to exercises and projects. It will be helpful to set aside regular study time when you can work uninterrupted.

Course Communication

E-mail

Technical Requirements/ Support

See the CougarVIEW Starter Guide for support with navigating this system.

Hardware Requirements

See the System Checker here. (GeorgiaVIEW’s system checker is compatible with CougarVIEW.)

Software Requirements

Browser Plugins (.pdf files, QuickTime files, .mp4 files) can be obtained at a browser's website:

Privacy Policies

Below are the links to the privacy policies for the tools that we will be using in this course: