<?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/"
		>
<channel>
	<title>Comments on: Get aboard the zombie train</title>
	<atom:link href="http://mindflock.com/2009/10/get-aboard-the-zombie-train/feed/" rel="self" type="application/rss+xml" />
	<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/</link>
	<description>Social Game Artificial Intelligence</description>
	<lastBuildDate>Sat, 10 Mar 2012 01:27:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	<item>
		<title>By: zoombapup</title>
		<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/comment-page-1/#comment-7</link>
		<dc:creator>zoombapup</dc:creator>
		<pubDate>Sun, 25 Oct 2009 18:51:22 +0000</pubDate>
		<guid isPermaLink="false">http://mindflock.com/?p=18#comment-7</guid>
		<description>Cygal: That assumes that the predator will die due to being deprived of prey within its reach. If you actually compress the potential space, there&#039;s no way the predator population will collapse fast enough to stop the annihiliation of the prey population. Only when the prey can move away from the predator (and subsequent cost of predator capturing prey increases) can you reproduce the population. Think of it this way, a bunch of zebra locked in a football field vs some lions. Who do you think dies off first?</description>
		<content:encoded><![CDATA[<p>Cygal: That assumes that the predator will die due to being deprived of prey within its reach. If you actually compress the potential space, there&#8217;s no way the predator population will collapse fast enough to stop the annihiliation of the prey population. Only when the prey can move away from the predator (and subsequent cost of predator capturing prey increases) can you reproduce the population. Think of it this way, a bunch of zebra locked in a football field vs some lions. Who do you think dies off first?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: zoombapup</title>
		<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/comment-page-1/#comment-6</link>
		<dc:creator>zoombapup</dc:creator>
		<pubDate>Sun, 25 Oct 2009 18:48:40 +0000</pubDate>
		<guid isPermaLink="false">http://mindflock.com/?p=18#comment-6</guid>
		<description>Craig: yeah, but the target is moving and can move in varying directions (for instance a zebra changing direction to run from lions), so the chasing lion needs access to both its own trajectory, the zebra&#039;s and any other lions. Youre right, in that each lion could query the other lions directly for thier time of intercept. Which is effectively what the smart object would do. The upside of doing it in the smart object is that the smart object could detect all lions that could potentially intercept it. There are less smart objects than there are lions so it should be more efficient. Downside is that you would lose some of the lions from the chase fairly quickly. 

Now of course the lions may be using group tactics to bring down the zebra, but that is a tad outside of the scope of discussion.</description>
		<content:encoded><![CDATA[<p>Craig: yeah, but the target is moving and can move in varying directions (for instance a zebra changing direction to run from lions), so the chasing lion needs access to both its own trajectory, the zebra&#8217;s and any other lions. Youre right, in that each lion could query the other lions directly for thier time of intercept. Which is effectively what the smart object would do. The upside of doing it in the smart object is that the smart object could detect all lions that could potentially intercept it. There are less smart objects than there are lions so it should be more efficient. Downside is that you would lose some of the lions from the chase fairly quickly. </p>
<p>Now of course the lions may be using group tactics to bring down the zebra, but that is a tad outside of the scope of discussion.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CraigFortune</title>
		<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/comment-page-1/#comment-5</link>
		<dc:creator>CraigFortune</dc:creator>
		<pubDate>Sun, 25 Oct 2009 11:53:07 +0000</pubDate>
		<guid isPermaLink="false">http://mindflock.com/?p=18#comment-5</guid>
		<description>@zoombapup

Correct, but that is why I talked about approximate times, not absolute times.

Just query the other agents for their last calculated arrival time, don&#039;t make each agent calculate every other agent&#039;s arrival time every update... that would be daft :)

You are looking to avoid a situation were something *looks* bad (ie, trains) so approximate values should be fine - you&#039;d be able to get them accurate enough to it *look* correct etc without needing heavy calculation.</description>
		<content:encoded><![CDATA[<p>@zoombapup</p>
<p>Correct, but that is why I talked about approximate times, not absolute times.</p>
<p>Just query the other agents for their last calculated arrival time, don&#8217;t make each agent calculate every other agent&#8217;s arrival time every update&#8230; that would be daft <img src='http://mindflock.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You are looking to avoid a situation were something *looks* bad (ie, trains) so approximate values should be fine &#8211; you&#8217;d be able to get them accurate enough to it *look* correct etc without needing heavy calculation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Cygal</title>
		<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/comment-page-1/#comment-4</link>
		<dc:creator>Cygal</dc:creator>
		<pubDate>Sat, 24 Oct 2009 20:57:47 +0000</pubDate>
		<guid isPermaLink="false">http://mindflock.com/?p=18#comment-4</guid>
		<description>« you will inevitably achieve starvation of objects of a particular type. »

Actually no, you won&#039;t. If there is less preys, the predators will die, so the preys can reproduce again. This is what explains lemmings &quot;suicide&quot;, and is modeled by the Lotka-Volterra equation for example. In this model (the simplest prey-predator model I know of), zebras don&#039;t die because lions die before. :)</description>
		<content:encoded><![CDATA[<p>« you will inevitably achieve starvation of objects of a particular type. »</p>
<p>Actually no, you won&#8217;t. If there is less preys, the predators will die, so the preys can reproduce again. This is what explains lemmings &#8220;suicide&#8221;, and is modeled by the Lotka-Volterra equation for example. In this model (the simplest prey-predator model I know of), zebras don&#8217;t die because lions die before. <img src='http://mindflock.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: zoombapup</title>
		<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/comment-page-1/#comment-3</link>
		<dc:creator>zoombapup</dc:creator>
		<pubDate>Sat, 24 Oct 2009 18:25:58 +0000</pubDate>
		<guid isPermaLink="false">http://mindflock.com/?p=18#comment-3</guid>
		<description>Its not quite that simple though. Given this is done per-update and per-agent. You would have to calculate the intercept time of each agent. But of course blocking one agent with another would significantly muddy the waters in that case. Given the target itself is moving, it means that the intercept time also changes on the fly (given different relative velocities).</description>
		<content:encoded><![CDATA[<p>Its not quite that simple though. Given this is done per-update and per-agent. You would have to calculate the intercept time of each agent. But of course blocking one agent with another would significantly muddy the waters in that case. Given the target itself is moving, it means that the intercept time also changes on the fly (given different relative velocities).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CraigFortune</title>
		<link>http://mindflock.com/2009/10/get-aboard-the-zombie-train/comment-page-1/#comment-2</link>
		<dc:creator>CraigFortune</dc:creator>
		<pubDate>Sat, 24 Oct 2009 14:52:31 +0000</pubDate>
		<guid isPermaLink="false">http://mindflock.com/?p=18#comment-2</guid>
		<description>Solution 1 is actually a lot like Solution 2, just without being optimised imo.

Each object that has an &quot;interest&quot; in a target object should know roughly how long it will take to reach said target object. In its simplest sense, the distance of its path to the target object. Each object will store this data naturally as part of its path finding.

Given this you can create a list of objects and their approximate arrival times... it will be nice and quick to sort into an ordered list of arrival times.

If your arrival time isn&#039;t fast enough you get refused being allowed that target object... by this point you would have likely decided to rewrite the logic to be very similar to Solution 2 :)</description>
		<content:encoded><![CDATA[<p>Solution 1 is actually a lot like Solution 2, just without being optimised imo.</p>
<p>Each object that has an &#8220;interest&#8221; in a target object should know roughly how long it will take to reach said target object. In its simplest sense, the distance of its path to the target object. Each object will store this data naturally as part of its path finding.</p>
<p>Given this you can create a list of objects and their approximate arrival times&#8230; it will be nice and quick to sort into an ordered list of arrival times.</p>
<p>If your arrival time isn&#8217;t fast enough you get refused being allowed that target object&#8230; by this point you would have likely decided to rewrite the logic to be very similar to Solution 2 <img src='http://mindflock.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

