Community powered analysis for your games
[EDIT 21th April 2017] Now with support for all variants!
One of lichess most distinctive features is the in-depth game analysis. We want the best tools to analyse - and learn from - our games.
This post will not go through all of the tasty analysis features; instead I want to talk to you about computer analysis specifically.
As you may know, there exist two complementary ways of getting help from Stockfish, our artificial intelligence assistant.
The server analysis runs the entire game through lichess' servers. Using more than 220 Stockfish CPUs, donated by the community, evaluations are computed for the entire game. It powers the advantage chart, counts and reveals the players mistakes, and can suggest alternate lines. Furthermore, since the evaluations are run on lichess servers, they can be trusted and help with cheat detection. And, once someone requests a server analysis, it becomes available for everyone to learn from!
This downloads and runs a Stockfish instance inside your browser. This way, you can get position evaluations, and alternate lines suggestion, for any move that you might try on the board. It also works well on the opening explorer and in studies.
All this is fine and dandy, but we can do even better. The local evaluation makes your computer work hard, then the analysis is displayed once, then it's lost forever. All that valuable CPU work is not shared with other chess lovers around the word. How many computers are busy evaluating the same positions? Can we save power and improve analysis quality for everyone?
notice the green CLOUD tag here?
These last few weeks, we have been experimenting with "cloud analysis". The idea is not new, and chessbase has been doing that for a while.
It's about sending to lichess, and getting from lichess, the result of previous local evaluations. Here's how it works:
Whenever you see the green CLOUD tag (picture above), it means someone has already computed the position evaluation, so you don't have to. Click the little blue plus sign if you want to compute it anyway, and reach higher depths, and send a better evaluation.
We believe this feature is one step towards the perfect chess analysis environment. What do you think should the next step be?