Skip to content

Commit 6c2cc7f

Browse files
authored
Update algorithms docs for Aqua (qiskit-community/qiskit-aqua#900)
* Update algorithm docs for new categories * Add custom words
1 parent 196f168 commit 6c2cc7f

File tree

1 file changed

+107
-27
lines changed

1 file changed

+107
-27
lines changed

qiskit/aqua/algorithms/__init__.py

Lines changed: 107 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@
2424
a different implementation of the same component type in order to potentially alter the behavior
2525
and outcome of the algorithm.
2626
27-
Algorithms are run via a :class:`~qiskit.aqua.QuantumInstance` which must be set with the desired
28-
backend where the algorithm's circuits will be executed and be configured with a number of compile
29-
and runtime parameters controlling circuit compilation and execution. Aqua ultimately uses
27+
Quantum algorithms are run via a :class:`~qiskit.aqua.QuantumInstance` which must be set with the
28+
desired backend where the algorithm's circuits will be executed and be configured with a number of
29+
compile and runtime parameters controlling circuit compilation and execution. Aqua ultimately uses
3030
`Terra <https://www.qiskit.org/terra>`__ for the actual compilation and execution of the quantum
3131
circuits created by the algorithm and its components.
3232
@@ -42,39 +42,111 @@
4242
QuantumAlgorithm
4343
ClassicalAlgorithm
4444
45-
Quantum Algorithms
46-
==================
45+
Algorithms
46+
==========
47+
48+
Aqua contains a variety of quantum algorithms and these have been grouped by logical function such
49+
as minimum eigensolvers and amplitude amplifiers.
50+
51+
Additionally Aqua includes some classical algorithms. While these algorithms do not use a quantum
52+
device or simulator, and rely on purely classical approaches, they may be useful in the near term
53+
to generate reference values while experimenting with, developing and testing quantum algorithms.
54+
55+
The classical algorithms are designed to take the same input data as the quantum algorithms so that
56+
behavior, data validity and output can be evaluated and compared to a quantum result.
57+
58+
Amplitude Amplifiers
59+
++++++++++++++++++++
4760
4861
.. autosummary::
4962
:toctree: ../stubs/
5063
:nosignatures:
5164
52-
VQE
53-
QAOA
54-
VQC
55-
QGAN
56-
EOH
57-
QSVM
5865
Grover
59-
IQPEMinimumEigensolver
60-
QPEMinimumEigensolver
66+
67+
Amplitude Estimators
68+
++++++++++++++++++++
69+
Algorithms that estimate a value.
70+
71+
.. autosummary::
72+
:toctree: ../stubs/
73+
:nosignatures:
74+
6175
AmplitudeEstimation
6276
IterativeAmplitudeEstimation
6377
MaximumLikelihoodAmplitudeEstimation
64-
Simon
65-
DeutschJozsa
78+
79+
Classifiers
80+
+++++++++++
81+
Algorithms for data classification.
82+
83+
.. autosummary::
84+
:toctree: ../stubs/
85+
:nosignatures:
86+
87+
QSVM
88+
VQC
89+
SklearnSVM
90+
91+
Distribution Learners
92+
+++++++++++++++++++++
93+
94+
.. autosummary::
95+
:toctree: ../stubs/
96+
:nosignatures:
97+
98+
QGAN
99+
100+
Education
101+
+++++++++
102+
Algorithms whose main role is educational. These are provided as Aqua algorithms so they can be
103+
run in the same framework but their existence here is principally for educational reasons.
104+
105+
.. autosummary::
106+
:toctree: ../stubs/
107+
:nosignatures:
108+
66109
BernsteinVazirani
67-
HHL
110+
DeutschJozsa
111+
EOH
112+
Simon
113+
114+
Eigensolvers
115+
++++++++++++
116+
Algorithms to find eigenvalues of an operator. For chemistry these can be used to find excited
117+
states of a molecule and qiskit.chemistry has some algorithms that leverage chemistry specific
118+
knowledge to do this in that application domain.
119+
120+
.. autosummary::
121+
:toctree: ../stubs/
122+
:nosignatures:
123+
124+
NumPyEigensolver
125+
126+
Factorizers
127+
+++++++++++
128+
Algorithms to find factors of a number.
129+
130+
.. autosummary::
131+
:toctree: ../stubs/
132+
:nosignatures:
133+
68134
Shor
69135
70-
Classical Algorithms
71-
====================
72-
Aqua includes some classical algorithms. While these algorithms do not use a quantum device or
73-
simulator, and rely on purely classical approaches, they may be useful in the near term to
74-
generate reference values while experimenting with, developing and testing quantum algorithms.
136+
Linear Solvers
137+
++++++++++++++
138+
Algorithms to find solutions for linear equations of equations.
75139
76-
The algorithms are designed to take the same input data as the quantum algorithms so that
77-
behavior, data validity and output can be evaluated and compared to a quantum result.
140+
.. autosummary::
141+
:toctree: ../stubs/
142+
:nosignatures:
143+
144+
HHL
145+
NumPyLSsolver
146+
147+
Minimum Eigensolvers
148+
++++++++++++++++++++
149+
Algorithms that can find the minimum eigenvalue of an operator.
78150
79151
Note: The :class:`ClassicalCPLEX` algorithm requires `IBM ILOG CPLEX Optimization Studio
80152
<https://www.ibm.com/support/knowledgecenter/SSSA5P_12.10.0/COS_KC_home.html>`__
@@ -89,11 +161,19 @@
89161
:toctree: ../stubs/
90162
:nosignatures:
91163
92-
NumPyEigensolver
93-
NumPyMinimumEigensolver
94-
NumPyLSsolver
95-
SklearnSVM
164+
MinimumEigensolver
165+
MinimumEigensolverResult
166+
167+
.. autosummary::
168+
:toctree: ../stubs/
169+
:nosignatures:
170+
96171
ClassicalCPLEX
172+
IQPEMinimumEigensolver
173+
NumPyMinimumEigensolver
174+
QAOA
175+
QPEMinimumEigensolver
176+
VQE
97177
98178
"""
99179

0 commit comments

Comments
 (0)