Browse Source

Slight tweak in MDP interface (to match STPG).

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@3399 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Dave Parker 15 years ago
parent
commit
6be5202551
  1. 8
      prism/src/explicit/MDP.java
  2. 12
      prism/src/explicit/MDPSimple.java
  3. 8
      prism/src/explicit/MDPSparse.java

8
prism/src/explicit/MDP.java

@ -37,14 +37,14 @@ import explicit.rewards.*;
public interface MDP extends Model public interface MDP extends Model
{ {
/** /**
* Get the number of transitions from choice {@code i} of state {@code s}.
* Get the action label (if any) for choice {@code i} of state {@code s}.
*/ */
public int getNumTransitions(int s, int i);
public Object getAction(int s, int i);
/** /**
* Get the action label (if any) for choice {@code i} of state {@code s}.
* Get the number of transitions from choice {@code i} of state {@code s}.
*/ */
public Object getAction(int s, int i);
public int getNumTransitions(int s, int i);
/** /**
* Get an iterator over the transitions from choice {@code i} of state {@code s}. * Get an iterator over the transitions from choice {@code i} of state {@code s}.

12
prism/src/explicit/MDPSimple.java

@ -597,12 +597,6 @@ public class MDPSimple extends ModelSimple implements MDP
// Accessors (for MDP) // Accessors (for MDP)
@Override
public int getNumTransitions(int s, int i)
{
return trans.get(s).get(i).size();
}
@Override @Override
public Object getAction(int s, int i) public Object getAction(int s, int i)
{ {
@ -612,6 +606,12 @@ public class MDPSimple extends ModelSimple implements MDP
return list.get(i); return list.get(i);
} }
@Override
public int getNumTransitions(int s, int i)
{
return trans.get(s).get(i).size();
}
@Override @Override
public Iterator<Entry<Integer, Double>> getTransitionsIterator(int s, int i) public Iterator<Entry<Integer, Double>> getTransitionsIterator(int s, int i)
{ {

8
prism/src/explicit/MDPSparse.java

@ -588,15 +588,15 @@ public class MDPSparse extends ModelSparse implements MDP
// Accessors (for MDP) // Accessors (for MDP)
@Override @Override
public int getNumTransitions(int s, int i)
public Object getAction(int s, int i)
{ {
return choiceStarts[rowStarts[s] + i + 1] - choiceStarts[rowStarts[s] + i];
return actions == null ? null : actions[rowStarts[s] + i];
} }
@Override @Override
public Object getAction(int s, int i)
public int getNumTransitions(int s, int i)
{ {
return actions == null ? null : actions[rowStarts[s] + i];
return choiceStarts[rowStarts[s] + i + 1] - choiceStarts[rowStarts[s] + i];
} }
@Override @Override

Loading…
Cancel
Save