an adversarial approach
might be possible too
eg absurdle
against an optimal player

some  opine that
soare
is a best first word

what is the "best"
as the game proceeds?

~greg heil
picsrp.github.io
i.tgu.ca/real_cal

--

from: Raul Miller <[email protected]>
to: Programming forum <[email protected]>
date: Jan 24, 2022, 10:39 AM
subject: Re: [Jprogramming] wordle

>The absurdle approach is essentially what I was doing with my 'possible' 
>variable in
http://jsoftware.com/pipermail/programming/2022-January/059738.html

>I should perhaps also note that a 'bestGuess' implementation is not viable 
>unless the word list is constrained to only words accepted by the wordle game 
>implementation:

bestGuess=:{{
  abc=. /:~~.,y
  weights=.+/(abc i.|:y) {"1 #/."1~abc,"1|:y
  sel=. (= >./)weights
  y{~ (0,+/\sel#weights) I. ?+/sel#weights
}}

>The problem here is that 'best' may exclude all words accepted by the game.

>But this would be decent if we were working with

fives=: >LF cut gethttp {{)n
https://gist.githubusercontent.com/cfreshman/a03ef2cba789d8cf00c08f767e0fad7b/raw/27a096e8eecf3edc39098fea0f70f2c61abf2393/wordle-answers-alphabetical.txt
}}-.LF

>(For what it's worth: I looked at that slate.com strategies page, but I 
>couldn't think of any way to upgrade the algorithms I have implemented in this 
>thread based on that description.)

FYI,
Raul

--

from: greg heil <[email protected]>
to: Programming forum <[email protected]>
date: Jan 24, 2022, 9:00 AM
subject: Re: [Jprogramming] wordle

you might appreciate
https://qntm.org/wordle
which takes partitioning
of words to
demonic heights
see
https://www.theguardian.com/us-news/2022/jan/13/absurdle-machiavellian-version-of-wordle

this has been overdone
on social media
but a good entree for strategies is
https://slate.com/technology/2022/01/wordle-how-to-win-strategy-crossword-experts.html

~greg heil
picsrp.github.io
i.tgu.ca/real_cal

--

from: Raul Miller <[email protected]>
to: Programming forum <[email protected]>
date: Jan 24, 2022, 8:39 AM
subject: Re: [Jprogramming] wordle

>I should add:

>(1) If you do not have a /usr/share/dict/words, you can google for that and 
>find plenty of examples.

>(2) There's also a wordle specific words list -- you can just pull it out of 
>the javascript for the page, like greg heil mentioned (and since those are in 
>sequential order, solving one wordle would give you the next day's wordle 
>solution also -- but where's the fun in that?). Or, you could use something 
>like

https://gist.github.com/cfreshman/a03ef2cba789d8cf00c08f767e0fad7b

>(3) I could have done a better job of picking a next guess. But I haven't 
>thought through enough about the entropy associated with the possibilities. 
>Conceptually, each guess creates a partition on the possible answers and we 
>probably want to minimize the size of the largest element of that partition.  
>The largest partition is probably going to be the partition with the maximum 
>number of grey letters (or maybe with one yellow letter). But just guessing 
>arbitrarily seems to work.

>That said, this might be a better guesser:

goodGuess=: {{
  abc=. /:~~.,y
  weights=.+/(abc i.|:y) {"1 #/."1~abc,"1|:y
  y{~ (0,+/\weights) I. ?+/weights
}}

Basically, goodGuess would replace ({~ ?@#) and it tends to favor
words with commonly occurring letters.

Thanks,
Raul
.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to