CSCE476/876, Fall 2020: Course Syllabus
1. General Information
Prereq: CSCE310, Data structures and algorithms or permission
Course description: Introduction to the basic principles,
techniques and tools now being used in the area of computational
intelligence. Lecture topics will include problem solving, knowledge
representation and reasoning, search, and planning and action. More
advanced topics may be included depending on class interests and
performance. Programming will be done in C, or C++, but preferably in
Python. To do the homewok using Allegro Common Lisp (ACL) please contact the instructor.
Lectures:
Monday 2:30--3:20 in AvH 115, and 3:30--4:20 in AvH 115
Wednesday 2:30--3:20 in AvH 115
Friday 2:30--3:20 in AvH 115
Instructor: Prof. Berthe Y. Choueiry
Office location: Room 360 (moving to 259), Avery Hall,
Office hours: Wednesdays and Fridays 3:30pm--4:30
in
Zoom meeting
room or by apppointment.
GTA
GTA Minal Khatri
Office hours:
On Mondays and Fridays 12:30--1:30 pm in
Zoom
meeting room or by apppointment.
UTAs
Unfortunately, no qualitified UTA is available this semester.
Textbooks (check the bookstore):
-
Required: Artificial Intelligence, A Modern Approach (AIMA), Third Edition,
by Russell & Norvig.
-
Required: LISP, 3rd Edition; (LWH). Winston & Horn.
-
Optional (recommended): Common Lisp, the Language. Guy Steele.
2. Communications
- Course WebPage: You can access all information
about the course from the course WebPage. Check the course schedule to
prepare for each class.
- Canvas:
Grades are posted on Canvas. Check them regularly and alert us
about grading errors within 7 calendar days.
- Piazza: For a quick response, send your questions to Piazza. Your
message will be read by the TA and the instructor and they will
respond to you ASAP.
- Webhandin: All homework, projects, reports, etc. must be submitted via the webhandin system of CSE.
- Anonymous Suggestion
Box: You may also choose to drop us a note in the Anonymous Suggestion Box to express any
opinion about the course. (You can do it also via Piazza.)
3. Protocol of the Course
This course syllabus is our 'contract' and we will abide by it.
The course consists of lectures by the instructor, 3 times per week.
Workload
Required and recommended reading (as indicated in the Class schedule)
AIMA (textbook) will be followed in a more or less linear
fashion. The content of the course will be dynamically adapted
to students performance. Chapters to be studied may encompass:
Chapter: 1, 2, 3, 4, 5, 6 (partially), 7, 9, and 10 (quickly) and,
time permitting, 11, 13, and/or 14. Sections from these and other
chapters may be dropped or added during the course. Regularly
check the class schedule.
Programming, theoretical, and library-search
assignments
- Programming assignments must be done in Python
(preferably), C, or C++. If you want to do the homework in Common
Lisp, please contact the instructor. (advice: use Allegro Common Lisp
on Linux).
- Programming homework must run on the cse server and be submitted
with a README file using cse's handin.
- Pen+paper assignments can be given to
the instructor in class and/or submitted electronically on
cse's handin.
- All assignments (including programming and pen+paper
assignments) must be turned in before
the lecture on the due date. Late homework are subject to
a 20% deduction per day (including week-ends), any second after the
due date counts as an entire day.
- Students are kindly requested to indicate how much time they
approximately spend on each exercise; this information will be
aggregated and used for load-balancing purposes, it does not affect
grading and the evaluation of individuals.
Surprise quizzes
There will be surprise quizzes throughout the semester (with a
frequency inversely proportional to students' attendance).
Quizzes will address allmaterial covered during the lectures
and/or appearing in the required reading. No books or
personal notes are allowed during the quizzes, unless explicitly
specified. Quizzes cannot be made up.
Tests
- There will be one pre-test, one mid-term and one final. All are administered in person.
- Tests cannot be taken in advance. Tests cannot be made up except
by instructor's permission.
- Unless specified, tests are closed-book exams. Students may
however use a one 81/2"x11"
sheet as crib sheet. Students may use both sides of the sheet and
write as small as they like.
- Crib sheets may have only definitions,
theorems, general comments. No proofs and no solutions of examples or
of problems are allowed.
- Crib sheets must be handwritten. No
photocopies, typewritten paper, electronic/mechanical reproductions
will ever be allowed.
- Finally, students must handin their crib sheet
with their exam.
Attendance
Attendance is not mandatory. But students are responsible for the
material covered and announcements (such as lists of terms for
glossary) made during the class. Also, there will be surprise
quizzes during the regular class and the recitation.
Bonuses will be awarded to students who
interact lively, and participate in discussion in class.
Alerts
-
It is the students responsibility to ensure an account on the
department's server.
-
Although all communications will be done on Piazza, it is
the students responsibility to ensure that their email account on
cse.unl.edu is properly working at all times.
-
Discussions among students, instructor, and TA (if any) are
encouraged. Homework however are a strictly individual
activity: no sharing is permitted (unless when specified by
instructor). Unethical behavior will be heavily sanctioned (e.g., a null
grade on the task).
- Always acknowledge any help received from other
individuals.
-
Always fully reference material used (e.g.,
encyclopedia, book, paper, journal, web site).
4. Grading Policy
Grade Distribution
-
Pre-test: 5%
-
(Surprise) quizzes: 15%
-
Homework: 30% (Programming assignments will be graded as follows: 70%
for correctness, 10% for programming style, and 20% for
documentation.)
-
Midterm: 25%
-
Final: 25%
Grade Conversion
97% |
A+ |
[94, 97[ |
A |
[90, 94[ |
A- |
[87, 90[ |
B+ |
[84, 87[ |
B |
[80, 84[ |
B- |
[75, 80[ |
C+ |
[67, 75[ |
C |
[60, 67[ |
C- |
[57, 60[ |
D+ |
[54, 57[ |
D |
[51, 53[ |
D- |
<=51 |
F |
5. How to Secure a Good Final Grade
Glossaries
Students who return, every Monday before class, a glossary of terms listed in
handouts will be credited for up to 8% bonus, computed proportionally to the
list of terms they return. Rules for glossary:
- Students will be have to build an incremental and alphabetically sorted
glossary of important terms.
- Terms to be included are the ones listed in the handouts distributed in class
or sent my email.
- A glossary entry can be filled with: (1) its definition in AIMA, (2) its
definition from another AI textbook, dictionary, or web resource, or (3) the
student's own interpretation. Terms that
are "cut and paste" from resources (i.e., Internet, textbook) will not
be corrected. (Rewriting or paraphrasing information, rather than cut
and paste, helps reinforce material in your brain.)
- All terms encountered during a week are due as a weekly glossary the following
Monday or as indicated on the course web page.
- At the end of the course, the full alphabetically sorted glossary is
due. (Hint: choose a text editor that can sort entries alphabetically.)
Additional Work
Closely monitor your grade. If you feel that your grade is slipping,
contact the instructor immediately. We may be able to assign to you
an additional task to put you back on the right track.
6. Intellectual Property Policies
Any work and/or
communication that you are privy to as a member of this course should
be treated as the intellectual property of the speaker/creator. It is
not to be shared outside the context of this course. Students may not
make or distribute screen captures, audio/video recordings of, or
livestream, any class-related activity, including lectures and
presentations, without express prior written consent from me or an
approved accommodation from Services for Students with
Disabilities. If you have, or think you may have, a disability such
that you need to record or tape class-related activities, you should
contact Services for Students with Disabilities. If you have an
accommodation to record class-related activities, those recordings may
not be shared with any other student, whether in this course or not,
or with any other person or on any other platform. Failure to follow
this policy on recording or distributing class-related activities may
subject you to discipline under the Student Code of Conduct
7. Department and University Policies
CSE will maintain a virtual Student Resource Center from 9 a.m. to 9
p.m. Monday to Friday. It is a valuable place to go for general CSE
related issues.
It is CSE Department policy that all students in CSE courses
are expected to regularly check their email so they do not miss important announcements.
All homework assignments, quizzes, exams, etc. must be your own
work. No direct collaboration with fellow students, past or current,
is allowed unless otherwise stated. The Computer Science &
Engineering department has
an Academic
Integrity Policy. All students enrolled in any computer science
course are bound by this policy. You are expected to read,
understand, and follow this policy. Violations will be dealt with on a
case by case basis and may result in a failing assignment or a failing
grade for the course itself.
The CSE Department has
an anonymous suggestion box
that you may use to voice your concerns about any problems in the
course or department if you do not wish to be identified.
Students with disabilities are encouraged to contact the instructor
or teaching assistant for a confidential discussion of their
individual needs for academic accommodation. It is the policy of the
University of Nebraska-Lincoln to provide flexible and individualized
accommodations to students with documented disabilities that may
affect their ability to fully participate in course activities or to
meet course requirements. To receive accommodation services, students
must be registered with the Services for Students with Disabilities
(SSD) office, 132 Canfield Administration, 472-3787 voice or TTY.
8. More Resources
AI
AI Topics of the AAAI
Artificial Intelligence, A Modern Approach (AIMA), by Russell Norvig. Second Edition.
Artificial Intelligence, 3rd Edition. Winston. ISBN 0201533774.
Essentials of Artificial Intelligence. Ginsberg. ISBN 1-558s60-22-6.
Call number Q335.G55 1993.
Artificial Intelligence: A New Synthesis. Nilsson. ISBN 1-55860-535-5.
Call number Q335.N496 1998.
Paradigms of Artificial Intelligence Programming. Norvig. ISBN 1-55860-191-0.
Call number QA76.6.N687.
Artificial Intelligence. Structures and Strategies for Complex Problem Solving.
Luger and Stubblefield
Lisp
Common
Lisp, The Language, Second Edition. Guy L. Steele, Jr. Digital Press,
ISBN: 1555580416
LISP, 3rd Edition. Winston & Horn. ISBN 0-201-08319-1.
ANSI Common Lisp; Graham. ISBN 0-13-370875-6.
Paradigms of Artificial Intelligence Programming. Norvig. ISBN 1-55860-191-0.
Call number QA76.6.N687.
Object Oriented Common Lisp. Slade. ISBN 0-13-605940-6
Call number QA76.64 .S576
Lisp On-line tutorials
Common Lisp Educational Resources.
Colin Allen & Maneesh Dhagat
Lisp Primer
Online Tutorial to Common Lisp , Adaptive Remote
Tutor.
More Lisp References
Common
Lisp, The Language, Second Edition. Guy L. Steele, Jr. Digital Press,
ISBN: 1555580416, also on Reserve at the Math Library.
Allegro Common Lisp (ACL) online documentation. Slow (local on cse: Introduction,
Contents,
Index). Quicker (link to
Franz's web page Introduction).
Usenet newsgroup: comp.lang.lisp
Contributed by Eric Moss (S02): Parenthetically
Speaking (with Kent M. Pitman)
Free copy of
Allegro Common Lisp by Franz Inc.
David Cooper Jr.: Understanding Common Lisp (Basic Lisp techniques,
PDF document).
Successful Lisp: How
to Understand and Use Common Lisp, by David B. Lamkins
COMMON
LISP: An Interactive Approach, by Stuart C. Shapiro
Common Lisp: A Gentle Introduction to Symbolic
Computation, by David S. Touretzky
LISP FAQ by Mark Kantrowitz.
... and much more
from the Association of Lisp Users' page.
Other Related Topics
Foundations of Constraint Satisfaction by Edward Tsang.
A mathematical introduction to logic by Enderton, Herbert B,
CALL NO. QA9 .E54 1972.
Dictionary of Algorithms, Data Structures,
and Problems