check for invalid Bayes nets

release/4.3a0
Varun Agrawal 2025-02-14 10:42:24 -05:00
parent fefc6c314b
commit 2b8df45698
1 changed files with 11 additions and 0 deletions

View File

@ -334,6 +334,17 @@ class Experiment:
for idx, assignment in enumerate(all_assignments):
result = gtsam.Values()
gbn = self.smoother_.hybridBayesNet().choose(assignment)
# Check to see if the GBN has any nullptrs, if it does it is null overall
is_invalid_gbn = False
for i in range(gbn.size()):
if gbn.at(i) is None:
is_invalid_gbn = True
break
if is_invalid_gbn:
continue
delta = self.smoother_.hybridBayesNet().optimize(assignment)
result.insert_or_assign(self.initial_.retract(delta))