You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`IterativeAlgorithmsInterface.jl` is a Julia package to provide a common interface to run iterative tasks. **Algorithm** here refers to an iterative sequence of commands, that are run until a certain stopping criterion is met.
3
+
`AlgorithmsInterface.jl` is a Julia package to provide a common interface to run iterative tasks.
4
+
**Algorithm** here refers to an iterative sequence of commands, that are run until a certain stopping criterion is met.
@@ -13,20 +24,10 @@ Finally, a common interface also allows to easily combine existing algorithms, h
13
24
14
25
# Main features
15
26
16
-
We consider solving _Tasks_, which consist of
17
-
18
-
* An `AbstractProblem` to solve, which contains all information that is static to the problem and usually does not change during the iterations, this might for example be a cost function and its gradient in an optimisation problem.
19
-
* An `AbstractAlgorithmState` that both specifies which algorithm to use to _solve_ the problem, but also stores all parameters that an algorithm needs as well as everything the algorithm needs to store between two iterations.
20
-
21
-
This generic data structures are accompanied by the methods
22
-
23
-
*`step!(problem::Problem, state::AlgorithmState, k)` to perform the `k`th iteration of the algorithm.
24
-
*`solve!(problem::Problem, state::AlgorithmState)` to solve a problem with a given algorithm, which is identified by the `AlgorithmState`.
25
-
*`stop(problem::Problem, state::AlgorithmState)` to check whether the algorithm should stop.
26
-
27
-
where the first is the main one to implement for a new algorithm.
27
+
See the [intial discussion](https://github.com/JuliaManifolds/AlgorithmsInterface.jl/discussions/1)
28
+
as well as the [overview on existing things](https://github.com/JuliaManifolds/AlgorithmsInterface.jl/discussions/2)
0 commit comments