Sonoma State University | ||
Algorithm Analysis
|
||
Instructor: Henry M. Walker
Lecturer, Sonoma State University |
Although CS 415 has been well developed for several years, last year the CS faculty made a significant, long-term curricular change regarding SSU's Upper Division GE Area B Requirement.
Historically, CS Majors could satisfy this requirement by taking CS 454, Theory of Computation, and CS 454 will continue in this role for the next several semesters.
At some time in the future (but not Spring 2025), CS 415, Algorithm Analysis, will allow students to satisfy SSU's Upper Division GE Area B Requirement.
During an anticipated time of transition:
For future semesters, students should check with the CS faculty regarding which course(s) (CS 415 and/or CS 454) will satisfy SSU's Upper Division GE Area B Requirement.
Course Descriptions: | Overview | Goals and Objectives | Signature Project | Anticipated Work Load |
---|---|---|---|---|
Course Elements: | Class Schedule | C/C++ Style Guide | Class Format | Course Work |
Course Details | Deadlines, Emergencies, and Illness | Collaboration and Academic Honesty | Cell Phones | Grading |
Course Support and Policies: | Instructor | Resources | SSU Recommended Statements | Accommodations |
In Summer-Fall 2023, Computer Science faculty approved the following updated course description for CS 415, Algorithm Analysis:
A systematic approach to the design and analysis of algorithms with an emphasis on efficiency. Topics include algorithms for searching and sorting, hashing, exploring graphs, integer and polynomial arithmetic. Foundations in recurrence relations, combinatorics, probability, and graph theory as used in algorithm analysis are covered. Standard design techniques such as divide-and-conquer, greedy method, dynamic programming, heuristics and probabilistic algorithms, and approximation algorithms are included. Prerequisite: CS 315 or consent of instructor.
Expanding this description somewhat, CS 415 examines the design, implementation, and efficiency of algorithms, extending the study begun in CS 115 and continued in CS 215, CS 242, and CS 315. The course has four main foci:
SSU requires that students must satisfy an Upper Division GE Area B Requirement in order to graduate. For several years within computer science, the CS faculty have designated CS 454 as a vehicle allowing CS Majors to satisfy this requirement.
However, in considering the content of several upper-level computer science courses, the CS faculty decided last year to transition, so that CS 415 would meet this requirement. For now CS 454 will continue meet this requirement. However, as an experiment, this offering of CS 415 in Spring 2025 will serve as a pilot, covering both traditional algorithm-oriented topics and a Signature Project that addresses high-level questions regarding efficiency, data analysis, and a self-reflection.
Building upon the high-level Course Overview above for algorithmic analysis, CS 415 has these high-level goals:
Translating/interpreting these goals into student capabilities, the objectives of CS 415 include these objectives:
Further, as a pilot for meeting SSU's Upper Division GE Area B Requirement, this offering of CS 415 has the following additional goals and objectives:
This course incorporates a variety of activities. From past experience, the time required for these activities will likely vary substantially from student to student and from one part of the course to another. For example, a student may need to devote considerable time and effort when starting a new or different topic, but the workload may drop noticeably when that material is mastered.
Such variation in student experiences complicates any estimation of the time individual students may need to devote to homework for this course. However, from past experience, students working steadily on the course likely should expect to allocate 10-15 hours per week to homework. Some students may require additional time for some weeks; some students may complete work in less time for some weeks. Conversations with computer science faculty and others suggest this time allocation is consistent with expectations for many courses at Grinnell College and Sonoma State University.
While the schedule for this course is expected to evolve, a detailed Tentative Class Schedule is posted with readings, assignments, in-class quizzes and tests, and a Signature Project. This schedule will be updated as the course evolves.
For variety, this course will utilize a variety of activities, including
Course Work will involve a combination of several activities.
Weekly Assignments (identified, with links, on the Tentative Class Schedule) involve a mixture of programming-oriented exercises and problem-oriented tasks (mostly done on paper). Each of these assignments are designed to provide practice on topics covered in class and the textbook and to extend work with selected topics. Unless otherwise specified on the Tentative Class Schedule, assignments cover material since the previous assignment and are due the second-class day after appearing on the schedule. Thus, an assignment appearing on the schedule on a Thursday will highlight material covered on that Thursday and the preceding Tuesday, and will be due the following Thursday.
Additional notes on submission policies and formats are indicated below in the sections on Collaboration and Academic Honesty and on Grading.
Signature Project: As noted above, the CS faculty have determined that CS 415 will, at some time in the future, serve as the course with which CS Majors will satisfy SSU's Upper Division GE Area B Requirement for CS Majors.. For this offering of CS 415, the overall Signature Project is divided into two components:
Note that this overall Signature Project will take the place of the final exam for this course.
In-class Quizzes: A 40-50 minute quiz will be scheduled on Thursday about every other week, except when Tests are scheduled. Altogether about 6 quizzes are scheduled during the semester; in grading, the lowest quiz score will be dropped (except that a quiz determined to violate academic honesty rules would be counted with a 0 score). These quizzes will focus on basic topics covered recently, but prior to the previous class session.
Tests: Two in-class tests are scheduled for Tuesday, February 25, and Thursday, April 17. These tests will focus on the previous 4-6 weeks of the semester, although some earlier material may be covered.
All written work, including assignments and programs, is due at the start of class, two class days after they appear on the Tentative Class Schedule. A penalty of 30% per class meeting may be assessed for any assignment turned in late, even work submitted at the end of a class.
Although dates for assignments, quizzes, tests, and the Signature Project are firm, I understand that circumstances arise when you are not able to attend class.
When circumstances are known ahead of time (e.g., academic activities, athletic events), I expect you to make arrangements with me before the activity occurs. Normally, we will identify an alternative date for the due date, quiz, or test.
When circumstances cannot be reasonably anticipated (e.g., illness, family emergencies), I expect you to notify me as soon as is reasonably possible. (Email is fine.) In the case of medical problems, I expect a written note from a medical professional or counselor that indicates that your health interfered with the course activity. (I do not need to know any details of the medical problem, but I do need to know that you sought help and that the medical professional believed meeting the deadline would likely interfere with your health.)
Absolute Deadline: All homework must be turned in by Thursday,
May 8, at 4:00 pm;
assignments received after
that time will not be counted in the grading of the course.
AI-produced Materials: Use of ChatGPT (or other similar tools or software that generate suggested text) is not permitted in this class for any assignments. This course assumes that work submitted by students – all process work, drafts, brainstorming artifacts, final works – will be generated by the students themselves, perhaps with consultation with non-AI-produced materials. Thus, use of AI tools in this course will be considered a violation of SSU’s Cheating and Plagiarism policy and could result in failure of the assignment or failure of the course.
Written assignments (including written exercises and programs): All work is to be done individually. Further, as noted above, any use of AI-generated materials is explicitly prohibited for this class and will be considered a violation of SSU’s Cheating and Plagiarism policy. However, in preparing answers, students may utilize non-AI-sourced, outside sources (including consultation of in-class slides or the course textbook), provided students follow university-wide rules for quotation and citation.
Although non-AI-based, outside sources may be used (if properly cited), you are still responsible for the accuracy/correctness of what you submit. This foundational principle leads to several notes:
Quizzes and tests All quizzes and tests are closed book and closed notes, and collaboration is not allowed. Students may ask questions of the instructor, but communication with any other person is not allowed.
Other Graded Work: Should other work be assigned during this class, rules regarding collaboration and citation will be included as part of the activity. AI-based tools, however, will never be allowed!
Citations and References: Every written source (including the textbook) must be identified, with sufficient information that the source can easily be found. For example, specific URLs are required for online sources (a general reference, such as wikipedia.org, is not sufficient, as Wikipedia contains thousands of pages). Also, references to books or articles must include page numbers. In addition, if an answer uses material from past courses or previous work with individuals, the details of that material must be given explicitly.
Further, all citations and references must specify actual sources. Fabricated citations or references will be considered evidence of academic dishonesty and subject to disciplinary action.
Procedures: Throughout the course, any hint of academic dishonesty will be investigated and handled following the SSU Policies on Cheating and Plagiarism.
Following a common practice in the Computer Science Department at Sonoma State University, the standard outcome in CS 415 for the first occurence of a student found responsible for cheating and/or plagiarism is:
A second offence typically would yield a semester grade of F for the course. Since all offenses are reported to SSU's Student Conduct Administrator, the student also may be subject to additional outcomes from the University. (At some schools, a second offence may lead to suspension or dismissal.)
Cell phones, text-messaging devices, and other social-networking connections may not be used in this class. If you bring such equipment to the classroom, it must be turned off before the class starts and stay off throughout the class period. Use of such equipment is distracting to those nearby and will not be tolerated.
Assignments
As an upper-level course, answers to assignments must demonstrate care in organization and presentation.
if ((no_comments) || (missing pre- or post-conditions) || (formatting_does_not_show_structure) || (long_procedures_not_divided_into_sections_with_clarifying_comments) || (no_evidence_of_compilation) || (no_test_plan,__no_listing_of_circumstances__OR__no_listing_of_test_cases) || (no_test_runs) || (no_commentary_on_correctness) || (no_certification_regarding_sources_and_help) || (use of Bubble Sort or non-approved sorting algorithm) return (no_grade);
Semester Grades
This instructor's grading philosophy dictates that the final grade should ultimately be based upon each student's demonstration of her or his understanding of the material, not on the performance of the class as a whole nor on a strict percentile basis.
The following scheme is proposed as a base for how the various assignments and tests will be counted in the final grade.
Assignments: 30% | Quizzes: 25% (5% each quiz–lowest quiz dropped) | |
Signature Assignment: 25% | Tests: 20% (10% each test) |
Office: Darwin 116B
Telephone: extension 707-664-4408
E-mail: henry.walker@sonoma.edu and
walker@cs.grinnell.edu
Office hours are available with a combination of in-person and Zoom-based sessions, unless announced otherwise in class.
Monday: | noon – 1:30 pm via Zoom (URL available on CS 415.001 Home Page on Canvas) |
---|---|
Tuesday: | 3:00 pm – 4:00 pm in Darwin 116B (or the meeting area by Darwin's main entrance) |
Wednesday: | 7:00 pm – 9:00 pm via Zoom (URL available on CS 415.001 Home Page on Canvas) |
Thursday: | 3:00 pm – 4:00 pm in Darwin 116B (or the meeting area by Darwin's main entrance) |
Friday: | No office hours scheduled |
Over the semester, these office hours may be adjusted, in response to student demand.
Textbook: Anany Levitin, Introduction to the Design and Analysis of Algorithms, Third Edition, Pearson, 2012, ISBN 9780132316811. Book Store Link
C/C++ Style Guide for CS 415 for Spring 2023
Most class materials, including slides, will be available on CANVAS within a few days of each class session.
Links to readings and assignments may be found on the day-by-day class schedule.
Resources about basics of technical writing:
Doxygen Documentation Generation Package
From the course's Home Page: Common Computational Formulae
Statements in this section are quoted from language recommended by SSU.
Fires and/or Power Outages
Sonoma County has seen an increase in fire activity and public safety power outages that have had an impact on campus operations intermittently since 2017. In the event that we experience a similar disruption to our course this semester, I will communicate with class via email within 24 hours of the disruption around potential changes to assignments, due dates, or readings. If the disruption continues for more than one week of our regular class meetings, I will subsequently follow up on a weekly basis. Please sign up to receive university emergency alerts by texting SSUALERTS to 67283.
Religious Observance
The observance of religious holidays (activities observed by a religious group of which a student is a member) and cultural practices are an important reflection of diversity. As your instructor, I am committed to providing equivalent educational opportunities to students of all belief systems. At the beginning of the semester, you should review the course requirements to identify foreseeable conflicts with assignments, exams, or other required attendance. If at all possible, please contact me (your course coordinator/s) within the first two weeks of the first class meeting to allow time for us to discuss and make fair and reasonable adjustments to the schedule and/or tasks.
Flexibility versus Accommodations
I have designed the course to provide some flexibility for students who experience hardships related to COVID-19 and other illnesses, mental health challenges and family concerns. These include reasonable extensions on assignments, and opportunities to make-up exams. It is important to note that any flexibility that I provide is something that I would offer any student without compromising the learning outcomes or modalities of the course. For instance, I cannot change the course modality to online for a student, nor can I allow a student to use notes in a traditionally closed notes exam. The most important thing that you can do is communicate with me. I can work with you to determine what options there are for you to succeed.
This flexibility should not be confused with the term "accommodations" which is reserved for students referred to me by Disability Services for Students (DSS).
If you are a student with a disability, and think you may need academic accommodations, please contact Disability Services for Students (DSS), located in Schulz 1014A, Voice: (707) 664-2677, TTY/TDD: (707) 664-2958, as early as possible in order to avoid a delay in receiving accommodation services. Use of DSS services, including testing accommodations, requires prior authorization by DSS in compliance with university policies and procedures. See SSU's policy on Disability Access for Students.
If you feel stressed or otherwise worried about your circumstances, you are encouraged to contact SSU's Counseling and Psychological Services. In summary, CAPS offers short-term individual and group counseling, workshops, crisis intervention services, consultation, referral, training, and outreach.
created December, 2021 revised December, 2021-January, 2022 revised February 18, 2022 revised August 10-18, 2022 revised January 2023 revised Summer-Fall 2023 revised November 2024 |
|
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu. |