C++ code for generating sets of constraints characterizing many kinds of imprecise probabilities
This repository contains two directories, one with the C++ code to generate constraints sets, the other with files resulting from using the code with many different parameters, and further files derived from these.
Usage Compilation gives the constraints program, which calculates constraints for lower probabilities for a given size of the possibility space and for given properties. Run the program without arguments to get more information.
Compilation In the directory containing this file and the source code, enter the following on the command line:
g++ -O3 -o constraints -lgsl -lgslcblas constraints.cpp constraints-classes.cpp constraints-text.cpp basic-constraints.cpp k-monotonicity-constraints.cpp asl-constraints.cpp coherence-constraints.cpp necessity-constraints.cpp print-constraints.cpp
For this command to work, you need to have the GNU compiler collection gcc, the GNU Scientific Library gsl and a BLAS library installed.
The compiler can be readily changed (the code is ANSI C++/C), but if you want to change the scientific library (which is not available for non-cygwin Windows-systems), some code changes have to be made in
Licensing Because I use the GPL'ed gsl library, this code is also GPL'ed. See https://www.gnu.org/software/gsl/ for more information.
Explanation This package containts files with:
- constraints for lower probabilities (extension
.ine), generated by the constraints program;
- the above, but with redundant constraints removed (extension
-nr.ine), generated from the above by the redund program;
- extreme lower probabilities (extension
.ext), generated from the above (or above above) with the lcdd_gmp program from the cdd bundle.
- adjacency lists (extension
.adj), generated from the above with the adjacency_gmp program from the cdd bundle.
The first part of the filename indicated the cardinality of the possibility space, the second part the properties, the third part is the extension.
I suggest looking into the
2-lpow* files (first
*.ext) to understand the format of the files.
They describe the calculation of the additive (l), positive (p), one-normed (o) (and permutation invariant (w)) lower probabilities.
*.extfiles indicate that these cases are very computationally intensive to calculate (using the cdd bundle for vertex enumeration), which is why they were not included.
- Because these results were obtaining using an older version of the constraints program, the one- (o) and zero-normed (z) and positivity (p) properties are not mentioned in the .ine files, although the corresponding constraints are included if these letters are in the file name.
- Only a few
.adjfiles are given, because most are not really interesting (at first sight?).
Licensing These files contain the music of the polytopes, so no license can be given or is needed for their use.
References & citing
This code has been used for my research. This research has been presented:
at a conference
Quaeghebeur, Erik, and De Cooman, Gert. 2006. “Extreme Lower Probabilities.” Ed. A. Bugarin, M. A. Gil, P. Grzegorzewski, O. Hyrniewicz, J. Lawry, S. Li, and E. Miranda. Soft Methods for Integrated Uncertainty Modelling: 211–221. doi:10.1007/3-540-34777-1_26, hdl:1854/6276.
in a journal paper
in my PhD thesis:
Quaeghebeur, Erik. 2009. “Learning from Samples Using Coherent Lower Previsions”. Ghent, Belgium: Ghent University. Faculty of Engineering. hdl:1854/LU-495650.
Please cite the journal paper if you use any material in this repository.