# Pham Cong

Greenhorn
since Apr 14, 2011
Cows and Likes
Cows
0
In last 30 days
0
Total given
0
Likes
1
0
Total given
0
Given in last 30 days
0
Scavenger Hunt
(keep public parts private until JForum day)
Ranch Hand Scavenger Hunt
Greenhorn Scavenger Hunt
Moderation Tools

## Recent posts by Pham Cong

Hi Jessica Sant!
i read your comment, and i also want to this program. I think now is 2011 year, so you are completed it. Could you get a intruction for me? Or i can source code this. Thanks you so much.
Note: Who can help me, i also thanks.

Jessica Sant wrote:So, I was a tad bored today and trying to avoid studying for my Mid-term in Machine Learning when I clicked on the standard "Windows Freecell" game... and it got me to thinking.

On the front page of the FreeCell help page it says:

FreeCell overview
The object of FreeCell is to move all the cards to the home cells, using the free cells as placeholders.

To win, make four stacks of cards on the home cells, one for each suit, stacked in order of rank, from lowest (ace) to highest (king).

Note
It is believed (although not proven) that every game is winnable.

So... what if we build a game, teach it to play free cell and have it play every possible board??

Step 1- code the rules of free cell, all the legal moves and whatnot. Set up the Free Cell World.
Step 2- create an agent that determines all the possible legal moves given a particular state of the board and randomly selects a move to make, til there are none left. (Doubt we'll win many games this way, but its a start!)
Step 3- give the agent some smarts -- (this is where it gets tricky). Need to figure out a heuristic so that the agent can judge how "good" a particular move is compared to the others. Have it play by always choosing the best move and see how we do.
Step 4- get the agent to look ahead a few steps, and then determine which move is really the best one. -- If its possible, and if our heuristic is good -- this should win all the boards.

So... whaddya think? I think Step 3 is the really interesting part to discuss. The first two steps is simply a matter of coding.... and step 4 is just an extension of step 3... But what kind of heuristic do we come up with to judge the state of the board?
[ August 01, 2004: Message edited by: Jessica Sant ]

6 years ago