Конкурс постійно відкрився - оновлено 10 серпня 2017 року
Навіть незважаючи на те, що 5 червня 2017 року я оголосив переможця (який буде вважатися найкращою відповіддю), я буду реннувати нові боти та оновлювати результати.
Результати 5 червня
Вітаємо користувача1502040
Оскільки зв’язків немає, я показую лише% виграних матчів.
Statistician2- 95,7%
Fitter- 89,1%
Nash- 83,9%
Weigher- 79,9%
ExpectedBayes- 76,4%
AntiRepeater- 72,1%
Yggdrasil- 65,0%
AntiGreedy- 64,1%
Reactor- 59,9%
NotHungry- 57,3%
NashBot- 55,1%
Blodsocer- 48,6%
BestOfBothWorlds- 48,4%
GoodWinning- 43,9%
Rockstar- 40,5%
ArtsyChild- 40,4%
Assassin- 38,1 %
WeightedRandom- 37,7%
Ensemble- 37,4%
UseOpponents- 36,4%
GreedyPsychologist- 36,3%
TheMessenger- 33,9%
Copycat- 31,4%
Greedy- 28,3%
SomewhatHungry- 27,6%
AntiAntiGreedy- 21,0%
Cycler- 20,3%
Swap- 19,8%
RandomBot- 16,2%
Я створив Google Таблицю з сіткою результатів кожного пари: https://docs.google.com/spreadsheets/d/1KrMvcvWMkK-h1Ee50w0gWLh_L6rCFOgLhTN_QlEXHyk/edit?usp=sharing
Завдяки Ділемі Петрі я виявив, що я в змозі впоратися з цим Королем Гірки.
Гра
Гра - це проста "Rock-Paper-Scissors" із поворотом: очки, набрані з кожним збільшенням перемоги під час матчу (ваші R, P або S завантажуються).
- Папір виграє Рок
- Ножиці виграє Папір
- Рок виграє Ножиці
Переможець отримує стільки очок, скільки навантаження на свою гру.
Невдаха збільшує на 1 навантаження на його гру.
У разі нічиїх кожен гравець збільшує навантаження на свою гру на 0,5.
Після 100 п'єс переможець той, у кого більше очок.
наприклад: P1 має навантаження [10,11,12] (скеля, папір, ножиці) та P2 [7,8,9]. P1 грає R, P2 грає P. P2 виграє і отримує 8 очок. Навантаження P1 стають [11,11,12], навантаження P2 залишаються колишніми.
Технічні характеристики
Ваша програма повинна бути написана на Python (вибачте, я не знаю, як з цим впоратися). Ви повинні створити функцію, яка приймає кожну з цих змінних як аргумент для кожного виконання:
my_points, opp_points, my_loaded, opp_loaded, my_history, opp_history
points - Поточні бали (ваші та ваші опп)
loaded- Масив із навантаженнями (для порядку RPS) (ваші та ваші опп)
history- Рядок із усіма п'єсами, останній персонаж - це остання гра (ваша та ваша опп)
Ви повинні повернутися "R", "P"або "S". Якщо ви повернете щось інше, це був би автоматичний програш матчу.
Правила
Ви не можете змінити вбудовані функції.
Тестування
Я буду постійно оновлювати Git разом з кодом та всіма ботами, які відповідають: https://github.com/Masclins/LoadedRPS
Судження
Переможець визначатиметься шляхом вибору особи з найбільшою кількістю виграшних матчів після 1000 повних раундів. Краватки будуть розірвані зв'язаними сірниками. Проводиться 1000 матчів, а не один, тому що я очікую багато випадковості, і таким чином випадковість буде менш актуальною.
Ви можете подати до 5 ботів.
Конкурс закінчується 4 липня (це буде останній день, коли я прийму будь-яку відповідь), а 5 липня я опублікую остаточну таблицю (можливо, спробую опублікувати аванс раніше).
Оскільки це мій перший КОТ, я на 100% відкритий для того, щоб змінити що-небудь для покращення, наприклад, кількість матчів, зіграних проти кожного бота.
Відредаговано на 1000 матчів, оскільки я бачу, що тут дійсно багато випадкових випадків.
runcodeта bots)?