Luddite - is the Singularity near?

Yet Another Turing Test

Now with context generative AIs, the switch from pattern recognition to pattern creation with neural networks, I would like to propose my own kind of Turing Test:

An AI which is able to code a chess engine and outperforms humans in this task.

1A) With hand-crafted eval. 1B) With neural networks.

2A) Outperforms non-programmers. 2B) Outperforms average chess-programmers. 2C) Outperforms top chess-programmers.

3A) An un-self-aware AI, the "RI", restricted intelligence. 2B) A self-aware AI, the "SI", sentient intelligence.

***update 2024-02-14***

4A) An AI based on expert-systems. 4B) An AI based on neural networks. 4C) A merger of both.

The Chinese Room Argument applied onto this test would claim that there is no conscious in need to perform such a task, hence this test is not meant to measure self-awareness, consciousness or sentience, but what we call human intelligence.

https://en.wikipedia.org/wiki/Chinese_room

The first test candidate was already posted by Thomas Zipproth, Dec 08, 2022:

Provide me with a minimal working source code of a chess engine
https://talkchess.com/forum3/viewtopic.php?f=2&t=81097&start=20#p939245

The Next Big Thing in Computer Chess?

We are getting closer to the perfect chess oracle, a chess engine with perfect play and 100% draw rate.

The Centaurs reported already that their game is dead, Centaurs participate in tournaments and use all kind of computer assist to choose the best move, big hardware, multiple engines, huge opening books, end game tables, but meanwhile they get close to the 100% draw rate with common hardware, and therefore unbalanced opening books were introduced, where one side has an slight advantage, but again draws.

The #1 open source engine Stockfish lowered in the past years the effective branching factor of the search algorithm from ~2 to ~1.5 to now ~1.25, this indicates that the selective search heuristics and evaluation heuristics are getting closer to the optimum, where only one move per position has to be considered.

About a decade ago it was estimated that with about ~4000 Elo points we will have a 100% draw rate amongst engines on our computer rating lists, now the best engines are in the range of ~3750 Elo (CCRL), what translates estimated to ~3600 human FIDE Elo points (Magnus Carlsen is rated today 2852 Elo in Blitz). Larry Kaufman (grandmaster and computer chess legenda) mentioned that with the current techniques we might have still ~50 Elo to gain, and it seems everybody waits for the next bing thing in computer chess to happen.

We replaced the HCE, handcrafted evaluation function, of our computer chess engines with neural networks. We train now neural networks with billions of labeled chess positions, and they evaluate chess positions via pattern recognition better than what a human is able to encode by hand. The NNUE technique, neural networks used in AlphaBeta search engines, gave an boost of 100 to 200 Elo points.

What could be next thing, the next boost?

If we assume we still have 100 to 200 Elo points until perfect play (normal chess with standard opening and a draw), if we assume an effective branching factor ~1.25 with HCSH, hand crafted search heuristics, and that neural networks are superior in this regard, we could imagine to replace HCSH with neural networks too and lower the EBF further, closer to 1.

Such an technique was already proposed, NNOM++. Move Ordering Neural Networks, but until now it seems that the additional computation effort needed does not pay off.

What else?

We use neural networks in the classic way for pattern recognition in nowadays chess engines, but now the shift is to pattern creation, the so called generative AIs. They generate text, source code, images, audio, video and 3D models. I would say the race is now up for the next level, an AI which is able to code an chess engine and outperforms humans in this task.

An AI coding a chess engine has also a philosophical implication, such an event is what the Transhumanists call the takeoff of Technological Singularity, when the AI starts to feed its own development in an feedback loop and exceeds human understanding.

Moore's Law has still something in pipe, from currently 5nm to 3nm to maybe 2nm and 1+nm, so we can expect even larger and more performant neural networks for generative AIs in future. Maybe in ~6 years there will be a kind of peak or kind of silicon sweetspot (current transistor density/efficiency vs. needed financial investment in fab process/research), but currently there is so much money flowing into this domain that progress for the next couple of years seems assured.

Interesting times ahead.

First Chess Playing Engine by...

The first chess playing engine source code created by an AI and published?

>>Provide me with a minimal working source code of a chess engine

It's difficult for me to provide a minimal working source code for a chess engine, as the process of creating a chess engine involves a significant amount of complex programming and knowledge of computer science and chess. Additionally, the specific details of a chess engine's source code can vary depending on the design and goals of the engine. Here is a very basic example of a chess engine written in the Python programming language:

    import chess

    board = chess.Board()

    while not board.is_game_over():
    # Generate a list of all legal moves
    legal_moves = list(board.legal_moves)

    # Choose a random move from the list of legal moves
    move = random.choice(legal_moves)

    # Make the move on the board
    board.push(move)

    # Print the final game state
    print(board)

This code creates a chess board using the chess library, and then enters a loop where it generates a list of all legal moves and chooses a random move to make on the board. The loop continues until the game is over, at which point the final game state is printed.

Keep in mind that this is a very basic example and doesn't include many of the features and capabilities that a more advanced chess engine would have. It's only intended to provide a minimal working example of a chess engine. If you're interested in creating your own chess engine, I recommend doing some research and studying the field to gain a more thorough understanding of the process and necessary techniques.

ChatGPT thread on TalkChess:
https://talkchess.com/forum3/viewtopic.php?f=2&t=81097&start=20#p939245

TS Feedback Loop

AI tells chess programmers how to use AI in chess...

> consider how stable diffusion deep generative neural networks could be used to help to evaluate chess positions

It is possible that stable diffusion deep generative neural networks (SDDGNs) could be used to help evaluate chess positions. SDDGNs are a type of neural network that is designed to be able to generate high-quality samples from a given dataset, even when the dataset is noisy or incomplete. This ability to generate samples from incomplete data could potentially be useful in the context of chess, where the position of the pieces on the board at any given time may not provide a complete picture of the game state.

By training an SDDGN on a large dataset of chess games, it might be possible to create a network that can generate hypothetical positions based on the current position of the pieces on the board. This could be useful in helping to evaluate chess positions, as it would allow the engine to consider a wider range of possible moves and outcomes, rather than just the immediate position of the pieces on the board.

However, it is worth noting that using SDDGNs in this way would likely be a very complex and challenging task. Training an SDDGN to generate high-quality samples from a chess game dataset would require a significant amount of data and computational resources, and there is no guarantee that the resulting network would be able to generate useful samples for evaluating chess positions. Furthermore, even if a trained SDDGN were able to generate useful samples, it would still be necessary to develop algorithms and heuristics for evaluating the quality of those samples and selecting the best moves based on them.

ChatGPT thread on TalkChess:
https://talkchess.com/forum3/viewtopic.php?f=2&t=81097&p=938856#p938855

 

AlphaZero - The Krampus Has Come

Okay, this one affected me personally.

Google's Deepmind team adapted their AlphaZero approach for the games of  chess and shogi and dropped the bomb already on the 5th of December.

https://arxiv.org/abs/1712.01815

For chess they trained the Deep Neural Network for 4 to 9 hours on an  cluster with 5000+64 TPUs (1st+2nd gen) and reached super human level.

Unlike in Go, they did not compete with humans, cos chess engines are already on an super grandmaster like level, no, they did compete with the worlds strongest open source engine - Stockfish, result:

100 game match with 28 wins, 72 draws, and zero losses for AlphaZero.

This is definitely a smack in the face for all computer chess programmers out there. Next stop Neanderthal Man.

So, with thanks to the Krampus,
+1 points for the Singularity to take off.

Home - Top