Browse Source

Re-enable disabled convergence check in multi-objective value iteration since it can give the wrong answer. Better fix follows.

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@10890 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Dave Parker 10 years ago
parent
commit
619b7d53c5
  1. 4
      prism/src/sparse/PS_NondetMultiObj.cc

4
prism/src/sparse/PS_NondetMultiObj.cc

@ -516,7 +516,7 @@ JNIEXPORT jdoubleArray __jlongpointer JNICALL Java_sparse_PrismSparse_PS_1Nondet
doneBeforeBounded = true;
for (i = 0; i < n; i++) {
for (int it = 0; it < lenProb + lenRew; it++) {
if (it != ignoredWeight && weights[it] > 0 && fabs(psoln2[it][i] - psoln[it][i]) > term_crit_param) {
if (it != ignoredWeight && fabs(psoln2[it][i] - psoln[it][i]) > term_crit_param) {
done = false;
doneBeforeBounded = false;
goto end_switch;
@ -538,7 +538,7 @@ JNIEXPORT jdoubleArray __jlongpointer JNICALL Java_sparse_PrismSparse_PS_1Nondet
doneBeforeBounded = true;
for (i = 0; i < n; i++) {
for (int it = 0; it < lenProb + lenRew; it++) {
if (it != ignoredWeight && weights[it] > 0 && fabs(psoln2[it][i] - psoln[it][i])/fabs(psoln2[it][i]) > term_crit_param) {
if (it != ignoredWeight && fabs(psoln2[it][i] - psoln[it][i])/fabs(psoln2[it][i]) > term_crit_param) {
done = false;
doneBeforeBounded = false;
goto end_switch;

Loading…
Cancel
Save