All Projects → clarkerubber → Irwin

clarkerubber / Irwin

Licence: agpl-3.0
irwin - the protector of lichess from all chess players villainous

Programming Languages

python
139335 projects - #7 most used programming language
python3
1442 projects

Projects that are alternatives of or similar to Irwin

Pythonstudy
Python related technologies used in work: crawler, data analysis, timing tasks, RPC, page parsing, decorator, built-in functions, Python objects, multi-threading, multi-process, asynchronous, redis, mongodb, mysql, openstack, etc.
Stars: ✭ 103 (-25.36%)
Mutual labels:  mongodb, numpy
Eddi
Scalable Open Source Chatbot Platform. Build multiple Chatbots with NLP, Behavior Rules, API Connector, Templating. Developed in Java, provided with Docker, orchestrated with Kubernetes or Openshift.
Stars: ✭ 171 (+23.91%)
Mutual labels:  ai, mongodb
Pleco
A Rust-based re-write of the Stockfish Chess Engine
Stars: ✭ 137 (-0.72%)
Mutual labels:  ai, chess
Python Ai Assistant
Python AI assistant 🧠
Stars: ✭ 219 (+58.7%)
Mutual labels:  ai, mongodb
Game Server
Distributed Java game server, including cluster management server, gateway server, hall server, game logic server, background monitoring server and a running web version of fishing. State machine, behavior tree, A* pathfinding, navigation mesh and other AI tools
Stars: ✭ 916 (+563.77%)
Mutual labels:  ai, chess
Batch-First
A JIT compiled chess engine which traverses the search tree in batches in a best-first manner, allowing for neural network batching, asynchronous GPU use, and vectorized CPU computations.
Stars: ✭ 27 (-80.43%)
Mutual labels:  chess, numpy
Sunfish
Sunfish: a Python Chess Engine in 111 lines of code
Stars: ✭ 2,254 (+1533.33%)
Mutual labels:  ai, chess
Machine Learning Experiments
🤖 Interactive Machine Learning experiments: 🏋️models training + 🎨models demo
Stars: ✭ 841 (+509.42%)
Mutual labels:  ai, numpy
Ds Ai Tech Notes
📖 [译] 数据科学和人工智能技术笔记
Stars: ✭ 131 (-5.07%)
Mutual labels:  ai, numpy
Go Recipes
Code examples for the book "Go Recipes" by Apress.
Stars: ✭ 135 (-2.17%)
Mutual labels:  mongodb
Awesome Mongodb
🍃 A curated list of awesome MongoDB resources, libraries, tools and applications
Stars: ✭ 1,887 (+1267.39%)
Mutual labels:  mongodb
Node Elm
基于 node.js + Mongodb 构建的后台系统
Stars: ✭ 11,224 (+8033.33%)
Mutual labels:  mongodb
Monitaure
🔔 A server uptime monitoring progressive web application - NO LONGER MAINTAINED
Stars: ✭ 135 (-2.17%)
Mutual labels:  mongodb
Deepcreampy
Decensoring Hentai with Deep Neural Networks
Stars: ✭ 10,822 (+7742.03%)
Mutual labels:  ai
Fastify Api
A blazing fast REST APIs with Node.js, MongoDB, Fastify and Swagger.
Stars: ✭ 138 (+0%)
Mutual labels:  mongodb
Sourcecodeofmongoredis
《左手MongoDB,右手Redis——从入门到商业实战》书籍配套源代码。
Stars: ✭ 135 (-2.17%)
Mutual labels:  mongodb
Nodejs Rest Api Project Structure Express
Nodejs project structure practices for building RESTful APIs using Express framework and MongoDB.
Stars: ✭ 134 (-2.9%)
Mutual labels:  mongodb
Leelasabaki
Leela (Zero) integration with Sabaki.
Stars: ✭ 138 (+0%)
Mutual labels:  ai
Chaoxing auto sign
超星学习通课堂签到&健康打卡&多用户多任务&API
Stars: ✭ 137 (-0.72%)
Mutual labels:  mongodb
Ai plays snake
AI trained using Genetic Algorithm and Deep Learning to play the game of snake
Stars: ✭ 137 (-0.72%)
Mutual labels:  ai

irwin

irwin is the AI that learns cheating patterns, marks cheaters, and assists moderators in assessing potential cheaters.

screenshot of Irwin report

screenshot of companion WebApp

Dependencies

Compatible with Python 3.x

Python Libraries

pip3 install pymongo python-chess numpy requests

Database

Configuring

Create conf/config.json

{
  "api": {
    "url": "https://lichess.org/",
    "token": "token"
  },
  "stockfish": {
    "threads": 4,
    "memory": 2048,
    "nodes": 4500000,
    "update": false
  },
  "db": {
    "host": "localhost",
    "port": 27017,
    "authenticate": false,
    "authentication": {
      "username": "username",
      "password": "password"
    }
  },
  "irwin": {
    "train": {
      "batchSize": 5000,
      "cycles": 80
    }
  }
}

conf/config.json contains config for stockfish, mongodb, tensorflow, lichess (authentication token and URL), etc...

Build a database of analysed players

If you do not already have a database of analysed players, it will be necessary to analyse a few hundred players to train the neural networks on. python3 main.py --no-assess --no-report

About

Irwin (named after Steve Irwin, the Crocodile Hunter) started as the name of the server that the original cheatnet ran on (now deprecated). This is the successor to cheatnet.

Similar to cheatnet, it works on a similar concept of analysing the available PVs of a game to determine the odds of cheating occurring.

This bot makes improvements over cheatnet by taking a dramatically more modular approach to software design. modules/core contains most of the generic datatypes, BSON serialisation handlers and database interface layers. It is also significantly faster due to a simplified approach to using stockfish analysis.

modules/irwin contains the brains of irwin, this is where the tensorflow learning and application takes place.

Irwin has been designed so that modules/irwin can be replaced with other approaches to player assessment.

Env.py contains all of the tools to interact with lichess, irwin, and the database handlers.

main.py covers accessing the lichess API (modules/Api.py) via Env to get player data; pulling records from mongodb, analysing games using stockfish, assessing those games using tensorflow and then posting the final assessments.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].