GithubHelp home page GithubHelp logo

chessbot's Introduction

Overview

Imagine that you, as a chess player, can ask the computer about chess: to understand a position, why a move is good, to hear what the refutation is of a bad move, to learn with guided hints, to learn positional and strategic features, to learn about plans. To have a program that can explain why a move was played, in human understandable terms. Why is this not yet possible?

In 1997 Deep Blue settled the question whether computers could play chess strong enough to beat the world champion. Since then the chess battle between men and computer is over and the strongest engines are too strong to leave the world champion any hope for a win. Continued development on hardware and software has made chess engines unbeatable for humans but less progress has been made in transfering this superior playing skills to human players.

Of course, computers play chess in a different way, but why are they not able to communicate more about a position than just the evaluation: a single numeric value.

Hence the goal of this project to add human Cognitive skills to computer chess: Develop programs that help human players improve their skills, that can communicate in human understandable terms about chess

Chess Bot

Chess engines are capable to calculate a million positions per second so the searchtree explodes very quickly. A human player cannot absorb all this information but is only interested in good moves or bad moves (from the opponent). For good moves he would like to understand why a move is good. For a bad move, he wants to know the refutation. All this information is contained in the searchtree. What if we extract this information from the tree data, condensing it enormously and use it for communication with a chess player? Let's build a chess chatbot or ChessBot to be used by humans to improve their chess skills through chatting about a game or position.

The ChessBot uses [Stockfish] (https://github.com/official-stockfish/Stockfish) as its core of a [Chess Engine] (https://github.com/marisvs/Stockfish) that has been modified to output the searchtree and other relevant information.

Terms of use

chessbot's People

Contributors

marisvs avatar

Stargazers

Lucas Silva avatar Richard Hopkins avatar

chessbot's Issues

Discuss mate

Add functionality to discuss about mate. Does a mate exist within the horizon? What are moves towards mate (for Us and Them).

Discuss losing or capturing pieces

As one of the first topics to talk about, losing the own pieces or capturing enemy pieces will be a foundational capability. In the end, it is about winning material (and then mate the enemy king, of course)

Make chat interface to configure engine.

Use conversations to select if you play with white or black, to set up the board, timing, etc. Do you want to play or analyse? Actually, this might be a first easy step to realize because integration with Stockfish is direct. No tree analysis needed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.