Melvin's digital garden

open problems

Analysis of public dataset

Example of NYC taxi data visualization on

For example, figure out what is the fewest number of taxis to service all the trips.

See for other datasets from the Singapore.

Adversarial search uses the Monte-Carlo Tree search AI to play Magic: the Gathering use ISMCTS to play simplified Knockout Whist

Explore ways to make the AI stronger and play a better game.

Online Task Assignment

Find a strategy of assigning delivery tasks to workers so as to minimize the number of workers.

Each task must not wait more than T units of time for a worker.

Route planning for multiple robots

Plan the movement of m robots in a warehouse that avoids deadlocks and completes all delivery tasks in the minimum time.


Route planning for a robot vacuum cleaner

Plan the movement of a single robot vacuum cleaner to clean an area in the shortest time.

The area may be known or unknown. Should account for direction of the robot as most robots can either turn or move forward.


Robotic missions in Minecraft is the plugin released by MS. It turns Minecraft into a robot simulator. uses Python + Malmo to teach some basic robotics algorithms like maze solving.

Develop more missions such as simulating a robotic vacuum cleaner which covers all locations of a new area with fewest moves (online graph exploration).

Faster Max-gap data structure


Halting complexity of mathematical statements


Lua scripting for Liberation Circuit

See for Lua script of missions

Extend Lua scripting for unit AI

Algorithms for the counter machine


Interactive Emergent Narrative

A simulation where you can take part in stories that emerge from the interaction of characters.

Some examples are and

See for more examples.

Cooling a hot drink

Create a portable low-cost device to cool a hot drink quickly to drinkable temperature.

See wikiHow:How to Cool a Hot Drink Quickly for a list of methods.

Idea: create a straw that can create small fine bubbles, should be easy to clean by rinsing

AI for Cuttle

Create a strong AI player for the card game Cuttle.

Example: cuttle-bot does a one step look ahead.

Procedurally generate levels for BPPGBYCTT

Generate “interesting” levels for Sokoban with time warps

Determine the winner for 6x6 Capture Go

6x6 with crosscut is win for black, 6x6 with stable centre is possibly a win for black by testing various initial move. Reference: Solving Ponnuki-Go on Small Boards

For 9x9 with crosscut, it is usually with black in the centre. Is this a win for black? What if the cross cut has white in the centre instead?

Weakly solve 6x6 Go

Under area scoring, the komi is believed to be 4.

Largest solved square board is 5x5, largest solved board is 5x6. Published in Solving Go for Rectangular Boards

It is one of the research areas in Martin Müller’s Research Group

Related resources

Links to this note