problem recognition Flashcards

1
Q

computable problems

A

a problem where there is an ALGORITHM that can solve EVERY instance of it within a FINITE number of steps (can be theoretically solvable but practically unsolvable/insoluble if takes millions of yrs to solve)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

ways of problem solving

A

enumeration
simulation
theoretical approach
creative solution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

enumeration

A

solve problems by exhaustive search (eg finding owner of DNA in database) - trying all possible solutions. Once insoluble are now soluble bc power of computers. BUT inefficient, and as size of problem inc, number of poss solutions inc exponentially. eg magic squares

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

simulation

A

process of designing a model for a real system to understand the behaviour of the system and evaluate various strategies for its operation. Model used to evaluate performance or test outcomes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

problems for simulation

A
financial risk analysis
population predictions
climate change predictions
queue problems
engineering design problems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

abstraction in simulation

A

removes unnecessary details, reducing problems to essentials

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

eg of queuing problems

A

number of queues on toll roads, or checkouts at supermarkets or number of people on helplines for software support

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

simulation: real life models

A

build physical model of eg spacecraft to study behaviour. When impractical, dangerous, expensive to do tests on real thing. Used to evaluate performance and test outcomes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

strategies for problem solving

A

top down design: good for breaking down into small, manageable subtasks
divide and conquer: technique that reduces size of problem with every iteration eg binary search (halves problem with each iteration), not always as fast as binary search
problem abstraction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

problem abstraction

A

removing details until problem is represented in a way that it is possible to solve because reduced to one that has already been solved

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

graph unfolding

A

a method of solving a problem: eg for knights problem on p279, number squares then draw node graphs with edges to all possible moves. then open it up to a circle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

eg the knights problem is a …

A

REDUCTION to a more general problem that has already been solved in the same way

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

automation

A

building and putting into action models to solve problems. Includes: what are you gonna put in the model and what assumptions you are going to make, create and implement algorithms, execute and test results

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

automating the abstraction

A

tells us more about the reality we are modelling/physical scenario

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

physical world scenario–> mathematical model

A

abstraction is created

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

mathematical model is automated to

A

an automaton

17
Q

automaton tells us more about

A

physical world scenario

18
Q

important factor in finding a solution to a problem

A

visualisation of algorithms: how problem is presented eg computers work with binary numbers but humans prefer visual images

19
Q

eg of visualisation

A

binary tree flow diagram vs data in a table, a map, graph

20
Q

backtracking

A

methodical way of trying out different sequences until you find one that leads to a solution. go as far down one route as possible before backtracking to last decision point and go down next route as far as possible again.

21
Q

when is backtracking used

A

when you don’t have enough info to know which is the best choice
when each decision leads to a new set of choices
one or more of the sequences may be a new solution to the problem

22
Q

eg backtracking

A

mazes, depth first traversal of a graph

23
Q

big data

A

large sets of data that cannot be easily handled in a traditional database

24
Q

data mining

A

process of digging through big data sets to discover hidden connections and predict future trends: often involving the use of different kinds of software packages eg analytical tools

25
Q

intractable problems

A

although an algorithm may exist for their solution, the program may take an unreasonable amount of time to find the optimal solution eg Travelling Salesman Problem

26
Q

TSP and applica\tions

A

Given a list of towns and distances between each pair, what is the shortest possible route that the salesman can use to visit each town exactly once and return to the starting point: planning, logistics, manufacture of microchips and DNA sequencing

27
Q

TSP: num of possible routes with 5 cities. number you’d examine by brute force

A

4!

28
Q

methods to solve intractable problems

A

brute force: inefficient
finding an approximate answer or finding a solution with a high probability of being correct or solving simpler/restricted versions to give insights into possible solutions

29
Q

heuristic solution

A

employs an algorithm not guaranteed to be optimal or perfect or accurate, but is sufficient for the purpose and is completed in a reasonable time frame.

30
Q

performance modelling

A

process of simulating different user and system loads on a computer using a mathematical approximation, rather than actual performance testing (e.g. expensive and difficult.) Output from performance model can then be used to help plan a new system suited to the requirements of an organisation.

31
Q

e.g. of performance modelling

A

test performance of a network under different conditons