DeepMind AI Surpasses Human Mathematicians in Solving Combinatorics Problems!

The Journey
3 min readDec 15, 2023
Graphics Credits: Quanta

Well, well, well! While we are all getting ready for the holidays, AI is working overtime. Yep. Don’t believe me? Read this…

Innovations in AI:

DeepMind’s AI, FunSearch, has made significant progress in solving complex combinatorics problems, outshining human efforts. This advancement is particularly notable in problems inspired by the card game Set.

FunSearch utilizes large language models (LLMs) to generate new solutions in the field of combinatorics, which involves counting possible arrangements of finite sets.

How FunSearch Works:

The AI system crafts requests for a specially trained LLM, which in turn writes short computer programs to solve mathematical problems. These solutions are then evaluated, with feedback provided for continuous improvement. This method is not just innovative but has proven more effective than existing techniques.

Application on the ‘Cap Set Problem’:

DeepMind tested FunSearch on the ‘cap set problem’, which evolved from the game Set. This game’s mathematical complexity increases with the number of properties on the cards. FunSearch improved the lower bound for cases where the number of properties is eight (n = 8).

Human-Machine Collaboration:

A key feature of FunSearch is its transparency. The programs created by the LLM can be reviewed and learned from by people, promoting a new form of collaboration between humans and machines.

OpenAI’s Superalignment Team Efforts:

Concurrently, OpenAI’s superalignment team has been working to ensure AI safety, particularly concerning superintelligences that could potentially surpass human capabilities. Their research involves techniques for supervising more powerful AI models with less powerful ones, a concept critical for managing future superhuman AI models.

Coding Example to solve a basic combinatorics problem!

Imagine creating a Python program that uses a simplified AI model to solve a basic combinatorics problem, such as calculating permutations of a given set.

This example demonstrates a fundamental approach similar to what DeepMind’s FunSearch might employ on a much more complex scale.

In this case, we’re using a set of five elements: ['a', 'b', 'c', 'd', 'e']. The code generates all possible permutations of these elements and prints the first 10 permutations for demonstration purposes, along with the total count of permutations generated.

import itertools

def calculate_permutations(elements):
""" Calculate all permutations of a given list of elements """
return list(itertools.permutations(elements))

# More complex example: Calculating permutations of a larger set
elements = ['a', 'b', 'c', 'd', 'e']
permutations = calculate_permutations(elements)

# Displaying the first 10 permutations for brevity
print("First 10 permutations of", elements, ":", permutations[:10])
print("Total permutations:", len(permutations))

When run, this script will output the first 10 permutations of the list ['a', 'b', 'c', 'd', 'e'], as well as the total number of permutations, which in this case is 120. This example demonstrates how the permutations increase exponentially with the increase in the number of elements in the set.

Follow for more things on AI! The Journey — AI By Jasmin Bharadiya

--

--

The Journey
The Journey

Written by The Journey

We welcome you to a new world of AI in the simplest way possible. Enjoy light-hearted and bite-sized AI articles.