Welcome to AlgoBOWL

Students compete in groups to create the best heuristic to an NP-hard problem.


How it Works

Students are placed in groups and receive an NP-hard problem. They are asked to design a good heuristic to the problem, create an input to the problem, and a program which, given an input and output, will verify if the output is a valid solution to the input.

Stage 1: Input Upload

Groups upload their inputs to the problem and select a team name.

Stage 2: Output Upload

Groups run all inputs on their solution program and upload their outputs to the site.

Stage 3: Verification

Groups verify that each solution to their input from all other groups is valid.

Stage 4: Resolution

Groups with rejections may upload new outputs for a penalty, or protest rejections.

Stage 5: Open Verification

All outputs for all inputs become available, and teams may protest any verification.

Stage 6: Evaluation

Everyone evaluates their teammates effort to be considered in their grade.