Clean up BN, Factor

release/4.3a0
p-zach 2025-04-15 14:01:36 -04:00
parent 45dec16225
commit 7e912c5cdd
2 changed files with 34 additions and 17 deletions

View File

@ -57,7 +57,7 @@
},
{
"cell_type": "code",
"execution_count": 8,
"execution_count": 13,
"metadata": {
"id": "bayesnet_import_code"
},
@ -88,7 +88,7 @@
},
{
"cell_type": "code",
"execution_count": 9,
"execution_count": 14,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@ -127,7 +127,30 @@
"\t1\n",
"]\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",
"Resulting BayesNet:\n",
"\n",
@ -155,15 +178,6 @@
}
],
"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",
"ordering = Ordering([X(0), X(1), X(2)])\n",
"bayes_net = graph.eliminateSequential(ordering)\n",

View File

@ -56,7 +56,7 @@
},
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 1,
"metadata": {
"id": "factor_import_code"
},
@ -85,7 +85,7 @@
},
{
"cell_type": "code",
"execution_count": 8,
"execution_count": 2,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@ -102,7 +102,10 @@
"Prior factor size: 1\n",
"Between factor keys: [8646911284551352320, 8646911284551352321] (x0, x1)\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",
"\n",
"# Factors can be printed\n",
"# prior_factor.print(\"Prior Factor: \")"
"prior_factor.print(\"Prior Factor: \")"
]
},
{
@ -141,7 +144,7 @@
},
{
"cell_type": "code",
"execution_count": 9,
"execution_count": 3,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"