5 ms·
Show HN: Beat my tank through strategy and programming
- mschwaig 8y agoIf you are viewing this on mobile you can go to the README.md file to see some text with pictures: https://github.com/huangyz0918/TankLogo/blob/master/README.md https://github.com/huangyz0918/TankLogo/blob/master/README.m...
- bencollier49 8y agoThis reminds me of AI Wars, which I fellow I knew 20 years ago used to play. http://www.tacticalneuronics.com/content/aiw3dnew.asp http://www.tacticalneuronics.com/content/aiw3dnew.asp
- knicholes 8y agoI need to figure out how to turn this into an openAI gym so I can train my DQN on it. I just finished running the code from Deep Reinforcement Learning - Hands on for Pong, and it's pretty cool...
- sclangdon 8y agoI get that the idea is to have an ever-improving champion, and I like the idea, but it's not going to work out that way in practice. The best way to defeat the current champion will be to exploit it in some way, which will usually lead to irregular, but very specific, behaviour of the challenger. Then, when challenger becomes the champion it's behaviour will be useless and the next challenger will either beat it easily, or will do the same and the cycle will repeat. To protect against this, the challenger should have to beat all previous champions, not just the current champion.
- Moodles 8y agoIn order words, Bulbasaur > Squirtle > Charmander > Bulbasaur
- dyarosla 8y agoI’ve never actually seen such a competition where all previous champions must be defeated. Sounds like a much more robust system- any examples of such?
- lixtra 8y agoAlgorithm selection in computer science. Current champion in sorting seems to be Timsort[1]. [1] https://en.wikipedia.org/wiki/Timsort https://en.wikipedia.org/wiki/Timsort
- kuroguro 8y agoThere was a similar poker competition but it died out pretty quick: https://github.com/mdp/JsPoker https://github.com/mdp/JsPoker
- RugnirViking 8y agoWorld records in sporting events work this way. Perhaps it is obvious, but I consider it similar. The one diffrenece is of course that they don't compete directly as in this case.
- abalaji 8y agoYou could solve that problem pretty easily by requiring the next champion to have to have defeated each of the previous winners
- ghusbands 8y agoAs suggested in the post you replied to.
- closed 8y agoI think you're probably right--but it's worth noting that it depends on the "space of tank behaviors". It's an open question whether there exists a tank that "strongly dominates" other tank strategies. One way to deal with this could be to have a system similar to ELO in chess, so each tank gets a ranking. This is compromise between having to defeat "champion level tanks", and having to defeat champion level tanks more often than not!
- JoeDaDude 8y agoIn my limited experience with other programming games, it is rare for one AI to defeat another AI 100% of the time. So for a submitter, the claim their own red tank is stronger than the blue tank should be qualified with a 3 out of 4 wins or similar criteria.
- arwineap 8y agoImplement the previous challengers as regression tests!
- jjuhl 8y agoBrings back fond memories of Core War (https://en.m.wikipedia.org/wiki/Core_War https://en.m.wikipedia.org/wiki/Core_War).
- snovv_crash 8y agoThe game physics look very inspired by Robocode[1]. Great work! I wonder if months of work could yield similar results to what was seen there, with neural networks and dodging and prediction of enemies. 1. https://robocode.sf.net https://robocode.sf.net
- JoeDaDude 8y agoTo name one more nostalgic programming game: RoboWar on the Mac (later ported): https://en.wikipedia.org/wiki/RoboWar https://en.wikipedia.org/wiki/RoboWar Corewar is still the granddaddy of them all though, as has already been pointed out here. At one time, there was a huge list of programming games posted on the 'net. This was a good idea and should be revived.
- bigredhdl 8y agoA strange game. The only winning move is not to play. How about a nice game of chess?