Welcome to CS 330: Artificial Intelligence

Print Syllabus

CS 330 -- Syllabus (spring2025)

Section 1
Professor: Renzhi Cao
Office: MCLT 248
Email: caora@plu.edu
Phone: 253-535-7409
Office hours: Online Schedule

Textbook

This course does not mandate any textbook. The lecture slides and other materials provided by the instructor will be sufficient as the primary reference. The following three books are additional reference:

Machine Learning. By Tom M. Mitchell, PUBLISHED BY MIT PRESS, 1997.

Introduction to machine learning. BY ALPAYDIN, ETHEM, PUBLISHED BY MIT PRESS, 2009

Deep Learning. BY GOODFELLOW, IAN, PUBLISHED BY MIT PRESS, 2016

Class Meeting Times

Section 1:  Tuesday, Thursday   15:40-17:25, MCLT #203 (Dr. Cao)

Course Goals

  • Understanding Artificial Intelligence and Machine Learning concept
  • Developing problem solving skills
  • Applying machine learning techniques to solve problems in different fields
  • Having fun on machine learning techniques and developing skills that will allow you to learn on your own.
  • Learning Objectives

    1. Understand different techniques about supervised learning, un-supervised learning, reinforcement learning
    2. Learn how to define a problem with computational thinking
    3. Learn how to discuss and present a machine learning project
    4. Expose student to interdisciplinary projects
    5. Develop teamwork skills
    6. Learn how to apply different machine learning techniques to solve problems

    This course contributes to the following Computer Science learning outcomes:

    1. An ability to apply mathematics and the scientific method to solving computing problems. (e.g, math in AI and train, evaluate, test AI model to solve real problems)
    2. An ability to critically analyze a problem and to design, implement, and evaluate a computing solution that meets requirements. (e.g, in this course, we are going to give students requirements of course project, and students need to design, implement, and evaluate AI system)
    3. An ability to work effectively in small groups on medium scale computing projects. (e.g, students will solve the course project in groups)
    4. An ability to effectively communicate technical concepts in oral and written form. (e.g, there is presentation in this course and also a report is needed for the course project)
    5. An ability to understand the social and ethical implications of working as a professional in the field of computer science. (e.g, there is big debate about AI for social and ethical issue, we are going to cover it in class and discuss about the solution)
    6. An ability to use current tools and methodologies in computing practice. (e.g, a lot of AI techniques and platforms released everyday, and students are expected to explore those in this course)

    Prerequisites

    The official prerequisite for this course is Data Structure in CS 270. Students in Data Science minor could take DS 233 as prerequisite. Some programming experience is preferred, and math background is plus. If you have questions about your programming background I will be happy to discuss them with you.

    Attendance

    You are expected to attend all lectures. There may be in-class exercises, quiz or assignments given regularly. You are responsible for all material covered during the class. If you must miss a class, you will want to contact someone in your section for his or her notes. Expect that missing classes may result in a lower grade, directly or indirectly.

    Communication Outside of Class

    The assignments and other helpful information is available from the class home page and occasionally I will make announcements on the class Sakai site. I strongly recommend you check the home page and Sakai regularly. I may also contact you via email (using your PLU email address) with important class information, so you should check your email regularly as well. Please feel free to email me with any questions you might have or to set up an appointment if you need to meet with me outside of office hours.

    Computer Access

    The department operates several laboratories in the Morken Center. Morken 212 serves as a closed lab for CS 270, CS 144, and CS 131, as well as for other classes on occasion. It serves as an open lab all other times during the week and in the evenings and you are welcome to use it during those times. The lab opens with a card-swipe lock so be sure to bring your PLU ID in order to be admitted. The lock will only work for IDs of students on the "admit list". Please let me know right away if you if your ID card does not work. If the 212 lab is full or being used by another class you may use the machines in Morken 227.

    Conduct

    As members of the PLU community, it is all of our responsibility to provide a safe, inclusive classroom environment that is considerate of others, encourages exploration of ideas and allows opportunities for everyone to fully engage in classroom discussions, activities, lectures, etc. To accomplish this, I ask that each of us refrain from conduct that is disrespectful and/or distracting to others in the classroom. It is amazing how playing Internet games, checking out facebook/blogs or holding private conversations during class can distract the most focused of students (or instructors!).

    Regarding the use of ChatGPT, directly copying and pasting solutions is prohibited. However, you're permitted to use ChatGPT on our official course Discord channel, provided it's utilized for enhancing your understanding of concepts rather than seeking direct answers. The Discord channel dedicated to ChatGPT interactions is public, so all students can view the posted questions and answers. Therefore, refrain from sharing any private information in that space.

    Examples of classroom misconduct includes:

    • Coming to class late (on a regular basis)
    • Failure to turn off electronic devices including cell phones, ipods/mp3 players and similar devices.
    • Printing files or documents during class (unless specifically requested as part of an in-class activity).
    • Private conversations during lectures, presentations etc. (via voice or electronic means)
    • Playing Internet games, surfing the web, reading email/blogs, working on homework assignments or other activities inappropriate with what is happening in the class.
    • Aggressive, threatening or demeaning behavior towards other students or the instructor.

    Grading

    Your grade will be based on the following:

    ComponentWeightDetails
    Course participation 10% There will be in-class exercises and interactions in or out of class, counting 10% of your final grade. Students will only be allowed to skip a class in the event of an emergency, illness, or absence due to a university sanctioned activity such as a sporting event or music performance. If you must miss a class, you should make every effort to notify me, as soon as possible, via e-mail or voice mail.
    Literature Review 10% There will be one Literature Review assignments, evaluated by reports and presentations.
    Quiz 20% There will be several quizzes for this course.
    Labs 25% There will be around four labs, evaluated by final work submitted to Sakai.
    Final exam 15% There will be one final exam.
    Course project 20% There will be one project. The project will consist of a mid-term proposal presentation (5%) and final project result presentation (5%) with reports and codes (10%) submitted before semester ends. You can choose to present any project including project from the class.

    Your final grade will be based on your weighted average using some approximation of the following table:

    Overall ScoreGrade
    100% -- 90% A / A-
    90% -- 80% B+ / B / B-
    80% -- 70% C+ / C / C-
    70% -- 60% D+ / D / D-
    60% -- 0% E

    The grading scale is a general guideline only. I may adjust your grade depending on various factors including class participation, attitude, and timeliness (turning in assignments, attendance etc.).

    Getting Help

    Our mission is to challenge you to learn and to provide resources to help you succeed. If you are struggling with your coursework, there are a wide variety of ways for you to seek help.
    • Your instructor is your primary resource. You can contact your instructor by email or phone. Your instructor will have regular office hours, and you are encouraged to use them. If the office hours don't fit with your schedule, please feel free to contact your instructor to schedule an appointment.
    • Student Care Network: PLU has established the Student Care Network (SCN) to work with students and partners for a successful academic, social, and emotional experience at PLU. Students, faculty and staff can submit a Care Form (available on the main page of the PLU web-site under EPass) if they have concerns (academic, emotional, physical or social) related to the well-being of a PLU student. The SCN will work with campus partners to support a culture of care and response for all community members. Please go to: https://www.plu.edu/srr/student-care-network/ to learn more or to submit a report.
    • Center for Student Success: PLU has established the Center for Student Success to serve as a campus-wide network of units dedicated to helping students succeed. The website is: www.plu.edu/student-success.

    Academic Integrity

    We strictly adhere to the Academic integrity policy as stated in the student handbook http://www.plu.edu/srr/code-of-conduct/academic-integrity/. Academic dishonesty is treated very seriously and can result in the earning of a zero on an assignment/exam, the failure of the course, or expulsion from the university.

    In computer science courses, we recognize that interactions with classmates and others can help facilitate the learning process. However, there is a line between enlisting the help of another and submitting the work of another. The following is intended to help clarify that line as it applies to this class. If in doubt, ask your instructor before receiving or giving the assistance.

    All work that you submit must be your own. The following lists include examples that indicate the kinds of collaboration that are acceptable and unacceptable in this course. These lists are not exhaustive. If you are unsure about a behavior, ask your instructor.

    Acceptable

    • Discussing the assignment in general terms with another student, including a discussion of how to approach the problem.
    • Helping a classmate to find a bug by viewing their code on their screen, but not on your computer.
    • Using the web for instruction, reference and solutions to technical problems, but not for outright solutions to the assignment.
    • Whiteboarding solutions to assignments with others using diagrams or pseudocode, but not actual code.

    Unacceptable

    • Working as a partner (splitting the workload) with another student on an assignment.
    • Showing another student your solution to an assignment.
    • Viewing another student’s solution to an assignment.
    • Providing or making available solutions to individuals who might take this course in the future.
    • Decompiling the instructor's solutions that were provided as an example.
    • Having another person (current student, former student, tutor, friend, anyone), "walk you through," how to solve an assignment.
    • Discussing programming assignments in any public forum other than the class message board.
    • Examining or using solutions to class assignments that you might find on the web.
    • Be careful when providing help to your fellow students. Refer other students to class resources (lecture examples, the text- book, the web site, or emailing an instructor). You must not share your solution with others. You must also ensure that your work is not copied by others by not leaving it in public places, emailing it others, posting it on the web, etc.

    Group work

    For project in the class, the above policy is relaxed to allow working with a partner or groups. However, the following rules must be strictly adhered to:
    • All work for that assignment must be done with every one in the group involved, and a clear description of each student's contribution should be included in the report.
    • Pairs or group will submit a single copy of your code or report. However, you should each keep a copy of your final submission.
    • If students begin working on a project as groups and cannot complete it together, at least one student must contact the instructor to request a partnership dissolution.

    Weather Related Closures

    Make sure to call ahead to confirm whether class is meeting if you have any concerns about snow accumulations or icy roads that would make travel to campus unsafe. You can call the University's hotline after 6 a.m. (535-7100) or access the PLU website to see if school has been cancelled. If the university is open, but this class needs to be cancelled, that information can either be found on Sakai or will be emailed to you. Students are urged to use caution and personal discretion and avoid undue risk and personal danger when making travel decisions during extreme weather conditions.

    Special Needs and Circumstances

    Students with medically recognized and documented disabilities and who are in need of special accommodation have an obligation to notify the University of their needs. Students in need of accommodation should contact the Office of Disability Support Services (http://www.plu.edu/dss/, x7206). If you need course adaptations or accommodations because of a disability, if you have emergency medical information, or if you need special arrangements in case the building must be evacuated, please make an appointment with your instructor as soon as possible.

    Students are also reminded that they are responsible for notifying instructors of any conditions that may impair their academic performance. Without advance warning, such difficulties cannot be used later as a basis for requesting make-up exams or reconsideration of grades.

    Registrar's Deadlines

    https://www.plu.edu/registrar/wp-content/uploads/sites/209/2024/06/spring-2025-important-dates-updated-06.24.24.pdf