¿Se explicó la poda de Zilberstein "LP-dominado"?

8

¿Cómo se PRinicia el algoritmo (famoso Zilberstein) (uning) debajo de la LP-dominatefunción: la primera vez que se llama D=∅y el programa lineal se deteriora (es decir, no hay ecuaciones de restricción)?

procedure POINTWISE-DOMINATE(w, U)
...
3. return false
procedure LP-DOMINATE(w, U)
4. solve the following linear program variables: d, b(s) ∀s ∈ S
      maximize d
      subject to the constraints
        b · (w − u) ≥ d, ∀u ∈ U
        sum(b) = 1
5. if d ≥ 0 then return b
6. else return nil
procedure BEST(b, U )
...
12. return w
procedure PR(W)
13. D ← ∅
14. while W = ∅
15.   w ← any element in W
16.   if POINTWISE-DOMINATE(w, D) = true
17.      W ← W − {w}
18.   else
19.      b ← LP-DOMINATE(w, D)
20.      if b = nil then
21.         W ← W − {w}
22.      else
23.         w ← BEST(b, W)
24.         D ← D ∪ {w}
25.         W ← W − {w}
26. return D
forzado
fuente
Consulte un libro sobre algoritmos heurísticos con Python. ¡buena suerte!
Youness Abdus Salam el

Respuestas:

1

Creo que encontré la solución. Cuando en PR(W), D=∅el peso es:

b[i] = 0 for { i | w[i]<max(w) },

y

b[i] = 1.0/max(w) for { i | w[i]==max(w) }.

forzado
fuente