Difference between revisions of "Talk:Oscillator Movement"
GrubbmGait (talk | contribs) (Added Talk from 'old' wiki) |
(Robobot 0.1 : correcting user page links) |
||
Line 1: | Line 1: | ||
{{CreditForOldWikiArticle | {{CreditForOldWikiArticle | ||
| oldpage=Oscillators | | oldpage=Oscillators | ||
− | | author=[[Albert]] | + | | author=[[User:Albert|Albert]] |
}} | }} | ||
− | Thanks for the idea, Albert - I did some tweaking and fiddling with your "complex oscillations" formula and wrote a perceptual NanoBot called SillyBot (after the movement) that can beat a lot of fairly good bots, including MogBot (one of my first [[WhiteWhale]]s). Credit definitely goes to you on that one (although I suppose I've been creative enough to do things like that before in other programs). Note - it can't beat Aspid ;-) -- [[Kawigi]] | + | Thanks for the idea, Albert - I did some tweaking and fiddling with your "complex oscillations" formula and wrote a perceptual NanoBot called SillyBot (after the movement) that can beat a lot of fairly good bots, including MogBot (one of my first [[WhiteWhale]]s). Credit definitely goes to you on that one (although I suppose I've been creative enough to do things like that before in other programs). Note - it can't beat Aspid ;-) -- [[User:Kawigi|Kawigi]] |
Note: oscillate, oscillator and oscillating have two ls | Note: oscillate, oscillator and oscillating have two ls | ||
− | Thanks, though I encourage you to also correct spelling directly in the page. -- [[PEZ]] | + | Thanks, though I encourage you to also correct spelling directly in the page. -- [[User:PEZ|PEZ]] |
Maybe, it's a logical statement rather than a correction? - perhaps he was hoping you would learn ;P | Maybe, it's a logical statement rather than a correction? - perhaps he was hoping you would learn ;P | ||
Line 19: | Line 19: | ||
'b' is the minimum period, 'a' is the variability. You'll have to cast stuff to doubles to make it work. -- [[Martin Alan Pedersen|Martin]] | 'b' is the minimum period, 'a' is the variability. You'll have to cast stuff to doubles to make it work. -- [[Martin Alan Pedersen|Martin]] | ||
− | How would generating the lengths at the beginning be any different than generating them on the fly? I would agree that making your randomness independent of the current situation would help avoid being vulnerable to PatternMatching, but you can do that without pregenerating random numbers... (Maybe I'm missing something here. :)) -- [[Voidious]] | + | How would generating the lengths at the beginning be any different than generating them on the fly? I would agree that making your randomness independent of the current situation would help avoid being vulnerable to PatternMatching, but you can do that without pregenerating random numbers... (Maybe I'm missing something here. :)) -- [[User:Voidious|Voidious]] |
Yeah you are just a bit ;-). I mean that the oscillation patterns most commonly used are just that, patterns. They are pre-built into the bot. But by generating the oscillation pattern at the beginning of each round, the pattern isn't built into the bot. This means that a pattern matching bot would not truly be able to keep a set of patters for your bot, as the oscillation pattern is never the same. I'm rambling too much aren't I =P. -- [[Torahteen]] | Yeah you are just a bit ;-). I mean that the oscillation patterns most commonly used are just that, patterns. They are pre-built into the bot. But by generating the oscillation pattern at the beginning of each round, the pattern isn't built into the bot. This means that a pattern matching bot would not truly be able to keep a set of patters for your bot, as the oscillation pattern is never the same. I'm rambling too much aren't I =P. -- [[Torahteen]] |
Latest revision as of 08:44, 22 May 2009
|
Thanks for the idea, Albert - I did some tweaking and fiddling with your "complex oscillations" formula and wrote a perceptual NanoBot called SillyBot (after the movement) that can beat a lot of fairly good bots, including MogBot (one of my first WhiteWhales). Credit definitely goes to you on that one (although I suppose I've been creative enough to do things like that before in other programs). Note - it can't beat Aspid ;-) -- Kawigi
Note: oscillate, oscillator and oscillating have two ls
Thanks, though I encourage you to also correct spelling directly in the page. -- PEZ
Maybe, it's a logical statement rather than a correction? - perhaps he was hoping you would learn ;P
I have an idea... though it may be way out of wack. What if one were to generate the oscilation pattern at the start of the round. This would be randomly generated at the begging of each round, making it slightly less vulnerable to pattern matching bots that use static variables to keep track of it. Just a thought, and I haven't thought of a way to implement it. Perhaps you guys would have some ideas. ;-) -- Torahteen
You can take it a step further and make each leg of the 'oscillation' a random length of time, within some range. e.g. if( ( b + a * Random() ) > timeSinceReverse ) { /* reverse direction, set timeSinceLastReverse to 0 */ } 'b' is the minimum period, 'a' is the variability. You'll have to cast stuff to doubles to make it work. -- Martin
How would generating the lengths at the beginning be any different than generating them on the fly? I would agree that making your randomness independent of the current situation would help avoid being vulnerable to PatternMatching, but you can do that without pregenerating random numbers... (Maybe I'm missing something here. :)) -- Voidious
Yeah you are just a bit ;-). I mean that the oscillation patterns most commonly used are just that, patterns. They are pre-built into the bot. But by generating the oscillation pattern at the beginning of each round, the pattern isn't built into the bot. This means that a pattern matching bot would not truly be able to keep a set of patters for your bot, as the oscillation pattern is never the same. I'm rambling too much aren't I =P. -- Torahteen