Asymptotic Analysis

What is Asymptotic Analysis?

Asymptotic analysis is the process of calculating the running time of an algorithm in mathematical units to find the program’s limitations, or “run-time performance.” The goal is to determine the best case, worst case and average case time required to execute a given task. While not a method of deep learning training, Asymptotic analysis is a crucial diagnostic tool for programmers to evaluate an algorithm’s efficiency, rather than just its accuracy.


How Does Asymptotic Analysis Work?

This analysis needs a variable input to the algorithm, otherwise the work is assumed to require a constant amount time. All factors other than the input operation are considered constant.

For a simple example, the running time of a given data mining query is considered f(n), and its corollary search operation is calculated as g(n2). So the first operation’s running time increases linearly with the rise in n, while the running time of the second operation increases exponentially as n is enlarged. 

While run-time performance can be calculated with many different functions, the limiting behavior of the algorithm is expressed graphically using simple notation:

  • Ο(n): Is the upper bound of an algorithm's running time and measures the worst case scenario of how long an algorithm can possibly take to complete a given operation.
  • Ω(n): Is the lower bound of an algorithm's running time and measures the best case scenario of how long an algorithm can possibly take to complete a given operation.
  • Θ(n): Is charting both the upper and lower running time boundaries, with the average case scenario express as the average between each border.