Computational Intelligence A Freshman Seminar proposed for the Mathematical Reasoning Core One of the enduring questions that has been asked since before the development of the modern computer is: Can a computer think? Is intelligence something that is unique to humans (or, perhaps more broadly, to living creatures), or can it be simulated in wire and semiconductors? In this course, we will explore this question in two ways: by reading and commenting on the written comments of thoughtful individuals on both sides of the question, and by introductory explorations using the programming language Lisp. Proposal for the mathematical reasoning core and as a freshman seminar: This course meets the guidelines for a course meeting the mathematical reasoning core requirement in that it (1) involves the student in the careful analysis of a problem, the development of an algorithm for its solution, and the implementation of that algorithm in the programming language Lisp (a language used for work in artificial intelligence, but also a very good language for introducing students to programming), and (2) exposes students to the formal theory of computation both directly and through a number of papers. As a freshman seminar, it will, in addition, call upon the student to read material ranging from Descartes "Discourse on Method" to the definition of the physical symbol system hypothesis in Newell and Simon's "Computer Science as Empirical Inquiry," and to respond in written form. Course Syllabus Catalog entry: CSci 131: Computational Intelligence: A Freshman Seminar. Students will explore the idea of computational intelligence through the writings of explorers and commentators in the field as well as through introductory explanations in the programming language Lisp. Students will be called upon to respond in writing to the issues raised, and to engage in (introductory level) computer programming in the programming language Lisp. Prerequisites: Math 111, two years of high school algebra, or equivalent. Evaluation: Students will read a number of papers, chapters, and excerpts, and will be asked to respond to them in writing. Additional short writing assignments may also be given. Students will be asked to write programs in the programming language Lisp, possibly using other tools as well (SNePS and Clips). Finally, students will be asked to take two one-hour examinations and a comprehensive final examination, and will be asked to write a term paper. Short writings: 20% Programming exercises: 20% Two hour exams: 20% Term paper: 20% Final examination: 20% Total: 100% Course Outline: The following presents topics and sample assignments in (roughly) the order proposed. Writings on computational intelligence are interspersed with practical work in the programming language Lisp and with several AI systems. I. Descartes (selections), and an introduction to the question. The "Discourse on Method" raises several of the fundamental questions to which the field of computational intelligence must respond. In particular, Descartes asked how it might be possible that a mechanical device would be able to respond appropriately to common statements "as the dullest of men do". Assignment: Written (one page) response to the excerpt. II. An introduction to the programming language Lisp The programming language Lisp was developed by John McCarthy in the 1950's (making it one of the oldest computing languages around). It has since become one of the premier languages for work in artificial intelligence. Assignment: A first programming exercise in Lisp. III. Alan Turing: "Computing Machines and Intelligence", Mind, Vol. LIX, #236, 1950 In this 1950 paper the British mathematician Alan Turing argued that machine intelligence is a possibility, and defined a test, now called the "Turing Test" as a test for machine intelligence. Assignment: Written (one page) response to the paper IV. More on Lisp: More on recursion, and an introduction to matching/unification. An examination of Eliza (a pattern-matching program which appears to be able to converse with the user - up to a point). Assignment: A second programming exercise in Lisp V. Formal Models for Computation This will either be a chapter from a textbook in development (i.e., something that I am currently writing), or a chapter from an existing textbook. Assignment: An exercise in finite state automata, and an exercise in interpreting a basic Turing Machine program (cf. Copeland). VI. A brief look at knowledge representation. Exercise: Either a short exercise in KR using SNePS (a computer system for semantic propositional networks), or in Clips (an expert system shell). VII. Newell, Allen, and Simon, Herbert A. The Physical Symbol System Hypothesis ("Computer Science as Empirical Inquiry", 1975 ACM Turing Award Lecture). This paper introduces the physical symbol system as a formal model for computation and introduces the "Physical Symbol System Hypothesis." We will combine this with the Turing-Church Hypothesis to gain an understanding of the hopes of strong AI. Exercise: A written (one page) response to the paper. VIII. A brief look at search in AI Assignment: A simple search program. IX. John Searle and the Chinese Room experiment (Searle, John R. "Minds, Brains, and Programs" from The Behavioral and Brain Sciences, Vol. 3 Searle proposes a test to counter both the Turing Test and the Physical Symbol Hypothesis. Does he succeed? Assignment: A written (one page) response to the paper. X. Natural Language Understanding. Grammars and scripts, and an answer for Descartes. Assignment: Work with simple grammars