Course Syllabus

NOTE: Some links in this syllabus page may only be accessible to currently enrolled students.

Instructor Introduction

Hi everyone! My name is Yong Bakos, and I am your Instructor this term for AI 531 Artificial Intelligence.

This course was originally developed by Yong Bakos, who is a Senior Instructor at Oregon State University and professional software engineer. Our goal is to teach graduate students pursuing a masters in computer science about the history, vocabulary, concepts, algorithms and techniques that are the foundation of artificial intelligence (AI). This is a technical course, but it emphasizes theory and modeling more than code. Because AI is a broad, deep and widely applicable field, no single course will enable one to be a master of AI. We have chosen to equip each student with a strong foundation in AI, integrating both knowledge and skill-building, to support your future studies in this aspirational field.

Based on our past experience, the two most important things to do in this course are:

  • Study the book. Don't just read it, study it
  • Ask lots (lots!) of questions using the communication tools of the course

We also recommend scheduling dedicated focus time to start the module content and assignments early in the week.

Remember, online does not mean alone. One component of value in this course is engaging with other people learning the same thing at the same time and having an instructor to help guide that learning. If you are not active on the Ed discussion board you will get much less out of the course. Students who engage with each other, the content and the teaching staff tend to do better in the course and have a more positive experience than those who don’t.

We are looking forward to working with you and supporting your success in this course!

 

Instructor: Yong Bakos

Teaching Assistant: Xiangxi Shi

 

Communication

We are a community of learners. Connect with fellow students, the teaching assistants, and the instructor via the communication tools for the course. Our primary communication tools are Ed Discussions, Zoom, and email.

Questions & Answers: Ed Discussion Board

We will use Ed Discussion Board as our primary means of communication. Post lots and lots of questions! If your question is regarding an assignment, please describe what you are doing, and what error or result you are seeing. Including screenshots is extremely helpful.

You are welcome to post anonymously.

You should post a private message if your post includes a significant bit of a solution or code.

Live Student Help Sessions (Office Hours): Zoom

Student hours (office hours) are held via Zoom by the instructor and teaching assistants. We are looking forward to working with you. Please use the Zoom links below, and note that all times are in the Pacific time zone.

Who Day & Time Zoom Link
Yong Bakos Tuesdays 3 - 4PM link
Xiangxi Shi Wednesdays 1 - 2pm & 9 - 10pm
Thursdays 1 - 2pm & 9 - 10pm
link

 

Email

Please do not email our teaching assistants. You are welcome to email the instructor. Please use AI531 in the subject line. You must use your ONID email, but you are welcome to use the Canvas Inbox email as well.

Help from the Instructor

Each student may expect instructor assistance with general course concerns, absence notifications, extension requests, and all issues related to the course. Please use Ed Discussion to ask questions about course content or assignment help. Join a scheduled live help session for immediate assistance. Please send personal matters via email.

Help from Teaching Assistants

Our GTA is responsible for answering questions and grading submitted work. Please do not email the GTA. If you have a question about your grade, please post it as a comment in your assignment submission in Canvas. Please use Ed Discussion to ask questions about course content or assignment help. Join a scheduled live help session for immediate assistance. Please do not send email to our GTA.

Expected Response Time

These times only apply to the weekday, Monday through Friday. The instructor is not available over the weekend.

Expected Response Time
Medium Time
Ed Discussion 24 Hours
Email 32 Hours
Grades 72 Hours

For example, if you post a message on Friday at 4pm, you might not get a response until Tuesday at 4pm. Typically, you will receive a response  much more quickly than these official response times.

We attempt to post all assignment grades and feedback within three business days of a due date.

Technical Assistance

If you experience any errors or problems while in your online course, contact 24-7 Canvas Support through the Help link within Canvas. If you experience computer difficulties, need help downloading a browser or plug-in, or need assistance logging into a course, contact the IS Service Desk for assistance. You can call (541) 737-8787 or visit the IS Service Desk online.

Accommodations

Accommodations for students with disabilities are determined and approved by Disability Access Services (DAS). If you, as a student, believe you are eligible for accommodations but have not obtained approval please contact DAS immediately at 541-737-4098 or at http://ds.oregonstate.edu. DAS notifies students and faculty members of approved academic accommodations and coordinates implementation of those accommodations. While not required, students and faculty members are encouraged to discuss details of the implementation of individual accommodations.

Syllabus

You can download the full PDF version of this syllabus.

Course Name: Artificial Intelligence

Course Number: AI 531

Credits: 4 Credits

Instructor name: Yong Bakos

Instructor email: yong.bakos@oregonstate.edu

Graduate Teaching Assistant name: Xiangxi Shi

Course Description

Intelligent agents. Problem-solving as heuristic search. Adversarial search. Constraint satisfaction methods; Arc-consistency. Knowledge representation and reasoning. Propositional logic. Reasoning with propositional logic: algorithms for satisfiability. First-order logic. Proof theory, model theory, resolution refutation, forward and backward chaining, representing events and actions. Equivalent to CS 531.

Communication

Please post all course-related questions in the Ed Discussion forum so that all students may benefit from our conversation. Please contact me privately for matters of a personal nature. I will attempt to reply to course-related questions within 48 business hours. I will strive to return your assignments and grades for course activities to you within three days of the due date.

Course Credits

On average this course combines approximately 150 hours of instruction, online activities and assignments for 4 credits.  The majority of the time will be spent completing the activities and assignments. Assignments can be challenging, so start early and if you have questions ask them on the Ed Discussion board. Waiting until the last minute is not an effective strategy.

Measurable Student Learning Outcomes

  1. Classify different problem solving environments.
  2. Choose appropriate search algorithms for a given problem.
  3. Implement and Test algorithms for search and inference.
  4. Analyze the properties and complexity of different search algorithms.
  5. Represent statements in propositional and first order logic.
  6. Explain the notions of validity, satisfiability, soundness, and completeness.
  7. Prove theorems in first order logic.
  8. Solve problems based on logic and search.

Learning Resources

The required textbook for the course is Russell, S. & Norvig, P. (2021) Artificial Intelligence: A Modern Approach, 4th ed. In addition, consult the Textbook Resources module in this course.

We provide additional learning materials within the Canvas modules of this course. Each exploration and assignment provides additional external learning resources.

Evaluation of Student Performance

  • Exercises 40%
  • Quizzes 10%
  • Midterm Exam 20%
  • Final Exam 30%

Module Availability

Each module will generally be available at 8 AM on Monday. We limit module availability to keep students focused on similar topics and work each week of the course. We will provide access to the following week's module approximately one week in advance.

Letter Grade

Grade and Percent Range
Grade Percent Range
A 93
A- 90
B+ 87
B 83
B- 80
C+ 73
C 73
C- 70
D+ 67
D 63
D- 60
F 0

Course Content

CS 512 Course Schedule
Week
Topic Learning Materials Assessed Work
1 Introduction 

AIMA Chapter 1

Explorations

Quiz 1

Exercise 1

2 Intelligent Agents

AIMA Chapter 2

Explorations

Quiz 2

Exercise 2

3 Solving Problems by Searching

AIMA Chapter 3

Explorations

Quiz 3

Exercise 3

4 Search in Complex Environments

AIMA Chapter 4

Explorations

Quiz 4

Exercise 4

5 Adversarial Search and Games

AIMA Chapter 5

Explorations

Quiz 5

Exercise 5

6 Constraint Satisfaction Problems

AIMA Chapter 6

Explorations

Quiz 6

Exercise 6

Practice Midterm Exam

Midterm Exam

7 Logical Agents

AIMA Chapter 7

Explorations

Quiz 7

Exercise 7

8 First-Order Logic

AIMA Chapter 8

Explorations

Quiz 8

Exercise 8

9 Inference in First-Order Logic

AIMA Chapter 9

Explorations

Quiz 9

Exercise 9

10 Reflection & Further Learning

Explorations

Quiz 10

11 Final Exam

 

 

Practice Final Exam

Final Exam

Assessed Work

After completing the learning materials for each module, we will complete a quiz, to demonstrate our knowledge and understanding, and an exercise, to demonstrate an application of knowledge and skill. There is both a midterm exam and a final exam in this course.

Quizzes

Quizzes are taken online within Canvas, and are timed, so once you begin, be prepared to complete the quiz in one sitting. You may take each quiz twice. These are not a huge part of your grade, so do not stress out over them. Rather, use the quizzes to assess your knowledge and understanding of the course material. Please ask questions about any incorrect answers or confusing topics in the quiz.

Exercises

Exercises are problem sets that expect responses in both prose and code, and there is typically one exercise per week. Each exercise has a rubric with the criteria we use for assessment.

You are encouraged to complete your exercise before the assignment deadline, and post a comment in Canvas to request an early review of your work. That way, you can incorporate feedback into a revision, and resubmit prior to the deadline for additional credit, if any was missed.

Exams

There is a midterm in this course in Module 6. The midterm is an unproctored, timed, online quiz within Canvas. A practice midterm exam is available. You may take the midterm exam any time before its due date. You may only take the midterm exam once.

There is a final exam in this course during Final Exam Week. The final exam is an unproctored, timed, online quiz within Canvas. A practice final exam is available. You must take the final exam before its due date. You may only take the final exam once.

Expectations: Programming, Logic, Algorithms and Data Structures

This course is for graduate students who have completed an undergraduate degree in computer science, or have equivalent experience in programming, boolean logic, algorithms, and data structures. In addition, students should have completed AI 530 prior to this course, but it is not mandatory. You are expected to write programs without guidance on syntax, logic, or APIs. The emphasis of this course is on solving problems in AI through programming - the course does not teach you how to program.

In addition, this course expects students to have at least an undergraduate-level mathematics background in statistics, algebra, geometry, and trigonometry. Intimacy with probability and basic calculus is helpful, but not mandatory.

Difference with On Campus Courses

In an on campus course about 12 to 13 of the class time would consist of instructor-led lecture. The rest of the time would be used to do in-class examples and work in small groups. This is where you would test your understanding of the topics and ask your group mates for help. It is also where you would help your fellow students. If you were totally stuck, the instructor would help.

In principle, online learning should be about the same. But instead of a classroom, you have a discussion board. You should be active on the discussion board to help and get help from your classmates. When everyone gets stuck the instructor can help get the class unstuck. But the value of the course comes in your ability to get help from other people learning the same thing at the same time and having an instructor to help guide that learning. If you are not active on the discussion board you will get much less out of the course. Ask lots of questions.

Tools

This primary tools in this course include a code editor of your choice, a command-line shell, and a Python programming environment. Each student is responsible for configuring and using their own development environment.

In addition to programming tools, we will rely on the tools of theory, algorithms and data structures to model and solve problems in the field of AI.

Getting Help With Tools

When you get stuck, please ask for assistance using the Ed Discussion forum. Please describe:

  • What assignment you are working on
  • What you are trying to do
  • The steps you have taken
  • The last thing you did that seemed to work correctly
  • The full error message and/or a screenshot

Per the Expectations in programming and logic for the course, we will not prioritize debugging assistance or help with programming errors. Try using google to investigate your problem, but if you feel stuck, please ask for assistance.

Course Policies

Learning, Inquiry & Course Communication

This is a graduate level course in computer science, and each of us is expected to be an independent learner, engaging with the content, fellow students, and the learning staff. Ask lots of questions. We are all expected to participate a lot on the discussion board to get help from, and give help to, your fellow classmates. If you are not active on the discussion board you will get much less out of the course.

Each student is responsible for reading all Canvas course Announcements.

Late Work Policy

Assessed work, such as quizzes and exercises, are generally due on Sundays. Each assignment will remain open for two days after the due date. We will review and score late work, but late submissions will receive a 50% score reduction.

If you would like an extension for any reason, please email the instructor at least 48 hours in advance of a due date.

Quality of Work

We expect students to care, and take pride in their submitted work, and present work of professional quality. This includes the lack of spelling errors, appropriate grammar, reasonable formatting, readability, and relatively clean code. We may request that you revise and resubmit an assignment, if the quality of work does not exhibit care.

Students are encouraged to submit incomplete, high quality work rather than grasping for a poorly written, haphazardly complete or error-prone solution to an assignment. In other words, ensure that prose is well-written, and that any program runs without error, even if it is only partially complete. We can best provide feedback on partial but functioning work, rather than non-functioning work.

Statement Regarding Religious Accommodation

Oregon State University is required to provide reasonable accommodations for employee and student sincerely held religious beliefs. It is incumbent on the student making the request to make the faculty member aware of the request as soon as possible prior to the need for the accommodation. See the Religious Accommodation Process for Students.

Guidelines for a Productive and Effective Online Classroom

(Adapted from Dr. Susan Shaw, Oregon State University)

Students are expected to conduct themselves in the course (e.g., on discussion boards, email) in compliance with the university’s regulations regarding civility. Civility is an essential ingredient for academic discourse. All communications for this course should be conducted constructively, civilly, and respectfully. Differences in beliefs, opinions, and approaches are to be expected. In all you say and do for this course, be professional. Please bring any communications you believe to be in violation of this course policy to the attention of your instructor.

Active interaction with peers and your instructor is essential to success in this online course, paying particular attention to the following:

  • Unless indicated otherwise, please complete the readings and view other instructional materials for each week before participating in the discussion board.
  • Read your posts carefully before submitting them.
  • Be respectful of others and their opinions, valuing diversity in backgrounds, abilities, and experiences.
  • Challenging the ideas held by others is an integral aspect of critical thinking and the academic process. Please word your responses carefully, and recognize that others are expected to challenge your ideas. A positive atmosphere of healthy debate is encouraged.

Establishing a Positive Community

It is important you feel safe and welcome in this course. If somebody is making discriminatory comments against you, sexually harassing you, or excluding you in other ways, contact the instructor, your academic advisor, and/or report what happened at https://studentlife.oregonstate.edu/studentconduct/reporting so we can connect you with resources.

Expectations for Student Conduct

Student conduct is governed by the university’s policies, as explained in the Student Conduct Code. Students are expected to conduct themselves in the course (e.g., on discussion boards, email postings) in compliance with the university's regulations regarding civility.

Academic Integrity

Note: All assignments are checked for plagiarism and originality, and compared to solutions found on typical cheating sites (Chegg, etc), other student work, and assessed for AI-generated work. Violations of the university's policies shall result in an F grade in this course.

Integrity is a character-driven commitment to honesty, doing what is right, and guiding others to do what is right. Oregon State University Ecampus students and faculty have a responsibility to act with integrity in all of our educational work, and that integrity enables this community of learners to interact in the spirit of trust, honesty, and fairness across the globe.

Academic misconduct, or violations of academic integrity, can fall into seven broad areas, including but not limited to: cheating; plagiarism; falsification; assisting; tampering; multiple submissions of work; and unauthorized recording and use.

It is important that you understand what student actions are defined as academic misconduct at Oregon State University. The OSU Libraries offer a tutorial on academic misconduct, and you can also refer to the OSU Student Code of Conduct and the Office of Student Conduct and Community Standard’s website for more information. More importantly, if you are unsure if something will violate our academic integrity policy, ask your professors, GTAs, academic advisors, or academic integrity officers.

Plagiarism

Note: All assignments are checked for plagiarism and originality, and compared to solutions found on typical cheating sites (Chegg, etc), other student work, and assessed for AI-generated work. Violations of the university's policies shall result in an F grade in this course.

Keeping with the idea of needing to communicate with your classmates, you will need to share code with each other to communicate ideas and to explain problems. That said, you should only share what is needed. This is good practice in general. Having to look through an entire file to find a single function is not helpful when you could have just posted the functions.

You will also get great help from your classmates. If you use a code fix or suggestion from them you need to do two things.

  1. You need to cite who it came from, that means you need to, in your code, add a comment saying that the code was not your original code and say what student or 3rd party provided it.
  2. You need to document what the code is doing. So you should write roughly a sentence per line of code explaining what the snippet is doing. So if you were to say, use an entire 100 line file provided by a student you would need to write something around a 2,000 word essay describing what the code is doing.

When giving help, don’t give more help than is needed. Try to keep answers deep in depth but narrow in focus. Address the problem the student is asking about and address it well, but keep from giving away too much about topics they might not have run into yet.

TurnItIn

Your instructor may ask you to submit one or more of your writings to Turnitin, a plagiarism prevention service. Your assignment content will be checked for potential plagiarism against Internet sources, academic journal articles, and the papers of other OSU students, for common or borrowed content. Turnitin generates a report that highlights any potentially unoriginal text in your paper. The report may be submitted directly to your instructor or your instructor may elect to have you submit initial drafts through Turnitin, and you will receive the report allowing you the opportunity to make adjustments and ensure that all source material has been properly cited. Papers you submit through Turnitin for this or any course will be added to the OSU Turnitin database and may be checked against other OSU paper submissions. You will retain all rights to your written work. For further information, visit Academic Integrity for Students: Turnitin – What is it?

Statement Regarding Students with Disabilities

Accommodations for students with disabilities are determined and approved by Disability Access Services (DAS). If you, as a student, believe you are eligible for accommodations but have not obtained approval, please contact DAS immediately at 541-737-4098 or at the DAS website. DAS notifies students and faculty members of approved academic accommodations and coordinates implementation of those accommodations. While not required, students and faculty members are encouraged to discuss details of the implementation of individual accommodations.

Accessibility of Course Materials

All materials used in this course are accessible. If you require accommodations please contact Disability Access Services (DAS).

Additionally, Canvas, the learning management system through which this course is offered, provides a vendor statement certifying how the platform is accessible to students with disabilities.

Ecampus Reach Out for Success

University students encounter setbacks from time to time. If you encounter difficulties and need assistance, it’s important to reach out. Consider discussing the situation with an instructor or academic advisor. Learn about resources that assist with wellness and academic success.

Ecampus students are always encouraged to discuss issues that impact your academic success with the Ecampus Success Team. Email ecampus.success@oregonstate.edu to identify strategies and resources that can support you in your educational goals.

  • For mental health

Learn about counseling and psychological resources for Ecampus students. If you are in immediate crisis, please contact the Crisis Text Line by texting OREGON to 741-741 or call the National Suicide Prevention Lifeline at 1-800-273-TALK (8255).

  • For financial hardship

Any student whose academic performance is impacted due to financial stress or the inability to afford groceries, housing, and other necessities for any reason is urged to contact the Director of Care for support (541-737-8748).

Student Evaluation of Courses

During Fall, Winter, and Spring term the online Student Evaluation of Teaching system opens to students the Wednesday of Week 8 and closes the Sunday before Finals Week. Students receive notification, instructions and the link through their ONID. They may also log into the system via Online Services. Course evaluation results are extremely important and used to help improve courses and the hybrid learning experience for future students. Responses are anonymous (unless a student chooses to “sign” their comments, agreeing to relinquish anonymity) and unavailable to instructors until after grades have been posted. The results of scaled questions and signed comments go to both the instructor and their unit head/supervisor. Anonymous (unsigned) comments go to the instructor only.

Return to Modules

Course Summary:

Date Details Due