Clean up BN, Factor
parent
45dec16225
commit
7e912c5cdd
|
@ -57,7 +57,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 8,
|
"execution_count": 13,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"id": "bayesnet_import_code"
|
"id": "bayesnet_import_code"
|
||||||
},
|
},
|
||||||
|
@ -88,7 +88,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 9,
|
"execution_count": 14,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"colab": {
|
"colab": {
|
||||||
"base_uri": "https://localhost:8080/"
|
"base_uri": "https://localhost:8080/"
|
||||||
|
@ -127,7 +127,30 @@
|
||||||
"\t1\n",
|
"\t1\n",
|
||||||
"]\n",
|
"]\n",
|
||||||
" b = [ 0 ]\n",
|
" b = [ 0 ]\n",
|
||||||
" Noise model: unit (1) \n",
|
" Noise model: unit (1) \n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"# Create a simple Gaussian Factor Graph P(x0) P(x1|x0) P(x2|x1)\n",
|
||||||
|
"graph = GaussianFactorGraph()\n",
|
||||||
|
"model = gtsam.noiseModel.Isotropic.Sigma(1, 1.0)\n",
|
||||||
|
"graph.add(X(0), -np.eye(1), np.zeros(1), model)\n",
|
||||||
|
"graph.add(X(0), -np.eye(1), X(1), np.eye(1), np.zeros(1), model)\n",
|
||||||
|
"graph.add(X(1), -np.eye(1), X(2), np.eye(1), np.zeros(1), model)\n",
|
||||||
|
"print(\"Original Factor Graph:\")\n",
|
||||||
|
"graph.print()"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 15,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
"\n",
|
"\n",
|
||||||
"Resulting BayesNet:\n",
|
"Resulting BayesNet:\n",
|
||||||
"\n",
|
"\n",
|
||||||
|
@ -155,15 +178,6 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"source": [
|
"source": [
|
||||||
"# Create a simple Gaussian Factor Graph P(x0) P(x1|x0) P(x2|x1)\n",
|
|
||||||
"graph = GaussianFactorGraph()\n",
|
|
||||||
"model = gtsam.noiseModel.Isotropic.Sigma(1, 1.0)\n",
|
|
||||||
"graph.add(X(0), -np.eye(1), np.zeros(1), model)\n",
|
|
||||||
"graph.add(X(0), -np.eye(1), X(1), np.eye(1), np.zeros(1), model)\n",
|
|
||||||
"graph.add(X(1), -np.eye(1), X(2), np.eye(1), np.zeros(1), model)\n",
|
|
||||||
"print(\"Original Factor Graph:\")\n",
|
|
||||||
"graph.print()\n",
|
|
||||||
"\n",
|
|
||||||
"# Eliminate sequentially using a specific ordering\n",
|
"# Eliminate sequentially using a specific ordering\n",
|
||||||
"ordering = Ordering([X(0), X(1), X(2)])\n",
|
"ordering = Ordering([X(0), X(1), X(2)])\n",
|
||||||
"bayes_net = graph.eliminateSequential(ordering)\n",
|
"bayes_net = graph.eliminateSequential(ordering)\n",
|
||||||
|
|
|
@ -56,7 +56,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 7,
|
"execution_count": 1,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"id": "factor_import_code"
|
"id": "factor_import_code"
|
||||||
},
|
},
|
||||||
|
@ -85,7 +85,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 8,
|
"execution_count": 2,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"colab": {
|
"colab": {
|
||||||
"base_uri": "https://localhost:8080/"
|
"base_uri": "https://localhost:8080/"
|
||||||
|
@ -102,7 +102,10 @@
|
||||||
"Prior factor size: 1\n",
|
"Prior factor size: 1\n",
|
||||||
"Between factor keys: [8646911284551352320, 8646911284551352321] (x0, x1)\n",
|
"Between factor keys: [8646911284551352320, 8646911284551352321] (x0, x1)\n",
|
||||||
"Between factor size: 2\n",
|
"Between factor size: 2\n",
|
||||||
"Is prior factor empty? False\n"
|
"Is prior factor empty? False\n",
|
||||||
|
"Prior Factor: PriorFactor on x0\n",
|
||||||
|
" prior mean: (0, 0, 0)\n",
|
||||||
|
" noise model: diagonal sigmas [0.1; 0.1; 0.05];\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -125,7 +128,7 @@
|
||||||
"print(f\"Is prior factor empty? {prior_factor.empty()}\")\n",
|
"print(f\"Is prior factor empty? {prior_factor.empty()}\")\n",
|
||||||
"\n",
|
"\n",
|
||||||
"# Factors can be printed\n",
|
"# Factors can be printed\n",
|
||||||
"# prior_factor.print(\"Prior Factor: \")"
|
"prior_factor.print(\"Prior Factor: \")"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -141,7 +144,7 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 9,
|
"execution_count": 3,
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"colab": {
|
"colab": {
|
||||||
"base_uri": "https://localhost:8080/"
|
"base_uri": "https://localhost:8080/"
|
||||||
|
|
Loading…
Reference in New Issue