VariableArray with mixed observed and random entries
-
segunda-feira, 23 de janeiro de 2012 10:08
Hi,
Is it possible to set a subset of entries of a VariableArray to observed values, and keep the rest random?
I tried a few ways (Subarrays and switching between an entirely observed and entirely random VariableArray), but none worked. I cannot use a standard C# array instead.
Nevena
Todas as Respostas
-
segunda-feira, 23 de janeiro de 2012 17:01
Where 'i' is a Range over your observation array and 'indices' is an array of the entries to observe:
Variable.ConstrainEqual(array[indices[i]], obs[i]);
- Marcado como Resposta Nevena Lazic terça-feira, 24 de janeiro de 2012 17:55
-
terça-feira, 24 de janeiro de 2012 09:20
Thanks. I tried that as well, and compilation failed. The problem might be that I'm indexing the CPT of X ("array") with X:
using (Variable.ForEach(D))
using (Variable.ForEach(N))
using (Variable.Switch(G[D]))
using (Variable.Switch(X[G[D]][N]))
X[D][N] = Variable.Discrete(cptX [D] [X[G[D]][N]] );
The error is: Could not find a match for X[index2][N] in GateBlock.