Copy Link
Add to Bookmark
Report
AIList Digest Volume 3 Issue 085
AIList Digest Tuesday, 2 Jul 1985 Volume 3 : Issue 85
Today's Topics:
Query - Othello,
Games - Hitech Chess Performance & Computer Cheating,
Psychology & AI Techniques - Contextual Reasoning
----------------------------------------------------------------------
Date: 1 Jul 85 17:36:29 EDT
From: Kai-Fu.Lee@CMU-CS-SPEECH2
Subject: Othello (the game)
[Forwarded from the CMU bboard by Laws@SRI-AI.]
I am leading a PGSS project (for high school students) that will implement
an Othello program in Common Lisp on the IBM PC. Any program source,
clever tricks, and good evaluation functions that you're willing to share
will be appreciated.
/Kai-Fu
------------------------------
Date: 30 June 1985 2144-EDT
From: Hans Berliner@CMU-CS-A
Subject: Computer Chess (Hitech)
[Forwarded from the CMU bboard by Laws@SRI-AI.]
CLOSE BUT NO BIG CIGAR is an appropriate summary of the performance
of Hitech in this week-ends Pittsburgh Summer Classic. In a field
of 24, including 3 master and several experts, Hitech won its
first three games against an 1833 (Class A), 1802 (Class A), and
2256 (Master) before losing in the final round to another Master
(2263) who won the tournament. This was Hitech's first win against
a Master. Its overall performance in two tournaments is
6 1/2 - 2 1/2; better than 70 percent. As it was, it finished
2nd in the tournament. Its provisional rating is now around
2100; middle expert.
We will hold a show and tell on Friday at a time and place to
be announced.
------------------------------
Date: 1 Jul 85 10:29:54 EDT
From: Murray.Campbell@CMU-CS-K
Subject: More on Hitech Result
[Forwarded from the CMU bboard by Laws@SRI-AI.]
The 3-1 result Hitech achieved in the chess tournament this
past weekend was a performance rating of about 2300, well above
the master standard of 2200. And it should be noted that the
last round loss was to Kimball Nedved.
After 2 tournaments, Hitech's performance rating is approximately
2210.
------------------------------
Date: Mon, 1 Jul 85 22:37:20 PDT
From: Richard K. Jennings <jennings@AEROSPACE.ARPA>
Subject: Computer Cheating.
Computer programs are the consequences of people, like novels, as
ripples are to rocks thrown in a smooth pond. Hence, it is the authors
of these programs who are the cheaters!
In fact, computer chess is simply another iteration, as is speed
chess, double bug-house, and probably several other versions I have not
heard of. Consenting adults can do what every they want as long as they don't
bill the government. So, questions as to whether computers are cheating
are really questions about whether a programmer who writes a program
and watches it play is on the same footing as the live opponent. Practically
I think he is, philosophically I think not.
If the chess program is going to take more responsibility for its
actions, I think it should have to 'learn' as you or I (are all of you,
if expert systems, *learning* ones?). Of course, the author of the
program still is partly responsible for how efficiently the program
learns, and in finite time how good his creation will become.
So, to apply the principles of recursion, let the program have
to learn how to learn. At this level it is easy to see that skilled
opponenets will cause a 2nd-loop learner to learn faster; hence the
product is less a function of its original architecture and more a function
of its environment -- which I guess we can (by default) attribute to the
program (not its creator). At his point, if we put it in a closet and let
it vegetate, it probably will not be very good at chess. This is certainly
true in the limit as n (as in nth-loop learner) approaches infinity.
It is easy to see that man is effectively an n-loop learner
which cannot comprehend an o-loop learner for o>n. To be precise
I should have said a *single* man. Groups of people, similarly and
perhaps even including women, can function at some level p>n. Hence
it should be possible for teams of people to beat individuals (and
generally is). I see no reason for p or q to be bounded (where q
is the class of learning evidenced by machine), and the problem has
been reduced to a point: that is that man is just a transient form
of intelligence which cannot be quantified (by himself anyway), only
*measured*.
Chess in its various forms does so (well you think when you
win, poorly when you lose): and in its various forms is *fun*. Just
remember, computer chess wouldn't be around if several smart people
were not whipped at the game through careless errors by people so
dumb that 'even a computer could beat them' or 'except for one
careless mistake...'
RKJ.
------------------------------
Date: Saturday, 29 Jun 1985 22:16-EST
From: munnari!psych.uq.oz!ross@seismo
Subject: Use of context to allow reasoning about time
David Sherman (AIList V3 #71: Suggestions needed for tax rules)
writes:
> I am trying to design a system which will apply the rules of the Income
> Tax Act (Canada) to a set of facts and transactions in the area of
> corporate reorganizations.
> ...
> The passage of time is very important: steps happen in a particular
> sequence, and the "state of the world" at the moment a step is taken is
> crucial to determining the tax effects.
> ...
> The problem I have ... is how to deal with _time_.
The following is just a suggestion. I have not actually tried it and I
am not familiar enough with the literature to even say whether it is an
old idea. However, it seems plausible to me and might be a useful
approach.
Time is not directly perceptible. It is perceived indirectly by noting
that the environment (physical and cognitive) changes. There is a lot
of survival advantage to believing in causality so the brain likes to
attribute a cause to every change and when there is nothing obvious
around to attribute causality to, we invoke the concept of time. As
Dave Sherman pointed out, time is bound up with changes in the "state
of the world", what I just called the environment. Lets shift into
psychology and call it the context.
Context plays a very important role in psychology. All the human and
animal decision processes that I know of are context dependent.
Consider a classic and simple memory experiment. The subject is given a
list of nonsense words to memorise and is then given a new list of
words some of which are from the memorised list to judge as old or
new. This process may be repeated a dozen or more times in a session.
How does the subject restrict his definition of old/new to the list he
has just seen?
It seems that the words are not remembered as individual and isolated
objects but are remembered along with associative links to the context,
where the context contains everything else that happened
simultaneously. So, when memorising words in a list the subject links
the words to each other, any extraneous noises or thoughts, even small
changes in posture and discomfort. It has been shown that recognition
and recall are greatly enhanced by reconstruction of the context in
which memorisation occurred.
Context is also evolutionarily important. It obviously enhances
survival to be able to form associative links between the centre of
attention and possibly anything else. The nasty thing about many
environments is that you can't tell before hand what the important
associations are going to be.
Lets look at how context might be applicable to AI. In MYCIN, data are
stored as <object,attribute,value> triples. This is also a reasonable
way to do things in PROLOG because it allows the data to be treated in
a more uniform fashion than having each attribute (for instance) as a
separate predicate. The objects in MYCIN are related by a context
tree, but this has nothing to do with the sense in which I am using
"context" so I will continue to call them objects. An object is a more
or less permanent association of a bundle of attributes. That is, there
is some constancy about it, which is why we can recognize it as an
object (although not necessarily a physical one). By contrast the
context is an amorphous mass of other things which happen to be going
on at the same moment. There is little constancy to the structure of
the context.
The MYCIN triple cannot be related to it's context other than through
the values of its object, attribute or value fields. There is no
explicit way of showing that a fact was true only for a certain
interval of time or only when a particular goal was active. I propose
that the triple be extended to explicitly represent the context so it
becomes <context,object,attribute,value>. The values of the context
variable would normally be unique identifiers to allow a particular
context to be referred to. The context does not actually store any
information, but many facts may be tied to that context. A context is a
snapshot of the facts at some stage in the computation.
Obviously there needs to be a lot of thought put into when to take the
snapshots and the appropriate strategy will vary from application to
application. The context will contain the facts being reasoned about
at the time of the snapshot (probably when they had been whipped into
consistency) but would also contain other relevant information such as
goal states and clock times. For Dave Sherman's application there
would probably be a new context snapshot when each transaction occurred
(e.g. transfer of property in exchange for shares). Two additional
facts within the context would be the earliest and latest clock times
for which the context is valid. This would allow reasoning about
changes of state and elapsing of time because the before and after
states are simultaneously present in the fact base along with the clock
times for which they were true.
A couple of other uses of contexts suggest themselves. One is the
possibility of implementing "possible worlds" and answering "what if"
questions. If the system is capable of manipulating contexts it could
duplicate an existing context (but with a new context ID of course),
modify a few of the facts in the new context and then start reasoning
in that context to see what might have happened if things had been a
little different. Another possibility is that it might be useful in
"truth maintenance systems". I have heard of them but not had a chance
to study them. However their references to assumption sets and
dependency directed backtracking sound to me like the idea of tracking
the context, attributing changes in the context to various facts within
the context and then using that information to intelligently manipulate
the context to implement backtracking in a computation.
UUCP: {decvax,vax135,eagle,pesnta}!mulga!psych.uq.oz!ross
ARPA: ross%psych.uq.oz@seismo.arpa
CSNET: ross@psych.uq.oz
ACSnet: ross@psych.uq.oz
Mail: Ross Gayler Phone: +61 7 224 7060
Division of Research & Planning
Queensland Department of Health
GPO Box 48
Brisbane 4001
AUSTRALIA
------------------------------
End of AIList Digest
********************