What we do
Algoritmikauppa designs algorithms based on your needs as the customer. We take the desired input and output for the algorithm and come up with the magic to connect the two and provide you a clear description of the algorithm and instructions for implementation.
Our aim is to concentrate on a narrow selection of problem types. This helps us a develop deeper understanding of the problems and provide high-quality service. At the moment our focus is on combinatorial optimization, but we'll widen our scope in the future by recruiting and constantly studying.
Combinatorial optimization
By combinatorial optimization we mean optimization problems, where the goal is to find good solutions from a finite set of objects. Especially most optimization problems on graphs are combinatorial optimization.
Many of these kind of problems are computationally challenging, some even to the degree that finding exact solutions is practically impossible. In these cases we may be able to find an algorithm that finds good-enough solutions.
Other and unrecognized problem types
In addition to combinatorial optimization we design more basic algorithms. Our operating model allows us to help even with small problems.
Recognizing the mathematical structure behind a programming problem can sometimes be challenging and we don't expect you to know exactly what kind of problem you're trying to solve. All we need to know is what you want the algorithm to do.