Newsgroups: comp.ai.games
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!news.mathworks.com!news.kei.com!wang!news
From: bruck@actcom.co.il (Uri Bruck)
Subject: Re: Looking for a MasterMind solution....
Organization: ACTCOM - Internet Services in Israel
Date: Tue, 21 Mar 1995 23:39:16 GMT
Message-ID: <D5tDpG.FCu@actcom.co.il>
References: <3k5s1d$atl@sifon.cc.mcgill.ca>
Sender: news@wang.com
Lines: 74

BELGRAVE ROBERT MARC-ANDRE MR (belmarc@ee470.ee.mcgill.ca) wrote:
: Hi there, all!

: Boy was I enthused when I heard about the creation of this group! I am
: currently doing work in Automated Reasoning and Operating Systems,
: and I'd like to tie these two fields of interest together.

: I have been set a novel assignment, and I need some help from the more
: knowledgeable of you out there.

: My mission: to write a client/server application which allows several client
: players (human, or 'bots) to play MasterMind as codebreakers vs. a
: codemaker server (a 'bot).

: The codemaker will choose a string of four letters, each one unique, from A to
: J inclusive, this is the code. Codes formed from the same letters arranged
: in different orders are considered distinct.

: The goal of the codebreaker is to guess the codemaker's code in ten tries
: or less, in each trial the codebreaker communicates to the server a
:  four-letter guess; in return the server replies with two flags (call
: them (Flag1, Flag2)) such that

: 	Flag1 denotes the number of letters in the guess which are present
: 	in the code, but not in the right position.....

: 	Flag2 denotes the number of letters in the guess which are present
: 	in the code, *and* in the correct position.

: For example, if the codemaker`s code was ABCD and the codebreaker guessed
: JCAD, the server would return

: (Flag1, Flag2) = (2, 1) since C and A are present but not in the right place
: 			      D is present *and* in the right place

: After each trial the codebreaker uses the reply to generate a new guess.


: Now what I need to get my hands on, is some sort of learning algorithm which
: will allow a client player to consistently guess the codemaker's code
: in seven or fewer tries (perhaps after playing the server for a while and
: detecting a pattern).

: Bear in mind that I'm building my simulation on a UNIX platform and any random-
: ness I try to generate will most likely be pseudo-random (eg. calls to the
: random() or srandom() functions).

: I really hope I'm not babbling here, I'm pretty interested in this topic but
: that doesn't mean that anyone else is   :)


: Could anyone point me toward a decent algorithm, or further sources of
: information ?


: T'anx !!!!!!



: 				Marc Belgrave
: 				Assistant Network Administrator
: 				EUS Information Systems Group
: 				McGill University, Montreal, Canada

:  				<< belmarc@ee.mcgill.ca >>
: 		

check out the Journal of Recreational Mathemtics
Vol.23 (@) p.81-93, 1991 _A Prolog MasterMind Program_ by Antonio Lopez
Vol.11(2) p.81 1978-79 Towards an optimum MasterMind Strategy
by Robert Irving
and any bibliography thereof.
	Uri Bruck
  
