MergeableConflictSetsSeeker
Requirements: OpenJDK 21
comb_cs_seeker.jar
Functionality: identify all possible combinations of given conflict sets that produce a diagnosis with the expected cardinality. Output: txt files in ./comb/ folder. The folder ./comb will be created if it does not exist.
Command: java -jar comb_cs_seeker.jar <path_to_fm_file> <path_to_conflicts_file> <diagnosis_cardinality> <max_num_selected_cs>
<diagnosis_cardinality>: the cardinality of diagnosis that identified combinations should produce. This is also the number of conflict sets that the program selects to merge.
<max_num_selected_cs>: the maximum number of conflict sets the program can select.
Ex: identify all possible combinations of conflict sets that can result in a diagnosis with the cardinality of 1. The maximum number of conflict sets that can be selected is 2. The Linux-2.6.33.3 and the file containing conflict sets are stored in the current folder.
java -jar comb_cs_seeker.jar linux-2.6.33.3.xml allConflictSets-linux.da 1 2
Ex: identify all possible combinations of conflict sets that can result in a diagnosis with the cardinality of 2. The maximum number of conflict sets that can be selected is 2. The Linux-2.6.33.3 and the file containing conflict sets are stored in the current folder.
java -jar comb_cs_seeker.jar linux-2.6.33.3.xml allConflictSets-linux.da 2 2
The structure of the output files is the following:
- Line 1 - the configuration before sorting
- Line 2 - the diagnosis of the configuration before sorting
- Line 3 - the configuration after sorting (according to the order of leaf features)
- Line 4 - the diagnosis of the configuration after sorting
- Form line 5 - list of conflict sets that are selected
The source code can be found at https://github.com/manleviet/MF4ChocoSolver.
combs folder (comb#.zip)
The data is generated by using the program.
The number in the name of each file is the cardinality of the preferred diagnosis.
| diagnosis cardinality | number of coms | total checked combs |
|---|---|---|
| 1 | 338 | |
| 2 | 12.688 | 12.688 |
| 4 | 195.072 | 202.054 |
| 8 | 16.507 | 16.617 |
| 16 | 17.523 | 17.612 |
| 32 | 2.642 | ~20.000 |
| 64 | 0 | ~60.000 |