Learning.roundRobinAlgorithm
This page has the declaration's own card below, then its dependency graph, then a card for each dependency (type dependencies first, then the rest of the transitive closure). For a theorem, the graph and the dependency cards only follow its statement's dependencies (its proof is replaced by sorry, so what it proves doesn't depend on how); for everything else, both the type and the body/value are followed, since their content is part of what later declarations build on.
roundRobinAlgorithm๐
Learning.roundRobinAlgorithm
The Round-Robin algorithm: deterministic algorithm that chooses action n % K at time n.
Learning.roundRobinAlgorithm.{u_1} {๐จ : Type u_1} {m๐จ : MeasurableSpace ๐จ} {K : โ} (hK : 0 < K) : Algorithm (Fin K) ๐จLearning.roundRobinAlgorithm.{u_1} {๐จ : Type u_1} {m๐จ : MeasurableSpace ๐จ} {K : โ} (hK : 0 < K) : Algorithm (Fin K) ๐จ
Code
noncomputable def roundRobinAlgorithm (hK : 0 < K) : Algorithm (Fin K) ๐จ := detAlgorithm (fun n _ โฆ RoundRobin.nextAction hK n) (by fun_prop) โจ0, hKโฉ
Type uses (1)
Body uses (2)
Used by (13)
Actions: Source ยท Open Issue
Dependency graph
Type dependencies (1)
Algorithm๐
Learning.AlgorithmA stochastic, sequential algorithm.
Learning.Algorithm.{u_4, u_5} (๐ : Type u_4) (๐จ : Type u_5) [MeasurableSpace ๐] [MeasurableSpace ๐จ] : Type (max u_4 u_5)Learning.Algorithm.{u_4, u_5} (๐ : Type u_4) (๐จ : Type u_5) [MeasurableSpace ๐] [MeasurableSpace ๐จ] : Type (max u_4 u_5)
Code
structure Algorithm (๐ ๐จ : Type*) [MeasurableSpace ๐] [MeasurableSpace ๐จ] where /-- Policy or sampling rule: distribution of the next action. -/ policy : (n : โ) โ Kernel (Iic n โ ๐ ร ๐จ) ๐ /-- The policy is a Markov kernel. -/ [h_policy : โ n, IsMarkovKernel (policy n)] /-- Distribution of the first action. -/ p0 : Measure ๐ /-- The first action distribution is a probability measure. -/ [hp0 : IsProbabilityMeasure p0]
Used by (216)
Actions: Source ยท Open Issue
All dependencies, transitively (2)
detAlgorithm๐
Learning.detAlgorithm
A deterministic algorithm, which chooses the action given by the function nextAction.
Learning.detAlgorithm.{u_1, u_2} {๐ : Type u_1} {๐จ : Type u_2} {m๐ : MeasurableSpace ๐} {m๐จ : MeasurableSpace ๐จ} (nextA : (n : โ) โ (โฅ(Finset.Iic n) โ ๐ ร ๐จ) โ ๐) (h_next : โ (n : โ), Measurable (nextA n)) (action0 : ๐) : Algorithm ๐ ๐จLearning.detAlgorithm.{u_1, u_2} {๐ : Type u_1} {๐จ : Type u_2} {m๐ : MeasurableSpace ๐} {m๐จ : MeasurableSpace ๐จ} (nextA : (n : โ) โ (โฅ(Finset.Iic n) โ ๐ ร ๐จ) โ ๐) (h_next : โ (n : โ), Measurable (nextA n)) (action0 : ๐) : Algorithm ๐ ๐จ
Code
noncomputable
def detAlgorithm (nextA : (n : โ) โ (Iic n โ ๐ ร ๐จ) โ ๐)
(h_next : โ n, Measurable (nextA n)) (action0 : ๐) :
Algorithm ๐ ๐จ where
policy n := Kernel.deterministic (nextA n) (h_next n)
p0 := Measure.dirac action0Type uses (1)
Used by (15)
Actions: Source ยท Open Issue
nextAction๐
Learning.RoundRobin.nextAction
Action chosen by the Round-Robin algorithm at time n + 1. This is action (n + 1) % K.
Learning.RoundRobin.nextAction {K : โ} (hK : 0 < K) (n : โ) : Fin KLearning.RoundRobin.nextAction {K : โ} (hK : 0 < K) (n : โ) : Fin K
Code
noncomputable def RoundRobin.nextAction (hK : 0 < K) (n : โ) : Fin K := โจ(n + 1) % K, Nat.mod_lt _ hKโฉ
Used by (14)
Actions: Source ยท Open Issue