Bart:
I have two strategies.
1. I get a number of people from ASWoT or a different RPoL game to join up here and we all post a strategy. Knowing that there will be at least 100 games in a series, each strategy will involve an eight step "handshake" (perhaps ABAAABBA) to make certain that we're dealing with an ally, then all of the strategies (but one) will be programmed to lose continuously (always choosing B), with the odd program always choosing A) thus giving the single remaining strategy near the maximum possible points. Thus, our team (by working together and subverting our opponents), wins.
This is what I was hoping to avoid by not having strategies submitted by the same player compete with each other. While there's nothing preventing you from making such plans with other players, I would ask that you don't do so, for this first implementation at least. Perhaps in future versions we can allow that kind of thing, and see what kinds of meta-strategies show up, or perhaps add an evolutionary component, such that losing strategies die out, and thus can no longer help the successful ones. For now, though, let's just stick to each person trying to win, rather than forming teams, and see what we learn.
Bart:
2. Tit for tat, with forgiveness. My program would always do exactly what the other program did in the last round. If the other program nailed me, then I nail it. If the other program worked with me, then I work with it. This will likely be a fairly common strategy, as if another program always works with me, then we all compromise and we end up doing well. If another program always tries to work me over, then I work it over and we both do as well as the other. But, to correct for "getting off on the wrong foot", there's a continually decreasing chance (starting at approximately 5%) that my program would be randomly benevolent, forgiving a previous ding.
A couple points here:
-First, you're free to post your strategies publicly like this, but doing so may give others an advantage, so you may want to submit them via private line. All will be revealed at the end, so you'll still get to explain it.
-Second, as is, this isn't quite specific enough for me to code up, so wouldn't quite be a valid entry. For one thing, it lacks the all important "what do I do in the first round" instruction, which is needed for strategies based on past actions. And, you'll need to be a bit more specific about the forgiveness mechanism. Let me know, specifically, what chance of forgiveness you'd like, or how to compute is based on the available data.
Thanks for being the first to respond, though! Your tit-for-tat with forgiveness should be fine with just a bit more info.