CS 415, Section 001 | Sonoma State University | Spring, 2023 |
Algorithm Analysis
|
||
Instructor: Henry M. Walker
Lecturer, Sonoma State University |
Although much of this course is well developed, some details can be
expected to evolve as the semester progresses.
Any changes in course details will be announced promptly during class.
Course Descriptions: | Overview | Goals | Objectives | 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 |
The Sonoma State University Catalog provides the following description for CS 415, Algorithm Analysis:
Formal Description From the Sonoma State University Catalog:
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 along with NP-completeness 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:
Course Meeting Information:
Expanding on the course description, CS 415 has these high-level goals:
The objectives of CS 415 include these capabilities:
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, labs and worksheets, in-class quizzes and tests, etc. 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) are combination of labs (e.g., programming-oriented exercises) and worksheets (e.g., 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.
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. 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, March 14, and Thursday, April 20. These tests will focus on the previous 4-6 weeks of the semester, although some earlier material may be covered.
Exam: Following the scheduled published by the Registrar's Office, the final exam for this course will be given on Tuesday, May 16 at 1:00 pm. This exam will be cumulative—including material from throughout the semester.
Worksheets and labs are due at the start of class, two class days after they appear on the Tentative Class Schedule. A penalty of 30% per class meeting will 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 final exam 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 11, at 4:00 pm;
assignments received after
that time will not be counted in the grading of the course.
Written assignments (including written exercises and programs): All work is to be done individually. Outside sources (including consultation of in-class slides or the course textbook) may be used, provided students must follow university-wide rules for quotation and citation. In particular, every written source (including the textbook) must be identified, with sufficient information that the source could be easily 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). Further, references to books or articles must include page numbers. Also, if an answer uses material from past courses or previous work with individuals, the details of that material must be given explicitly.
Quizzes, tests, and the final exam: All quizzes, tests, and the final exam 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.
Procedures: Throughout the course, any hint of academic dishonesty will be investigated and handled following the SSU Policies on Cheating and Plagiarism.
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.
Worksheets and Labs: 44% | Quizzes: 20% (4% each quiz–lowest quiz dropped) | Tests: 18% (9% each test) | Exam: 18% |
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:00 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 – 8:30 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 |
During office hours, I will try to accommodate all students who want to talk with me, largely following a first-come, first-served strategy.
Additional office hours may be scheduled, in response to student demand.
Textbook: Anany Levitin, Introduction to the Design and Analysis of Algorithms, Third Edition, Pearson, 2012, ISBN 9780132316811.
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 labs, worksheets, and other 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 |
|
For more information, please contact Henry M. Walker at walker@cs.grinnell.edu. |