2.2.2 - Computational Methods Flashcards

1
Q

What makes a problem solvable by
computational methods?

A
  • Can be solved within a finite, realistic amount of time
  • Involves calculations as some issues can be quantified - these are easier to process computationally
  • Has inputs, processes and outputs
  • Involves logical reasoning.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Problem Recognition

A

Identifying that there is a problem to be solved, to determine exactly what the problem is from a description/scenario and to determine if the problem can be solved with computational methods

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

Problem Decomposition

A

Splitting the problem down into more manageable subproblems until each problem can be solved independantly; allowing for the use of divide and conquer

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

Divide and Conquer + ‘Best’ Example

A
  • Splits a big problem into smaller parts that are then tackled
  • Best Example - Binary Search
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Abstraction

A
  • Removal of unnecessary elements and use of symbols to represent elements of the problem
  • Increases chance of creating the program successfully, reduces programming time and factors that can detract from the program
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Backtracking

A
  • The process of incrementally building towards a solution, abandoning partial success when the solution can’t be completed and going back to the last successful stage
  • Especially good for logic problems that involve path/route finding; E.g. Depth-First Graph Traversal
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Data Mining

A
  • Involves searching through vast amounts of unconnected data in search of relationships/correlation between data items that may not be obvious
  • May include pattern matching and anomaly detection algorithms
  • Can be used for business modelling and planning for future eventualities
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are Heuristics?

A

When ‘Rules of thumb’ and personal experience are used when it is unfeasible to analyse all eventualities; leading to a “good enough” result for the given time frame although it is not 100% accurate.

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

How can Heuristics be used?

A
  • Can make intractable problems possible
  • Can assess potential malware
  • Can speed up the process of finding the solution in the A* algorithm
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Performance Modelling

A
  • Simulating the behaviour of the system before it is implemented to approximate performance
  • Makes use of (smaller scale) existing data and calculations to make predictions; E.g. A game during its beta testing phase
  • Useful where implementation is expensive or dangerous
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Pipelining

A

Data/processes arranged in a series being developed in parallel with the output of one process in pipelining becoming the input of another

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

Describe two examples of where pipelining is used in any computer system?

A
  • Pipes to pass data between programs and from programs to and from peripherals, example such as | symbol in Unix, Popen() or pipe() in C.
  • Instruction processing; some processors allow parts of instructions to be processed without waiting to complete the whole instruction cycle
  • Graphics Pipelines
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Visualisation

A

Computer Processes and Data being presented in a way that is easier for people to grasp; visually

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

Advantages of Visualisations

A
  • Benefit humans rather than computers
  • Presents the information in a simpler form to understand
  • Can best explain complex situations
How well did you know this?
1
Not at all
2
3
4
5
Perfectly