Features of Computation

What are computational methods?

  • In A Level Computer Science, computational methods refer to a set of problem-solving techniques that use algorithms and mathematical models to analyse, simulate, and solve complex problems efficiently using a computer
  • It’s important to consider if problems can be solved using algorithms and programming code
  • For example:
    • Sorting a list of numbers is feasible using algorithms like quick sort or merge sort
    • But ethical problems or social problems, like determining if a loan should be approved, may incorporate some human input that algorithms could oversimplify or misinterpret

Real-world constraints on computable problems

  • Practical limitations such as computing power, speed, and memory can affect whether a problem is solvable
  • Running complex machine learning models on a regular laptop might be constrained by limited processing power and memory

Challenges with resource-intensive problems

  • Some problems are theoretically solvable but not practical due to resource limitations
  • For example, calculating Pi to a billion decimal places is theoretically possible but impractical due to the amount of computational resources needed

Advances in technology

  • Technological improvements have expanded the types of problems that can be computationally solved
  • For example, genome sequencing has become quicker and more affordable due to advances in technology

Example

  • Below is a table of problems identified for an online grocery business
  • The table shows which problems are computational and a reason why
Problem DescriptionComputational Problem
(Yes or No)
Justification
Inventory levels are not updated in real-timeYesReal-time syncing can be achieved through algorithms
High rate of employee turnoverNoRoot causes are likely cultural or managerial, not algorithmic
Incorrectly sorted products in the delivery vanYesSorting algorithms can optimise placement for efficiency
Long wait times for customer serviceYesQueue algorithms can improve response times
Poor route optimisation for delivery trucksYesRouting algorithms exist for this specific problem
Inadequate marketing strategiesNoMarketing strategies often require creative and human-centric solutions

Worked Example

The table below outlines various challenges in a public transportation system.

Evaluate each problem and decide whether it is computational and justify each of your decisions.

| Problem Description | Computational
(Yes or No) | Justification | | -------------------- | --------------------------- | ------------- | | Frequent train delays | | | | Overcrowding in peak hours | | | | Difficulty in finding the shortest route | | | | Vandalism in the stations | | | | Inconsistent fare pricing | | | | Inaccurate timetable | | |

How to Answer This Question

  1. Review the Table: Take a moment to read through the problems listed and think about whether a computational solution would be possible
  2. Fill in the Table: In the “computational” column, specify whether the problem should or should not be solved computationally
  3. Justify your answers: In the last column, justify your decision for each problem briefly

Answer: | Problem Description | Computational
(Yes or No) | Justification | | -------------------- | --------------------------- | ------------- | | Frequent train delays | Yes | Real-time tracking and predictive algorithms can help in better scheduling | | Overcrowding in peak hours | Yes | Load-balancing algorithms can redistribute passengers or add more trains during peak hours | | Difficulty in finding the shortest route | Yes | Route-finding algorithms can quickly identify the most efficient path | | Vandalism in the stations | No | Requires human intervention such as increased security personnel | | Inconsistent fare pricing | Yes | Dynamic pricing algorithms can ensure fare consistency | | Inaccurate timetable | Yes | Timetabling algorithms can generate more accurate and optimised timetables |