Barbarossa bot

Come in here to talk about your sky-net style world-destroying super bots!

Moderator: Defcon moderators

Barbarossa
level2
level2
Posts: 105
Joined: Sun Jul 11, 2010 8:04 am
Contact:

Barbarossa bot

Postby Barbarossa » Fri Jul 16, 2010 10:58 pm

I hope I'm not too late to this bot craze. Yesterday I was finally able to basically get the original bot C++ code to compile.. Then I realized that the default bot is not a conversion of the games default AI.. The games default AI always beats the "original bot" by massive amounts of points. There are many things not even coded in the bot that is included, which makes it a terrible opponent for the CPU and default original bot plays at the level of literally a five year old.. (probably five year old play better than that! lol)

I haven' t even looked at doing heat maps, dynamic silo synchronizations, getting bombers to do the wave, etc... OnEvent (or the equivalent) will be very userful, as will GetShots (if it actually worked or was implemented correct..)

But right now at this moment I have created an ultrasimplistiic bot that only plays the very limited constrained scenario of Asia vs North America (with the bot playing Asia and the CPU or human being North America) It is able to consistently beat the CPU even though it would get creamed by a human player.. because of its predictability.

Image

Uploaded with ImageShack.us

http://barbarossa.110mb.com/Barbarossa.dll
User avatar
smc
level1
level1
Posts: 21
Joined: Sun Jun 13, 2010 2:18 am

Postby smc » Sat Jul 17, 2010 10:14 am

Nice, and welcome to the bot-party :)
Barbarossa
level2
level2
Posts: 105
Joined: Sun Jul 11, 2010 8:04 am
Contact:

Postby Barbarossa » Sun Jul 18, 2010 12:55 am

smc wrote:Nice, and welcome to the bot-party :)


Thanks. Anyway I rechecked and reconfirmed and it seems the code of the Introversion Original Bot that Robin Baumgarten ported over to the API is actually not even on par with the default AI in the Defcon. He claims it is "modelled after the original bot included in Defcon" but I don't think that is true. For one thing I've played dozens of games with the "Introversion Original Bot " .dll and never once will it launch any fighters or bombers from the airbase for any reason.. This alone puts it at a sever handicap .. there are many other smaller details too. I don't mean to sound ungrateful or anything, but it appears at this point the "Introversion Original Bot" is far weaker than even the default AI.

In this article here: http://aigamedev.com/open/articles/defcon-bots-api/ he mentioned toward the bottom:

"Also, the original AI from DEFCON will be ported, which can serve as a good starting point for modifications. "

I assume he's speaking of the Introversion Original Bot included here?: http://wwwhomes.doc.ic.ac.uk/~rb1006/_m ... t_v0.9.zip

Well the included API bot plays nothing like the real AI in-game.. its a pity because I was hoping to get my hands on some code that was actually stronger than the default AI and not far inferior to it!


UPDATE:

I also realized why Robin Baumgarten will not release the source code to his super smart AI bot that was mentioned in this thesis. That bot wasn't created with the API and instead created directly with the Defcon source code itself (access to stuff deep within Defcon) so therefore he cannot release the code to that bot.. Even so, I must say he kept mentioned of a 75% odds of winning to the default AI/CPU in Defcon.. Maybe it is just me, but I consider myself an absolute beginner player to defcon and even I can consistently beat the CPU in a many varieties of 1v1 play well over 75% of the time..

For all the talk and implementations of artificial neural network, Reinforcement Learning, Case-Based Reasoning, Simulated Annealing, Dynamic Scripting, Minimax Decision Trees, Influence Maps, Evolutionary Based Plan Generation, Metafleets algorithms, etc .. I would have thought it could beat the default AI CPU 99% of the time.. I'm sure most expert players could beat the default CPU more than 90% of the time on average.
User avatar
trickser
level5
level5
Posts: 1823
Joined: Thu Mar 06, 2008 2:15 pm
Location: The Senate ; GMT+1
Contact:

Postby trickser » Sun Jul 18, 2010 10:39 am

The whole API thing sounds a bit more promising then its actually is. I guess, its an university project , which was abandoned when it exceeded its planed time frame. There are some flaws and bugs in the API as well, but at least it might actually be possible to write a bot with it.
User avatar
Ace Rimmer
level5
level5
Posts: 10803
Joined: Thu Dec 07, 2006 9:46 pm
Location: The Multiverse

Postby Ace Rimmer » Sun Jul 18, 2010 8:54 pm

Barbarossa wrote:I'm sure most expert players could beat the default CPU more than 90% of the time on average.

Any 'expert' player should be able to beat the CPU 100% of the time.
Smoke me a kipper, I'll be back for breakfast...
Barbarossa
level2
level2
Posts: 105
Joined: Sun Jul 11, 2010 8:04 am
Contact:

Postby Barbarossa » Sun Jul 18, 2010 10:00 pm

Ace Rimmer wrote:
Barbarossa wrote:I'm sure most expert players could beat the default CPU more than 90% of the time on average.

Any 'expert' player should be able to beat the CPU 100% of the time.


Yes you are probably right. I was just trying to be conservative on my estimate.. For games like Chess the new Rybka 4 engine can already literally beat 100% of humans 100% of the time.. But games like Defcon I don't think its possible to create a bot that defeats expert/elite players even more than 90% of the time. Even if everything was micromanaged to perfection, it would still lack high level strategy and intuitive tactics.. For example in Robin's thesis he talked about evolution based learning for the AI bot that he created. .. but based on the screenshots I still see the bot placing silos in a spread out manner.. I read somewhere they played like 26,000 different combinations of 30 1vs1 games on a group of computers over a period of a couple of days.. and even then it didn't "learn" to pack silos in six pack fashion or etc..
User avatar
xander
level5
level5
Posts: 16868
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Sun Jul 18, 2010 11:34 pm

Barbarossa wrote:...and even then it didn't "learn" to pack silos in six pack fashion or etc..

Perhaps six packs are non-optimal? My understanding is that they do two things for human players (please feel free to correct me if I am wrong):
  1. six packs make it easier to synchronize launches so that nukes land together; and
  2. six packs provide more cover fire with which to protect themselves and any nearby cities or installations.

Point (1) is irrelevant to a bot, which could synch the landing of nukes no matter where they are launched from. If we knew the underlying code well enough, or could reverse engineer it, it would be relatively trivial to get six silo nukes 30 bomber nukes, and 12 sub nukes to all land at the same time. My understanding is that Ace is currently working out some of the details.

So then point (2) is the only reason to pack silos. But is this really an optimal strategy? Do silos shoot down enough nukes to justify clustering them, or do the clusters actually create a weakness, in that all of the silos are in one place, and more easily scouted? Silo clusters have proven to be very effective against a weak AI and against human players. This does not imply that they are the best solution when an optimized AI is playing.

xander
User avatar
smc
level1
level1
Posts: 21
Joined: Sun Jun 13, 2010 2:18 am

Postby smc » Mon Jul 19, 2010 8:11 pm

One comment - Robin's thesis was about machine learning. In order for the project to have any meaning he needed to start with a bot that was competitive with the existing CPU, but not dominant. Showing an increase in win rate from 50% to 75% is significant, from 99% to 99.5%, not so much.
chali
level0
Posts: 8
Joined: Thu Sep 09, 2010 6:56 am

Postby chali » Sat Sep 11, 2010 4:02 am

{spam}
User avatar
ChemicalRascal
level1
level1
Posts: 72
Joined: Fri Feb 19, 2010 12:55 pm

Postby ChemicalRascal » Sat Sep 11, 2010 6:08 am

Can't we just ban this one already?
User avatar
xander
level5
level5
Posts: 16868
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Sat Sep 11, 2010 3:39 pm

ChemicalRascal wrote:Can't we just ban this one already?

If you want a bot banned, then you need to report it to a moderator, by sending a private message. NeoThermic would be a good choice. When you report spam, make sure that you let others know that you have reported it, as well. Like this:

Reported.

xander
User avatar
ChemicalRascal
level1
level1
Posts: 72
Joined: Fri Feb 19, 2010 12:55 pm

Postby ChemicalRascal » Sun Sep 12, 2010 12:52 am

Ah. I see.
OpenFlow
level2
level2
Posts: 221
Joined: Tue Jul 17, 2012 2:00 pm
Location: BGP

Postby OpenFlow » Sun Jul 22, 2012 2:10 am

Actually, now that the source code is out, the Barbarossa is going to finally finish his bot. The incomplete API can be completed now.... and then some.
User avatar
xander
level5
level5
Posts: 16868
Joined: Thu Oct 21, 2004 11:41 pm
Location: Highland, CA, USA
Contact:

Postby xander » Sun Jul 22, 2012 11:31 pm

OpenFlow wrote:Actually, now that the source code is out, the Barbarossa is going to finally finish his bot. The incomplete API can be completed now.... and then some.

Unless you are Barbarossa, upon what authority can you conclude that he is going to finish the bot?

xander
OpenFlow
level2
level2
Posts: 221
Joined: Tue Jul 17, 2012 2:00 pm
Location: BGP

Postby OpenFlow » Sun Jul 22, 2012 11:32 pm

xander wrote:
OpenFlow wrote:Actually, now that the source code is out, the Barbarossa is going to finally finish his bot. The incomplete API can be completed now.... and then some.

Unless you are Barbarossa, upon what authority can you conclude that he is going to finish the bot?

xander


Barbarossa = BGP = OpenFlow

Return to “AI Bots”

Who is online

Users browsing this forum: No registered users and 1 guest