Newsgroups: comp.ai.games
Path: cantaloupe.srv.cs.cmu.edu!rochester!udel!news.sprintlink.net!EU.net!sun4nl!cs.vu.nl!victor
From: victor@cs.vu.nl (Victor Allis)
Subject: Re: Connect 4
Nntp-Posting-Host: tender.cs.vu.nl
References: <3k98ce$1dl@ici-paris.ensta.fr>
Sender: news@cs.vu.nl
Organization: Fac. Wiskunde & Informatica, VU, Amsterdam
Date: Mon, 20 Mar 1995 10:17:47 GMT
Message-ID: <D5qHxp.33z@cs.vu.nl>
Lines: 46

There have been quite a few articles requesting information on Connect-4,
so here is some background information.

In 1988 two programs independently showed that Connect-4 is a win for the
player to go first.
One program, by James D. Allen proved this fact by a deep a-b search,
using killer heuristics, transpositions tables, etc. 

The other program, VICTOR, written by me, proved this by using knowledge about
the game, condensed in 9 strategic rules. Although the knowledge is sufficient
to determine immediately for some early positions what the outcome is with
optimal play, for other positions some search was also necessary.
Example of such an early positions are the 3 other opening moves than
starting in the center: the program shows within seconds that in that case
White cannot win. Instead, Black can achieve at least a draw.

A main advantage of the knowledge rules is that the program not only states
that a position is won or a draw, but can also explain WHY and how you
should play from there on, instead of just given some variants.

To my knowledge, the proof by James Allen has not resulted in a program which
played the game interactively. VICTOR runs under UNIX and wins every game
playing White, responding instantly (within 1 second) to each move by the
opponent. Playing Black, the program often obtains a draw or even wins, but
that is entirely due to the quality of play of most opponents. If the program
plays itself, of couse White wins.
The program is not available for distribution, as it is the product of a
research project, and lacks important functionality which I want to add
before distributing it. I'll announce it when it comes to that.

A comment on the statement that Connect-4 is a draw:
1. It is on smaller boards with an even number of rows:
   7x4 is a draw, and 6x(2n) is a draw for all n. However, 7x6 is a narrow
   win.
2. As a human player, I have no trouble beating most of my opponents
   when playing Black. It is normally easier than beating them while playing
   White. For that reason I thought Connect-4 would be a draw or a win for
   Black, until my program showed otherwise.

For more information, see http://wwws.cs.vu.nl/~victor/thesis.html.
Among information on other games I worked on for my Ph.D. thesis, you can
find my M.Sc. thesis there, which is probably the same document referred
to by some other posters.

Victor Allis.
victor@cs.vu.nl
