PBerger
deb9cb1e91
Duplicated the constructor of SparseMarkovAutomatonCslModelChecker to work around a bug in C++ with nested template argument deductions
Former-commit-id: c13a5bdd7d
11 years ago
dehnert
486e99d6ae
Added signal handler for SIGTERM. Introduced delayed update for LP solvers to reduce overhead.
Former-commit-id: 1300d77ae8
11 years ago
dehnert
42708a6d21
Added utility header for all parts that use std::swap.
Former-commit-id: 55a2f56440
11 years ago
dehnert
8ebd924ca6
Further work on refactoring solvers: cleaned LP solver interface a bit and adapted glpk- and Gurobi-based implementations of the interface.
Former-commit-id: 25b7a22bcc
11 years ago
dehnert
ee0026e0e6
Fixed minor bug in Markov automata time-bounded reachability.
Former-commit-id: 6454223cd3
11 years ago
dehnert
35d16a1191
Replaced VectorSet bei boost::container::flat_set, which does essentially the same. Fixed a bug in sparse matrix creation.
Former-commit-id: cb632bcfd4
11 years ago
dehnert
f684ce7799
Removed obsolete constructors of sparse matrix class as the new matrix builder is supposed to be used anyway. Fixed some minor issues.
Former-commit-id: ee8a7cc440
11 years ago
dehnert
81cf0e2b22
Added SparseMatrixBuilder class that actually builds the matrices. A call to build() will then generate the matrix. This eliminates superfluous checks in the matrix that slowed down performance.
Former-commit-id: af5d946fb8
11 years ago
dehnert
cf2b84b281
Further work on iterators for sparse matrix.
Former-commit-id: 8e78262161
11 years ago
David_Korzeniewski
91125c3c6d
Fixed build errors on Windows
Former-commit-id: 6ddc16cd5a
11 years ago
dehnert
a26f63be30
Finished reworking the sparse matrix implementation. Adapted all other classes to the (partially) new API of the matrix.
Former-commit-id: 2c3b5a5bc3
11 years ago
dehnert
84bd5f3b40
Renamed ConstTemplates to constants. Removed all calls to constGetZero, constGetOne and constGetInfinity by the new names. Created performance test for bit vector iteration.
Former-commit-id: 6d90ec961e
11 years ago
dehnert
d5cadc0f4b
Finalized interface of bit vector. Added unit tests for all methods of the bit vector.
Former-commit-id: 6c7834ed20
11 years ago
dehnert
344e1b6dd3
Enabled checking of some untimed properties on Markov automata.
Former-commit-id: e71aa66c62
11 years ago
dehnert
3dab26463d
Introduced precision for digitization-based techniques as a new parameter.
Former-commit-id: e9c57f821b
11 years ago
dehnert
ece4085a61
Another bugfix for matrix creation during LRA computation.
Former-commit-id: c3325b8913
11 years ago
dehnert
fde78ad759
Bugfix for matrix creation in LRA computation.
Former-commit-id: cb4c9cb728
11 years ago
dehnert
b3601782a9
Added Lp Solver class for glpk and added it as an option in CMakeLists.txt.
Former-commit-id: e5c5215a29
11 years ago
dehnert
0a89d65f93
Started refactoring Markov automaton model checker.
Former-commit-id: c4278de4f0
11 years ago
dehnert
18711c01a3
First working version of time-bounded reachability for Markov automata.
Former-commit-id: 6501cbfca4
11 years ago
dehnert
dce43d78e7
Started implementation of time-bounded reachability of Markov automata.
Former-commit-id: 512bb117a6
11 years ago
dehnert
281140c8ff
Sketched algorith outline for time-bounded reachability for Markov automata.
Former-commit-id: 51edb423d3
11 years ago
dehnert
dabfb5e1dd
First working version of LRA computation for Markov automata.
Former-commit-id: d6c6870fd8
11 years ago
dehnert
339b598694
Enabled computation of LRA for individual maximal end components. It remains to compute the overall LRA value using the values for the individual MECs.
Former-commit-id: 47eb90e62c
11 years ago
dehnert
45f137face
Prepared stub for Long-Run Average computation for Markov automata.
Former-commit-id: fef601a81d
11 years ago
dehnert
a229b9b322
Refactored MILP-based command generator to use a general LpSolver interface, so other LP solvers may be used when needed.
Former-commit-id: 203ad6a499
11 years ago
dehnert
101c39f365
Added correct detection of states that possess infinite exptected time to reach a given goal set.
Former-commit-id: 4bc605d89d
11 years ago
dehnert
f1a9b1e602
First version of minimum expected time for Markov automata.
Former-commit-id: 6053be896e
11 years ago
masawei
170306e46d
Moved SparseMatrix transposition function from AbstractModel (named: getBackwardsTransitions) to SparseMatrix (named: transpose) where it belongs.
- Fixed one problem marked FIXME in the transpose function. The need for a "sentinel" element was created by an off by one in the prior loop.
- Changed all occurences of SparseMatrix<bool> to SparseMatrix<T>. Now the only two types for which SparseMatrix is instantiated are double and int.
- Compiles again.
|-> Compile time seems to be roughly the same for clean; make all. For incremental builds I haven't tested yet.
Former-commit-id: 6d829e0903
11 years ago
dehnert
360b506afe
Sparse MDP model checker now correctly computes (memoryless) schedulers for Until and Reachability Reward formulas.
Former-commit-id: c756093fd4
11 years ago
masawei
b55932b212
Adapted subsystem generation to the use of the new subsystem checking method using bit vectors.
Compiles now.
Next up: Setting up the control flow to make it actually generate a critical subsystem.
Former-commit-id: a05fd42071
11 years ago
masawei
4dca7abd3f
Implementaed methods for checking until formula by providing the left and right states instead of the whole formula (same with bounded Until) in the SparseDtmcPrctlModelChecker, analouge to the SparseMdpPrctlModelChecker.
Reverted unnecessary changes to the AbstractModel checker.
Next on the list: Adapting the subsystem generation routine to the new method of providing the subsystem to the model checker.
Former-commit-id: 6c90c064a2
11 years ago
masawei
0cb390b186
More integration work.
Ran into problem with the AbstractModelChecker being declared const for the model check.
I use it for the subsystem generation and tell it what the current subsystem is. so I have two options:
1. Carry the subsystem as argument through all checking functions of the complete checking tree
2. Store the subsystem in the checker and use it in checkAp to induce the correct result back through the tree.
In the original implementation I used option 2.
But that does only work if it is not constant.
Former-commit-id: 8a833cc05e
11 years ago
masawei
4d161e5e8e
Began with integration of crit. subsystem generation into master.
Still some compile errors to fix.
Former-commit-id: 30dfdd2479
11 years ago
dehnert
e3234b54f3
Step towards minimal command generator using MaxSAT and model checking.
Former-commit-id: 4237447c44
11 years ago
dehnert
a99bdf1b17
Switched to more elegant solution to query initial states of a model.
Former-commit-id: 9a5c90c5d5
11 years ago
dehnert
fdfb8ecc97
Minor fixes.
Former-commit-id: f2298d312a
11 years ago
dehnert
f39fb24f65
Removed pointers from Model Checker Interface (and callback methods in formulas). From now on, the results are returned in form of an object. Because of the existing move semantics for the types in question, this does not come at a performance penalty.
Former-commit-id: 5befdebd92
11 years ago
dehnert
d8e85ec071
Removed guessing of initial scheduler as this was just an idea and not meant to be in master at this point.
Former-commit-id: 1b74c9936d
11 years ago
PBerger
e69c9f1962
Added all options from StoRM
Rewrote all calls to the Settings instance with the new Syntax
Implemented new ArgumentValidators.h
Former-commit-id: b4ab63f8f2
11 years ago
dehnert
973e51bacb
Beautified the code a bit.
Former-commit-id: d4b4a738c1
12 years ago
dehnert
b36b460a4e
Added some comments to scheduler guessing.
Former-commit-id: 6a256210a3
12 years ago
dehnert
d168b1848e
Made GMRES and LSCG solution methods work for linear equation solving. Some further work on scheduler guessing.
Former-commit-id: f6b538394a
12 years ago
dehnert
15542d46da
Changes:
* included small consensus example
* made backward-transition generation more beautiful and versatile
* included Dijkstra search for most probable paths
* included first rough scheduler-guessing (there's room for improvement though)
Former-commit-id: db795fa1bf
12 years ago
dehnert
36543de851
Started trying to implement a more clean iterator solution for sparse matrix.
Former-commit-id: 2173972b82
12 years ago
dehnert
36f1306b4a
Now schedulers get computed correctly.
Former-commit-id: 3b986ffbf8
12 years ago
dehnert
7e74bfbff2
Fixed bug in creation of scheduler, but there is still one really obvious one. Added small MDP example.
Former-commit-id: e2b5aba6d5
12 years ago
dehnert
c3cc58d43b
Revert to old starting point of value iteration. Tests run fine now.
Former-commit-id: db1b906b08
12 years ago
dehnert
7095f8e67f
Fixed a lot of issues introduced by refactoring.
Former-commit-id: c3a5177008
12 years ago
dehnert
abf6f85b63
Intermediate commit to switch workplace.
Former-commit-id: 11932e19d7
12 years ago