Online algorithm

Online algorithm

In computer science, an online algorithm is one that can process its input piece-by-piece in a serial fashion, i.e., in the order that the input is fed to the algorithm, without having the entire input available from the start. In contrast, an offline algorithm is given the whole problem data from the beginning and is required to output an answer which solves the problem at hand. (For example, selection sort requires that the entire list be given before it can sort it, while insertion sort doesn't.)

Because it does not know the whole input, an online algorithm is forced to make decisions that may later turn out not to be optimal, and the study of online algorithms has focused on the quality of decision-making that is possible in this setting. Competitive analysis formalizes this idea by comparing the relative performance of an online and offline algorithm for the same problem instance. For other points of view on online inputs to algorithms, see streaming algorithm (focusing on the amount of memory needed to accurately represent past inputs), dynamic algorithm (focusing on the time complexity of maintaining solutions to problems with online inputs) and Online machine learning.

A problem exemplifying the concepts of online algorithms is the Canadian Traveller Problem. The goal of this problem is to minimize the cost of reaching a target in a weighted graph where some of the edges are unreliable and may have been removed from the graph. However, that an edge has been removed (failed) is only revealed to the traveller when she/he reaches one of the edge's endpoints. The worst case for this problem is simply that all of the unreliable edges fail and the problem reduces to the usual Shortest Path Problem. An alternative analysis of the problem can be made with the help of competitive analysis. For this method of analysis, the offline algorithm knows in advance which edges will fail and the goal is to minimize the ratio between the online and offline algorithms' performance. This problem is PSPACE-complete.

Contents

Online algorithms

The names below are referenced with capital letters since they appear in papers with capital letters. The following are the names of some online algorithms:

  • BALANCE2
  • BALANCE-SLACK
  • Double Coverage
  • EQUIPOISE
  • HANDICAP
  • HARMONIC
  • RANDOM-SLACK
  • Tight Span Algorithm
  • Tree Algorithm
  • Work Function Algorithm (WFA)

See also

References

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Online algorithm — En informatique, un algorithme online (algorithme en ligne) est un algorithme qui reçoit son entrée (son input) prédécoupée en petits morceaux, et qui commence à calculer dès le premier petit morceau reçu, puis continue à traiter, en série, les… …   Wikipédia en Français

  • Competitive analysis (online algorithm) — Competitive analysis is a method invented for analyzing online algorithms, in which the performance of an online algorithm (which must satisfy an unpredictable sequence of requests, completing each request without being able to see the future) is …   Wikipedia

  • Adversary (online algorithm) — In computer science, an online algorithm measures its competitiveness against different adversary models. For deterministic algorithms, the adversary is the same, the adaptive offline adversary. For randomized online algorithms competitiveness… …   Wikipedia

  • Online machine learning — In machine learning, online learning is a model of induction that learns one instance at a time. The goal in online learning is to predict labels for instances. For example, the instances could describe the current conditions of the stock market …   Wikipedia

  • Online NMF — (Non negative matrix factorization) is a recently developed method for real time data analysis in an online context. Non negative matrix factorization in the past has been used for static data analysis and pattern recognition. In the past it has… …   Wikipedia

  • Online DVD rental — Online DVD rentals allow a person to rent DVDs by mail. Generally, all interaction between the renter and the rental company takes place through the company s website.How it worksMost companies operate on the following model: *The customer joins… …   Wikipedia

  • Online dispute resolution — Alternative Dispute Resolution Arbitration …   Wikipedia

  • Online learning model — In machine learning, an online learning model is a learning model that does not have a separate training and testing phase. The pseudo code for this model is: do retrieve the next example x get prediction from algorithm if prediction is wrong… …   Wikipedia

  • Online analytical processing — In computing, online analytical processing, or OLAP (  /ˈoʊlæ …   Wikipedia

  • Online codes — In computer science, online codes are an example of rateless erasure codes. These codes can encode a message into a number of symbols such that knowledge of any fraction of them allows one to recover the original message (with high probability).… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”