Developing Critical Insights into Artificial Intelligence

lynxherringAI and Robotics

Oct 18, 2013 (4 years and 8 months ago)


Developing Critical Insights into

Artificial Intelligence

John Kerins


of Computer Science and Information Systems




Parkgate Road

Chester CH1 4BJ



This paper outlines a single module i
n Artificial Intelligence (AI) that is offered
in the Department of Computer Science and Information Systems at a College
of Higher Education
, (which wa
s awarded university status in

August 2005)
The module focuses on established principles underlying the

discipline and
integrates practical work to help reinforce an understanding of what AI is
trying to do.

Artificial Intelligence and Neural Networks

is an optional module at Level
Three for students taking computing or computer
related programmes, such

Business Information Systems,

Software Enginee
ring or Multimedia
Although they have already completed a number of core computing modules,
there are no prerequisites for the option, so there is some variation in their
experience and background knowledge.

Consequently, t
he motivation to
study AI

is varied. It seems, however, that students are becoming increasingly
familiar with references to AI, as they encounter it in relation to a growing
range of applications such as web browsers and computer games. Gene
they are unfamiliar with the range and depth of techniques that lie behind the
software that they hear about. This single modu
le aims to introduce context,
theory, and relevant practical tasks

to provide insight into some of the
scientific and engin
eering goals of AI.

One semester is clearly a limited period in which to explore the principles of AI
but the aim is to develop insight into the way in which computing concepts
students have already

acquired can be extended to examine the ways in
ch computation can be used to model complex behaviour. Arguably, these

are ambitious aims in an environment

where the students have had limited
exposure to the disciplines that contribute to AI.

This paper outlines the materials and methods that are used
to develop an
understanding of key AI principles. There is a particular focus on Natural
Language Processing (NLP) with an insight into semantic representation and
its role in discourse modelling. While this specialist area reflects the interests
of the mo
dule leader, it is acknowledged that equal attention cannot be given
to other principal areas of investigation such as Intelligent Agents, Artificial
Life or Computer Vision, for example. The approach comprises a mixture of
formal presentation of material
and interactive workshops where students
experiment with concepts and demonstration software and present their
findings to each other. Finally,
examples of student work are presented and
the achievements and limitations of the module are evaluated.




The module reflects Nilsson’s

distinction between a symbolic
or knowledge based approach to AI and a subsymbolic or animat approach.
(Callan 2003)

refers to the same distinction as between classical AI
and biologically inspired connectionist AI. The content is focused mainly on a
logic based, symbolic approach, which reflects the principal i
nterest and
experience of the academic staff involved in the design and delivery of the
module. However, the influence of neural networks and of ideas emerging
from Artificial Life is also introduced to acknowledge the increasing range of
input to developm
ts in the field. Students

begin to recognise that software
might incorporate tools and methods from more than one paradigm.

this general AI framework, there is more detailed focus on the principles
behind the development of an NLP environment

(Ramsay 1997)
, and

application to

semantic modelling in English.



The module begins by explaining that there are
different approaches to AI
reflecting the different backgrounds, disciplines and aims of researchers in the
. The
contrast between those whose a
im is to model human intelligence
and those who are more concerned with developing effective artefacts




Having present
ed the contextual framework within which the discipline has
evolved, the module focuses on key principles o
f the knowledge based
approach to AI. The importance of knowledge representation is introduced
and the views of Sowa
(Sowa 2000)

reflect this emphasis. He maintains that
knowledge r
epresentation is a multidisciplinary subject that applies theories
and techniques from three

other fields:

, which

provides the formal
structure and rules of inference
, which

defines the kind of things that
apply in the application domain
, and
, which

supports the
applications that
distinguish knowledge representation

om pure philosophy

The views of Russell and Norvig
(Russell and Norvig 2003)
, who assert that
he object of knowledge representation is to express knowledge in computer
tractable form, such that it can be u
sed to help agents perform well, are used
to reinforce the importance of knowledge representation in this approach.
These authors also introduce the notion of agents, which helps develop a
sense of how these ideas can be put to practical use.


Using Logic

The idea is presented that

some form of l
anguage that it is expressive without
being ambiguous
is required
in order to represent and reason with knowledge

Logic provides a means of expressing knowledge in a precise and rigorous

and the students are introduced to the fundamental principles o
propositional logic. These concepts are covered in a number of texts including
Russell and Norvig
(Russell and Norvig 2003)

and Giarratano and Riley
(Giarratano and Riley 2005)
, where they are seen as key steps in the
developments of software tools such as int
elligent agents and expert systems.
Further background material is available in


(Hein 2002)

Propositional logic is rather abstract and logic can more readily be seen as a
useful tool by moving on to predicate logic. At this point students can begin to
see relationships betwe
en the real world, the properties of that world that they
wish to represent, and the axioms of predicate logic with which they can build
their representation. This relationship is reinforced by introducing Prolog,
which is used to demonstrate that the logi
cal axioms can be implemented
computationally. The module is not designed to be a programming module
and the aim is to introduce enough Prolog to demonstrate its power and
flexibility without alienating those students who are less interested in technical
mplementation. Introductory material drawing upon ideas from
Sterling and
(Sterling and Shapiro 1994)

and focusing on database Prolog is
presented. Facts and rules are explored in the early stages and students
model a simple domain such as a family tree.


Alternative Representations

Having introd
uced the benefits and limitations of predicate logic as a
representational tool, alternative approaches such as production rules and
semantic networks are introduced. These are consistent with the notion of
class inheritance and its implementation in objec
oriented programming. The
students have followed
course in Java, so they can begin to see
relationships between the a
ims of AI and concepts that

introduced to




Inference is implicit in predicate calculus and in the de
finition of classes and
their derived objects. By building rules in Prolog and by constructing object
oriented classes, students gain insight into the reasoning mechanisms that
underpin the knowledge
based approach to AI.
From these insights,
reasoning can

be discussed more widely. Finlay and

(Finlay and Dix

cover different types of reasoning including probabilistic reasoning and
fuzzy logic. These concepts
, and their limitations,

can be seen from the
perspective of the techniques introduced so far.

Reasoning can be linked to
search; h
euristics can be applied to limit search. Prolog’s trace facility
provides a useful demonstration of how depth
first search is implemented.

Prolog is also used at this stage to demonstrate the notion of non
reasoning. The students are guided thr
ough the constructi
on of a simple
simulation of a

blocks world using Prolog’s


functions to
dynamically stack and unstack cubes and pyramids. This simple domain
demonstrates that knowledge, such as the fact that objects cannot be stacked
on pyramids, can be modelled.

At this point, students are encouraged to experiment with a series of small
programs that model increasingly complex blocks worlds. At each stage, they
attempt to implement additional constraints before moving to the next
gram. This helps them grasp the difficulties inherent in translating simple,
everyday actions into an abstract representation. Frequently, this process
highlights errors and limitations in the solutions. These tasks are often carried
out in small groups an
d sample solutions are presented to the whole group for



The principles and techniques introduced so far can now be seen as
contributing to attempts to capture and reason with knowledge. It can be seen
that the methods for building
expert systems are being formulated and wider
issues such as the question of applications and knowledge elicitation can now
be raised.


Focusing on NLP

Natural language processing continues to be a developing branch of AI and it
encapsulates many of the ai
ms of attempting to understand aspects of human
intelligence and to represent it computationally.

Much work in NLP is based on a significant understanding of linguistics and
draws upon some of the ideas introduced by Pinker
(Pinker 1994)
. The
module introduces some general concepts to convey a sense of how
language is stru
ctured and

it works. Distinctions are made between
syntax, semantics and pragmatics.


Handling Syntax

By analysing simple sentences, it can be demonstrated that components such
as noun phrases (NPs), verb phrases (VPs) and prepositional phrases (PPs),
for example, c
an be manipulated.

A number of basic syntactic parsers, based
on Covington
’s examples

(Covington, Nute et al. 1997)
, are made available in
Prolog. Students are not expected to write them but they can manipulate the
lexicon and gain insight into ho
w the
se comparatively simple context

parsers are constructed.

Context sensitivity is also introduced to
illustrate that features such as subject
verb agreement can be integrated into
the programs. Experimentation also reveals the severe limi
tations of the


Introducing Semantics

Ideas about semantics can be introduced by investigating the properties of
verbs. When the notion of transitivity is taken account of, for example, it is
possible to explain why the following sentences are an

Wayne kicked.

Bobby wept the ball.


is transitive and expects two pieces of information before it is complete,
or saturated; these two items are designated subject and object.
, on the
other hand, can be classed as intransitive and require
s only a single, subject

An alternative approach to the phrase
structure rules introduced in
the previous section sees the kind of relationship that is governed by rules
such as transitivity built into the lexicon of a system. A chart parser is a

program that amalgamates compatible entries into elements known as feature
This approach is discussed by Ramsay
(Ramsay 1990)
determiner followed by a noun can be combined to form an NP for example.
This structure in turn can be combined with an

intransitive verb to its right in
an input text to form a sentence such as
The man slept
The idea of
constructing appropriate lexical entries to model this basic behaviour is
introduced to the students and examples from LAIR are presented to

LAIR represents an evolving, experimental NLP system and it is used to
provide further insights into the technical implications of adopting a model
based approach to semantic and discourse representation. Having introduced
the idea of an information

lexicon based on the principles of categorical
, which are discussed by


Wood 1993)

which inform the work of Pollard and Sag
(Pollard and Sag 1994)
, examples
are given of how logical meaning postu

can be written to add semantic
content to the lexicon. Properties can be added to verbs such as
, for
example, to model semantic entailments such as the fact that the subject and
the object of the verb are located at the same spatial point when

the act of
arrival is complete

This illustrates how predicate calculus can be applied to
the practical task of capturing some of the properties inherent in natural
language utterances.


Modelling Discourse

Having derived a model denoting the logical en
tailments of a sentence, the
issue of constructing a model of a discourse capturing relationships between
sentences arises. LAIR can be used to demonstrate that a model of the
following simple discourse identifies that the NP
the man

and the pronoun


referring to the same entity:

The man kicked the ball.

He scored a goal.

The principles of discourse theory as discussed by Grosz et al
(Grosz, Joshi
et al. 1995)
, Marcu
(Marcu 1997)

and Mann
(Mann 1999)

are not addressed
in the module. The aim of the module is to provide an overview of how natural
language feature
s can be identified and modelled, using a range of
techniques that enable logical models of discourses in English to be
generated. The aim is to foster an understanding of one of the ways in which
approaches in linguistics and logic can inform the means of

computing the
semantic content of a text. While gaining insight into the principles
underpinning the approach, the inherent difficulties and limitations of the task
are also apparent.


Neural Networks

Although the main focus of this module is on knowledge
based approaches to
AI, which reflects the interests and expertise of the staff, students are given
an introduction to the aims of machine learning and to the key properties of
neural networks. This covers
the principles of rote learning and concept
ing and introduces the more complex techniques deployed by neural
networks in simulating information processing activities in the brain




Students are given a choice of coursework assessment: they can choose a
programming option and demonstra
te some of the ideas introduced during the
ule, or they can submit a critical evaluation of current developments in a
particular branch of AI. Relatively few students select the programming option,
although those who do
produce impressive programmes that represent limited
domains such as noughts an
d crosses programs that are challenging enough
to engage the students with issues such as representation, heuristics and
search. Those who choose the evaluation are asked to explore the
relationship between the underlying techniques and the emerging
logies that are represented by intelligent web
based agents, intelligent
appliances and systems that capture human expertise, for example.



The following examples illustrate some

of the work produced by


have opted

to produce software
that demonstrates AI principles
. The first
an interactiv
e noughts and crosses puzzle where the
student has

decided to introduce two levels of difficulty:

The user clicks in a square to register a nought; the computer responds by
lecting a free square at random and placing a cross in it. The dialogue
window showing the history of moves can
be made visible
. The
program behaves defensively when threatened

and takes any immediate
opportunities to win
, otherwise it selects s
quares randomly:

Selecting the difficult level

, the dialogue in the console window shows the reasoning behind the
computer moves. Jack’s first move was the top left square; his second was
the bottom left square and his third was the middle r
ight square
. This time the
program uses additional rules where it can to set up winning strategies rather
than making random moves:

It is apparent from the student’s appraisal of his work that he found the task
stimulating and that he clearly recognised

the challenges in trying to
accomplish an AI task:

As I have never programmed an intelligent game before, I have decided to
design and create a Noughts and Crosses game because of its relative
simplicity. A game such as Chess would require much more tim
e and far
better programming skills than I currently have. However don’t be fooled
into thinking that Noughts and Crosses is a simple game, I thought this at first
but I soon learned that I was wrong.

I have also begun programming a Wumpus World program,
but I have not
had time to complete it. My progress on this project is mentioned in the
further work section after the conclusion.

The idea of allowing two levels of difficulty

also introduced in the following
. While achieving the same function
ality as the previous example,
although there is no defensive behaviour in the random version,
this student
has added a graphic to score through winning lines in the puzzle:

The program is able to avoid defeat whenever the




following example features

a gambling environment to simulate a game
of Black Jack where the user plays against two agents representing the dealer
and an AI opponent. The aim is to play as many cards as possible without
accumulating a score of

more than 21. The student has implemented rules to
govern the behaviour of the two agents to maximise their chances of winning.
Again, this represents a significant challenge for the learner, who has
explored a novel environment in which to demonstrate



After the cards are dealt, the user can either request another card or hold:

If a card with a value of seven or more is dealt then the user will break the
threshold, but a risk is taken:

Luckily, a five is turned up and the user t
hen selects Stay. Both the AI agent
and the user have cards worth scores of twenty, which beats the Dealer’s
eighteen, so they each have £10.00 added to the bank.



This module aims to develop a grounding in AI principles and it has been
made ava
ilable to students from fairly diverse backgrounds. A minority of
them are motivated to develop demonstration software to implement some of
the principles. Equally, some students provide insightful evaluations of how AI
technology is deployed. However, the
re is probably scope to introduce a more
practical dimension to the assessment for those students who do not wish to
program but who might prefer to experiment with the design of AI
software. Although these ideas are explored in classroom sessions,

might be employed more formally in the assessment.

For example
, students
might investigate the components of a system required to provide

an NLP
interface to a database
. This would require a high
level analysis of the
problem domain and would enable
students to examine ways in which
computer systems can integrate AI capabilities.

This module does enable students to interact with specialist expertise that
does not feature in more mainstream modules. The aim is to develop insights
despite confronting n
ew fields such as predicate logic and linguistics. The
quality of some of the assessments completed by the students suggests that
the module successfully achieves this. However, making these insights
accessible to a group from diverse backgrounds is challe
nging. Student
feedback on the module, derived from a sample of 18 respondents, revealed
that although 67% found it interesting, 83% also found it demanding. And
while 50% reported that it contained too much theory, 61% disagreed that it
contained too much

practical work. It would be useful to see if the introduction
of higher
level design tasks to complement the practical work in Prolog would
help address the balance between theory and practical work in future

AI is a broad and complex field a
nd there are clearly limits in what can be
achieved in a single
semester module. The aim of this paper has been to
show how some of the key approaches and their associated techniques can
be used as
framework to help students recognise the motivation for
discipline and to see how its aspirations have been realised.
These insights
should also give them a more critical awareness of the potential and of the
limitations of AI.
The module also seeks to demonstrate that AI is an
extension of core work in com
puting and software engineering and that it is at
the interface between man and machine

which continues to revolutionise the
way we interact with the world.

The content of the module covers standard AI materials and the methods of
teaching include a mixt
ure of formal presentations, which are available on
line, group discussions, informal student presentations and practical enquiry.
This range of activities provides students with a potentially stimulating mix of
learning opportunities. On reflection, howev
er, student feedback suggests that
more emphasis is needed on developing interesting practical tasks to help
foster insights among students who find some of the theory off
putting and
who have limited programming experience.

The notion of trying to teach
AI by asking students to implement software that
embodies intelligent behaviour and helps students gain a fuller understanding
of the many concepts taught in the co
urse underpins the work of Hill and
(Hill and Alford 2004)
. T
his approach uses Russell & Norvig’s agent
based interpretation of the Wumpus World as a vehicle to stimul
ate interactive
learning among students of mixed experience and ability. These ideas are
consistent with

the graded interactive tasks discuss
ed in this paper.

authors develop a distributed environment to support th
is interaction.
Similarly, Cook and Ho
(Cooke and Holder 2001)

use a multimedia
environment, which simulates agent
based technolog
ies including search,
planning, learning, vision and language processing for teaching AI. Their
analysis suggests that students benefit from using the tool in terms of subject
interest, confidence in the material, and ability to understand and utilise the
presented techniques. The use of a distributed environment reinforces an
understanding of wider concepts relating to networks and operating

as well as AI, as Dannelly and Steidley
(Dannelly and Steidley 2001)

in their rationale for basing a

range of challenging projects on a model railway.
The system requires software of varying degrees of complexity to schedule
and control its assorted components.

The key theme underpinning these approaches is the aim of engaging
students in practical task
s that help explain how the principles are put into
practice. This is at the heart of the approach presented in this paper where a
series of modelling tasks involving simulated environments and natural
language parsers are integral to the expl
oration and e
xperimentation in which

the students

The module is of particular interest because it does not form part of a single or
combined undergraduate programme in AI. As a single module, it seeks to
introduce AI concepts to learners from a range o
f programmes and to facilitate
their engagement with theories and practical tasks that underpin research in
the field. Typically, exposure to these techniques is limited in a comparatively
small institution. However, there is clear evi
dence from the attitu
des and
achievements of

the students that they have successfully engaged with issues
in the field and that they have found the experience rewarding. A number of
students have progressed to postgraduate programmes where they have
been able to deepen their u
nderstanding of computin
g concepts
. It is here that
they are likely to encounter new environments where they can see the
influence of
AI techniques and make connections between the disciplines that
contribute to the development of increasingly user
y technology.


Callan, R. (2003).
Artificial Intelligence
. Basingstoke, Palgrave Macmillan.

Cooke, D. J. and L. B. Holder (2001).
A Client
Server Interactive Tool for
Integrated Artificial Intelligence Curriculum
. Procee
dings of the Fourteenth
International Florida Artificial Intelligence Research Society Conference AAAI

Coppin, B. (2004).
Artificial Intelligence Illuminated
. Sudbury, MA, Jones and

Covington, M. A., D. Nute, et al. (1997).
Prolog Prog
ramming in Depth
. Upper
Saddle River NJ, Prentice Hall.

Dannelly, R. S. and C. W. Steidley (2001).
Proceedings of the twelfth annual
CCSC South Central conference on The journal of computing in small
Consortium for Computing Sciences in Colleges

Amarillo College,
Amarillo, Texas, United States Consortium for Compu
ting Sciences in

Finlay, J. and A. Dix (1999).
An Introduction to Artificial Intelligence
. London,
UCL Press.

Giarratano, J. C. and G. D. Riley (2005).
Expert Systems Prin
ciples and
. Boston MA, Course Technology.

Grosz, B. J., A. K. Joshi, et al. (1995). "Centering: A Framework for Modelling
the Local Coherence of Discourse."
Computational Linguistics

(2): 203

Hein, J. L. (2002).
Discrete Structures,
Logic, and Computability
. Sudbury MA,
Jones and Bartlett.

Hill, J. M. D. and K. L. Alford (2004). "A Distributed Task Environment for
Teaching Artificial Intelligence with Agents."
SIGCSE Bulletin

(1): 224


Mann, W. C. (1999). "An Introduction
to Rhetorical Structure Theory."
Retrieved 02/07/03.

Marcu, D. (1997).
The rhetorical parsing of natural language texts
Proceedings of the Thirteenth National Conference on Artificial Intelligence

Wood, M. (1993).
Categorial Grammars
. London, Routledge.

Nilsson, N. J. (1998).
Artificial Intelligence: A New Synthesis
. San Francisco,
Morgan Kaufmann.

Pinker, S. (1994).
The Language Instinct
. London, Penguin.

Pollard, C. and I. A. Sag (1994).
Driven Phrase Structure Grammar
hicago, University of Chicago Press.

Ramsay, A. (1990).
The Logical Structure of English
. London, Longman.

Ramsay, A. (1997). LAIR (Linguistic Analysis, Interpretation and Reasoning):
Reference Manual. Manchester, CCL


Russell, S. and P. Norv
ig (2003).
Artificial Intelligence A Modern Approach
Englewood Cliffs NJ, Prentice Hall.

Sowa, J. F. (2000).
Knowledge Representation: Logical, Philosophical and
Computational Foundations
. Pacific Grove, CA, Brooks/Cole.

Sterling, L. and E. Shapiro (1
The Art of Prolog
. Cambridge MA, MIT