Learning augmented algorithm: Difference between revisions

From HandWiki
url
 
Wincert (talk | contribs)
link
 
Line 1: Line 1:
A '''learning augmented algorithm''' is an [[Algorithm|algorithm]] that can make use of a prediction to improve its performance.<ref name="MitzenmacherVassilvitskii2020">{{cite book | title = Beyond the Worst-Case Analysis of Algorithms | last1 = Mitzenmacher |  first1 = Michael | last2 = Vassilvitskii | first2 = Sergei | chapter = Algorithms with Predictions | date = 31 December 2020 | pages = 646–662 | publisher = Cambridge University Press | doi = 10.1017/9781108637435.037 | arxiv=2006.09123 | isbn = 978-1-108-63743-5 }}</ref>
A '''learning augmented algorithm''' (also called algorithm with predictions) is an [[Algorithm|algorithm]] that can make use of a prediction to improve its performance.<ref name="MitzenmacherVassilvitskii2020">{{cite book | title = Beyond the Worst-Case Analysis of Algorithms | last1 = Mitzenmacher |  first1 = Michael | last2 = Vassilvitskii | first2 = Sergei | chapter = Algorithms with Predictions | date = 31 December 2020 | pages = 646–662 | publisher = Cambridge University Press | doi = 10.1017/9781108637435.037 | arxiv=2006.09123 | isbn = 978-1-108-63743-5 }}</ref>
Whereas in regular algorithms just the problem instance is inputted, learning augmented algorithms accept an extra parameter.
Whereas in regular algorithms just the problem instance is inputted, learning augmented algorithms accept an extra parameter.
This extra parameter often is a prediction of some property of the solution.
This extra parameter often is a prediction of some property of the solution.
This prediction is then used by the algorithm to improve its running time or the quality of its output.
This prediction is then used by the algorithm to improve its running time or the quality of its output. The most common application are online algorithms,
where a prediction on the uncertain instance is provided.


== Description ==
== Description ==
A learning augmented algorithm typically takes an input <math>(\mathcal{I}, \mathcal{A})</math>. Here <math>\mathcal{I}</math> is a problem instance and <math>\mathcal{A}</math> is the advice: a prediction about a certain property of the optimal solution. The type of the problem instance and the prediction depend on the algorithm. Learning augmented algorithms usually satisfy the following two properties:
A learning augmented algorithm typically takes an input <math>(\mathcal{I}, \mathcal{A})</math>. Here <math>\mathcal{I}</math> is a problem instance and <math>\mathcal{A}</math> is the prediction.
A prediction can be any object. Common are the following types:
* '''Prediction of an optimal solution.''' The prediction gives a solution to the problem or characterizes an optimal solution.
* '''Prediction of the input.''' This is mainly used for online problems.
* '''Prediction of algorithmic actions.''' A prediction tailored to a specific algorithm that suggests a specific algorithm execution.


* '''Consistency.''' A learning augmented algorithm is said to be consistent if the algorithm can be proven to have a good performance when it is provided with an accurate prediction.<ref name="MitzenmacherVassilvitskii2020" /> Usually, this is quantified by giving a bound on the performance that depends on the error in the prediction.
Learning augmented algorithms usually satisfy the following three properties:<ref name="MitzenmacherVassilvitskii2020" />
* '''Robustnesss.''' An algorithm is called robust if its worst-case performance can be bounded even if the given prediction is inaccurate.<ref name="MitzenmacherVassilvitskii2020" />
* '''Consistency.''' A learning augmented algorithm is said to be consistent if the algorithm can be proven to have a good performance when it is provided with an accurate prediction.  
* '''Smoothness.''' A learning augmented algorithm is called smooth if its performance can be bounded by a function of the quality of the prediction. Here, the quality can be measured in a problem specific way. This is also called the prediction error.
* '''Robustness.''' A learning augmented algorithm is called robust if its worst-case performance can be bounded even if the given prediction is inaccurate.


Learning augmented algorithms generally do not prescribe how the prediction should be done. For this purpose [[Machine learning|machine learning]] can be used.{{fact|date=May 2022}}
Learning augmented algorithms generally do not prescribe how the prediction should be done. For this purpose [[Machine learning|machine learning]] can be used.{{fact|date=May 2022}}


== Examples ==
== Applications ==
=== Binary search ===
 
A few examples of problems where learning augmented algorithms have been applied are the following.
 
=== Online algorithms ===
 
* The ski rental problem<ref>{{cite conference
|last1=Purohit
|first1=Manish
|last2=Svitkina
|first2=Zoya
|last3=Kumar
|first3=Ravi
|title=Improving Online Algorithms via ML Predictions
|book-title=Advances in Neural Information Processing Systems 31 (NeurIPS 2018)
|pages=9684–9693
|year=2018
|location=Montréal, Canada
|url=https://proceedings.neurips.cc/paper/2018/hash/73a427badebe0e32caa2e1fc7530b7f3-Abstract.html
|access-date=18 December 2025
}}</ref>
* The weighted [[Page replacement algorithm#The (h,k)-paging problem|paging problem]]<ref name="BansalCoesterKumar2022">{{cite book | title = Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA) | last1 = Bansal | first1 = Nikhil | last2 = Coester | first2 = Christian | last3 = Kumar | first3 = Ravi | last4 = Purohit | first4 = Manish | last5 = Vee | first5 = Erik | chapter = Learning-Augmented Weighted Paging | date = January 2022 | pages = 67–89 | publisher = Society for Industrial and Applied Mathematics | doi = 10.1137/1.9781611977073.4 | arxiv = | isbn = 978-1-61197-707-3 | url = https://ora.ox.ac.uk/objects/uuid:f8f430f4-23fd-49b9-9cf4-1c24230151cf }}</ref>
* The [[Set cover problem|set cover problem]]<ref>{{cite conference
|last1=Bamas
|first1=Étienne
|last2=Maggiori
|first2=Andreas
|last3=Svensson
|first3=Ola
|title=The Primal-Dual Method for Learning Augmented Algorithms
|book-title=Advances in Neural Information Processing Systems 33 (NeurIPS 2020)
|year=2020
|location=Virtual conference
|url=https://proceedings.neurips.cc/paper/2020/hash/e834cb114d33f729dbc9c7fb0c6bb607-Abstract.html
|access-date=18 December 2025
}}</ref><ref>{{cite arXiv
|last1=Grigorescu
|first1=Elena
|last2=Lin
|first2=Young-San
|last3=Silwal
|first3=Sandeep
|last4=Song
|first4=Maoyuan
|last5=Zhou
|first5=Samson
|title=Learning-Augmented Algorithms for Online Linear and Semidefinite Programming
|eprint=2209.10614
|class=cs
|year=2022
}}</ref>
* Nonclairvoyant scheduling<ref>{{cite conference
|last1=Im
|first1=Sungjin
|last2=Kumar
|first2=Ravi
|last3=Montazer Qaem
|first3=Mahshid
|last4=Purohit
|first4=Manish
|title=Non-Clairvoyant Scheduling with Predictions
|book-title=Proceedings of the 33rd ACM Symposium on Parallelism in Algorithms and Architectures (SPAA 2021)
|pages=285–294
|publisher=ACM
|year=2021
|location=Virtual conference, USA
|doi=10.1145/3409964.3461790
|url=https://doi.org/10.1145/3409964.3461790
|access-date=18 December 2025
|doi-access=free
}}</ref><ref>{{cite journal
|last1=Lindermayr
|first1=Alexander
|last2=Megow
|first2=Nicole
|title=Permutation Predictions for Non-Clairvoyant Scheduling
|journal=ACM Transactions on Parallel Computing
|volume=12
|issue=2
|pages=4:1–4:26
|year=2025
|publisher=ACM
|doi=10.1145/3711872
|url=https://doi.org/10.1145/3711872
|access-date=18 December 2025
|url-access=subscription
}}</ref>
* The online matching problem<ref>{{cite conference
|last1=Jin
|first1=Billy
|last2=Ma
|first2=Will
|title=Online Bipartite Matching with Advice: Tight Robustness–Consistency Tradeoffs for the Two-Stage Model
|book-title=Advances in Neural Information Processing Systems 35 (NeurIPS 2022)
|year=2022
|location=New Orleans, Louisiana, United States
|url=http://papers.nips.cc/paper_files/paper/2022/hash/5d68a3f05ee2aae6a0fb2d94959082a0-Abstract-Conference.html
|access-date=18 December 2025
}}</ref>
 
 
=== Warm starting ===
 
==== Data structures ====
The [[Binary search algorithm|binary search algorithm]] is an algorithm for finding elements of a sorted list <math>x_1,\ldots,x_n</math>. It needs <math>O(\log(n))</math> steps to find an element with some known value <math>y</math> in a list of length <math>n</math>.
The [[Binary search algorithm|binary search algorithm]] is an algorithm for finding elements of a sorted list <math>x_1,\ldots,x_n</math>. It needs <math>O(\log(n))</math> steps to find an element with some known value <math>y</math> in a list of length <math>n</math>.
With a prediction <math>i</math> for the position of <math>y</math>, the following learning augmented algorithm can be used.<ref name="MitzenmacherVassilvitskii2020" />
With a prediction <math>i</math> for the position of <math>y</math>, the following learning augmented algorithm can be used.<ref name="MitzenmacherVassilvitskii2020" />
Line 28: Line 137:
Even in the worst case, the error will be at most <math>n</math>. Then the algorithm takes at most <math>O(\log(n))</math> steps, so the algorithm is robust.
Even in the worst case, the error will be at most <math>n</math>. Then the algorithm takes at most <math>O(\log(n))</math> steps, so the algorithm is robust.


=== More examples ===
==== More examples ====
Learning augmented algorithms are known for:
 
* The ski rental problem<ref name="WangLiWang2020">{{cite book | title=NIPS'20: Proceedings of the 34th International Conference on Neural Information Processing Systems | chapter = Online Algorithms for Multi-shop Ski Rental with Machine Learned Advice | date=2020 | isbn=978-1-71382-954-6 | oclc=1263313383 | arxiv = 2002.05808 | first1 = Shufan | last1 = Wang
| first2 = Jian
| last2 = Li
| first3 = Shiqiang
| last3 = Wang}}</ref>
* The [[Maximum weight matching|maximum weight matching]] problem<ref name="neurips_5616060fb8ae85d93f334e7267307664">{{cite book
* The [[Maximum weight matching|maximum weight matching]] problem<ref name="neurips_5616060fb8ae85d93f334e7267307664">{{cite book
| first1 = Michael
| first1 = Michael
Line 52: Line 156:
| date = 2021
| date = 2021
}}</ref>
}}</ref>
* The weighted [[Page replacement algorithm#The (h,k)-paging problem|paging problem]]<ref name="BansalCoesterKumar2022">{{cite book | title = Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA) | last1 = Bansal | first1 = Nikhil | last2 = Coester | first2 = Christian | last3 = Kumar | first3 = Ravi | last4 = Purohit | first4 = Manish | last5 = Vee | first5 = Erik | chapter = Learning-Augmented Weighted Paging | date = January 2022 | pages = 67–89 | publisher = Society for Industrial and Applied Mathematics | doi = 10.1137/1.9781611977073.4 | arxiv = | isbn = 978-1-61197-707-3 | url = https://ora.ox.ac.uk/objects/uuid:f8f430f4-23fd-49b9-9cf4-1c24230151cf }}</ref>
 
=== Approximation algorithms ===
 
* The [[Maximum cut|maximum cut]] problem<ref>{{cite conference
|last1=Cohen-Addad
|first1=Vincent
|last2=d'Orsi
|first2=Tommaso
|last3=Gupta
|first3=Anupam
|last4=Lee
|first4=Euiwoong
|last5=Panigrahi
|first5=Debmalya
|title=Learning-Augmented Approximation Algorithms for Maximum Cut and Related Problems
|book-title=Advances in Neural Information Processing Systems 38 (NeurIPS 2024)
|year=2024
|location=Vancouver, British Columbia, Canada
|url=http://papers.nips.cc/paper_files/paper/2024/hash/2db08b94565c0d582cc53de6cee5fd47-Abstract-Conference.html
|access-date=18 December 2025
}}</ref>
* The [[Vertex cover|vertex cover]] problem<ref>{{cite conference
|last1=Antoniadis
|first1=Antonios
|last2=Eliás
|first2=Marek
|last3=Polak
|first3=Adam
|last4=Venzin
|first4=Moritz
|title=Approximation Algorithms for Combinatorial Optimization with Predictions
|book-title=Proceedings of the Thirteenth International Conference on Learning Representations (ICLR 2025)
|publisher=OpenReview
|year=2025
|location=Singapore
|url=https://openreview.net/forum?id=AEFVa6VMu1
|access-date=18 December 2025
}}</ref>
 
 
=== Mechanism Design ===
 
* The facility location problem<ref>{{cite journal
|last1=Agrawal
|first1=Priyank
|last2=Balkanski
|first2=Eric
|last3=Gkatzelis
|first3=Vasilis
|last4=Ou
|first4=Tingting
|last5=Tan
|first5=Xizhi
|title=Learning-Augmented Mechanism Design: Leveraging Predictions for Facility Location
|journal=Mathematics of Operations Research
|volume=49
|issue=4
|pages=2626–2651
|year=2024
|publisher=INFORMS
|doi=10.1287/MOOR.2022.0225
|url=https://doi.org/10.1287/moor.2022.0225
|access-date=18 December 2025
|url-access=subscription
}}</ref>
 


== See also ==
== See also ==

Latest revision as of 15:54, 12 March 2026

A learning augmented algorithm (also called algorithm with predictions) is an algorithm that can make use of a prediction to improve its performance.[1] Whereas in regular algorithms just the problem instance is inputted, learning augmented algorithms accept an extra parameter. This extra parameter often is a prediction of some property of the solution. This prediction is then used by the algorithm to improve its running time or the quality of its output. The most common application are online algorithms, where a prediction on the uncertain instance is provided.

Description

A learning augmented algorithm typically takes an input (,𝒜). Here is a problem instance and 𝒜 is the prediction. A prediction can be any object. Common are the following types:

  • Prediction of an optimal solution. The prediction gives a solution to the problem or characterizes an optimal solution.
  • Prediction of the input. This is mainly used for online problems.
  • Prediction of algorithmic actions. A prediction tailored to a specific algorithm that suggests a specific algorithm execution.

Learning augmented algorithms usually satisfy the following three properties:[1]

  • Consistency. A learning augmented algorithm is said to be consistent if the algorithm can be proven to have a good performance when it is provided with an accurate prediction.
  • Smoothness. A learning augmented algorithm is called smooth if its performance can be bounded by a function of the quality of the prediction. Here, the quality can be measured in a problem specific way. This is also called the prediction error.
  • Robustness. A learning augmented algorithm is called robust if its worst-case performance can be bounded even if the given prediction is inaccurate.

Learning augmented algorithms generally do not prescribe how the prediction should be done. For this purpose machine learning can be used.[citation needed]

Applications

A few examples of problems where learning augmented algorithms have been applied are the following.

Online algorithms


Warm starting

Data structures

The binary search algorithm is an algorithm for finding elements of a sorted list x1,,xn. It needs O(log(n)) steps to find an element with some known value y in a list of length n. With a prediction i for the position of y, the following learning augmented algorithm can be used.[1]

  • First, look at position i in the list. If xi=y, the element has been found.
  • If xi<y, look at positions i+1,i+2,i+4, until an index j with xjy is found.
    • Now perform a binary search on xi,,xj.
  • If xi>y, do the same as in the previous case, but instead consider i1,i2,i4,.

The error is defined to be η=|ii*|, where i* is the real index of y. In the learning augmented algorithm, probing the positions i+1,i+2,i+4, takes log2(η) steps. Then a binary search is performed on a list of size at most 2η, which takes log2(η) steps. This makes the total running time of the algorithm 2log2(η). So, when the error is small, the algorithm is faster than a normal binary search. This shows that the algorithm is consistent. Even in the worst case, the error will be at most n. Then the algorithm takes at most O(log(n)) steps, so the algorithm is robust.

More examples

Approximation algorithms


Mechanism Design

  • The facility location problem[12]


See also

References

  1. 1.0 1.1 1.2 Mitzenmacher, Michael; Vassilvitskii, Sergei (31 December 2020). "Algorithms with Predictions". Beyond the Worst-Case Analysis of Algorithms. Cambridge University Press. pp. 646–662. doi:10.1017/9781108637435.037. ISBN 978-1-108-63743-5. 
  2. Purohit, Manish; Svitkina, Zoya; Kumar, Ravi (2018). "Improving Online Algorithms via ML Predictions". Montréal, Canada. pp. 9684–9693. https://proceedings.neurips.cc/paper/2018/hash/73a427badebe0e32caa2e1fc7530b7f3-Abstract.html. Retrieved 18 December 2025. 
  3. Bansal, Nikhil; Coester, Christian; Kumar, Ravi; Purohit, Manish; Vee, Erik (January 2022). "Learning-Augmented Weighted Paging". Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA). Society for Industrial and Applied Mathematics. pp. 67–89. doi:10.1137/1.9781611977073.4. ISBN 978-1-61197-707-3. https://ora.ox.ac.uk/objects/uuid:f8f430f4-23fd-49b9-9cf4-1c24230151cf. 
  4. Bamas, Étienne; Maggiori, Andreas; Svensson, Ola (2020). "The Primal-Dual Method for Learning Augmented Algorithms". Virtual conference. https://proceedings.neurips.cc/paper/2020/hash/e834cb114d33f729dbc9c7fb0c6bb607-Abstract.html. Retrieved 18 December 2025. 
  5. Grigorescu, Elena; Lin, Young-San; Silwal, Sandeep; Song, Maoyuan; Zhou, Samson (2022). "Learning-Augmented Algorithms for Online Linear and Semidefinite Programming". arXiv:2209.10614 [cs].
  6. Im, Sungjin; Kumar, Ravi; Montazer Qaem, Mahshid; Purohit, Manish (2021). "Non-Clairvoyant Scheduling with Predictions". Virtual conference, USA: ACM. pp. 285–294. doi:10.1145/3409964.3461790. https://doi.org/10.1145/3409964.3461790. Retrieved 18 December 2025. 
  7. Lindermayr, Alexander; Megow, Nicole (2025). "Permutation Predictions for Non-Clairvoyant Scheduling". ACM Transactions on Parallel Computing (ACM) 12 (2): 4:1–4:26. doi:10.1145/3711872. https://doi.org/10.1145/3711872. Retrieved 18 December 2025. 
  8. Jin, Billy; Ma, Will (2022). "Online Bipartite Matching with Advice: Tight Robustness–Consistency Tradeoffs for the Two-Stage Model". New Orleans, Louisiana, United States. http://papers.nips.cc/paper_files/paper/2022/hash/5d68a3f05ee2aae6a0fb2d94959082a0-Abstract-Conference.html. Retrieved 18 December 2025. 
  9. Dinitz, Michael; Im, Sungjin; Lavastida, Thomas; Benjamin, Benjamin; Vassilvitskii, Sergei (2021). "Faster Matchings via Learned Duals". Advances in Neural Information Processing Systems. Curran Associates, Inc.. https://proceedings.neurips.cc/paper/2021/file/5616060fb8ae85d93f334e7267307664-Paper.pdf. 
  10. Cohen-Addad, Vincent; d'Orsi, Tommaso; Gupta, Anupam; Lee, Euiwoong; Panigrahi, Debmalya (2024). "Learning-Augmented Approximation Algorithms for Maximum Cut and Related Problems". Vancouver, British Columbia, Canada. http://papers.nips.cc/paper_files/paper/2024/hash/2db08b94565c0d582cc53de6cee5fd47-Abstract-Conference.html. Retrieved 18 December 2025. 
  11. Antoniadis, Antonios; Eliás, Marek; Polak, Adam; Venzin, Moritz (2025). "Approximation Algorithms for Combinatorial Optimization with Predictions". Singapore: OpenReview. https://openreview.net/forum?id=AEFVa6VMu1. Retrieved 18 December 2025. 
  12. Agrawal, Priyank; Balkanski, Eric; Gkatzelis, Vasilis; Ou, Tingting; Tan, Xizhi (2024). "Learning-Augmented Mechanism Design: Leveraging Predictions for Facility Location". Mathematics of Operations Research (INFORMS) 49 (4): 2626–2651. doi:10.1287/MOOR.2022.0225. https://doi.org/10.1287/moor.2022.0225. Retrieved 18 December 2025.