Interdisciplinary AI
Richard Wyatt
Department of Computer Science
West Chester University
West Chester, Pennsylvania PA 19383
wyatt@checkov.wcupa.EDU

Curriculum Descant
From ACM Intelligence Magazine
Volume 11, Number 2, Spring 2000
ACM Press

 

Artificial Intelligence, as a course offered within computer science programs, should be an interdisciplinary course. Stated more carefully, the correct design for an undergraduate artificial intelligence course for a computer science department is such that it should be able to be taken by any student possessing good analytic skills but lacking programming skills. The interdisciplinary nature of a well-designed artificial intelligence course is not itself a goal of the preferred course design, but is a consequence of it.

Many computer science students are primarily and sometimes exclusively interested in programming and related technical matters. Their focus is on implementation. Most computer science instructors, myself included, talk, sometimes a good deal, about the idea that we aim primarily to teach students problem solving, but the fact is we mostly end up focusing on implementation, too. (Perhaps a "proper" computer science degree should after all, `{a} la Dijkstra, ban actual programming for the first two years or so.) We as instructors contribute to this unfortunate state of affairs by, sometimes unwittingly, over-designing our class projects. In our attempts to make sure that the students get the top-level design "right", we give it to them up front, often giving detailed descriptions of the suite of functions and so on that must be implemented. The task that falls to the student is often little more than to implement our design. It is harder to correct the situation than those who have not taught might imagine. Such is the case much of the time in typical computer science courses, mine included.

When we come to the artificial intelligence course, problem solving fares even worse because the problems artificial intelligence tackles are so much more difficult. The problems artificial intelligence tackles are not only complex, they also require a good deal of background theory in order to be properly grasped. The amount of background varies, but is always considerable.

Computer science programs are not the ideal training grounds for artificial intelligence. There are of course exceptions, but in general, computer science students lack an understanding of philosophical issues, which bear on KR; a detailed understanding of natural languages, which bears on NLP; and so on. But most of all, they are not strong mathematically: many struggle through calculus, statistics, logic, and discrete math. The upshot is that the theoretical content and mathematical sophistication of what get discussed in artificial intelligence courses is all too often quite weak, or at any rate, weaker than it might otherwise be. Computer science students do not bring much background knowledge from other disciplines to provide a springboard from which artificial intelligence issues may be investigated. This weakness can be masked if class projects involve machine implementations. The more time and effort the student puts into implementation, the less time and effort remain for understanding theory and developing solutions.

So artificial intelligence courses should focus more on problem solving and theory and less on coding or implementation; hardly a novel view. What I want to suggest, however, is that coding or implementation be eliminated altogether, the time saved being much better spent on learning how to tackle complex artificial intelligence problems and on exposure to theory. As a "side effect", it allows students outside of computer science, who often bring with them a detailed knowledge of matters relevant to one or more subareas artificial intelligence, to be full participants in the course and not merely "sit-ins" compelled to write ethereal essays while the real students program. Students -- good students -- in mathematics, physics, linguistics, philosophy, psychology and so on would enhance the theoretical tone of our courses. We should make an effort to attract such students. (And once so attracted, we might even encourage them to minor, or major, in computer science. We might assuage any guilt we might feel from such academic poaching by reflecting on the social good of enhancing the career opportunities of those so poached.) In short, artificial intelligence should be an interdisciplinary course and we, as instructors, should consciously conceive of it as such.

We should adopt as a criterion for class projects: can the project be completed successfully without a knowledge of any programming language and by students outside of computer science? Machine projects should be restricted to the use of software that facilitates understanding or tests problem solutions. Instead of having students add a morphological module to an ATN and write a grammar to parse a simple suite of sentences containing morphological variants, give them the morphological module and have them develop a grammar for a much more complex suite of sentences. Instead of having students implement search algorithms, have them compare the behavior and performance of such algorithms already implemented.

Some otherwise worthwhile projects have to be omitted. Students cannot, for example, be asked to develop and test the efficacy of search heuristics unless someone implements the algorithms. A certain amount of creativity is needed. But in giving up implementation projects, we need not give up an examination of implementation matters. We can still cover in detail algorithms concerning matching and unification, parsing, resolution, and so on. There's plenty of time for actual implementation in graduate courses.

If we ourselves view our undergraduate artificial intelligence courses as interdisciplinary, it will mold our course design to benefit not only our own computer science students, but also students in our colleges in general. Artificial Intelligence needs as many smart people as we can get, from computer science and elsewhere.

Descants

Fall 1997
Welcome
Inaugural Installment of the new column.
(Deepak Kumar)

Summer 1998
Teaching about Embedded Agents
Using small robots in AI Courses
(Deepak Kumar)

Fall 1998
Robot Competitions as Class Projects
A report of the 1998 AAAI Robot Competition and how robot competitions have been successfully incorporated in the curriculum at Swarthmore College and The University of Arkansas
(
Lisa Meeden & Doug Blank)

Winter 1998
Nilsson's New Synthesis
A review of Nils Nilsson's new AI textbook
(Deepak Kumar)

Spring 1999
Pedagogical Dimensions of Game Playing
The role of a game playing programming exercise in an AI course
(Deepak Kumar)

Summer 1999
A New Life for AI Artifacts
A call for the use of AI research software in AI courses
(Deepak Kumar)

Fall 1999
Beyond Introductory AI
The possibility of advanced AI courses in the undergraduate curriculum
(Deepak Kumar)

January 2000
The AI Education Repository
A look back at AAAI's Fall 1994 Symposium on Improving the Instruction of Introductory AI and the resulting educational repository
(Deepak Kumar)

Spring 2000
Interdisciplinary AI
A challenge to AI instructors for designing a truly interdisciplinary AI course
(Richard Wyatt)

Summer 2000
Teaching "New AI"
Authors of a new text (and a new take) on AI present their case
(Rolf Pfeifer)

Fall 2000
Ethical and Social Implications of AI: Stories and Plays
Descriptions of thought provoking stories and plays that raise ethical and social issues concerning the use of AI
(Richard Epstein)

January 2001
How much programming? What kind?
A discussion on the kinds of programming exercises in AI courses
(Deepak Kumar)

Spring 2001
Predisciplinary AI
A follow-up to Richard Wyatt's column (above) and a proposal for a freshman-level course on AI
(Deepak Kumar)

Spring 2001
Machine Learning for the Masses
Machine Learning comes of age in undergraduate AI courses
(Clare Congdon)


About Curriculum Descant
Curriculum Descant has been a regular column in ACM's Intelligence magazine (formerly published as ACM SIGART's Bulletin). The column is edited by Deepak Kumar. The column features short essays on any topic relating to the teaching of AI from any one willing to contribute. If you would like to contribute an essay, please contact Deepak Kumar.