Friday, 14 December 2012

1.1.5 Intractable Problems

There are 10 types of problems covered in this section: Algorithmic, Non-Algorithmic, Finite Infinite, Computable, Non-Computable, Decidable, Undecidable, Tractable and Intractable.

Algorithmic problems are problems that can be solved a set of rules or a series of steps, kinda like a recipe for cooking. Non-Algorithmic problems are problems that can't be solved using a set of rules or some steps, they tend to be more opinion based questions, like "who would win in a fight" style questions (side note Batman always wins with sufficient planning time).

Now algorithmic problems can be divided up into 2 types (along with the initial 2) Finite and Infinite. Finite problems are problems with a finite number of inputs and are (eventually) solvable, infinite problems however have an infinite number of inputs and might be solvable or they might not.

A computable problem is a problem that can be computed, whereas non-computable ones can't be. This is because some problems can't be solved by a basic algorithm and tend to require a human to look at to see if they work or not.

A decision problem is a Yes/No algorithmic problem with any number of inputs, while a decidable problem is a decision problem with an answer eg. Is 10 divided by 5 an even number? An undecidable problem is a decision problem with no Yes/No answer eg. What's 10 divided by 5?

A tractable problem is a problem which can be solved within a reasonable amount of time (known as polynomial time) eg. organising a collection of cards. Intractable problems are problems that can't be solved withing a reasonable amount of time eg. the Traveling Salesman Problem