Perhaps an even better approach is to allow Q to assign subjective
probabilities to each word of being good. Currently, it assigns a 1 to
every word in its list and a 0 to every word not there, but that is not how
a human player works (in fact, the subj prob may be arbitrarily close to 0
or 1, but should never be exactly 0 or 1, even for ME and YOU and THE,
though at some point you get close to the subjective probability that the
Earth will continue rotating which is 1 within the limits of machine
precision). This would need a much longer word list with transpositions and
misspellings and some phonologically correct blatant garbage like VINXERIC*
or somesuch. Once you could do this, you would also want Q to estimate the
subjective probability that its opponent thinks a word is good, and with
some practice, the best Q opponent (who would still have subj prob of 0 or 1
for every word) could realize potentially big gains in expectation against a
fallible human player by playing the most plausible phony. The weakest Q
player might get phoneys challenged on a regular basis, of course, in which
case it would need to get more circumspect about playing them. Make sense?
Hard to program?