Irwin은 부정 행위 패턴을 배우고 사기꾼을 표시하며 중재자가 잠재적 사기꾼을 평가하는 데 도움이되는 AI입니다.
Python 3.x와 호환됩니다
pip3 install pymongo python-chess numpy requestsconf/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 Stockfish, Mongodb, Tensorflow, Lichess (인증 토큰 및 URL) 등에 대한 구성이 포함되어 있습니다.
분석 된 플레이어 데이터베이스가 아직 없다면 신경망을 훈련시키기 위해 수백 명의 플레이어를 분석해야합니다. python3 main.py --no-assess --no-report
Irwin (Steve Irwin, Crocodile Hunter의 이름을 따서 명명 됨)은 원래 Cheatnet이 실행 한 서버의 이름으로 시작했습니다 (현재는 더 이상). 이것은 Cheatnet의 후속입니다.
Cheatnet과 유사하게, 그것은 부정 행위가 발생할 확률을 결정하기 위해 게임의 가용 PV를 분석하는 유사한 개념에서 작동합니다.
이 봇은 소프트웨어 설계에 대한 모듈 식 접근 방식을 극적으로보다 크게 사용하여 Cheatnet보다 개선합니다. modules/core 에는 대부분의 일반 데이터 유형, BSON 직렬화 처리기 및 데이터베이스 인터페이스 계층이 포함되어 있습니다. 또한 Stockfish 분석 사용에 대한 단순화 된 접근 방식으로 인해 훨씬 빠릅니다.
modules/irwin 에는 Irwin의 두뇌가 포함되어 있습니다. 여기서는 텐서 플로우 학습 및 응용 프로그램이 이루어집니다.
Irwin은 modules/irwin 플레이어 평가에 대한 다른 접근법으로 대체 할 수 있도록 설계되었습니다.
Env.py 에는 Lichess, Irwin 및 데이터베이스 핸들러와 상호 작용할 수있는 모든 도구가 포함되어 있습니다.
main.py ENV를 통해 Lichess API ( modules/Api.py )에 액세스하는 것을 덮어 플레이어 데이터를 얻습니다. MongoDB에서 레코드를 가져오고, Stockfish를 사용하여 게임을 분석하고, Tensorflow를 사용하여 게임을 평가 한 다음 최종 평가를 게시합니다.