<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: A Solver for Puzzle Quest and Aurora Feint</title>
	<atom:link href="http://schani.wordpress.com/2008/12/25/a-solver-for-puzzle-quest-and-aurora-feint/feed/" rel="self" type="application/rss+xml" />
	<link>http://schani.wordpress.com/2008/12/25/a-solver-for-puzzle-quest-and-aurora-feint/</link>
	<description></description>
	<lastBuildDate>Tue, 07 May 2013 13:44:22 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: John</title>
		<link>http://schani.wordpress.com/2008/12/25/a-solver-for-puzzle-quest-and-aurora-feint/#comment-10982</link>
		<dc:creator><![CDATA[John]]></dc:creator>
		<pubDate>Tue, 17 Mar 2009 19:00:11 +0000</pubDate>
		<guid isPermaLink="false">http://schani.wordpress.com/?p=76#comment-10982</guid>
		<description><![CDATA[Hello Mark,
From the repository it looks like this was last updated 2 months ago. Even so, if you have a moment to send me an email, I&#039;d love to hear the general flow and what kind of optimizations you put into it. I checked the Haskell code but couldn&#039;t make out even the general flow of the program :/ Sorry for my lame text based programming skills. I&#039;m programming in LabVIEW.

Background: I&#039;ve made a solver that works in-game and in realtime by taking a screenshot, converting it to a board, solving the board, and speaking the results. It has a mode for opponents and one for alone types (like capture as you have done). The solver works very quickly for opponent mode, even checking against the opponents next possible moves. However, the alone mode generates so many results with my method that it just takes FOREVER.

In case you prefer to see what I&#039;ve done first, this is the general flow for alone mode:

*Generate all meaningful swaps for a given board
*Queue them up for processing
*Execute the boards as the game would
*Only for meaningful results:
--add them to a results tree
--queue them up for further processing (FILO to get depth first behavior)
*Repeat
*Analyze all the tree&#039;s leaves to find the best path (it short-circuits if it finds an empty board)

Various optimizations are in there, but the biggest one is searching the existing results to make sure only unique results are added to the tree. With that optimization or without it, I&#039;ve never seen my program end on one of the capture boards :) although it does work on a test board.]]></description>
		<content:encoded><![CDATA[<p>Hello Mark,<br />
From the repository it looks like this was last updated 2 months ago. Even so, if you have a moment to send me an email, I&#8217;d love to hear the general flow and what kind of optimizations you put into it. I checked the Haskell code but couldn&#8217;t make out even the general flow of the program :/ Sorry for my lame text based programming skills. I&#8217;m programming in LabVIEW.</p>
<p>Background: I&#8217;ve made a solver that works in-game and in realtime by taking a screenshot, converting it to a board, solving the board, and speaking the results. It has a mode for opponents and one for alone types (like capture as you have done). The solver works very quickly for opponent mode, even checking against the opponents next possible moves. However, the alone mode generates so many results with my method that it just takes FOREVER.</p>
<p>In case you prefer to see what I&#8217;ve done first, this is the general flow for alone mode:</p>
<p>*Generate all meaningful swaps for a given board<br />
*Queue them up for processing<br />
*Execute the boards as the game would<br />
*Only for meaningful results:<br />
&#8211;add them to a results tree<br />
&#8211;queue them up for further processing (FILO to get depth first behavior)<br />
*Repeat<br />
*Analyze all the tree&#8217;s leaves to find the best path (it short-circuits if it finds an empty board)</p>
<p>Various optimizations are in there, but the biggest one is searching the existing results to make sure only unique results are added to the tree. With that optimization or without it, I&#8217;ve never seen my program end on one of the capture boards :) although it does work on a test board.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: schani</title>
		<link>http://schani.wordpress.com/2008/12/25/a-solver-for-puzzle-quest-and-aurora-feint/#comment-10951</link>
		<dc:creator><![CDATA[schani]]></dc:creator>
		<pubDate>Fri, 26 Dec 2008 08:49:06 +0000</pubDate>
		<guid isPermaLink="false">http://schani.wordpress.com/?p=76#comment-10951</guid>
		<description><![CDATA[Hey Jason!

Thanks for checking it out!  No, I wasn&#039;t aware of Tower Puzzles, but rest assured that I&#039;ll give it a try as soon as possible.  In fact, it&#039;s downloading right now :-)

Mark]]></description>
		<content:encoded><![CDATA[<p>Hey Jason!</p>
<p>Thanks for checking it out!  No, I wasn&#8217;t aware of Tower Puzzles, but rest assured that I&#8217;ll give it a try as soon as possible.  In fact, it&#8217;s downloading right now :-)</p>
<p>Mark</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason Citron</title>
		<link>http://schani.wordpress.com/2008/12/25/a-solver-for-puzzle-quest-and-aurora-feint/#comment-10950</link>
		<dc:creator><![CDATA[Jason Citron]]></dc:creator>
		<pubDate>Fri, 26 Dec 2008 00:18:56 +0000</pubDate>
		<guid isPermaLink="false">http://schani.wordpress.com/?p=76#comment-10950</guid>
		<description><![CDATA[Hey Schani! I&#039;m one of the developers of Aurora Feint. I gotta say, this is pretty slick. I was just checking out the Haskell source -- it&#039;s pretty nutty. Good job with it though!

Have you played Aurora Feint II: Tower Puzzles? It&#039;s a whole game with just these kinds of puzzles that we launched earlier this week. I wonder if your solver will work on the last puzzle... ;)

Happy Holidays
- Jason]]></description>
		<content:encoded><![CDATA[<p>Hey Schani! I&#8217;m one of the developers of Aurora Feint. I gotta say, this is pretty slick. I was just checking out the Haskell source &#8212; it&#8217;s pretty nutty. Good job with it though!</p>
<p>Have you played Aurora Feint II: Tower Puzzles? It&#8217;s a whole game with just these kinds of puzzles that we launched earlier this week. I wonder if your solver will work on the last puzzle&#8230; ;)</p>
<p>Happy Holidays<br />
- Jason</p>
]]></content:encoded>
	</item>
</channel>
</rss>
