logoMH Builder MOCA I

1. How to install MOCA-I

As MOCA-I software is embedded in the Gitlab project "mh-builder.git", the installation process is identical to that of the mh-builder framework :

1.1. Requirements

The framework has been developed in C++ language. The three following elements are required to download and then compile MH-Builder (including MOCA-I):

  • C++ compiler (version 20 or higher)

  • cmake (version 3.10 or higher)

  • git

Under Windows, the use of Cygwin is available.

1.1.1. Additional optional elements

  • Doxygen in order to obtain a detailed documentation of the source code. During the documentation generation, doxygen uses different graphical tools to provide visualization tools (such as UML-like diagrams): dia, plantuml, dot tool from graphviz

  • Google test Framework, note that the compilation process automatically download this framework.

  • matplotlib Python library for creating interactive visualizations. Python (version 3 or higher) is also required

1.2. Installing MH-Builder (and MOCA-I)

Download the last version by git clone :

git clone https://gitlab.cristal.univ-lille.fr/orkad-public/mh-builder.git

By default, the generation of the documentation is activated but this requires the Doxygen tool, comment on section 4 of mh-builder/CMakeLists.txt file if this tool is not installed.

Then, compile the code with the following commands:

cd mh-builder
mkdir build
cd build
cmake ..
make

All executables are stored in build\bin

2. Using MOCA-I

MOCA-I is a command line tool.You pass it input 3 specification files and optional parameters. Different datas are displayed on the console resulting from the process.

using mocai

2.1. Parameters

Below is the list of available options. There is a default value used when the option is not specified.

Usage: build/bin/MOCA-I [OPTIONS]
Available command line options are:
 -h, --help				show this help message and exit
 --instance_desc=<FILE>			set description file of the dataset
 --instance_training=<FILE>			set file dataset for training phase
 --instance_test=<FILE>			set file dataset for test phase
 --seed=<NUMBER>			set a seed according to given NUMBER (mersenne twister)
        (default: 1)
 --select_strategy=<CHOICE>		set a select strategy
        Available strategies are: all (default), one, newest, oldest, or a positive number
 --explorer_strategy=<CHOICE>		set a explorer strategy
        Available strategies are: all (default), all-imp, first, imp, imp-ndom and ndom
 --explor_size=<NUMBER>			set exploration size for explorer (imp, imp-ndom and ndom)
        (default: 1)
 --perturbation_strategy=<CHOICE>	set a perturbation strategy
        Available strategies are: restart (default), kick, kick-all
 --perturbation_strength=<NUMBER>	set perturbation strength for neighborhood
        (default: 3)
 --kick_size=<NUMBER>			set kick size for for perturbation strategy : kick
        (default: 3)
 --init_size=<NUMBER>			set init size for a population ruleset
        (default: 100)
 --archive_size=<NUMBER>		set size for the archive
        (default: 500), -1 if unbounded
 --max_rules=<NUMBER>			set max rules
        (default: 10)
 --objectives=<NUMBER>		set objectives for evaluation ruleset
        1: fmeasure, 2: gmean, 3: sensitivity and confidence,
        4: sensitivity,confidence and nb terms (default),
        5: sensitivity, confidence, nb terms and specificity, 6: all
 --required_time=<NUMBER>		set time stop criterion in milliseconds
        (default: -1 : no stop criterion)
 --moparamils=<BOOLEAN>			set display mode for multi objectives
        (default: false)
 --verbose=<BOOLEAN>			set mode verbose
        (default: true)

2.2. Syntax of input files

Input files are text ones that must respect the syntax described below. files that contains individuals for training phase and test phase share the same syntax.

you will find in instances/rulemining such files for different datasets.

2.2.1. Syntax for dataset description

The textual file for dataset description must respect the syntax described by the following grammar.

<Description-file>  ::= <Attribute-list> <Prediction-line>                              (1)
<Attribute-list>    ::= <Attribute-line> <Attribute-list>
                    | <Attribute-line>
<Attribute-line>    ::= '@attribute' <Spc> <name> <Spc> <Attr-data> '\n'                (2)
<Attr-data>         ::= <Orderable-option> '{' <Attr-value-list> '}'                    (3)
<Orderable-Option>  ::= '<'
                    | ε
<Attr-value-list>   ::= <value> ',' <Attr-value-list>
                    | <value>
<Prediction-line>   ::= '@prediction' <IgnoreOption> <Spc>                              (4)
                         <name> <Spc> <Operator> <Spc> <value> '\n'                     (5)
<IgnoreOption>      ::= '@ignore{' <Name-list> '}'
                    |  ε
<Operator>          ::= '='
                    | '<'
                    | '>'
<Name-list>         ::= <name> ',' <Name-list>
                    | <name>
<spc>               ::= ' ' <Spc>
                    | ' '
1 a description file contains several attribute description lines followed by a prediction line
2 the space character(s) delimit(s) the fields required to describe the attribute identified by a name.
3 the presence of the '<' character indicates that the attribute values follow an order
4 the ignore option allows to ignore some attributes during analysis.
5 the name field designates an attribute name previously defined and the value field corresponds to an available value of this attribute.

you will find in instances/rulemining such files for different datasets.

For instance, a description file for the tic-tac-toe game:

instances/rulemining/tictactoe/tictactoe.desc
@attribute topLeft {x,o,b}
@attribute topMiddle {x,o,b}
@attribute topRight {x,o,b}
@attribute middleLeft {x,o,b}
@attribute middleMiddle {o,b,x}
@attribute middleRight {o,b,x}
@attribute bottomLeft {x,o,b}
@attribute bottomMiddle {o,x,b}
@attribute bottomRight {o,x,b}
@attribute endOfGame {positive,negative}
@prediction endOfGame = positive

Another example with orderable values:

instances/rulemining/ecoli1d/ecoli1d.desc
@attribute mcg <{'(-inf-0.089]','(0.089-0.178]','(0.178-0.267]','(0.267-0.356]','(0.356-0.445]','(0.445-0.534]','(0.534-0.623]','(0.623-0.712]','(0.712-inf)'}
@attribute gvh <{'(-inf-0.244]','(0.244-0.328]','(0.328-0.412]','(0.412-0.496]','(0.496-0.58]','(0.58-0.664]','(0.664-0.748]','(0.748-inf)'}
@attribute lip <{'(-inf-0.532]','(0.532-inf)'}
@attribute chg <{'(-inf-0.55]','(0.55-inf)'}
@attribute aac <{'(-inf-0.088]','(0.088-0.176]','(0.176-0.264]','(0.264-0.352]','(0.352-0.44]','(0.44-0.528]','(0.528-0.616]','(0.616-inf)'}
@attribute alm1 <{'(-inf-0.127]','(0.127-0.224]','(0.224-0.321]','(0.321-0.418]','(0.418-0.515]','(0.515-0.612]','(0.612-0.709]','(0.709-0.806]','(0.806-0.903]','(0.903-inf)'}
@attribute alm2 <{'(-inf-0.099]','(0.099-0.198]','(0.198-0.297]','(0.297-0.396]','(0.396-0.495]','(0.495-0.594]','(0.594-0.693]','(0.693-0.792]','(0.792-inf)'}
@attribute Ecoli1Class {positive,negative}
@prediction Ecoli1Class = positive

2.2.2. Syntax for individual description

The textual file for the description of indivuduals must respect the syntax described by the following grammar.

<Individual-file>   ::= <Information-line> <Individual-list>                (1)
<Information-line>  ::= 'Nb Individuals: ' <int> <Spc> <Mode-Option> '\n'
<Mode-Option>       ::= 'mode:' <Mode-value>                                (2)
                    | ε
<Mode-value>        ::= 'direct_value'
                    | 'indexed_value'
<Individual-list>   ::= <Individual-line> <Individual-list>
                    | <Individual-line>
<Individual-line>   ::= '{' <Ind-value-list> '}' '\n'
<Ind-value-list>    ::= <Ind-value> ',' <Ind-value-list>
                    |   <Ind-value>
<Ind-value>         ::= <attribute-number> <Spc> <attribute-value>          (3)
<spc>               ::= ' ' <Spc>
                    | ' '
1 the list of individuals is preceded by a line giving information on the number of individuals and, if applicable, on the structure chosen to describe them
2 if the mode option is not defined, the default mode is 'direct_value'. See the next point to understand these two modes (the coding of <attribute-value> differs).
3 <attribute_number> designates the ith attribute described in the description file (numbering starts at 0). <attribute-value> corresponds either to the value of this attribute ("direct_value" mode), or to the ith value described in the attribute description file ("indexed_value" mode, numbering starts at 0).

For instance, an individual file for the tic-tac-toe game. The mode is "direct_mode" (default)

_instances/rulemining/tictactoe/tictactoe.individuals.1.test
Nb Individuals: 192
{0 x,1 x,2 x,3 x,4 o,5 o,6 x,7 o,8 o,9 positive}
{0 x,1 x,2 x,3 x,4 o,5 b,6 o,7 o,8 b,9 positive}
{0 x,1 x,2 x,3 x,4 b,5 o,6 o,7 o,8 b,9 positive}
{0 x,1 x,2 x,3 x,4 b,5 o,6 o,7 b,8 o,9 positive}
{0 x,1 x,2 x,3 o,4 x,5 o,6 b,7 b,8 o,9 positive}
{0 x,1 x,2 x,3 o,4 o,5 x,6 o,7 o,8 x,9 positive}
{0 x,1 x,2 x,3 o,4 o,5 b,6 b,7 o,8 x,9 positive}
{0 x,1 x,2 x,3 o,4 b,5 x,6 o,7 o,8 b,9 positive}
{0 x,1 x,2 x,3 o,4 b,5 o,6 b,7 o,8 x,9 positive}
{0 x,1 x,2 x,3 o,4 b,5 b,6 b,7 o,8 b,9 positive}
{0 x,1 x,2 x,3 b,4 o,5 o,6 b,7 x,8 o,9 positive}
{0 x,1 x,2 o,3 x,4 b,5 o,6 x,7 o,8 b,9 positive}
{0 x,1 x,2 o,3 o,4 x,5 x,6 o,7 o,8 x,9 positive}
{0 x,1 x,2 o,3 o,4 x,5 o,6 x,7 o,8 x,9 positive}
{0 x,1 x,2 b,3 o,4 x,5 o,6 o,7 b,8 x,9 positive}
{0 x,1 o,2 x,3 o,4 x,5 x,6 x,7 o,8 o,9 positive}
{0 x,1 o,2 x,3 o,4 x,5 b,6 x,7 o,8 b,9 positive}
{0 x,1 o,2 x,3 o,4 b,5 x,6 o,7 b,8 x,9 positive}
{0 x,1 o,2 x,3 o,4 b,5 x,6 b,7 o,8 x,9 positive}
{0 x,1 o,2 x,3 b,4 x,5 b,6 o,7 o,8 x,9 positive}
{0 x,1 o,2 o,3 x,4 o,5 x,6 x,7 x,8 o,9 positive}
{0 x,1 o,2 o,3 x,4 o,5 b,6 x,7 b,8 x,9 positive}
{0 x,1 o,2 o,3 x,4 b,5 x,6 x,7 o,8 b,9 positive}
{0 x,1 o,2 o,3 x,4 b,5 b,6 x,7 x,8 o,9 positive}
{0 x,1 o,2 o,3 b,4 x,5 b,6 x,7 o,8 x,9 positive}
{0 x,1 o,2 o,3 b,4 b,5 o,6 x,7 x,8 x,9 positive}
{0 x,1 o,2 b,3 x,4 x,5 o,6 x,7 b,8 o,9 positive}
{0 x,1 o,2 b,3 x,4 x,5 b,6 o,7 o,8 x,9 positive}
{0 x,1 o,2 b,3 x,4 b,5 x,6 x,7 o,8 o,9 positive}
{0 x,1 o,2 b,3 x,4 b,5 b,6 x,7 b,8 o,9 positive}
{0 x,1 o,2 b,3 o,4 b,5 o,6 x,7 x,8 x,9 positive}
{0 x,1 b,2 x,3 x,4 o,5 o,6 x,7 o,8 b,9 positive}
{0 x,1 b,2 x,3 o,4 x,5 o,6 b,7 o,8 x,9 positive}
{0 x,1 b,2 o,3 x,4 x,5 o,6 b,7 o,8 x,9 positive}
{0 x,1 b,2 o,3 x,4 o,5 x,6 x,7 o,8 b,9 positive}
{0 x,1 b,2 o,3 x,4 o,5 o,6 x,7 b,8 x,9 positive}
{0 x,1 b,2 o,3 o,4 x,5 x,6 b,7 o,8 x,9 positive}
{0 x,1 b,2 o,3 o,4 o,5 b,6 x,7 x,8 x,9 positive}
{0 x,1 b,2 o,3 b,4 x,5 b,6 o,7 b,8 x,9 positive}
{0 x,1 b,2 b,3 x,4 o,5 o,6 x,7 x,8 o,9 positive}
{0 x,1 b,2 b,3 x,4 o,5 o,6 x,7 b,8 b,9 positive}
{0 x,1 b,2 b,3 x,4 b,5 b,6 x,7 o,8 o,9 positive}
{0 o,1 x,2 x,3 o,4 x,5 b,6 b,7 x,8 o,9 positive}
{0 o,1 x,2 x,3 b,4 x,5 o,6 o,7 x,8 b,9 positive}
{0 o,1 x,2 o,3 x,4 x,5 x,6 x,7 o,8 o,9 positive}
{0 o,1 x,2 o,3 x,4 x,5 x,6 b,7 o,8 b,9 positive}
{0 o,1 x,2 o,3 o,4 x,5 x,6 x,7 x,8 o,9 positive}
{0 o,1 x,2 o,3 o,4 x,5 x,6 b,7 x,8 b,9 positive}
{0 o,1 x,2 o,3 o,4 x,5 b,6 x,7 x,8 b,9 positive}
{0 o,1 x,2 o,3 o,4 x,5 b,6 b,7 x,8 x,9 positive}
{0 o,1 x,2 o,3 b,4 x,5 x,6 o,7 x,8 b,9 positive}
{0 o,1 x,2 o,3 b,4 x,5 x,6 b,7 x,8 o,9 positive}
{0 o,1 x,2 b,3 x,4 x,5 x,6 o,7 o,8 b,9 positive}
{0 o,1 x,2 b,3 x,4 x,5 x,6 o,7 b,8 o,9 positive}
{0 o,1 x,2 b,3 x,4 x,5 o,6 b,7 x,8 o,9 positive}
{0 o,1 o,2 x,3 x,4 x,5 x,6 b,7 b,8 o,9 positive}
{0 o,1 o,2 x,3 x,4 o,5 x,6 o,7 x,8 x,9 positive}
{0 o,1 o,2 x,3 x,4 o,5 x,6 b,7 b,8 x,9 positive}
{0 o,1 o,2 x,3 o,4 x,5 x,6 b,7 b,8 x,9 positive}
{0 o,1 o,2 x,3 o,4 x,5 o,6 x,7 x,8 x,9 positive}
{0 o,1 o,2 x,3 o,4 b,5 x,6 x,7 b,8 x,9 positive}
{0 o,1 o,2 x,3 o,4 b,5 b,6 x,7 x,8 x,9 positive}
{0 o,1 o,2 x,3 b,4 x,5 x,6 o,7 b,8 x,9 positive}
{0 o,1 o,2 x,3 b,4 x,5 x,6 b,7 o,8 x,9 positive}
{0 o,1 o,2 x,3 b,4 x,5 b,6 x,7 x,8 o,9 positive}
{0 o,1 o,2 x,3 b,4 x,5 b,6 x,7 o,8 x,9 positive}
{0 o,1 o,2 b,3 x,4 x,5 x,6 b,7 b,8 b,9 positive}
{0 o,1 b,2 x,3 x,4 x,5 x,6 o,7 o,8 b,9 positive}
{0 o,1 b,2 x,3 x,4 x,5 x,6 b,7 o,8 o,9 positive}
{0 o,1 b,2 x,3 o,4 x,5 x,6 b,7 o,8 x,9 positive}
{0 o,1 b,2 x,3 o,4 x,5 o,6 x,7 x,8 b,9 positive}
{0 o,1 b,2 x,3 o,4 o,5 b,6 x,7 x,8 x,9 positive}
{0 o,1 b,2 x,3 o,4 b,5 x,6 x,7 o,8 x,9 positive}
{0 o,1 b,2 x,3 o,4 b,5 x,6 b,7 b,8 x,9 positive}
{0 o,1 b,2 x,3 b,4 x,5 b,6 x,7 b,8 o,9 positive}
{0 o,1 b,2 x,3 b,4 b,5 x,6 o,7 b,8 x,9 positive}
{0 o,1 b,2 o,3 x,4 x,5 x,6 o,7 x,8 b,9 positive}
{0 o,1 b,2 o,3 x,4 o,5 b,6 x,7 x,8 x,9 positive}
{0 o,1 b,2 o,3 o,4 x,5 b,6 x,7 x,8 x,9 positive}
{0 o,1 b,2 b,3 x,4 o,5 o,6 x,7 x,8 x,9 positive}
{0 o,1 b,2 b,3 o,4 o,5 x,6 x,7 x,8 x,9 positive}
{0 b,1 x,2 x,3 o,4 x,5 o,6 x,7 b,8 o,9 positive}
{0 b,1 x,2 x,3 o,4 x,5 b,6 x,7 o,8 o,9 positive}
{0 b,1 x,2 x,3 o,4 x,5 b,6 o,7 x,8 o,9 positive}
{0 b,1 x,2 x,3 o,4 b,5 x,6 o,7 o,8 x,9 positive}
{0 b,1 x,2 x,3 b,4 x,5 o,6 o,7 x,8 o,9 positive}
{0 b,1 x,2 x,3 b,4 o,5 x,6 o,7 o,8 x,9 positive}
{0 b,1 x,2 o,3 x,4 x,5 x,6 b,7 o,8 o,9 positive}
{0 b,1 x,2 o,3 b,4 o,5 o,6 x,7 x,8 x,9 positive}
{0 b,1 x,2 b,3 b,4 x,5 o,6 o,7 x,8 b,9 positive}
{0 b,1 o,2 x,3 x,4 x,5 x,6 b,7 o,8 o,9 positive}
{0 b,1 o,2 x,3 x,4 x,5 b,6 x,7 o,8 o,9 positive}
{0 b,1 o,2 x,3 o,4 x,5 o,6 x,7 x,8 b,9 positive}
{0 b,1 o,2 x,3 o,4 x,5 o,6 x,7 b,8 x,9 positive}
{0 b,1 o,2 x,3 o,4 x,5 b,6 x,7 o,8 x,9 positive}
{0 b,1 o,2 x,3 o,4 o,5 x,6 b,7 x,8 x,9 positive}
{0 b,1 o,2 x,3 o,4 o,5 b,6 x,7 x,8 x,9 positive}
{0 b,1 o,2 x,3 o,4 b,5 o,6 x,7 x,8 x,9 positive}
{0 b,1 o,2 x,3 b,4 x,5 x,6 x,7 o,8 o,9 positive}
{0 b,1 o,2 x,3 b,4 x,5 o,6 x,7 x,8 o,9 positive}
{0 b,1 o,2 x,3 b,4 o,5 x,6 o,7 x,8 x,9 positive}
{0 b,1 o,2 o,3 x,4 x,5 x,6 x,7 o,8 b,9 positive}
{0 b,1 o,2 o,3 x,4 x,5 x,6 x,7 b,8 o,9 positive}
{0 b,1 o,2 o,3 b,4 x,5 o,6 x,7 x,8 x,9 positive}
{0 b,1 o,2 b,3 x,4 x,5 x,6 o,7 x,8 o,9 positive}
{0 b,1 o,2 b,3 x,4 x,5 x,6 o,7 b,8 b,9 positive}
{0 b,1 o,2 b,3 o,4 x,5 o,6 x,7 x,8 x,9 positive}
{0 b,1 b,2 x,3 o,4 x,5 o,6 x,7 x,8 o,9 positive}
{0 b,1 b,2 x,3 o,4 x,5 o,6 x,7 o,8 x,9 positive}
{0 b,1 b,2 x,3 o,4 x,5 b,6 x,7 o,8 b,9 positive}
{0 b,1 b,2 x,3 o,4 o,5 x,6 o,7 x,8 x,9 positive}
{0 b,1 b,2 o,3 o,4 o,5 x,6 x,7 x,8 x,9 positive}
{0 b,1 b,2 o,3 o,4 b,5 b,6 x,7 x,8 x,9 positive}
{0 b,1 b,2 b,3 x,4 x,5 x,6 o,7 b,8 o,9 positive}
{0 b,1 b,2 b,3 x,4 x,5 x,6 b,7 o,8 o,9 positive}
{0 b,1 b,2 b,3 b,4 o,5 o,6 x,7 x,8 x,9 positive}
{0 x,1 x,2 o,3 x,4 o,5 x,6 o,7 b,8 o,9 negative}
{0 x,1 x,2 o,3 x,4 b,5 o,6 b,7 b,8 o,9 negative}
{0 x,1 x,2 o,3 b,4 x,5 x,6 o,7 o,8 o,9 negative}
{0 x,1 x,2 o,3 b,4 o,5 o,6 x,7 x,8 o,9 negative}
{0 x,1 x,2 o,3 b,4 b,5 o,6 b,7 x,8 o,9 negative}
{0 x,1 x,2 b,3 o,4 x,5 x,6 o,7 o,8 o,9 negative}
{0 x,1 x,2 b,3 o,4 o,5 o,6 x,7 o,8 x,9 negative}
{0 x,1 o,2 x,3 x,4 x,5 b,6 o,7 o,8 o,9 negative}
{0 x,1 o,2 x,3 x,4 o,5 b,6 b,7 o,8 b,9 negative}
{0 x,1 o,2 x,3 b,4 o,5 o,6 x,7 o,8 x,9 negative}
{0 x,1 o,2 x,3 b,4 o,5 b,6 x,7 o,8 b,9 negative}
{0 x,1 o,2 x,3 b,4 o,5 b,6 b,7 o,8 x,9 negative}
{0 x,1 o,2 o,3 x,4 o,5 b,6 o,7 x,8 x,9 negative}
{0 x,1 o,2 o,3 b,4 x,5 o,6 x,7 x,8 o,9 negative}
{0 x,1 o,2 o,3 b,4 o,5 x,6 x,7 o,8 x,9 negative}
{0 x,1 o,2 b,3 b,4 o,5 x,6 b,7 o,8 x,9 negative}
{0 x,1 b,2 x,3 o,4 o,5 o,6 b,7 x,8 b,9 negative}
{0 x,1 b,2 o,3 x,4 o,5 x,6 o,7 b,8 b,9 negative}
{0 x,1 b,2 o,3 x,4 b,5 o,6 b,7 x,8 o,9 negative}
{0 x,1 b,2 b,3 o,4 o,5 o,6 x,7 b,8 x,9 negative}
{0 x,1 b,2 b,3 b,4 x,5 x,6 o,7 o,8 o,9 negative}
{0 o,1 x,2 x,3 o,4 x,5 x,6 o,7 o,8 b,9 negative}
{0 o,1 x,2 x,3 o,4 o,5 x,6 o,7 x,8 b,9 negative}
{0 o,1 x,2 x,3 o,4 o,5 x,6 b,7 x,8 o,9 negative}
{0 o,1 x,2 x,3 o,4 b,5 x,6 o,7 x,8 o,9 negative}
{0 o,1 x,2 x,3 b,4 x,5 x,6 o,7 o,8 o,9 negative}
{0 o,1 x,2 x,3 b,4 o,5 b,6 x,7 b,8 o,9 negative}
{0 o,1 x,2 x,3 b,4 o,5 b,6 b,7 x,8 o,9 negative}
{0 o,1 x,2 o,3 x,4 o,5 b,6 x,7 x,8 o,9 negative}
{0 o,1 x,2 b,3 x,4 o,5 x,6 o,7 x,8 o,9 negative}
{0 o,1 x,2 b,3 x,4 o,5 b,6 x,7 b,8 o,9 negative}
{0 o,1 x,2 b,3 x,4 o,5 b,6 b,7 x,8 o,9 negative}
{0 o,1 x,2 b,3 o,4 x,5 b,6 o,7 b,8 x,9 negative}
{0 o,1 x,2 b,3 o,4 b,5 x,6 o,7 b,8 x,9 negative}
{0 o,1 x,2 b,3 b,4 o,5 b,6 x,7 x,8 o,9 negative}
{0 o,1 o,2 x,3 x,4 o,5 x,6 x,7 o,8 b,9 negative}
{0 o,1 o,2 x,3 x,4 o,5 b,6 x,7 x,8 o,9 negative}
{0 o,1 o,2 x,3 o,4 x,5 x,6 o,7 x,8 b,9 negative}
{0 o,1 o,2 o,3 x,4 x,5 b,6 x,7 x,8 o,9 negative}
{0 o,1 o,2 o,3 x,4 x,5 b,6 x,7 o,8 x,9 negative}
{0 o,1 o,2 o,3 o,4 x,5 x,6 x,7 b,8 x,9 negative}
{0 o,1 o,2 o,3 o,4 x,5 x,6 b,7 x,8 x,9 negative}
{0 o,1 o,2 o,3 b,4 x,5 x,6 o,7 x,8 x,9 negative}
{0 o,1 o,2 o,3 b,4 x,5 x,6 b,7 b,8 x,9 negative}
{0 o,1 o,2 o,3 b,4 b,5 x,6 x,7 b,8 x,9 negative}
{0 o,1 b,2 x,3 x,4 o,5 o,6 x,7 x,8 o,9 negative}
{0 o,1 b,2 x,3 o,4 x,5 b,6 o,7 x,8 b,9 negative}
{0 o,1 b,2 x,3 b,4 o,5 x,6 b,7 x,8 o,9 negative}
{0 o,1 b,2 x,3 b,4 o,5 b,6 x,7 x,8 o,9 negative}
{0 o,1 b,2 o,3 x,4 x,5 o,6 x,7 x,8 o,9 negative}
{0 o,1 b,2 o,3 x,4 o,5 x,6 o,7 x,8 x,9 negative}
{0 o,1 b,2 b,3 x,4 o,5 x,6 x,7 b,8 o,9 negative}
{0 o,1 b,2 b,3 x,4 o,5 x,6 b,7 x,8 o,9 negative}
{0 b,1 x,2 x,3 o,4 o,5 o,6 x,7 b,8 b,9 negative}
{0 b,1 x,2 x,3 b,4 x,5 b,6 o,7 o,8 o,9 negative}
{0 b,1 x,2 o,3 x,4 o,5 o,6 o,7 x,8 x,9 negative}
{0 b,1 x,2 o,3 o,4 o,5 x,6 o,7 x,8 x,9 negative}
{0 b,1 x,2 o,3 b,4 o,5 b,6 o,7 x,8 x,9 negative}
{0 b,1 x,2 b,3 o,4 o,5 o,6 x,7 x,8 b,9 negative}
{0 x,1 o,2 x,3 x,4 o,5 o,6 o,7 x,8 x,9 negative}
{0 o,1 x,2 o,3 x,4 x,5 o,6 x,7 o,8 x,9 negative}
{0 x,1 x,2 b,3 x,4 o,5 o,6 x,7 o,8 b,9 positive}
{0 x,1 b,2 x,3 o,4 x,5 b,6 o,7 o,8 x,9 positive}
{0 x,1 b,2 o,3 o,4 x,5 o,6 b,7 x,8 x,9 positive}
{0 x,1 b,2 b,3 x,4 x,5 o,6 x,7 o,8 o,9 positive}
{0 x,1 b,2 b,3 o,4 x,5 o,6 x,7 o,8 x,9 positive}
{0 o,1 x,2 o,3 o,4 x,5 o,6 x,7 x,8 x,9 positive}
{0 o,1 x,2 o,3 b,4 x,5 b,6 x,7 x,8 o,9 positive}
{0 b,1 x,2 x,3 o,4 x,5 o,6 x,7 o,8 b,9 positive}
{0 b,1 o,2 o,3 x,4 b,5 o,6 x,7 x,8 x,9 positive}
{0 b,1 b,2 b,3 x,4 x,5 x,6 o,7 o,8 b,9 positive}
{0 o,1 x,2 b,3 x,4 o,5 x,6 b,7 b,8 o,9 negative}
{0 o,1 b,2 x,3 b,4 o,5 x,6 x,7 b,8 o,9 negative}
{0 b,1 x,2 x,3 o,4 o,5 o,6 b,7 b,8 x,9 negative}
{0 b,1 x,2 b,3 b,4 x,5 x,6 o,7 o,8 o,9 negative}
{0 b,1 o,2 o,3 x,4 o,5 x,6 x,7 o,8 x,9 negative}

3. Citing MOCA-I

If you use MOCA-I in a scientific publication, please consider citing at least one of the following papers:

Julie Jacques, Julien Taillard, David Delerue, Clarisse Dhaenens, Laetitia Jourdan. [Conception of a dominance-based multi-objective local search in the context of classification rule mining in large and imbalanced data sets.] Applied Soft Computing, 2015, 34, pp.705—​720. ⟨10.1016/j.asoc.2015.06.002⟩. ⟨hal-01216483⟩

BibTeX entry:

@article{jacques:hal-01216483,
  TITLE = {{Conception of a dominance-based multi-objective local search in the context of classification rule mining in large and imbalanced data sets}},
  AUTHOR = {Jacques, Julie and Taillard, Julien and Delerue, David and Dhaenens, Clarisse and Jourdan, Laetitia},
  URL = {https://hal.science/hal-01216483},
  JOURNAL = {{Applied Soft Computing}},
  PUBLISHER = {{Elsevier}},
  VOLUME = {34},
  PAGES = {705--720},
  YEAR = {2015},
  DOI = {10.1016/j.asoc.2015.06.002},
  HAL_ID = {hal-01216483},
  HAL_VERSION = {v1},
}

Julie Jacques, Helene Martin-Huyghe, Justine Lemtiri-Florek, Julien Taillard, Laetitia Jourdan, et al. [The Detection of hospitalized patients at risk of testing positive to multi-drug resistant bacteria using MOCA-I, a rule-based “white-box” classification algorithm for medical data] International Journal of Medical Informatics, 2020, October 2020, 142, ⟨10.1016/j.ijmedinf.2020.104242⟩. ⟨hal-02920596⟩

BibTeX entry:

@article{jacques:hal-02920596,
  TITLE = {{The Detection of hospitalized patients at risk of testing positive to multi-drug resistant bacteria using MOCA-I, a rule-based ``white-box'' classification algorithm for medical data}},
  AUTHOR = {Jacques, Julie and Martin-Huyghe, Helene and Lemtiri-Florek, Justine and Taillard, Julien and Jourdan, Laetitia and Dhaenens, Clarisse and Delerue, David and Hansske, Arnaud and Leclercq, Val{\'e}rie},
  URL = {https://hal.science/hal-02920596},
  JOURNAL = {{International Journal of Medical Informatics}},
  PUBLISHER = {{Elsevier}},
  SERIES = {October 2020},
  VOLUME = {142},
  YEAR = {2020},
  MONTH = Jul,
  DOI = {10.1016/j.ijmedinf.2020.104242},
  PDF = {https://hal.science/hal-02920596/file/S1386505620301465.pdf},
  HAL_ID = {hal-02920596},
  HAL_VERSION = {v1},
}