diff --git a/README.rst b/README.rst index 92d80bcc..a03e087b 100644 --- a/README.rst +++ b/README.rst @@ -8,11 +8,16 @@ *lincs* (Learn and Infer Non Compensatory Sortings) is a collection of `MCDA `_ algorithms, usable as a command-line utility. -@todo(Feature, later) Make it usable as a Python package. +@todo(Feature, later) Make *lincs* usable as a Python package. -@todo(Feature, later) Make it usable as a C++ library. +@todo(Feature, later) Make *lincs* usable as a C++ library. *lincs* supports Linux, macOS and Windows, with the exception that GPU-based algorithms are not available on macOS, because CUDA itself is not available there. +On these 3 OSes, *lincs* only support x86_64 CPUs. + +@todo(Feature, later) Support M1 and M2 chips on macOS. + +@todo(Feature, much later) Support ARM processors in general. *lincs* is licensed under the GNU Lesser General Public License v3.0 as indicated by the two files `COPYING `_ and `COPYING.LESSER `_. @@ -50,7 +55,7 @@ Just follow the "Get started" section below. Provide a base for developing new MCDA algorithms ------------------------------------------------- -*lincs* is designed to be easy to extend with new algorithms of even replace parts of existing algorithms. +*lincs* is designed to be easy to extend with new algorithms or even replace parts of existing algorithms. See our `contributor guide `_ for more details. diff --git a/doc-sources/conceptual-overview.rst b/doc-sources/conceptual-overview.rst index 1d7443d2..2cd6555f 100644 --- a/doc-sources/conceptual-overview.rst +++ b/doc-sources/conceptual-overview.rst @@ -9,7 +9,8 @@ Notation In this document, we denote the interval of integers from :math:`a` to :math:`b - 1` included by :math:`[a..b)`. Most often, :math:`a` will be zero. -This choice matches the indexing convention used in most modern programming language, so our documentation is as close as possible to our implementation. +This choice matches the indexing convention used in the Python and C++ programming languages, +so our documentation is as close as possible to our implementation. For example, :math:`[0..4) = \{0, 1, 2, 3\}`. Note that :math:`[0..n)` contains :math:`n` elements. @@ -110,13 +111,13 @@ Additionally, this set of coalitions can be different for each category. f: x \mapsto \max (\{0\} \cup \{ h \in [1..p): \{ i \in [0..n): x_i \succcurlyeq_i b^h_i \} \in \mathcal{F}^h \}) -Note that this definition extends naturally if we denote :math:`\mathcal{F}^0 = [0..n)` and :math:`b^0 = (\min(X_0), ..., \min(X_{n-1}))`. +Note that this definition extends naturally if we denote :math:`\mathcal{F}^0 = \mathcal{P}([0..n))` and :math:`b^0 = (\min(X_0), ..., \min(X_{n-1}))`. The definition of :math:`f` then simplifies to :math:`x \mapsto \max \{ h \in [0..p): \{ i \in [0..n): x_i \succcurlyeq_i b^h_i \} \in \mathcal{F}^h \}`. This definition may differ slightly from the one you're used to, but it should be formally equivalent. We use it in *lincs* because it is somewhat simple and matches the implementation quite well. -The constraints in the definition all ensure NDS models behave according to intuition: +The constraints in the definition all ensure NCS models behave according to intuition: - the ordering of profiles ensures consistency with the order on categories - the up-closed-ness-by-inclusion(!) of the sufficient coalitions matches the intuition that they are *sufficient* criteria: if a few criteria are sufficient, then more criteria are still sufficient @@ -453,7 +454,7 @@ This gives us :math:`|\mathcal{P}(\{M, P, L, H\})| = 16` equations, amongst whic - :math:`w_M + w_H \ge 1` (because :math:`\{M, H\} \in \mathcal{F}^1`) - :math:`w_P + w_H \ge 1` (because :math:`\{P, H\} \in \mathcal{F}^1`) -Summing the first two equations gives :math:`w_M + w_P + w_L + w_H \lt 2`, and summing teh last four gives :math:`w_M + w_P + w_L + w_H \ge 2`, +Summing the first two equations gives :math:`w_M + w_P + w_L + w_H \lt 2`, and summing the last four gives :math:`w_M + w_P + w_L + w_H \ge 2`, so there is no solution, and that model is not MR-Sort. By contrast, the coalitions :math:`\mathcal{F}^2` of the previous model example can be expressed using the following weights: @@ -513,10 +514,9 @@ It's not always practical to use real-world data when developing a new learning In that approach, one specifies the problem and provides a pre-known model. They then generate pseudo-random alternatives classified according to that original model, and use them as a training set to learn a new model. -Finally, they compare how close the learned model behaves to the original one to evaluate the quality of the algorithm. +Finally, they compare how close the learned model behaves to the original one to evaluate the quality of the learning algorithm. *lincs* provides ways to generate synthetic pseudo-random problems, models and training sets (noisy or clean). -The same file formats are used for synthetic and real-world data. Next diff --git a/doc-sources/reference.rst b/doc-sources/reference.rst index 62a1bd1b..c839f3d2 100644 --- a/doc-sources/reference.rst +++ b/doc-sources/reference.rst @@ -8,8 +8,8 @@ File formats ============ *lincs* uses text-based (YAML and CSV) file formats. -The same formats are used when *lincs* reads files or when it outputs to files. The same formats are used for synthetic and real-world data. +The same formats are used when *lincs* reads files or when it outputs to files. The same formats are used when *lincs* outputs to actual files or to the standard output. .. _ref-file-problem: diff --git a/doc-sources/user-guide.rst b/doc-sources/user-guide.rst index 6040ad4f..0164ed37 100644 --- a/doc-sources/user-guide.rst +++ b/doc-sources/user-guide.rst @@ -18,6 +18,8 @@ Formatting data for *lincs* "Problem" files --------------- +.. highlight:: yaml + The concept of classification problem is defined in our :ref:`conceptual overview `. To describe problems, *lincs* uses YAML files conforming to the `JSON schema `_ you'll find in our :ref:`reference documentation `. @@ -222,6 +224,8 @@ It's a CSV file with a header line and one line per alternative. Like model files, alternatives files are always associated to a problem file. +.. highlight:: text + .. START file-formats/expected-classified-alternatives.csv Here is an example corresponding to the problem above:: @@ -284,6 +288,8 @@ When you need reproducibility, you can specify the seed to use with the ``--rand In all cases, the :ref:`comments ` left by *lincs* in the generated files specify the seed that was used. +.. highlight:: shell + Generating a problem -------------------- diff --git a/docs/.doctrees/conceptual-overview.doctree b/docs/.doctrees/conceptual-overview.doctree index 38eb2eb7..91776425 100644 Binary files a/docs/.doctrees/conceptual-overview.doctree and b/docs/.doctrees/conceptual-overview.doctree differ diff --git a/docs/.doctrees/environment.pickle b/docs/.doctrees/environment.pickle index fb91728e..bbf5f3d9 100644 Binary files a/docs/.doctrees/environment.pickle and b/docs/.doctrees/environment.pickle differ diff --git a/docs/.doctrees/index.doctree b/docs/.doctrees/index.doctree index b3d68318..0cdfc80d 100644 Binary files a/docs/.doctrees/index.doctree and b/docs/.doctrees/index.doctree differ diff --git a/docs/.doctrees/reference.doctree b/docs/.doctrees/reference.doctree index b34d4654..b911739a 100644 Binary files a/docs/.doctrees/reference.doctree and b/docs/.doctrees/reference.doctree differ diff --git a/docs/.doctrees/user-guide.doctree b/docs/.doctrees/user-guide.doctree index 3348be86..a15ded3c 100644 Binary files a/docs/.doctrees/user-guide.doctree and b/docs/.doctrees/user-guide.doctree differ diff --git a/docs/_sources/conceptual-overview.rst.txt b/docs/_sources/conceptual-overview.rst.txt index 9a02682e..121dfd68 100644 --- a/docs/_sources/conceptual-overview.rst.txt +++ b/docs/_sources/conceptual-overview.rst.txt @@ -9,7 +9,8 @@ Notation In this document, we denote the interval of integers from :math:`a` to :math:`b - 1` included by :math:`[a..b)`. Most often, :math:`a` will be zero. -This choice matches the indexing convention used in most modern programming language, so our documentation is as close as possible to our implementation. +This choice matches the indexing convention used in the Python and C++ programming languages, +so our documentation is as close as possible to our implementation. For example, :math:`[0..4) = \{0, 1, 2, 3\}`. Note that :math:`[0..n)` contains :math:`n` elements. @@ -110,13 +111,13 @@ Additionally, this set of coalitions can be different for each category. f: x \mapsto \max (\{0\} \cup \{ h \in [1..p): \{ i \in [0..n): x_i \succcurlyeq_i b^h_i \} \in \mathcal{F}^h \}) -Note that this definition extends naturally if we denote :math:`\mathcal{F}^0 = [0..n)` and :math:`b^0 = (\min(X_0), ..., \min(X_{n-1}))`. +Note that this definition extends naturally if we denote :math:`\mathcal{F}^0 = \mathcal{P}([0..n))` and :math:`b^0 = (\min(X_0), ..., \min(X_{n-1}))`. The definition of :math:`f` then simplifies to :math:`x \mapsto \max \{ h \in [0..p): \{ i \in [0..n): x_i \succcurlyeq_i b^h_i \} \in \mathcal{F}^h \}`. This definition may differ slightly from the one you're used to, but it should be formally equivalent. We use it in *lincs* because it is somewhat simple and matches the implementation quite well. -The constraints in the definition all ensure NDS models behave according to intuition: +The constraints in the definition all ensure NCS models behave according to intuition: - the ordering of profiles ensures consistency with the order on categories - the up-closed-ness-by-inclusion(!) of the sufficient coalitions matches the intuition that they are *sufficient* criteria: if a few criteria are sufficient, then more criteria are still sufficient @@ -453,7 +454,7 @@ This gives us :math:`|\mathcal{P}(\{M, P, L, H\})| = 16` equations, amongst whic - :math:`w_M + w_H \ge 1` (because :math:`\{M, H\} \in \mathcal{F}^1`) - :math:`w_P + w_H \ge 1` (because :math:`\{P, H\} \in \mathcal{F}^1`) -Summing the first two equations gives :math:`w_M + w_P + w_L + w_H \lt 2`, and summing teh last four gives :math:`w_M + w_P + w_L + w_H \ge 2`, +Summing the first two equations gives :math:`w_M + w_P + w_L + w_H \lt 2`, and summing the last four gives :math:`w_M + w_P + w_L + w_H \ge 2`, so there is no solution, and that model is not MR-Sort. By contrast, the coalitions :math:`\mathcal{F}^2` of the previous model example can be expressed using the following weights: @@ -513,10 +514,9 @@ It's not always practical to use real-world data when developing a new learning In that approach, one specifies the problem and provides a pre-known model. They then generate pseudo-random alternatives classified according to that original model, and use them as a training set to learn a new model. -Finally, they compare how close the learned model behaves to the original one to evaluate the quality of the algorithm. +Finally, they compare how close the learned model behaves to the original one to evaluate the quality of the learning algorithm. *lincs* provides ways to generate synthetic pseudo-random problems, models and training sets (noisy or clean). -The same file formats are used for synthetic and real-world data. Next diff --git a/docs/_sources/reference.rst.txt b/docs/_sources/reference.rst.txt index 62a1bd1b..c839f3d2 100644 --- a/docs/_sources/reference.rst.txt +++ b/docs/_sources/reference.rst.txt @@ -8,8 +8,8 @@ File formats ============ *lincs* uses text-based (YAML and CSV) file formats. -The same formats are used when *lincs* reads files or when it outputs to files. The same formats are used for synthetic and real-world data. +The same formats are used when *lincs* reads files or when it outputs to files. The same formats are used when *lincs* outputs to actual files or to the standard output. .. _ref-file-problem: diff --git a/docs/_sources/user-guide.rst.txt b/docs/_sources/user-guide.rst.txt index cf7ce4e9..1579e459 100644 --- a/docs/_sources/user-guide.rst.txt +++ b/docs/_sources/user-guide.rst.txt @@ -18,6 +18,8 @@ Formatting data for *lincs* "Problem" files --------------- +.. highlight:: yaml + The concept of classification problem is defined in our :ref:`conceptual overview `. To describe problems, *lincs* uses YAML files conforming to the `JSON schema `_ you'll find in our :ref:`reference documentation `. @@ -222,6 +224,8 @@ It's a CSV file with a header line and one line per alternative. Like model files, alternatives files are always associated to a problem file. +.. highlight:: text + .. START file-formats/expected-classified-alternatives.csv Here is an example corresponding to the problem above:: @@ -284,6 +288,8 @@ When you need reproducibility, you can specify the seed to use with the ``--rand In all cases, the :ref:`comments ` left by *lincs* in the generated files specify the seed that was used. +.. highlight:: shell + Generating a problem -------------------- diff --git a/docs/conceptual-overview.html b/docs/conceptual-overview.html index f96868ba..be8935cb 100644 --- a/docs/conceptual-overview.html +++ b/docs/conceptual-overview.html @@ -39,7 +39,8 @@

Conceptual overview

In this document, we denote the interval of integers from \(a\) to \(b - 1\) included by \([a..b)\). Most often, \(a\) will be zero. -This choice matches the indexing convention used in most modern programming language, so our documentation is as close as possible to our implementation. +This choice matches the indexing convention used in the Python and C++ programming languages, +so our documentation is as close as possible to our implementation. For example, \([0..4) = \{0, 1, 2, 3\}\). Note that \([0..n)\) contains \(n\) elements.

For a given set \(S\), we denote the set of all its subsets (a.k.a. its power set) by \(\mathcal{P}(S)\). @@ -122,11 +123,11 @@

Learning and classifying \[f: x \mapsto \max (\{0\} \cup \{ h \in [1..p): \{ i \in [0..n): x_i \succcurlyeq_i b^h_i \} \in \mathcal{F}^h \})\] -

Note that this definition extends naturally if we denote \(\mathcal{F}^0 = [0..n)\) and \(b^0 = (\min(X_0), ..., \min(X_{n-1}))\). +

Note that this definition extends naturally if we denote \(\mathcal{F}^0 = \mathcal{P}([0..n))\) and \(b^0 = (\min(X_0), ..., \min(X_{n-1}))\). The definition of \(f\) then simplifies to \(x \mapsto \max \{ h \in [0..p): \{ i \in [0..n): x_i \succcurlyeq_i b^h_i \} \in \mathcal{F}^h \}\).

This definition may differ slightly from the one you’re used to, but it should be formally equivalent. We use it in lincs because it is somewhat simple and matches the implementation quite well.

-

The constraints in the definition all ensure NDS models behave according to intuition:

+

The constraints in the definition all ensure NCS models behave according to intuition:

-

Summing the first two equations gives \(w_M + w_P + w_L + w_H \lt 2\), and summing teh last four gives \(w_M + w_P + w_L + w_H \ge 2\), +

Summing the first two equations gives \(w_M + w_P + w_L + w_H \lt 2\), and summing the last four gives \(w_M + w_P + w_L + w_H \ge 2\), so there is no solution, and that model is not MR-Sort.

By contrast, the coalitions \(\mathcal{F}^2\) of the previous model example can be expressed using the following weights: \(w_M = 0.4\), \(w_P = 0.4\), \(w_L = 0.4\), \(w_H = 0.4\): coalitions of at most two criteria have weights sums less than 1, @@ -460,9 +461,8 @@

Classification accuracy -

lincs provides ways to generate synthetic pseudo-random problems, models and training sets (noisy or clean). -The same file formats are used for synthetic and real-world data.

+Finally, they compare how close the learned model behaves to the original one to evaluate the quality of the learning algorithm.

+

lincs provides ways to generate synthetic pseudo-random problems, models and training sets (noisy or clean).

Next

diff --git a/docs/index.html b/docs/index.html index 752408b7..0e6fc7cf 100644 --- a/docs/index.html +++ b/docs/index.html @@ -36,9 +36,12 @@

README

lincs (Learn and Infer Non Compensatory Sortings) is a collection of MCDA algorithms, usable as a command-line utility.

-

@todo(Feature, later) Make it usable as a Python package.

-

@todo(Feature, later) Make it usable as a C++ library.

-

lincs supports Linux, macOS and Windows, with the exception that GPU-based algorithms are not available on macOS, because CUDA itself is not available there.

+

@todo(Feature, later) Make lincs usable as a Python package.

+

@todo(Feature, later) Make lincs usable as a C++ library.

+

lincs supports Linux, macOS and Windows, with the exception that GPU-based algorithms are not available on macOS, because CUDA itself is not available there. +On these 3 OSes, lincs only support x86_64 CPUs.

+

@todo(Feature, later) Support M1 and M2 chips on macOS.

+

@todo(Feature, much later) Support ARM processors in general.

lincs is licensed under the GNU Lesser General Public License v3.0 as indicated by the two files COPYING and COPYING.LESSER.

@todo(Project management, when we publish a paper, later) Add a note asking academics to kindly cite our work.

lincs is available for install from the Python package index. @@ -65,7 +68,7 @@

Provide MCDA tools usable out of the box

Provide a base for developing new MCDA algorithms

-

lincs is designed to be easy to extend with new algorithms of even replace parts of existing algorithms. +

lincs is designed to be easy to extend with new algorithms or even replace parts of existing algorithms. See our contributor guide for more details.

diff --git a/docs/reference.html b/docs/reference.html index f0b074b5..2a7859f2 100644 --- a/docs/reference.html +++ b/docs/reference.html @@ -37,8 +37,8 @@

Reference

File formats

lincs uses text-based (YAML and CSV) file formats. -The same formats are used when lincs reads files or when it outputs to files. The same formats are used for synthetic and real-world data. +The same formats are used when lincs reads files or when it outputs to files. The same formats are used when lincs outputs to actual files or to the standard output.

The problem file

diff --git a/docs/searchindex.js b/docs/searchindex.js index b91cc986..cc785e77 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["changelog", "conceptual-overview", "contributor-guide", "get-started", "index", "reference", "user-guide"], "filenames": ["changelog.rst", "conceptual-overview.rst", "contributor-guide.rst", "get-started.rst", "index.rst", "reference.rst", "user-guide.rst"], "titles": ["Changelog", "Conceptual overview", "Contributor guide", "Get started", "README", "Reference", "User Guide"], "terms": {"thi": [0, 1, 2, 3, 4, 5, 6], "i": [0, 1, 2, 3, 4, 5, 6], "first": [0, 1, 2, 3, 5, 6], "releas": [0, 4], "candid": 0, "break": 0, "allow": [0, 1, 2, 4, 5, 6], "more": [0, 1, 2, 3, 4, 6], "flexibl": [0, 4], "descript": [0, 1, 5, 6], "accept": [0, 5], "valu": [0, 1, 2, 3, 5], "model": [0, 1, 3, 4], "json": [0, 5, 6], "schema": [0, 5, 6], "see": [0, 2, 3, 4, 5], "user": [0, 2, 3, 4, 5], "guid": [0, 1, 3, 4, 5], "detail": [0, 2, 3, 4, 6], "renam": [0, 6], "option": [0, 2, 3, 4, 5], "ucnc": [0, 5, 6], "approach": [0, 1, 3, 4, 5, 6], "strategi": [0, 3, 5], "output": [0, 3, 5, 6], "classifi": [0, 3], "altern": [0, 1, 3], "fix": [0, 2, 5, 6], "line": [0, 2, 4, 6], "end": [0, 3], "window": [0, 3, 4, 6], "linc": [0, 1, 2], "visual": [0, 2, 3], "us": [0, 1, 2, 4, 5], "criteria": [0, 1, 3, 5], "": [0, 1, 2, 3, 4, 5], "min": [0, 1, 5, 6], "max": [0, 1, 2, 3, 5, 6], "categori": [0, 1, 3, 5], "correl": [0, 5, 6], "valid": [0, 5, 6], "consist": [0, 1, 2, 6], "problem": [0, 1, 3], "when": [0, 1, 2, 4, 5, 6], "load": 0, "file": [0, 1, 2, 3], "reproduct": [0, 3, 6], "command": [0, 2, 4, 6], "improv": [0, 4, 5, 6], "document": [0, 1, 3, 4, 6], "pre": [0, 1, 5], "process": [0, 5, 6], "learn": [0, 2, 3, 4], "set": [0, 1, 2, 3, 5, 6], "befor": [0, 1, 2, 5, 6], "all": [0, 1, 3, 5, 6], "algorithm": [0, 1, 2], "possibl": [0, 1, 2], "each": [0, 1, 2, 5, 6], "criterion": [0, 1, 3, 5, 6], "ar": [0, 1, 2, 3, 4, 5, 6], "list": [0, 6], "sort": [0, 3, 4, 5, 6], "actual": [0, 1, 2, 5, 6], "start": [0, 1, 2, 5, 6], "so": [0, 1, 3, 4, 6], "now": [0, 1, 2, 6], "have": [0, 1, 2, 3, 5, 6], "increas": [0, 6], "rang": [0, 1, 6], "integ": [0, 1, 5, 6], "simplif": [0, 1], "implement": [0, 1, 2, 6], "perform": [0, 1, 2, 4, 6], "weight": [0, 1, 2, 3, 5], "profil": [0, 1, 2, 3, 5], "breed": [0, 2, 3, 5], "expos": [0, 2], "sufficientcoalit": 0, "upset_root": [0, 5, 6], "python": [0, 1, 4], "name": [0, 3, 5, 6], "imbal": [0, 3, 5, 6], "gener": [0, 1, 3, 4], "produc": [0, 1, 4, 6], "cleaner": 0, "error": 0, "too": [0, 1, 2, 6], "tight": 0, "print": [0, 5, 6], "number": [0, 1, 2, 3, 5, 6], "iter": [0, 2, 3, 5], "wpb": [0, 1, 6], "displai": [0, 6], "comment": [0, 5], "variou": 0, "code": [0, 2, 4, 5, 6], "readabl": 0, "integr": [0, 2], "cuda": [0, 1, 2, 4, 5, 6], "part": [0, 2, 4, 6], "compil": [0, 2, 5], "openmp": [0, 1], "distribut": 0, "binari": [0, 2, 3, 6], "wheel": [0, 2, 3, 6], "durat": [0, 1, 5, 6], "second": [0, 5, 6], "termin": [0, 2, 3, 5], "condit": [0, 3, 6], "after": [0, 2, 4, 6], "make": [0, 2, 3, 4, 5, 6], "chrone": [0, 2], "an": [0, 1, 3, 4, 5], "depend": [0, 3, 4, 6], "linux": [0, 3, 4, 6], "onli": [0, 1, 2, 3, 4, 5, 6], "verbos": [0, 5, 6], "mode": 0, "pernici": 0, "memori": [0, 1], "bug": [0, 2, 4], "bugfix": 0, "sure": [0, 5, 6], "thei": [0, 1, 2, 3, 4, 6], "built": [0, 2, 6], "gpu": [0, 2, 4, 6], "support": [0, 4, 5, 6], "build": [0, 2, 3], "without": [0, 1, 2, 4, 5, 6], "nvcc": 0, "e": [0, 1, 2, 5, 6], "g": [0, 2, 5, 6], "maco": [0, 3, 4, 6], "provid": [0, 1, 2, 3], "info": [0, 3, 6], "ha": [0, 1, 2, 3, 6], "adapt": [0, 4], "classif": [0, 2, 3], "help": [0, 1, 2, 3, 6], "featur": [0, 2, 3, 4, 6], "add": [0, 4, 5, 6], "sat": [0, 1, 2, 5], "coalit": [0, 1, 3, 5], "separ": [0, 1, 5, 6], "hopefulli": 0, "correct": [0, 2, 6], "time": [0, 1, 2, 4, 6], "yaml": [0, 1, 3, 5, 6], "anchor": [0, 3, 6], "alias": 0, "limit": [0, 6], "repetit": [0, 6], "format": [0, 1, 3], "describ": [0, 1, 2, 3, 5, 6], "u": [0, 2, 6], "c": [0, 4, 6], "textsf": [0, 6], "nc": [0, 3, 4, 6], "specifi": [0, 1, 2, 5, 6], "minimum": [0, 1], "maximum": [0, 1, 5], "synthet": [0, 2, 3, 5], "data": [0, 2, 3, 5], "attribut": [0, 1, 6], "denorm": [0, 5, 6], "decreas": [0, 5, 6], "state": 0, "re": [0, 1, 2, 3], "them": [0, 1, 2, 3, 4, 6], "enough": [0, 1, 2, 3], "decim": 0, "store": [0, 1], "float": [0, 6], "point": [0, 6], "avoid": [0, 2, 3, 6], "ani": [0, 2, 6], "loss": 0, "precis": 0, "log": 0, "final": [0, 1, 2, 3, 6], "accuraci": [0, 3], "mrsort": [0, 2, 3, 5, 6], "test": [0, 2, 3], "remov": [0, 3], "buggi": 0, "publish": [0, 4], "method": [0, 1, 6], "misclassify_altern": 0, "synthes": 0, "nois": [0, 6], "expend": 0, "suffici": [0, 1, 3, 5], "root": [0, 2, 5, 6], "manylinux_2_31": 0, "flow": 0, "arrai": [0, 5], "scalar": 0, "between": [0, 1, 2, 3, 5, 6], "api": [0, 2, 4], "yet": [0, 1, 3, 6], "though": [0, 6], "control": [0, 6], "over": 0, "expans": 0, "except": 0, "fail": [0, 1], "develop": [0, 1], "machin": [0, 2, 6], "never": 0, "properli": 0, "heurist": [0, 1, 3, 5, 6], "introduc": [0, 1, 2, 6], "alglib": [0, 2, 5, 6], "lp": [0, 2], "solver": [0, 3, 5, 6], "docker": [0, 2], "imag": [0, 2, 5], "instal": [0, 2, 3, 4], "chang": [0, 3, 4, 6], "domain": [0, 4], "everywher": [0, 2], "packag": [0, 2, 4], "licens": [0, 4], "lgplv3": 0, "miss": [0, 3], "header": [0, 5, 6], "mr": [0, 3, 6], "sobri": [0, 1], "cpu": [0, 2, 3, 5, 6], "sum": [0, 1, 5, 6], "pypi": [0, 2], "websit": 0, "pseudo": [0, 1, 3, 4, 5, 6], "random": [0, 1, 3, 4, 5], "kick": 0, "off": 0, "effort": [0, 6], "quit": [0, 1, 2, 6], "nice": 0, "readm": [0, 2, 6], "initi": [0, 3, 5, 6], "public": [0, 2, 4], "littl": 0, "function": [0, 1], "In": [1, 4, 6], "we": [1, 2, 3, 4, 6], "denot": 1, "interv": 1, "from": [1, 2, 3, 4, 5, 6], "b": 1, "includ": 1, "most": [1, 2, 4, 5, 6], "often": [1, 2, 3, 6], "zero": 1, "choic": [1, 2, 6], "match": 1, "index": [1, 2, 4], "convent": 1, "modern": 1, "program": [1, 2, 3, 5, 6], "languag": [1, 2], "our": [1, 2, 3, 4, 6], "close": [1, 3], "For": [1, 2, 5, 6], "0": [1, 2, 3, 4, 5, 6], "4": [1, 3, 6], "2": [1, 3, 5, 6], "3": [1, 3, 6], "note": [1, 2, 3, 4, 6], "n": [1, 3], "contain": [1, 2, 3, 5, 6], "element": [1, 6], "given": [1, 2, 6], "its": [1, 2, 3, 4, 5, 6], "subset": [1, 6], "power": 1, "mathcal": 1, "p": 1, "focus": 1, "task": [1, 2], "order": [1, 4, 6], "worst": 1, "best": [1, 2, 6], "possibli": 1, "some": [1, 2, 4, 6], "intermedi": [1, 5, 6], "assign": 1, "base": [1, 2, 3, 5], "The": [1, 2, 3, 4, 6], "constitut": [1, 4], "itself": [1, 3, 5], "vocabulari": 1, "voluntarili": 1, "abstract": [1, 2], "wide": 1, "applic": 1, "concret": [1, 2], "might": [1, 2, 4], "let": [1, 6], "sai": 1, "you": [1, 2, 3, 4, 5, 6], "want": [1, 2, 3, 4, 6], "scholarship": 1, "student": 1, "academ": [1, 4], "your": [1, 3, 4, 6], "fund": 1, "polici": 1, "grade": 1, "should": [1, 2, 3, 4, 5, 6], "get": [1, 2, 5, 6], "And": [1, 2, 3, 6], "favor": [1, 6], "younger": 1, "come": [1, 6], "modest": 1, "background": 1, "differ": [1, 2, 3, 5, 6], "topic": 1, "ag": 1, "famili": 1, "incom": 1, "same": [1, 2, 3, 4, 5, 6], "could": [1, 2, 3, 6], "appli": [1, 2, 4, 6], "triag": 1, "patient": 1, "hospit": 1, "vital": 1, "sign": 1, "A": [1, 2, 6], "defin": [1, 2, 6], "mathbb": 1, "geq": 1, "x_i": 1, "_": 1, "total": [1, 6], "preccurlyeq_i": 1, "h": 1, "prec": 1, "do": [1, 3, 4, 6], "confus": 1, "expon": 1, "just": [1, 2, 4, 5, 6], "cartesian": [1, 2], "product": [1, 2], "x": 1, "prod_": 1, "x_0": 1, "x_": 1, "read": [1, 2, 3, 4, 5, 6], "inform": [1, 3, 5, 6], "csv": [1, 3, 5, 6], "autom": 1, "Its": [1, 4, 5, 6], "alreadi": [1, 4, 6], "new": [1, 3, 6], "call": [1, 6], "train": [1, 3, 5], "ground": 1, "truth": [1, 5], "phase": 1, "f": 1, "rightarrow": 1, "parametr": 1, "form": [1, 2, 6], "find": [1, 2, 4, 6], "paramet": [1, 2], "fit": [1, 2], "expect": [1, 2, 4, 6], "higher": [1, 6], "better": [1, 4], "But": [1, 4, 6], "sometim": 1, "import": [1, 2, 6], "can": [1, 2, 3, 4, 5, 6], "t": [1, 2, 3, 4, 5], "compens": 1, "other": [1, 2, 4, 6], "wai": [1, 2, 3, 4, 5, 6], "captur": [1, 6], "idea": [1, 2], "There": [1, 3], "mani": [1, 5, 6], "share": 1, "vari": 1, "one": [1, 2, 3, 4, 5, 6], "were": [1, 6], "deni": 1, "bouyssou": 1, "thierri": 1, "marchant": 1, "articl": 1, "axiomat": 1, "noncompensatori": 1, "mcdm": 1, "two": [1, 3, 4, 6], "ii": 1, "than": [1, 2, 6], "lower": [1, 6], "It": [1, 2, 3, 5, 6], "good": [1, 2, 6], "abov": [1, 2, 6], "sever": [1, 2, 6], "reach": [1, 3, 5, 6], "level": [1, 2, 4, 5, 6], "singl": [1, 2, 3, 5, 6], "addition": 1, "follow": [1, 2, 4, 5, 6], "h_0": 1, "h_": 1, "still": [1, 2], "subseteq": 1, "With": [1, 6], "constraint": [1, 4], "must": [1, 2, 4, 5, 6], "h_i": 1, "_i": 1, "up": [1, 2, 3, 4, 5, 6], "inclus": 1, "imbric": 1, "supseteq": 1, "which": [1, 2, 3, 6], "default": [1, 3, 5, 6], "mapsto": 1, "cup": 1, "succcurlyeq_i": 1, "extend": [1, 4, 5, 6], "natur": [1, 2], "simplifi": 1, "mai": [1, 2, 3, 5, 6], "slightli": 1, "equival": 1, "becaus": [1, 2, 3, 4, 6], "somewhat": [1, 6], "simpl": [1, 6], "well": [1, 2], "ensur": [1, 5, 6], "nd": 1, "behav": [1, 3], "accord": [1, 4, 5, 6], "intuit": 1, "ness": 1, "few": [1, 2, 3, 6], "upper": [1, 6], "select": [1, 2, 6], "ones": [1, 6], "continu": 1, "three": [1, 6], "partial": [1, 3], "full": [1, 2], "To": [1, 2, 3, 4, 6], "further": 1, "thing": [1, 2], "sacrif": 1, "interest": 1, "consid": [1, 2, 4], "four": 1, "math": 1, "m": 1, "physic": [1, 6], "literatur": 1, "l": 1, "histori": 1, "normal": 1, "forget": 1, "clariti": 1, "ll": [1, 2, 3, 4, 6], "instead": [1, 2, 5, 6], "x_m": 1, "x_p": 1, "x_l": 1, "x_h": 1, "1_m": 1, "1_p": 1, "1_l": 1, "1_h": 1, "6": 1, "55": 1, "7": [1, 6], "5": [1, 3, 5, 6], "2_m": 1, "2_p": 1, "2_l": 1, "2_h": 1, "75": 1, "9": [1, 3, 5, 6], "8": 1, "65": 1, "check": [1, 2, 5, 6], "satisfi": [1, 5], "1_i": 1, "2_i": 1, "look": [1, 2, 3], "like": [1, 2, 3, 6], "repres": [1, 5], "lattic": 1, "where": [1, 2, 4, 6], "arrow": 1, "materi": 1, "relationship": 1, "black": 1, "grei": 1, "here": [1, 2, 6], "If": [1, 2, 3, 4, 5, 6], "els": [1, 2], "ye": 1, "unus": 1, "85": 1, "No": 1, "d": [1, 2], "none": 1, "prose": 1, "formul": 1, "who": 1, "excel": 1, "least": [1, 2, 3, 5, 6], "subject": 1, "scientif": 1, "literari": 1, "back": [1, 3], "concept": [1, 3, 4, 6], "common": 1, "addit": [1, 4, 6], "less": [1, 2], "computation": [1, 2], "simpler": 1, "previou": [1, 2, 6], "ne": 1, "threshold": [1, 3, 5, 6], "wa": [1, 2, 3, 5, 6], "agn\u00e8": 1, "leroi": 1, "et": 1, "al": 1, "multipl": [1, 2, 6], "w_i": 1, "sum_": 1, "again": 1, "answer": 1, "question": [1, 4, 6], "try": [1, 2, 3, 5, 6], "w_m": 1, "w_p": 1, "w_l": 1, "w_h": 1, "give": [1, 2, 5, 6], "16": 1, "equat": 1, "amongst": [1, 6], "lt": 1, "notin": 1, "ge": 1, "teh": 1, "last": [1, 2, 5, 6], "solut": 1, "By": [1, 2, 5, 6], "contrast": 1, "express": 1, "greater": [1, 6], "fewer": 1, "success": [1, 6], "measur": [1, 2, 3], "main": [1, 2, 4], "metric": 1, "quicker": 1, "portion": [1, 3, 5, 6], "real": [1, 3, 5, 6], "world": [1, 3, 5], "noisi": 1, "inconsist": 1, "prevent": 1, "being": [1, 3, 4, 6], "result": [1, 2, 3, 5, 6], "those": [1, 2, 3, 5, 6], "imposs": 1, "100": [1, 3, 6], "summari": 1, "typic": 1, "failur": [1, 2], "quickest": 1, "noth": [1, 2, 6], "goal": 1, "far": [1, 6], "longest": 1, "doesn": [1, 3, 4], "exist": [1, 4, 6], "simpli": [1, 6], "anyth": [1, 2, 5], "configur": [1, 2], "take": [1, 2, 6], "long": [1, 2, 3], "comput": [1, 3, 5], "resourc": 1, "alwai": [1, 6], "longer": [1, 2], "practic": 1, "ali": 1, "tlili": 1, "khale": 1, "belahc\u00e8n": 1, "effici": 1, "maxsat": 1, "conveni": 1, "gather": 1, "place": [1, 2, 3], "olivi": 1, "hi": 1, "ph": 1, "thesi": 1, "originali": 1, "emma": 1, "dixneuf": 1, "thibault": 1, "monsel": 1, "thoma": 1, "vindard": 1, "sequenti": 1, "parallel": 1, "known": 1, "origin": [1, 3, 6], "compar": [1, 2], "how": [1, 3, 4, 6], "evalu": 1, "qualiti": 1, "clean": 1, "haven": [1, 3], "done": [1, 2, 3], "recommend": [1, 2, 3, 4, 6], "strongli": [2, 6], "familiar": [2, 3], "rest": 2, "project": [2, 3], "also": [2, 3, 6], "exampl": [2, 6], "much": [2, 6], "what": [2, 4], "talk": 2, "about": [2, 3, 4, 5], "pleas": [2, 6], "awar": 2, "work": [2, 3, 4], "progress": [2, 5, 6], "write": [2, 4, 5], "kind": [2, 3, 5, 6], "exercis": 2, "clairvoy": 2, "predict": 2, "got": 2, "wrong": 2, "hesit": 2, "contact": 2, "explain": [2, 3, 4, 6], "begin": [2, 6], "scale": [2, 6], "minor": 2, "major": 2, "refactor": 2, "typo": 2, "github": [2, 3, 4, 5], "web": 2, "interfac": [2, 4], "spare": 2, "need": [2, 3, 4, 6], "even": [2, 4, 6], "clone": 2, "repositori": 2, "think": [2, 3], "entir": [2, 6], "architectur": 2, "deserv": 2, "rewrit": 2, "discuss": [2, 4], "http": [2, 5], "com": 2, "mic": [2, 4, 5], "lab": [2, 5], "don": [2, 3, 5], "spend": 2, "someth": [2, 3], "reject": 2, "reason": [2, 6], "appar": 2, "moment": 2, "know": [2, 4, 6], "yourself": 2, "tell": [2, 6], "report": 2, "everyth": [2, 6], "recogn": 2, "open": [2, 4], "sourc": [2, 3, 4, 5], "intimid": 2, "everyon": 2, "experi": [2, 6], "fluenci": 2, "tool": [2, 3, 5, 6], "willing": 2, "feedback": [2, 6], "assur": 2, "construct": 2, "manner": [2, 6], "similar": [2, 6], "inspir": 2, "git": 2, "grep": 2, "theoldth": 2, "thenewth": 2, "blame": 2, "identifi": [2, 6], "commit": 2, "next": 2, "modifi": [2, 3, 4, 6], "recent": 2, "version": [2, 3, 5, 6], "bash": 2, "nvidia": 2, "runtim": 2, "loop": [2, 6], "repeat": [2, 3, 6], "script": [2, 4], "cach": 2, "subsequ": 2, "faster": 2, "librari": [2, 4], "unit": 2, "etc": [2, 3, 4, 6], "speed": 2, "eventu": 2, "maintain": 2, "pull": 2, "request": 2, "doc": 2, "io": [2, 5], "page": 2, "push": 2, "impact": [2, 6], "under": [2, 4], "save": 2, "onc": [2, 3, 4], "submit": 2, "coverag": 2, "stop": 2, "right": 2, "impli": 2, "skip": [2, 6], "forbid": [2, 6], "automat": 2, "warn": 2, "doe": [2, 6], "explicitli": [2, 6], "doctest": 2, "doctest_opt": 2, "pass": [2, 6], "verbatim": 2, "patch": 2, "argument": [2, 4, 5], "requir": [2, 3, 4, 5, 6], "thin": 2, "wrapper": 2, "basic": [2, 6], "rst": 2, "setup": 2, "py": 2, "manifest": 2, "licenc": 2, "local": 2, "render": 2, "current": [2, 3, 6], "dev": 2, "accompani": 2, "pattern": [2, 6], "inject": 2, "easili": 2, "switch": 2, "particularli": 2, "variant": 2, "benchmark": 2, "perspect": 2, "distinct": 2, "recurs": 2, "piec": 2, "learnmrsortbyweightsprofilesbre": 2, "weightsoptimizationstrategi": 2, "profilesimprovementstrategi": 2, "improveprofileswithaccuracyheuristiconcpu": 2, "improveprofileswithaccuracyheuristicongpu": 2, "costli": 2, "click": 2, "class": 2, "foo": 2, "void": 2, "yes_virtu": 2, "no_virtu": 2, "actualfoo": 2, "overrid": 2, "makefoo": 2, "return": [2, 5], "93": 2, "int": 2, "1": [2, 3, 4, 5, 6], "000": 2, "12": 2, "although": 2, "care": 2, "keep": [2, 3, 4, 6], "case": [2, 4, 6], "thousand": 2, "per": [2, 3, 5, 6], "ok": 2, "polymorph": 2, "frequent": 2, "found": [2, 5, 6], "liblinc": 2, "optim": [2, 4, 6], "linear": [2, 3, 5, 6], "hpp": 2, "linearprogram": 2, "cost": 2, "One": 2, "would": [2, 6], "neg": 2, "consequ": 2, "explicit": [2, 4, 5, 6], "instanti": 2, "explod": 2, "incombinatori": 2, "cpp": 2, "whole": 2, "great": 2, "mainten": 2, "specif": [2, 4, 6], "instanci": 2, "modul": 2, "access": 2, "custom": 2, "side": 2, "happen": 2, "That": [2, 3, 4, 6], "restructuredtext": 2, "sphinx": 2, "extent": 2, "edit": [2, 3], "html": [2, 5], "browser": 2, "section": [2, 4, 6], "anticip": [2, 6], "2024": 2, "famou": 2, "word": 2, "mind": [2, 3], "written": [2, 5, 6], "partli": 2, "usabl": 2, "arguabl": [2, 6], "easier": [2, 3], "core": [2, 6], "intens": 2, "interpret": 2, "multi": 2, "thread": 2, "suggest": [2, 3], "both": [2, 3, 4], "someon": 2, "becom": 2, "motiv": [2, 4], "counter": 2, "through": 2, "breedingstrategi": 2, "reduc": [2, 6], "high": [2, 6], "On": 2, "optimizeweightsusingglop": 2, "spent": 2, "locat": 2, "rare": 2, "signific": 2, "easi": [2, 4, 6], "old": [2, 4], "advertis": 2, "boil": 2, "down": 2, "veri": [2, 6], "effect": [2, 3, 6], "unless": 2, "clear": 2, "bilion": 2, "todo": [2, 3, 4], "later": [2, 3, 4], "step": 2, "previous": 2, "mimic": 2, "null": 2, "As": [2, 6], "via": 2, "reli": [2, 4, 6], "duck": 2, "type": [2, 3, 5, 6], "dockerfil": 2, "foobar": 2, "typedef": 2, "liblincs_modul": 2, "__init__": 2, "command_line_interfac": 2, "txt": 2, "accordingli": 2, "procedur": 2, "0a790ef": 2, "modif": 2, "had": 2, "been": 2, "restructur": 2, "sinc": 2, "besid": 2, "x86_64": 3, "processor": [3, 5, 6], "run": 3, "pip": 3, "system": 3, "platform": 3, "lot": 3, "realli": 3, "go": 3, "rout": 3, "action": 3, "workflow": 3, "probabl": 3, "kindli": [3, 4], "ask": [3, 4], "contribut": [3, 4], "easiest": 3, "usag": 3, "arg": [3, 5], "infer": [3, 4, 5], "non": [3, 4, 5], "compensatori": [3, 4, 5], "mcda": [3, 5], "show": [3, 4, 5], "exit": [3, 5], "messag": 3, "graph": [3, 5, 6], "organ": 3, "sub": 3, "design": [3, 4], "handl": [3, 5], "conceptu": [3, 4, 6], "overview": [3, 4, 6], "yml": [3, 6], "10": [3, 6], "seed": [3, 5, 6], "40": 3, "format_vers": [3, 5, 6], "value_typ": [3, 5, 6], "category_correl": [3, 5, 6], "grow": [3, 5, 6], "min_valu": [3, 5, 6], "max_valu": [3, 5, 6], "Then": [3, 6], "41": 3, "accepted_valu": [3, 5, 6], "255905151": 3, "676961303": 3, "0551739037": 3, "324553937": 3, "162252158": 3, "673279881": 3, "0526000932": 3, "598555863": 3, "sufficient_coalit": [3, 5, 6], "criterion_weight": [3, 5, 6], "147771254": 3, "618687689": 3, "406786472": 3, "0960085914": 3, "refer": [3, 4, 6], "mean": [3, 4, 6], "png": [3, 5, 6], "1000": 3, "util": [3, 4], "split": 3, "interact": 3, "42": 3, "misclassifi": [3, 5, 6], "count": [3, 5, 6], "37454012": 3, "796543002": 3, "95071429": 3, "183434784": 3, "731993914": 3, "779690981": 3, "598658502": 3, "596850157": 3, "156018645": 3, "445832759": 3, "15599452": 3, "0999749228": 3, "0580836125": 3, "4592489": 3, "866176128": 3, "333708614": 3, "601114988": 3, "14286682": 3, "708072603": 3, "650888503": 3, "five": 3, "legend": 3, "directli": 3, "structur": [3, 5, 6], "reconstitut": 3, "numer": [3, 6], "43": 3, "maxim": [3, 5], "discrimin": [3, 5], "glop": [3, 5, 6], "reiniti": [3, 5, 6], "accur": [3, 5, 6], "target": [3, 5, 6], "22": 3, "339874953": 3, "421424538": 3, "0556534864": 3, "326433569": 3, "162616938": 3, "67343241": 3, "0878681168": 3, "252649099": 3, "01327896e": 3, "06": 3, "999998987": 3, "howev": 3, "reclassifi": 3, "10000": 3, "diff": 3, "tail": 3, "521c521": 3, "520": 3, "617141366": 3, "326259822": 3, "901315808": 3, "460642993": 3, "614c614": 3, "613": 3, "547554553": 3, "0552174859": 3, "690436542": 3, "511019647": 3, "2595c2595": 3, "2594": 3, "234433308": 3, "780464768": 3, "162389532": 3, "622178912": 3, "2609c2609": 3, "2608": 3, "881479025": 3, "055544015": 3, "82936728": 3, "853676081": 3, "3128c3128": 3, "3127": 3, "146532759": 3, "324625522": 3, "926948965": 3, "817662537": 3, "3691c3691": 3, "3690": 3, "157966524": 3, "326220334": 3, "925864339": 3, "844398499": 3, "3774c3774": 3, "3773": 3, "484662831": 3, "325856268": 3, "966965079": 3, "980859697": 3, "4214c4214": 3, "4213": 3, "254853547": 3, "32587868": 3, "809560299": 3, "554913938": 3, "4265c4265": 3, "4264": 3, "533336997": 3, "0553873181": 3, "735466599": 3, "457309902": 3, "5346c5346": 3, "5345": 3, "815349102": 3, "580399215": 3, "162403136": 3, "995580792": 3, "5781c5781": 3, "5780": 3, "333638728": 3, "325458288": 3, "69509089": 3, "761675119": 3, "8032c8032": 3, "8031": 3, "602598071": 3, "0554222316": 3, "920983374": 3, "00566159375": 3, "9689c9689": 3, "9688": 3, "940304875": 3, "885046899": 3, "162586793": 3, "515185535": 3, "9934c9934": 3, "9933": 3, "705289483": 3, "11529737": 3, "162508503": 3, "0438248962": 3, "9986": 3, "ve": [3, 4, 6], "demonstr": 3, "comfort": 3, "collect": 4, "avail": 4, "gnu": 4, "lesser": 4, "v3": 4, "indic": [4, 6], "copi": 4, "manag": 4, "paper": 4, "cite": 4, "remark": [4, 6], "issu": 4, "research": 4, "team": 4, "centralesup\u00e9lec": 4, "author": 4, "alphabet": 4, "laurent": 4, "cabaret": 4, "vincent": 4, "jacqu": 4, "engin": 4, "mousseau": 4, "expertis": 4, "wassila": 4, "ouerdan": 4, "abl": 4, "specialist": 4, "below": 4, "replac": 4, "favorit": 4, "either": [4, 5, 6], "hand": [4, 6], "former": 4, "latter": 4, "behind": 4, "doubt": 4, "highli": 4, "bit": [4, 6], "semant": 4, "declar": 4, "semver": 4, "exclus": 4, "backward": [4, 6], "compat": [4, 6], "client": 4, "recompil": 4, "futur": [4, 5], "behavior": [4, 6], "especi": 4, "regard": 4, "plan": 4, "chose": 4, "unanticip": 4, "advic": 4, "matter": 4, "implicit": 4, "potenti": 4, "lead": [4, 6], "input": [4, 6], "incompat": 4, "solv": [4, 5, 6], "impos": 4, "text": 5, "standard": [5, 6], "object": 5, "properti": 5, "string": 5, "const": 5, "item": [5, 6], "enumar": 5, "enum": 5, "peak": [5, 6], "unknown": [5, 6], "additionalproperti": 5, "fals": 5, "minitem": 5, "determin": [5, 6], "oneof": 5, "lowest": 5, "comma": 5, "ignor": [5, 6], "quot": 5, "whitespac": 5, "column": [5, 6], "associ": [5, 6], "Their": 5, "empti": [5, 6], "unclassifi": 5, "testing_set": 5, "output_altern": 5, "output_model": 5, "random_se": 5, "model_typ": 5, "mrsort__fixed_weights_sum": 5, "criteria_count": 5, "categories_count": 5, "output_problem": 5, "alternatives_count": 5, "max_imbal": 5, "balanc": [5, 6], "forc": 5, "size": [5, 6], "perfectli": [5, 6], "fraction": [5, 6], "misclassified_count": 5, "whether": 5, "otherwis": 5, "quiet": 5, "learning_set": 5, "ucncs__strategi": 5, "transform": 5, "mrsort__strategi": 5, "top": [5, 6], "mrsort__weights_profiles_breed__target_accuraci": 5, "mrsort__weights_profiles_breed__max_iter": 5, "mrsort__weights_profiles_breed__max_iterations_without_progress": 5, "mrsort__weights_profiles_breed__max_dur": 5, "mrsort__weights_profiles_breed__max_duration_without_progress": 5, "mrsort__weights_profiles_breed__models_count": 5, "temporari": 5, "mrsort__weights_profiles_breed__initialization_strategi": 5, "mrsort__weights_profiles_breed__weights_strategi": 5, "mrsort__weights_profiles_breed__linear_program__solv": 5, "mrsort__weights_profiles_breed__profiles_strategi": 5, "mrsort__weights_profiles_breed__accuracy_heuristic__random_se": 5, "mrsort__weights_profiles_breed__accuracy_heuristic__processor": 5, "mrsort__weights_profiles_breed__breed_strategi": 5, "mrsort__weights_profiles_breed__reinitialize_least_accurate__port": 5, "stderr": 5, "while": 5, "establish": 6, "manipul": 6, "conform": 6, "20": 6, "low": 6, "medium": 6, "kei": 6, "exactli": 6, "respect": 6, "third": 6, "evolv": 6, "enumer": 6, "resp": 6, "correspond": 6, "expert": 6, "knowledg": 6, "extrem": 6, "deleg": 6, "fourth": 6, "rel": 6, "fact": 6, "technic": 6, "embed": 6, "unwant": 6, "referenc": 6, "robust": 6, "content": 6, "hash": 6, "respons": 6, "track": 6, "along": 6, "49331188": 6, "15": 6, "9249287": 6, "49812794": 6, "15932083": 6, "938825667": 6, "343733728": 6, "lack": 6, "transpos": 6, "focuss": 6, "enter": 6, "boundari": 6, "minu": 6, "matrix": 6, "made": 6, "ident": 6, "upset": 6, "anoth": 6, "8156891": 6, "39045048": 6, "25551182": 6, "45864725": 6, "18": 6, "4786396": 6, "31117153": 6, "0154629": 6, "33949804": 6, "30789757": 6, "66963387": 6, "These": 6, "reproduc": 6, "parent": 6, "left": 6, "saw": 6, "tweak": 6, "notabl": 6, "choos": 6, "randomli": 6, "category_corel": 6, "equal": 6, "hard": 6, "600": 6, "200": 6, "160": 6, "240": 6, "significantli": 6, "popul": 6, "lenient": 6, "seen": 6, "own": 6, "goe": 6, "sens": 6, "branch": 6, "realiti": 6, "dot": 6, "scheme": 6, "abil": 6, "collis": 6, "join": 6, "smaller": 6, "softwar": 6, "reus": 6, "directori": 6, "small": 6, "difficult": 6, "parrallel": 6, "Or": 6, "mayb": 6, "met": 6, "exceed": 6, "googl": 6, "OR": 6, "slight": 6, "capabl": 6, "exact": 6, "pick": 6, "Not": 6, "said": 6, "tradoff": 6, "offer": 6, "highligt": 6, "999706864": 6, "0552680492": 6, "325211823": 6, "161919117": 6, "672662616": 6, "995402098": 6, "996754646": 6, "craft": 6, "similarli": 6, "serv": 6, "correctli": 6, "creat": 6, "graphic": 6, "represent": 6, "pretti": 6, "feel": 6, "free": 6, "out": 6}, "objects": {"./publish.sh": [[2, 0, 1, "cmdoption-.-publish.sh-arg-LEVEL", "LEVEL"]], "./run-development-cycle.sh": [[2, 0, 1, "cmdoption-.-run-development-cycle.sh-doctest-option", "--doctest-option"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-forbid-chrones", "--forbid-chrones"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-forbid-gpu", "--forbid-gpu"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-single-python-version", "--single-python-version"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-skip-long", "--skip-long"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-skip-unit", "--skip-unit"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-stop-after-unit", "--stop-after-unit"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-unit-coverage", "--unit-coverage"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-with-docs", "--with-docs"]], "lincs-classification-accuracy": [[5, 0, 1, "cmdoption-lincs-classification-accuracy-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-classification-accuracy-arg-PROBLEM", "PROBLEM"], [5, 0, 1, "cmdoption-lincs-classification-accuracy-arg-TESTING_SET", "TESTING_SET"]], "lincs-classify": [[5, 0, 1, "cmdoption-lincs-classify-output-alternatives", "--output-alternatives"], [5, 0, 1, "cmdoption-lincs-classify-arg-ALTERNATIVES", "ALTERNATIVES"], [5, 0, 1, "cmdoption-lincs-classify-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-classify-arg-PROBLEM", "PROBLEM"]], "lincs-generate-classification-model": [[5, 0, 1, "cmdoption-lincs-generate-classification-model-model-type", "--model-type"], [5, 0, 1, "cmdoption-lincs-generate-classification-model-output-model", "--output-model"], [5, 0, 1, "cmdoption-lincs-generate-classification-model-random-seed", "--random-seed"], [5, 0, 1, "cmdoption-lincs-generate-classification-model-arg-PROBLEM", "PROBLEM"]], "lincs-generate-classification-model.--mrsort": [[5, 0, 1, "cmdoption-lincs-generate-classification-model-mrsort.fixed-weights-sum", "fixed-weights-sum"]], "lincs-generate-classification-problem": [[5, 0, 1, "cmdoption-lincs-generate-classification-problem-allow-decreasing-criteria", "--allow-decreasing-criteria"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-denormalized-min-max", "--denormalized-min-max"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-output-problem", "--output-problem"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-random-seed", "--random-seed"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-arg-CATEGORIES_COUNT", "CATEGORIES_COUNT"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-arg-CRITERIA_COUNT", "CRITERIA_COUNT"]], "lincs-generate-classified-alternatives": [[5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-max-imbalance", "--max-imbalance"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-misclassified-count", "--misclassified-count"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-output-alternatives", "--output-alternatives"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-random-seed", "--random-seed"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-arg-ALTERNATIVES_COUNT", "ALTERNATIVES_COUNT"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-arg-PROBLEM", "PROBLEM"]], "lincs-info-has-gpu": [[5, 0, 1, "cmdoption-lincs-info-has-gpu-quiet", "--quiet"]], "lincs-learn-classification-model": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-model-type", "--model-type"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-output-model", "--output-model"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-arg-LEARNING_SET", "LEARNING_SET"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-arg-PROBLEM", "PROBLEM"]], "lincs-learn-classification-model.--mrsort": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.strategy", "strategy"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed.accuracy-heuristic": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.processor", "processor"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.random-seed", "random-seed"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.breed-strategy", "breed-strategy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.initialization-strategy", "initialization-strategy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration", "max-duration"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration-without-progress", "max-duration-without-progress"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations", "max-iterations"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations-without-progress", "max-iterations-without-progress"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.models-count", "models-count"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.profiles-strategy", "profiles-strategy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.target-accuracy", "target-accuracy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.verbose", "verbose"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.weights-strategy", "weights-strategy"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed.linear-program": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.linear-program.solver", "solver"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed.reinitialize-least-accurate": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.reinitialize-least-accurate.portion", "portion"]], "lincs-learn-classification-model.--ucncs": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-ucncs.strategy", "strategy"]], "lincs-visualize-classification-model": [[5, 0, 1, "cmdoption-lincs-visualize-classification-model-alternatives", "--alternatives"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-alternatives-count", "--alternatives-count"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-arg-OUTPUT", "OUTPUT"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-arg-PROBLEM", "PROBLEM"]], "lincs": [[5, 0, 1, "cmdoption-lincs-version", "--version"]]}, "objtypes": {"0": "std:cmdoption"}, "objnames": {"0": ["std", "cmdoption", "program option"]}, "titleterms": {"changelog": 0, "version": [0, 4], "0": 0, "10": 0, "2": 0, "9": 0, "8": 0, "7": 0, "5": 0, "6": 0, "4": 0, "1": [0, 1], "3": 0, "conceptu": 1, "overview": 1, "notat": 1, "about": [1, 6], "classif": [1, 5, 6], "formal": 1, "definit": [1, 2], "learn": [1, 5, 6], "classifi": [1, 5, 6], "non": 1, "compensatori": 1, "sort": 1, "nc": [1, 5], "exampl": 1, "particular": 1, "case": 1, "u": 1, "c": [1, 2], "textsf": 1, "k": 1, "mr": 1, "accuraci": [1, 5, 6], "synthet": [1, 6], "data": [1, 6], "next": [1, 6], "contributor": [2, 4], "guid": [2, 6], "do": 2, "contribut": 2, "develop": [2, 4], "depend": 2, "cycl": 2, "run": 2, "sh": 2, "publish": 2, "directori": 2, "structur": 2, "gener": [2, 5, 6], "design": 2, "strategi": [2, 6], "But": 2, "bewar": 2, "virtual": 2, "function": 2, "call": 2, "so": 2, "why": 2, "all": 2, "templat": 2, "how": 2, "tos": 2, "updat": 2, "document": 2, "choos": 2, "python": 2, "your": 2, "chang": 2, "tweak": 2, "an": [2, 6], "exist": 2, "add": 2, "new": [2, 4], "extens": 2, "point": 2, "dynam": 2, "static": 2, "default": [2, 4], "behavior": 2, "backward": 2, "compat": 2, "extern": 2, "solver": 2, "get": [3, 4], "start": [3, 4], "linc": [3, 4, 5, 6], "us": [3, 6], "command": [3, 5], "line": [3, 5], "interfac": [3, 5], "what": [3, 6], "now": 3, "readm": 4, "project": 4, "goal": 4, "provid": 4, "mcda": 4, "tool": 4, "usabl": 4, "out": 4, "box": 4, "base": [4, 6], "algorithm": 4, "except": 4, "valu": [4, 6], "file": [4, 5, 6], "format": [4, 5, 6], "itself": 4, "refer": 5, "The": 5, "problem": [5, 6], "model": [5, 6], "altern": [5, 6], "info": 5, "ha": 5, "gpu": 5, "visual": [5, 6], "user": 6, "criteria": 6, "categori": 6, "accept": 6, "suffici": 6, "coalit": 6, "comment": 6, "random": 6, "whole": 6, "tree": 6, "option": 6, "avail": 6, "sub": 6, "weight": 6, "profil": 6, "breed": 6, "termin": 6, "step": 6, "sat": 6, "comput": 6, "": 6}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 58}, "alltitles": {"Changelog": [[0, "changelog"]], "Versions 0.10.0 to 0.10.2": [[0, "versions-0-10-0-to-0-10-2"]], "Versions 0.9.0 to 0.9.2": [[0, "versions-0-9-0-to-0-9-2"]], "Version 0.8.7": [[0, "version-0-8-7"]], "Versions 0.8.5 to 0.8.6": [[0, "versions-0-8-5-to-0-8-6"]], "Versions 0.8.0 to 0.8.4": [[0, "versions-0-8-0-to-0-8-4"]], "Version 0.7.0": [[0, "version-0-7-0"]], "Version 0.6.0": [[0, "version-0-6-0"]], "Version 0.5.1": [[0, "version-0-5-1"]], "Version 0.5.0": [[0, "version-0-5-0"]], "Version 0.4.5": [[0, "version-0-4-5"]], "Versions 0.4.1 to 0.4.4": [[0, "versions-0-4-1-to-0-4-4"]], "Version 0.4.0": [[0, "version-0-4-0"]], "Versions 0.3.4 to 0.3.7": [[0, "versions-0-3-4-to-0-3-7"]], "Version 0.3.3": [[0, "version-0-3-3"]], "Version 0.3.2": [[0, "version-0-3-2"]], "Version 0.3.1": [[0, "version-0-3-1"]], "Version 0.3.0": [[0, "version-0-3-0"]], "Version 0.2.2": [[0, "version-0-2-2"]], "Version 0.2.1": [[0, "version-0-2-1"]], "Version 0.2.0": [[0, "version-0-2-0"]], "Version 0.1.3": [[0, "version-0-1-3"]], "Get started": [[3, "get-started"], [4, "get-started"]], "Get lincs": [[3, "get-lincs"]], "Start using lincs\u2019 command-line interface": [[3, "start-using-lincs-command-line-interface"]], "What now?": [[3, "what-now"]], "README": [[4, "readme"]], "Contributors": [[4, "contributors"]], "Project goals": [[4, "project-goals"]], "Provide MCDA tools usable out of the box": [[4, "provide-mcda-tools-usable-out-of-the-box"]], "Provide a base for developing new MCDA algorithms": [[4, "provide-a-base-for-developing-new-mcda-algorithms"]], "Versioning": [[4, "versioning"]], "Exceptions": [[4, "exceptions"]], "Default values": [[4, "default-values"]], "File formats": [[4, "file-formats"], [5, "file-formats"]], "Develop lincs itself": [[4, "develop-lincs-itself"]], "Conceptual overview": [[1, "conceptual-overview"]], "Notation": [[1, "notation"]], "About classification": [[1, "about-classification"]], "Formal definition": [[1, null], [1, null], [1, null], [1, null], [1, null]], "Learning and classifying": [[1, "learning-and-classifying"]], "Non-compensatory sorting (NCS)": [[1, "non-compensatory-sorting-ncs"]], "Example": [[1, "example"], [1, "id1"]], "Particular cases": [[1, "particular-cases"]], "U^c \\textsf{-} NCS": [[1, "u-c-textsf-ncs"]], "1 \\textsf{-} U^c \\textsf{-} NCS a.k.a. MR-Sort": [[1, "textsf-u-c-textsf-ncs-a-k-a-mr-sort"]], "Classification accuracy": [[1, "classification-accuracy"]], "Synthetic data": [[1, "synthetic-data"]], "Next": [[1, "next"]], "Contributor guide": [[2, "contributor-guide"]], "Do contribute!": [[2, "do-contribute"]], "Development dependencies": [[2, "development-dependencies"]], "Development cycle": [[2, "development-cycle"]], "./run-development-cycle.sh": [[2, "run-development-cycle-sh"]], "./publish.sh": [[2, "publish-sh"]], "Directory structure": [[2, "directory-structure"]], "General design": [[2, "general-design"]], "Strategies": [[2, "strategies"], [6, "strategies"]], "But beware of virtual function calls": [[2, "but-beware-of-virtual-function-calls"]], "So, why not all templates?": [[2, "so-why-not-all-templates"]], "How-tos": [[2, "how-tos"]], "Update the documentation": [[2, "update-the-documentation"]], "Choose Python or C++ for your change": [[2, "choose-python-or-c-for-your-change"]], "Tweak an existing strategy": [[2, "tweak-an-existing-strategy"]], "Add a new strategy": [[2, "add-a-new-strategy"]], "Add a new extension point": [[2, "add-a-new-extension-point"]], "Dynamic or static?": [[2, "dynamic-or-static"]], "Definition of an dynamic extension point": [[2, "definition-of-an-dynamic-extension-point"]], "Definition of an static extension point": [[2, "definition-of-an-static-extension-point"]], "Default behavior for backward compatibility": [[2, "default-behavior-for-backward-compatibility"]], "Add an external solver": [[2, "add-an-external-solver"]], "User Guide": [[6, "user-guide"]], "Formatting data for lincs": [[6, "formatting-data-for-lincs"]], "\u201cProblem\u201d files": [[6, "problem-files"]], "Criteria": [[6, "criteria"]], "Categories": [[6, "categories"]], "\u201cModel\u201d files": [[6, "model-files"]], "Accepted values": [[6, "accepted-values"]], "Sufficient coalitions": [[6, "sufficient-coalitions"]], "\u201cAlternatives\u201d files": [[6, "alternatives-files"]], "Comments in generated files": [[6, "comments-in-generated-files"]], "Generating synthetic data": [[6, "generating-synthetic-data"]], "About randomness": [[6, "about-randomness"]], "Generating a problem": [[6, "generating-a-problem"]], "Generating a model": [[6, "generating-a-model"]], "Generating alternatives": [[6, "generating-alternatives"]], "Learning a model": [[6, "learning-a-model"]], "An whole tree of options": [[6, "an-whole-tree-of-options"]], "Available learning (sub-)strategies": [[6, "available-learning-sub-strategies"]], "Weights, profiles, breed": [[6, "weights-profiles-breed"]], "General options": [[6, "general-options"]], "Termination": [[6, "termination"]], "\u201cWeights\u201d step": [[6, "weights-step"]], "\u201cProfiles\u201d step": [[6, "profiles-step"]], "\u201cBreed\u201d step": [[6, "breed-step"]], "SAT-based strategies": [[6, "sat-based-strategies"]], "Using a model": [[6, "using-a-model"]], "Classifying alternatives": [[6, "classifying-alternatives"]], "Computing a classification accuracy": [[6, "computing-a-classification-accuracy"]], "Visualizing a model and alternatives": [[6, "visualizing-a-model-and-alternatives"]], "What\u2019s next?": [[6, "what-s-next"]], "Reference": [[5, "reference"]], "The problem file": [[5, "the-problem-file"]], "The NCS model file": [[5, "the-ncs-model-file"]], "The alternatives file": [[5, "the-alternatives-file"]], "Command-line interface": [[5, "command-line-interface"]], "lincs": [[5, "lincs"]], "classification-accuracy": [[5, "lincs-classification-accuracy"]], "classify": [[5, "lincs-classify"]], "generate": [[5, "lincs-generate"]], "classification-model": [[5, "lincs-generate-classification-model"], [5, "lincs-learn-classification-model"], [5, "lincs-visualize-classification-model"]], "classification-problem": [[5, "lincs-generate-classification-problem"]], "classified-alternatives": [[5, "lincs-generate-classified-alternatives"]], "info": [[5, "lincs-info"]], "has-gpu": [[5, "lincs-info-has-gpu"]], "learn": [[5, "lincs-learn"]], "visualize": [[5, "lincs-visualize"]]}, "indexentries": {"--doctest-option": [[2, "cmdoption-.-run-development-cycle.sh-doctest-option"]], "--forbid-chrones": [[2, "cmdoption-.-run-development-cycle.sh-forbid-chrones"]], "--forbid-gpu": [[2, "cmdoption-.-run-development-cycle.sh-forbid-gpu"]], "--single-python-version": [[2, "cmdoption-.-run-development-cycle.sh-single-python-version"]], "--skip-long": [[2, "cmdoption-.-run-development-cycle.sh-skip-long"]], "--skip-unit": [[2, "cmdoption-.-run-development-cycle.sh-skip-unit"]], "--stop-after-unit": [[2, "cmdoption-.-run-development-cycle.sh-stop-after-unit"]], "--unit-coverage": [[2, "cmdoption-.-run-development-cycle.sh-unit-coverage"]], "--with-docs": [[2, "cmdoption-.-run-development-cycle.sh-with-docs"]], "./publish.sh command line option": [[2, "cmdoption-.-publish.sh-arg-LEVEL"]], "./run-development-cycle.sh command line option": [[2, "cmdoption-.-run-development-cycle.sh-doctest-option"], [2, "cmdoption-.-run-development-cycle.sh-forbid-chrones"], [2, "cmdoption-.-run-development-cycle.sh-forbid-gpu"], [2, "cmdoption-.-run-development-cycle.sh-single-python-version"], [2, "cmdoption-.-run-development-cycle.sh-skip-long"], [2, "cmdoption-.-run-development-cycle.sh-skip-unit"], [2, "cmdoption-.-run-development-cycle.sh-stop-after-unit"], [2, "cmdoption-.-run-development-cycle.sh-unit-coverage"], [2, "cmdoption-.-run-development-cycle.sh-with-docs"]], "level": [[2, "cmdoption-.-publish.sh-arg-LEVEL"]], "--allow-decreasing-criteria": [[5, "cmdoption-lincs-generate-classification-problem-allow-decreasing-criteria"]], "--alternatives": [[5, "cmdoption-lincs-visualize-classification-model-alternatives"]], "--alternatives-count": [[5, "cmdoption-lincs-visualize-classification-model-alternatives-count"]], "--denormalized-min-max": [[5, "cmdoption-lincs-generate-classification-problem-denormalized-min-max"]], "--max-imbalance": [[5, "cmdoption-lincs-generate-classified-alternatives-max-imbalance"]], "--misclassified-count": [[5, "cmdoption-lincs-generate-classified-alternatives-misclassified-count"]], "--model-type": [[5, "cmdoption-lincs-generate-classification-model-model-type"], [5, "cmdoption-lincs-learn-classification-model-model-type"]], "--mrsort.fixed-weights-sum": [[5, "cmdoption-lincs-generate-classification-model-mrsort.fixed-weights-sum"]], "--mrsort.strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.strategy"]], "--mrsort.weights-profiles-breed.accuracy-heuristic.processor": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.processor"]], "--mrsort.weights-profiles-breed.accuracy-heuristic.random-seed": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.random-seed"]], "--mrsort.weights-profiles-breed.breed-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.breed-strategy"]], "--mrsort.weights-profiles-breed.initialization-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.initialization-strategy"]], "--mrsort.weights-profiles-breed.linear-program.solver": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.linear-program.solver"]], "--mrsort.weights-profiles-breed.max-duration": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration"]], "--mrsort.weights-profiles-breed.max-duration-without-progress": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration-without-progress"]], "--mrsort.weights-profiles-breed.max-iterations": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations"]], "--mrsort.weights-profiles-breed.max-iterations-without-progress": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations-without-progress"]], "--mrsort.weights-profiles-breed.models-count": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.models-count"]], "--mrsort.weights-profiles-breed.profiles-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.profiles-strategy"]], "--mrsort.weights-profiles-breed.reinitialize-least-accurate.portion": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.reinitialize-least-accurate.portion"]], "--mrsort.weights-profiles-breed.target-accuracy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.target-accuracy"]], "--mrsort.weights-profiles-breed.verbose": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.verbose"]], "--mrsort.weights-profiles-breed.weights-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.weights-strategy"]], "--output-alternatives": [[5, "cmdoption-lincs-classify-output-alternatives"], [5, "cmdoption-lincs-generate-classified-alternatives-output-alternatives"]], "--output-model": [[5, "cmdoption-lincs-generate-classification-model-output-model"], [5, "cmdoption-lincs-learn-classification-model-output-model"]], "--output-problem": [[5, "cmdoption-lincs-generate-classification-problem-output-problem"]], "--quiet": [[5, "cmdoption-lincs-info-has-gpu-quiet"]], "--random-seed": [[5, "cmdoption-lincs-generate-classification-model-random-seed"], [5, "cmdoption-lincs-generate-classification-problem-random-seed"], [5, "cmdoption-lincs-generate-classified-alternatives-random-seed"]], "--ucncs.strategy": [[5, "cmdoption-lincs-learn-classification-model-ucncs.strategy"]], "--version": [[5, "cmdoption-lincs-version"]], "alternatives": [[5, "cmdoption-lincs-classify-arg-ALTERNATIVES"]], "alternatives_count": [[5, "cmdoption-lincs-generate-classified-alternatives-arg-ALTERNATIVES_COUNT"]], "categories_count": [[5, "cmdoption-lincs-generate-classification-problem-arg-CATEGORIES_COUNT"]], "criteria_count": [[5, "cmdoption-lincs-generate-classification-problem-arg-CRITERIA_COUNT"]], "learning_set": [[5, "cmdoption-lincs-learn-classification-model-arg-LEARNING_SET"]], "model": [[5, "cmdoption-lincs-classification-accuracy-arg-MODEL"], [5, "cmdoption-lincs-classify-arg-MODEL"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-MODEL"], [5, "cmdoption-lincs-visualize-classification-model-arg-MODEL"]], "output": [[5, "cmdoption-lincs-visualize-classification-model-arg-OUTPUT"]], "problem": [[5, "cmdoption-lincs-classification-accuracy-arg-PROBLEM"], [5, "cmdoption-lincs-classify-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-PROBLEM"], [5, "cmdoption-lincs-learn-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-visualize-classification-model-arg-PROBLEM"]], "testing_set": [[5, "cmdoption-lincs-classification-accuracy-arg-TESTING_SET"]], "lincs command line option": [[5, "cmdoption-lincs-version"]], "lincs-classification-accuracy command line option": [[5, "cmdoption-lincs-classification-accuracy-arg-MODEL"], [5, "cmdoption-lincs-classification-accuracy-arg-PROBLEM"], [5, "cmdoption-lincs-classification-accuracy-arg-TESTING_SET"]], "lincs-classify command line option": [[5, "cmdoption-lincs-classify-arg-ALTERNATIVES"], [5, "cmdoption-lincs-classify-arg-MODEL"], [5, "cmdoption-lincs-classify-arg-PROBLEM"], [5, "cmdoption-lincs-classify-output-alternatives"]], "lincs-generate-classification-model command line option": [[5, "cmdoption-lincs-generate-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classification-model-model-type"], [5, "cmdoption-lincs-generate-classification-model-mrsort.fixed-weights-sum"], [5, "cmdoption-lincs-generate-classification-model-output-model"], [5, "cmdoption-lincs-generate-classification-model-random-seed"]], "lincs-generate-classification-problem command line option": [[5, "cmdoption-lincs-generate-classification-problem-allow-decreasing-criteria"], [5, "cmdoption-lincs-generate-classification-problem-arg-CATEGORIES_COUNT"], [5, "cmdoption-lincs-generate-classification-problem-arg-CRITERIA_COUNT"], [5, "cmdoption-lincs-generate-classification-problem-denormalized-min-max"], [5, "cmdoption-lincs-generate-classification-problem-output-problem"], [5, "cmdoption-lincs-generate-classification-problem-random-seed"]], "lincs-generate-classified-alternatives command line option": [[5, "cmdoption-lincs-generate-classified-alternatives-arg-ALTERNATIVES_COUNT"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-MODEL"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classified-alternatives-max-imbalance"], [5, "cmdoption-lincs-generate-classified-alternatives-misclassified-count"], [5, "cmdoption-lincs-generate-classified-alternatives-output-alternatives"], [5, "cmdoption-lincs-generate-classified-alternatives-random-seed"]], "lincs-info-has-gpu command line option": [[5, "cmdoption-lincs-info-has-gpu-quiet"]], "lincs-learn-classification-model command line option": [[5, "cmdoption-lincs-learn-classification-model-arg-LEARNING_SET"], [5, "cmdoption-lincs-learn-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-learn-classification-model-model-type"], [5, "cmdoption-lincs-learn-classification-model-mrsort.strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.processor"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.random-seed"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.breed-strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.initialization-strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.linear-program.solver"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration-without-progress"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations-without-progress"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.models-count"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.profiles-strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.reinitialize-least-accurate.portion"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.target-accuracy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.verbose"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.weights-strategy"], [5, "cmdoption-lincs-learn-classification-model-output-model"], [5, "cmdoption-lincs-learn-classification-model-ucncs.strategy"]], "lincs-visualize-classification-model command line option": [[5, "cmdoption-lincs-visualize-classification-model-alternatives"], [5, "cmdoption-lincs-visualize-classification-model-alternatives-count"], [5, "cmdoption-lincs-visualize-classification-model-arg-MODEL"], [5, "cmdoption-lincs-visualize-classification-model-arg-OUTPUT"], [5, "cmdoption-lincs-visualize-classification-model-arg-PROBLEM"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["changelog", "conceptual-overview", "contributor-guide", "get-started", "index", "reference", "user-guide"], "filenames": ["changelog.rst", "conceptual-overview.rst", "contributor-guide.rst", "get-started.rst", "index.rst", "reference.rst", "user-guide.rst"], "titles": ["Changelog", "Conceptual overview", "Contributor guide", "Get started", "README", "Reference", "User Guide"], "terms": {"thi": [0, 1, 2, 3, 4, 5, 6], "i": [0, 1, 2, 3, 4, 5, 6], "first": [0, 1, 2, 3, 5, 6], "releas": [0, 4], "candid": 0, "break": 0, "allow": [0, 1, 2, 4, 5, 6], "more": [0, 1, 2, 3, 4, 6], "flexibl": [0, 4], "descript": [0, 1, 5, 6], "accept": [0, 5], "valu": [0, 1, 2, 3, 5], "model": [0, 1, 3, 4], "json": [0, 5, 6], "schema": [0, 5, 6], "see": [0, 2, 3, 4, 5], "user": [0, 2, 3, 4, 5], "guid": [0, 1, 3, 4, 5], "detail": [0, 2, 3, 4, 6], "renam": [0, 6], "option": [0, 2, 3, 4, 5], "ucnc": [0, 5, 6], "approach": [0, 1, 3, 4, 5, 6], "strategi": [0, 3, 5], "output": [0, 3, 5, 6], "classifi": [0, 3], "altern": [0, 1, 3], "fix": [0, 2, 5, 6], "line": [0, 2, 4, 6], "end": [0, 3], "window": [0, 3, 4, 6], "linc": [0, 1, 2], "visual": [0, 2, 3], "us": [0, 1, 2, 4, 5], "criteria": [0, 1, 3, 5], "": [0, 1, 2, 3, 4, 5], "min": [0, 1, 5, 6], "max": [0, 1, 2, 3, 5, 6], "categori": [0, 1, 3, 5], "correl": [0, 5, 6], "valid": [0, 5, 6], "consist": [0, 1, 2, 6], "problem": [0, 1, 3], "when": [0, 1, 2, 4, 5, 6], "load": 0, "file": [0, 1, 2, 3], "reproduct": [0, 3, 6], "command": [0, 2, 4, 6], "improv": [0, 4, 5, 6], "document": [0, 1, 3, 4, 6], "pre": [0, 1, 5], "process": [0, 5, 6], "learn": [0, 2, 3, 4], "set": [0, 1, 2, 3, 5, 6], "befor": [0, 1, 2, 5, 6], "all": [0, 1, 3, 5, 6], "algorithm": [0, 1, 2], "possibl": [0, 1, 2], "each": [0, 1, 2, 5, 6], "criterion": [0, 1, 3, 5, 6], "ar": [0, 1, 2, 3, 4, 5, 6], "list": [0, 6], "sort": [0, 3, 4, 5, 6], "actual": [0, 1, 2, 5, 6], "start": [0, 1, 2, 5, 6], "so": [0, 1, 3, 4, 6], "now": [0, 1, 2, 6], "have": [0, 1, 2, 3, 5, 6], "increas": [0, 6], "rang": [0, 1, 6], "integ": [0, 1, 5, 6], "simplif": [0, 1], "implement": [0, 1, 2, 6], "perform": [0, 1, 2, 4, 6], "weight": [0, 1, 2, 3, 5], "profil": [0, 1, 2, 3, 5], "breed": [0, 2, 3, 5], "expos": [0, 2], "sufficientcoalit": 0, "upset_root": [0, 5, 6], "python": [0, 1, 4], "name": [0, 3, 5, 6], "imbal": [0, 3, 5, 6], "gener": [0, 1, 3, 4], "produc": [0, 1, 4, 6], "cleaner": 0, "error": 0, "too": [0, 1, 2, 6], "tight": 0, "print": [0, 5, 6], "number": [0, 1, 2, 3, 5, 6], "iter": [0, 2, 3, 5], "wpb": [0, 1, 6], "displai": [0, 6], "comment": [0, 5], "variou": 0, "code": [0, 2, 4, 5, 6], "readabl": 0, "integr": [0, 2], "cuda": [0, 1, 2, 4, 5, 6], "part": [0, 2, 4, 6], "compil": [0, 2, 5], "openmp": [0, 1], "distribut": 0, "binari": [0, 2, 3, 6], "wheel": [0, 2, 3, 6], "durat": [0, 1, 5, 6], "second": [0, 5, 6], "termin": [0, 2, 3, 5], "condit": [0, 3, 6], "after": [0, 2, 4, 6], "make": [0, 2, 3, 4, 5, 6], "chrone": [0, 2], "an": [0, 1, 3, 4, 5], "depend": [0, 3, 4, 6], "linux": [0, 3, 4, 6], "onli": [0, 1, 2, 3, 4, 5, 6], "verbos": [0, 5, 6], "mode": 0, "pernici": 0, "memori": [0, 1], "bug": [0, 2, 4], "bugfix": 0, "sure": [0, 5, 6], "thei": [0, 1, 2, 3, 4, 6], "built": [0, 2, 6], "gpu": [0, 2, 4, 6], "support": [0, 4, 5, 6], "build": [0, 2, 3], "without": [0, 1, 2, 4, 5, 6], "nvcc": 0, "e": [0, 1, 2, 5, 6], "g": [0, 2, 5, 6], "maco": [0, 3, 4, 6], "provid": [0, 1, 2, 3], "info": [0, 3, 6], "ha": [0, 1, 2, 3, 6], "adapt": [0, 4], "classif": [0, 2, 3], "help": [0, 1, 2, 3, 6], "featur": [0, 2, 3, 4, 6], "add": [0, 4, 5, 6], "sat": [0, 1, 2, 5], "coalit": [0, 1, 3, 5], "separ": [0, 1, 5, 6], "hopefulli": 0, "correct": [0, 2, 6], "time": [0, 1, 2, 4, 6], "yaml": [0, 1, 3, 5, 6], "anchor": [0, 3, 6], "alias": 0, "limit": [0, 6], "repetit": [0, 6], "format": [0, 1, 3], "describ": [0, 1, 2, 3, 5, 6], "u": [0, 2, 6], "c": [0, 4, 6], "textsf": [0, 6], "nc": [0, 3, 4, 6], "specifi": [0, 1, 2, 5, 6], "minimum": [0, 1], "maximum": [0, 1, 5], "synthet": [0, 2, 3, 5], "data": [0, 2, 3, 5], "attribut": [0, 1, 6], "denorm": [0, 5, 6], "decreas": [0, 5, 6], "state": 0, "re": [0, 1, 2, 3], "them": [0, 1, 2, 3, 4, 6], "enough": [0, 1, 2, 3], "decim": 0, "store": [0, 1], "float": [0, 6], "point": [0, 6], "avoid": [0, 2, 3, 6], "ani": [0, 2, 6], "loss": 0, "precis": 0, "log": 0, "final": [0, 1, 2, 3, 6], "accuraci": [0, 3], "mrsort": [0, 2, 3, 5, 6], "test": [0, 2, 3], "remov": [0, 3], "buggi": 0, "publish": [0, 4], "method": [0, 1, 6], "misclassify_altern": 0, "synthes": 0, "nois": [0, 6], "expend": 0, "suffici": [0, 1, 3, 5], "root": [0, 2, 5, 6], "manylinux_2_31": 0, "flow": 0, "arrai": [0, 5], "scalar": 0, "between": [0, 1, 2, 3, 5, 6], "api": [0, 2, 4], "yet": [0, 1, 3, 6], "though": [0, 6], "control": [0, 6], "over": 0, "expans": 0, "except": 0, "fail": [0, 1], "develop": [0, 1], "machin": [0, 2, 6], "never": 0, "properli": 0, "heurist": [0, 1, 3, 5, 6], "introduc": [0, 1, 2, 6], "alglib": [0, 2, 5, 6], "lp": [0, 2], "solver": [0, 3, 5, 6], "docker": [0, 2], "imag": [0, 2, 5], "instal": [0, 2, 3, 4], "chang": [0, 3, 4, 6], "domain": [0, 4], "everywher": [0, 2], "packag": [0, 2, 4], "licens": [0, 4], "lgplv3": 0, "miss": [0, 3], "header": [0, 5, 6], "mr": [0, 3, 6], "sobri": [0, 1], "cpu": [0, 2, 3, 4, 5, 6], "sum": [0, 1, 5, 6], "pypi": [0, 2], "websit": 0, "pseudo": [0, 1, 3, 4, 5, 6], "random": [0, 1, 3, 4, 5], "kick": 0, "off": 0, "effort": [0, 6], "quit": [0, 1, 2, 6], "nice": 0, "readm": [0, 2, 6], "initi": [0, 3, 5, 6], "public": [0, 2, 4], "littl": 0, "function": [0, 1], "In": [1, 4, 6], "we": [1, 2, 3, 4, 6], "denot": 1, "interv": 1, "from": [1, 2, 3, 4, 5, 6], "b": 1, "includ": 1, "most": [1, 2, 4, 5, 6], "often": [1, 2, 3, 6], "zero": 1, "choic": [1, 2, 6], "match": 1, "index": [1, 2, 4], "convent": 1, "program": [1, 2, 3, 5, 6], "languag": [1, 2], "our": [1, 2, 3, 4, 6], "close": [1, 3], "For": [1, 2, 5, 6], "0": [1, 2, 3, 4, 5, 6], "4": [1, 3, 6], "2": [1, 3, 5, 6], "3": [1, 3, 4, 6], "note": [1, 2, 3, 4, 6], "n": [1, 3], "contain": [1, 2, 3, 5, 6], "element": [1, 6], "given": [1, 2, 6], "its": [1, 2, 3, 4, 5, 6], "subset": [1, 6], "power": 1, "mathcal": 1, "p": 1, "focus": 1, "task": [1, 2], "order": [1, 4, 6], "worst": 1, "best": [1, 2, 6], "possibli": 1, "some": [1, 2, 4, 6], "intermedi": [1, 5, 6], "assign": 1, "base": [1, 2, 3, 5], "The": [1, 2, 3, 4, 6], "constitut": [1, 4], "itself": [1, 3, 5], "vocabulari": 1, "voluntarili": 1, "abstract": [1, 2], "wide": 1, "applic": 1, "concret": [1, 2], "might": [1, 2, 4], "let": [1, 6], "sai": 1, "you": [1, 2, 3, 4, 5, 6], "want": [1, 2, 3, 4, 6], "scholarship": 1, "student": 1, "academ": [1, 4], "your": [1, 3, 4, 6], "fund": 1, "polici": 1, "grade": 1, "should": [1, 2, 3, 4, 5, 6], "get": [1, 2, 5, 6], "And": [1, 2, 3, 6], "favor": [1, 6], "younger": 1, "come": [1, 6], "modest": 1, "background": 1, "differ": [1, 2, 3, 5, 6], "topic": 1, "ag": 1, "famili": 1, "incom": 1, "same": [1, 2, 3, 4, 5, 6], "could": [1, 2, 3, 6], "appli": [1, 2, 4, 6], "triag": 1, "patient": 1, "hospit": 1, "vital": 1, "sign": 1, "A": [1, 2, 6], "defin": [1, 2, 6], "mathbb": 1, "geq": 1, "x_i": 1, "_": 1, "total": [1, 6], "preccurlyeq_i": 1, "h": 1, "prec": 1, "do": [1, 3, 4, 6], "confus": 1, "expon": 1, "just": [1, 2, 4, 5, 6], "cartesian": [1, 2], "product": [1, 2], "x": 1, "prod_": 1, "x_0": 1, "x_": 1, "read": [1, 2, 3, 4, 5, 6], "inform": [1, 3, 5, 6], "csv": [1, 3, 5, 6], "autom": 1, "Its": [1, 4, 5, 6], "alreadi": [1, 4, 6], "new": [1, 3, 6], "call": [1, 6], "train": [1, 3, 5], "ground": 1, "truth": [1, 5], "phase": 1, "f": 1, "rightarrow": 1, "parametr": 1, "form": [1, 2, 6], "find": [1, 2, 4, 6], "paramet": [1, 2], "fit": [1, 2], "expect": [1, 2, 4, 6], "higher": [1, 6], "better": [1, 4], "But": [1, 4, 6], "sometim": 1, "import": [1, 2, 6], "can": [1, 2, 3, 4, 5, 6], "t": [1, 2, 3, 4, 5], "compens": 1, "other": [1, 2, 4, 6], "wai": [1, 2, 3, 4, 5, 6], "captur": [1, 6], "idea": [1, 2], "There": [1, 3], "mani": [1, 5, 6], "share": 1, "vari": 1, "one": [1, 2, 3, 4, 5, 6], "were": [1, 6], "deni": 1, "bouyssou": 1, "thierri": 1, "marchant": 1, "articl": 1, "axiomat": 1, "noncompensatori": 1, "mcdm": 1, "two": [1, 3, 4, 6], "ii": 1, "than": [1, 2, 6], "lower": [1, 6], "It": [1, 2, 3, 5, 6], "good": [1, 2, 6], "abov": [1, 2, 6], "sever": [1, 2, 6], "reach": [1, 3, 5, 6], "level": [1, 2, 4, 5, 6], "singl": [1, 2, 3, 5, 6], "addition": 1, "follow": [1, 2, 4, 5, 6], "h_0": 1, "h_": 1, "still": [1, 2], "subseteq": 1, "With": [1, 6], "constraint": [1, 4], "must": [1, 2, 4, 5, 6], "h_i": 1, "_i": 1, "up": [1, 2, 3, 4, 5, 6], "inclus": 1, "imbric": 1, "supseteq": 1, "which": [1, 2, 3, 6], "default": [1, 3, 5, 6], "mapsto": 1, "cup": 1, "succcurlyeq_i": 1, "extend": [1, 4, 5, 6], "natur": [1, 2], "simplifi": 1, "mai": [1, 2, 3, 5, 6], "slightli": 1, "equival": 1, "becaus": [1, 2, 3, 4, 6], "somewhat": [1, 6], "simpl": [1, 6], "well": [1, 2], "ensur": [1, 5, 6], "behav": [1, 3], "accord": [1, 4, 5, 6], "intuit": 1, "ness": 1, "few": [1, 2, 3, 6], "upper": [1, 6], "select": [1, 2, 6], "ones": [1, 6], "continu": 1, "three": [1, 6], "partial": [1, 3], "full": [1, 2], "To": [1, 2, 3, 4, 6], "further": 1, "thing": [1, 2], "sacrif": 1, "interest": 1, "consid": [1, 2, 4], "four": 1, "math": 1, "m": 1, "physic": [1, 6], "literatur": 1, "l": 1, "histori": 1, "normal": 1, "forget": 1, "clariti": 1, "ll": [1, 2, 3, 4, 6], "instead": [1, 2, 5, 6], "x_m": 1, "x_p": 1, "x_l": 1, "x_h": 1, "1_m": 1, "1_p": 1, "1_l": 1, "1_h": 1, "6": 1, "55": 1, "7": [1, 6], "5": [1, 3, 5, 6], "2_m": 1, "2_p": 1, "2_l": 1, "2_h": 1, "75": 1, "9": [1, 3, 5, 6], "8": 1, "65": 1, "check": [1, 2, 5, 6], "satisfi": [1, 5], "1_i": 1, "2_i": 1, "look": [1, 2, 3], "like": [1, 2, 3, 6], "repres": [1, 5], "lattic": 1, "where": [1, 2, 4, 6], "arrow": 1, "materi": 1, "relationship": 1, "black": 1, "grei": 1, "here": [1, 2, 6], "If": [1, 2, 3, 4, 5, 6], "els": [1, 2], "ye": 1, "unus": 1, "85": 1, "No": 1, "d": [1, 2], "none": 1, "prose": 1, "formul": 1, "who": 1, "excel": 1, "least": [1, 2, 3, 5, 6], "subject": 1, "scientif": 1, "literari": 1, "back": [1, 3], "concept": [1, 3, 4, 6], "common": 1, "addit": [1, 4, 6], "less": [1, 2], "computation": [1, 2], "simpler": 1, "previou": [1, 2, 6], "ne": 1, "threshold": [1, 3, 5, 6], "wa": [1, 2, 3, 5, 6], "agn\u00e8": 1, "leroi": 1, "et": 1, "al": 1, "multipl": [1, 2, 6], "w_i": 1, "sum_": 1, "again": 1, "answer": 1, "question": [1, 4, 6], "try": [1, 2, 3, 5, 6], "w_m": 1, "w_p": 1, "w_l": 1, "w_h": 1, "give": [1, 2, 5, 6], "16": 1, "equat": 1, "amongst": [1, 6], "lt": 1, "notin": 1, "ge": 1, "last": [1, 2, 5, 6], "solut": 1, "By": [1, 2, 5, 6], "contrast": 1, "express": 1, "greater": [1, 6], "fewer": 1, "success": [1, 6], "measur": [1, 2, 3], "main": [1, 2, 4], "metric": 1, "quicker": 1, "portion": [1, 3, 5, 6], "real": [1, 3, 5, 6], "world": [1, 3, 5], "noisi": 1, "inconsist": 1, "prevent": 1, "being": [1, 3, 4, 6], "result": [1, 2, 3, 5, 6], "those": [1, 2, 3, 5, 6], "imposs": 1, "100": [1, 3, 6], "summari": 1, "typic": 1, "failur": [1, 2], "quickest": 1, "noth": [1, 2, 6], "goal": 1, "far": [1, 6], "longest": 1, "doesn": [1, 3, 4], "exist": [1, 4, 6], "simpli": [1, 6], "anyth": [1, 2, 5], "configur": [1, 2], "take": [1, 2, 6], "long": [1, 2, 3], "comput": [1, 3, 5], "resourc": 1, "alwai": [1, 6], "longer": [1, 2], "practic": 1, "ali": 1, "tlili": 1, "khale": 1, "belahc\u00e8n": 1, "effici": 1, "maxsat": 1, "conveni": 1, "gather": 1, "place": [1, 2, 3], "olivi": 1, "hi": 1, "ph": 1, "thesi": 1, "originali": 1, "emma": 1, "dixneuf": 1, "thibault": 1, "monsel": 1, "thoma": 1, "vindard": 1, "sequenti": 1, "parallel": 1, "known": 1, "origin": [1, 3, 6], "compar": [1, 2], "how": [1, 3, 4, 6], "evalu": 1, "qualiti": 1, "clean": 1, "haven": [1, 3], "done": [1, 2, 3], "recommend": [1, 2, 3, 4, 6], "strongli": [2, 6], "familiar": [2, 3], "rest": 2, "project": [2, 3], "also": [2, 3, 6], "exampl": [2, 6], "much": [2, 4, 6], "what": [2, 4], "talk": 2, "about": [2, 3, 4, 5], "pleas": [2, 6], "awar": 2, "work": [2, 3, 4], "progress": [2, 5, 6], "write": [2, 4, 5], "kind": [2, 3, 5, 6], "exercis": 2, "clairvoy": 2, "predict": 2, "got": 2, "wrong": 2, "hesit": 2, "contact": 2, "explain": [2, 3, 4, 6], "begin": [2, 6], "scale": [2, 6], "minor": 2, "major": 2, "refactor": 2, "typo": 2, "github": [2, 3, 4, 5], "web": 2, "interfac": [2, 4], "spare": 2, "need": [2, 3, 4, 6], "even": [2, 4, 6], "clone": 2, "repositori": 2, "think": [2, 3], "entir": [2, 6], "architectur": 2, "deserv": 2, "rewrit": 2, "discuss": [2, 4], "http": [2, 5], "com": 2, "mic": [2, 4, 5], "lab": [2, 5], "don": [2, 3, 5], "spend": 2, "someth": [2, 3], "reject": 2, "reason": [2, 6], "appar": 2, "moment": 2, "know": [2, 4, 6], "yourself": 2, "tell": [2, 6], "report": 2, "everyth": [2, 6], "recogn": 2, "open": [2, 4], "sourc": [2, 3, 4, 5], "intimid": 2, "everyon": 2, "experi": [2, 6], "fluenci": 2, "tool": [2, 3, 5, 6], "willing": 2, "feedback": [2, 6], "assur": 2, "construct": 2, "manner": [2, 6], "similar": [2, 6], "inspir": 2, "git": 2, "grep": 2, "theoldth": 2, "thenewth": 2, "blame": 2, "identifi": [2, 6], "commit": 2, "next": 2, "modifi": [2, 3, 4, 6], "recent": 2, "version": [2, 3, 5, 6], "bash": 2, "nvidia": 2, "runtim": 2, "loop": [2, 6], "repeat": [2, 3, 6], "script": [2, 4], "cach": 2, "subsequ": 2, "faster": 2, "librari": [2, 4], "unit": 2, "etc": [2, 3, 4, 6], "speed": 2, "eventu": 2, "maintain": 2, "pull": 2, "request": 2, "doc": 2, "io": [2, 5], "page": 2, "push": 2, "impact": [2, 6], "under": [2, 4], "save": 2, "onc": [2, 3, 4], "submit": 2, "coverag": 2, "stop": 2, "right": 2, "impli": 2, "skip": [2, 6], "forbid": [2, 6], "automat": 2, "warn": 2, "doe": [2, 6], "explicitli": [2, 6], "doctest": 2, "doctest_opt": 2, "pass": [2, 6], "verbatim": 2, "patch": 2, "argument": [2, 4, 5], "requir": [2, 3, 4, 5, 6], "thin": 2, "wrapper": 2, "basic": [2, 6], "rst": 2, "setup": 2, "py": 2, "manifest": 2, "licenc": 2, "local": 2, "render": 2, "current": [2, 3, 6], "dev": 2, "accompani": 2, "pattern": [2, 6], "inject": 2, "easili": 2, "switch": 2, "particularli": 2, "variant": 2, "benchmark": 2, "perspect": 2, "distinct": 2, "recurs": 2, "piec": 2, "learnmrsortbyweightsprofilesbre": 2, "weightsoptimizationstrategi": 2, "profilesimprovementstrategi": 2, "improveprofileswithaccuracyheuristiconcpu": 2, "improveprofileswithaccuracyheuristicongpu": 2, "costli": 2, "click": 2, "class": 2, "foo": 2, "void": 2, "yes_virtu": 2, "no_virtu": 2, "actualfoo": 2, "overrid": 2, "makefoo": 2, "return": [2, 5], "93": 2, "int": 2, "1": [2, 3, 4, 5, 6], "000": 2, "12": 2, "although": 2, "care": 2, "keep": [2, 3, 4, 6], "case": [2, 4, 6], "thousand": 2, "per": [2, 3, 5, 6], "ok": 2, "polymorph": 2, "frequent": 2, "found": [2, 5, 6], "liblinc": 2, "optim": [2, 4, 6], "linear": [2, 3, 5, 6], "hpp": 2, "linearprogram": 2, "cost": 2, "One": 2, "would": [2, 6], "neg": 2, "consequ": 2, "explicit": [2, 4, 5, 6], "instanti": 2, "explod": 2, "incombinatori": 2, "cpp": 2, "whole": 2, "great": 2, "mainten": 2, "specif": [2, 4, 6], "instanci": 2, "modul": 2, "access": 2, "custom": 2, "side": 2, "happen": 2, "That": [2, 3, 4, 6], "restructuredtext": 2, "sphinx": 2, "extent": 2, "edit": [2, 3], "html": [2, 5], "browser": 2, "section": [2, 4, 6], "anticip": [2, 6], "2024": 2, "famou": 2, "word": 2, "mind": [2, 3], "written": [2, 5, 6], "partli": 2, "usabl": 2, "arguabl": [2, 6], "easier": [2, 3], "core": [2, 6], "intens": 2, "interpret": 2, "multi": 2, "thread": 2, "suggest": [2, 3], "both": [2, 3, 4], "someon": 2, "becom": 2, "motiv": [2, 4], "counter": 2, "through": 2, "breedingstrategi": 2, "reduc": [2, 6], "high": [2, 6], "On": [2, 4], "optimizeweightsusingglop": 2, "spent": 2, "locat": 2, "rare": 2, "signific": 2, "easi": [2, 4, 6], "old": [2, 4], "advertis": 2, "boil": 2, "down": 2, "veri": [2, 6], "effect": [2, 3, 6], "unless": 2, "clear": 2, "bilion": 2, "todo": [2, 3, 4], "later": [2, 3, 4], "step": 2, "previous": 2, "mimic": 2, "null": 2, "As": [2, 6], "via": 2, "reli": [2, 4, 6], "duck": 2, "type": [2, 3, 5, 6], "dockerfil": 2, "foobar": 2, "typedef": 2, "liblincs_modul": 2, "__init__": 2, "command_line_interfac": 2, "txt": 2, "accordingli": 2, "procedur": 2, "0a790ef": 2, "modif": 2, "had": 2, "been": 2, "restructur": 2, "sinc": 2, "besid": 2, "x86_64": [3, 4], "processor": [3, 4, 5, 6], "run": 3, "pip": 3, "system": 3, "platform": 3, "lot": 3, "realli": 3, "go": 3, "rout": 3, "action": 3, "workflow": 3, "probabl": 3, "kindli": [3, 4], "ask": [3, 4], "contribut": [3, 4], "easiest": 3, "usag": 3, "arg": [3, 5], "infer": [3, 4, 5], "non": [3, 4, 5], "compensatori": [3, 4, 5], "mcda": [3, 5], "show": [3, 4, 5], "exit": [3, 5], "messag": 3, "graph": [3, 5, 6], "organ": 3, "sub": 3, "design": [3, 4], "handl": [3, 5], "conceptu": [3, 4, 6], "overview": [3, 4, 6], "yml": [3, 6], "10": [3, 6], "seed": [3, 5, 6], "40": 3, "format_vers": [3, 5, 6], "value_typ": [3, 5, 6], "category_correl": [3, 5, 6], "grow": [3, 5, 6], "min_valu": [3, 5, 6], "max_valu": [3, 5, 6], "Then": [3, 6], "41": 3, "accepted_valu": [3, 5, 6], "255905151": 3, "676961303": 3, "0551739037": 3, "324553937": 3, "162252158": 3, "673279881": 3, "0526000932": 3, "598555863": 3, "sufficient_coalit": [3, 5, 6], "criterion_weight": [3, 5, 6], "147771254": 3, "618687689": 3, "406786472": 3, "0960085914": 3, "refer": [3, 4, 6], "mean": [3, 4, 6], "png": [3, 5, 6], "1000": 3, "util": [3, 4], "split": 3, "interact": 3, "42": 3, "misclassifi": [3, 5, 6], "count": [3, 5, 6], "37454012": 3, "796543002": 3, "95071429": 3, "183434784": 3, "731993914": 3, "779690981": 3, "598658502": 3, "596850157": 3, "156018645": 3, "445832759": 3, "15599452": 3, "0999749228": 3, "0580836125": 3, "4592489": 3, "866176128": 3, "333708614": 3, "601114988": 3, "14286682": 3, "708072603": 3, "650888503": 3, "five": 3, "legend": 3, "directli": 3, "structur": [3, 5, 6], "reconstitut": 3, "numer": [3, 6], "43": 3, "maxim": [3, 5], "discrimin": [3, 5], "glop": [3, 5, 6], "reiniti": [3, 5, 6], "accur": [3, 5, 6], "target": [3, 5, 6], "22": 3, "339874953": 3, "421424538": 3, "0556534864": 3, "326433569": 3, "162616938": 3, "67343241": 3, "0878681168": 3, "252649099": 3, "01327896e": 3, "06": 3, "999998987": 3, "howev": 3, "reclassifi": 3, "10000": 3, "diff": 3, "tail": 3, "521c521": 3, "520": 3, "617141366": 3, "326259822": 3, "901315808": 3, "460642993": 3, "614c614": 3, "613": 3, "547554553": 3, "0552174859": 3, "690436542": 3, "511019647": 3, "2595c2595": 3, "2594": 3, "234433308": 3, "780464768": 3, "162389532": 3, "622178912": 3, "2609c2609": 3, "2608": 3, "881479025": 3, "055544015": 3, "82936728": 3, "853676081": 3, "3128c3128": 3, "3127": 3, "146532759": 3, "324625522": 3, "926948965": 3, "817662537": 3, "3691c3691": 3, "3690": 3, "157966524": 3, "326220334": 3, "925864339": 3, "844398499": 3, "3774c3774": 3, "3773": 3, "484662831": 3, "325856268": 3, "966965079": 3, "980859697": 3, "4214c4214": 3, "4213": 3, "254853547": 3, "32587868": 3, "809560299": 3, "554913938": 3, "4265c4265": 3, "4264": 3, "533336997": 3, "0553873181": 3, "735466599": 3, "457309902": 3, "5346c5346": 3, "5345": 3, "815349102": 3, "580399215": 3, "162403136": 3, "995580792": 3, "5781c5781": 3, "5780": 3, "333638728": 3, "325458288": 3, "69509089": 3, "761675119": 3, "8032c8032": 3, "8031": 3, "602598071": 3, "0554222316": 3, "920983374": 3, "00566159375": 3, "9689c9689": 3, "9688": 3, "940304875": 3, "885046899": 3, "162586793": 3, "515185535": 3, "9934c9934": 3, "9933": 3, "705289483": 3, "11529737": 3, "162508503": 3, "0438248962": 3, "9986": 3, "ve": [3, 4, 6], "demonstr": 3, "comfort": 3, "collect": 4, "avail": 4, "os": 4, "m1": 4, "m2": 4, "chip": 4, "arm": 4, "gnu": 4, "lesser": 4, "v3": 4, "indic": [4, 6], "copi": 4, "manag": 4, "paper": 4, "cite": 4, "remark": [4, 6], "issu": 4, "research": 4, "team": 4, "centralesup\u00e9lec": 4, "author": 4, "alphabet": 4, "laurent": 4, "cabaret": 4, "vincent": 4, "jacqu": 4, "engin": 4, "mousseau": 4, "expertis": 4, "wassila": 4, "ouerdan": 4, "abl": 4, "specialist": 4, "below": 4, "replac": 4, "favorit": 4, "either": [4, 5, 6], "hand": [4, 6], "former": 4, "latter": 4, "behind": 4, "doubt": 4, "highli": 4, "bit": [4, 6], "semant": 4, "declar": 4, "semver": 4, "exclus": 4, "backward": [4, 6], "compat": [4, 6], "client": 4, "recompil": 4, "futur": [4, 5], "behavior": [4, 6], "especi": 4, "regard": 4, "plan": 4, "chose": 4, "unanticip": 4, "advic": 4, "matter": 4, "implicit": 4, "potenti": 4, "lead": [4, 6], "input": [4, 6], "incompat": 4, "solv": [4, 5, 6], "impos": 4, "text": 5, "standard": [5, 6], "object": 5, "properti": 5, "string": 5, "const": 5, "item": [5, 6], "enumar": 5, "enum": 5, "peak": [5, 6], "unknown": [5, 6], "additionalproperti": 5, "fals": 5, "minitem": 5, "determin": [5, 6], "oneof": 5, "lowest": 5, "comma": 5, "ignor": [5, 6], "quot": 5, "whitespac": 5, "column": [5, 6], "associ": [5, 6], "Their": 5, "empti": [5, 6], "unclassifi": 5, "testing_set": 5, "output_altern": 5, "output_model": 5, "random_se": 5, "model_typ": 5, "mrsort__fixed_weights_sum": 5, "criteria_count": 5, "categories_count": 5, "output_problem": 5, "alternatives_count": 5, "max_imbal": 5, "balanc": [5, 6], "forc": 5, "size": [5, 6], "perfectli": [5, 6], "fraction": [5, 6], "misclassified_count": 5, "whether": 5, "otherwis": 5, "quiet": 5, "learning_set": 5, "ucncs__strategi": 5, "transform": 5, "mrsort__strategi": 5, "top": [5, 6], "mrsort__weights_profiles_breed__target_accuraci": 5, "mrsort__weights_profiles_breed__max_iter": 5, "mrsort__weights_profiles_breed__max_iterations_without_progress": 5, "mrsort__weights_profiles_breed__max_dur": 5, "mrsort__weights_profiles_breed__max_duration_without_progress": 5, "mrsort__weights_profiles_breed__models_count": 5, "temporari": 5, "mrsort__weights_profiles_breed__initialization_strategi": 5, "mrsort__weights_profiles_breed__weights_strategi": 5, "mrsort__weights_profiles_breed__linear_program__solv": 5, "mrsort__weights_profiles_breed__profiles_strategi": 5, "mrsort__weights_profiles_breed__accuracy_heuristic__random_se": 5, "mrsort__weights_profiles_breed__accuracy_heuristic__processor": 5, "mrsort__weights_profiles_breed__breed_strategi": 5, "mrsort__weights_profiles_breed__reinitialize_least_accurate__port": 5, "stderr": 5, "while": 5, "establish": 6, "manipul": 6, "conform": 6, "20": 6, "low": 6, "medium": 6, "kei": 6, "exactli": 6, "respect": 6, "third": 6, "evolv": 6, "enumer": 6, "resp": 6, "correspond": 6, "expert": 6, "knowledg": 6, "extrem": 6, "deleg": 6, "fourth": 6, "rel": 6, "fact": 6, "technic": 6, "embed": 6, "unwant": 6, "referenc": 6, "robust": 6, "content": 6, "hash": 6, "respons": 6, "track": 6, "along": 6, "49331188": 6, "15": 6, "9249287": 6, "49812794": 6, "15932083": 6, "938825667": 6, "343733728": 6, "lack": 6, "transpos": 6, "focuss": 6, "enter": 6, "boundari": 6, "minu": 6, "matrix": 6, "made": 6, "ident": 6, "upset": 6, "anoth": 6, "8156891": 6, "39045048": 6, "25551182": 6, "45864725": 6, "18": 6, "4786396": 6, "31117153": 6, "0154629": 6, "33949804": 6, "30789757": 6, "66963387": 6, "These": 6, "reproduc": 6, "parent": 6, "left": 6, "saw": 6, "tweak": 6, "notabl": 6, "choos": 6, "randomli": 6, "category_corel": 6, "equal": 6, "hard": 6, "600": 6, "200": 6, "160": 6, "240": 6, "significantli": 6, "popul": 6, "lenient": 6, "seen": 6, "own": 6, "goe": 6, "sens": 6, "branch": 6, "realiti": 6, "dot": 6, "scheme": 6, "abil": 6, "collis": 6, "join": 6, "smaller": 6, "softwar": 6, "reus": 6, "directori": 6, "small": 6, "difficult": 6, "parrallel": 6, "Or": 6, "mayb": 6, "met": 6, "exceed": 6, "googl": 6, "OR": 6, "slight": 6, "capabl": 6, "exact": 6, "pick": 6, "Not": 6, "said": 6, "tradoff": 6, "offer": 6, "highligt": 6, "999706864": 6, "0552680492": 6, "325211823": 6, "161919117": 6, "672662616": 6, "995402098": 6, "996754646": 6, "craft": 6, "similarli": 6, "serv": 6, "correctli": 6, "creat": 6, "graphic": 6, "represent": 6, "pretti": 6, "feel": 6, "free": 6, "out": 6}, "objects": {"./publish.sh": [[2, 0, 1, "cmdoption-.-publish.sh-arg-LEVEL", "LEVEL"]], "./run-development-cycle.sh": [[2, 0, 1, "cmdoption-.-run-development-cycle.sh-doctest-option", "--doctest-option"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-forbid-chrones", "--forbid-chrones"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-forbid-gpu", "--forbid-gpu"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-single-python-version", "--single-python-version"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-skip-long", "--skip-long"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-skip-unit", "--skip-unit"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-stop-after-unit", "--stop-after-unit"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-unit-coverage", "--unit-coverage"], [2, 0, 1, "cmdoption-.-run-development-cycle.sh-with-docs", "--with-docs"]], "lincs-classification-accuracy": [[5, 0, 1, "cmdoption-lincs-classification-accuracy-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-classification-accuracy-arg-PROBLEM", "PROBLEM"], [5, 0, 1, "cmdoption-lincs-classification-accuracy-arg-TESTING_SET", "TESTING_SET"]], "lincs-classify": [[5, 0, 1, "cmdoption-lincs-classify-output-alternatives", "--output-alternatives"], [5, 0, 1, "cmdoption-lincs-classify-arg-ALTERNATIVES", "ALTERNATIVES"], [5, 0, 1, "cmdoption-lincs-classify-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-classify-arg-PROBLEM", "PROBLEM"]], "lincs-generate-classification-model": [[5, 0, 1, "cmdoption-lincs-generate-classification-model-model-type", "--model-type"], [5, 0, 1, "cmdoption-lincs-generate-classification-model-output-model", "--output-model"], [5, 0, 1, "cmdoption-lincs-generate-classification-model-random-seed", "--random-seed"], [5, 0, 1, "cmdoption-lincs-generate-classification-model-arg-PROBLEM", "PROBLEM"]], "lincs-generate-classification-model.--mrsort": [[5, 0, 1, "cmdoption-lincs-generate-classification-model-mrsort.fixed-weights-sum", "fixed-weights-sum"]], "lincs-generate-classification-problem": [[5, 0, 1, "cmdoption-lincs-generate-classification-problem-allow-decreasing-criteria", "--allow-decreasing-criteria"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-denormalized-min-max", "--denormalized-min-max"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-output-problem", "--output-problem"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-random-seed", "--random-seed"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-arg-CATEGORIES_COUNT", "CATEGORIES_COUNT"], [5, 0, 1, "cmdoption-lincs-generate-classification-problem-arg-CRITERIA_COUNT", "CRITERIA_COUNT"]], "lincs-generate-classified-alternatives": [[5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-max-imbalance", "--max-imbalance"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-misclassified-count", "--misclassified-count"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-output-alternatives", "--output-alternatives"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-random-seed", "--random-seed"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-arg-ALTERNATIVES_COUNT", "ALTERNATIVES_COUNT"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-generate-classified-alternatives-arg-PROBLEM", "PROBLEM"]], "lincs-info-has-gpu": [[5, 0, 1, "cmdoption-lincs-info-has-gpu-quiet", "--quiet"]], "lincs-learn-classification-model": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-model-type", "--model-type"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-output-model", "--output-model"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-arg-LEARNING_SET", "LEARNING_SET"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-arg-PROBLEM", "PROBLEM"]], "lincs-learn-classification-model.--mrsort": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.strategy", "strategy"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed.accuracy-heuristic": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.processor", "processor"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.random-seed", "random-seed"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.breed-strategy", "breed-strategy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.initialization-strategy", "initialization-strategy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration", "max-duration"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration-without-progress", "max-duration-without-progress"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations", "max-iterations"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations-without-progress", "max-iterations-without-progress"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.models-count", "models-count"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.profiles-strategy", "profiles-strategy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.target-accuracy", "target-accuracy"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.verbose", "verbose"], [5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.weights-strategy", "weights-strategy"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed.linear-program": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.linear-program.solver", "solver"]], "lincs-learn-classification-model.--mrsort.weights-profiles-breed.reinitialize-least-accurate": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.reinitialize-least-accurate.portion", "portion"]], "lincs-learn-classification-model.--ucncs": [[5, 0, 1, "cmdoption-lincs-learn-classification-model-ucncs.strategy", "strategy"]], "lincs-visualize-classification-model": [[5, 0, 1, "cmdoption-lincs-visualize-classification-model-alternatives", "--alternatives"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-alternatives-count", "--alternatives-count"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-arg-MODEL", "MODEL"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-arg-OUTPUT", "OUTPUT"], [5, 0, 1, "cmdoption-lincs-visualize-classification-model-arg-PROBLEM", "PROBLEM"]], "lincs": [[5, 0, 1, "cmdoption-lincs-version", "--version"]]}, "objtypes": {"0": "std:cmdoption"}, "objnames": {"0": ["std", "cmdoption", "program option"]}, "titleterms": {"changelog": 0, "version": [0, 4], "0": 0, "10": 0, "2": 0, "9": 0, "8": 0, "7": 0, "5": 0, "6": 0, "4": 0, "1": [0, 1], "3": 0, "conceptu": 1, "overview": 1, "notat": 1, "about": [1, 6], "classif": [1, 5, 6], "formal": 1, "definit": [1, 2], "learn": [1, 5, 6], "classifi": [1, 5, 6], "non": 1, "compensatori": 1, "sort": 1, "nc": [1, 5], "exampl": 1, "particular": 1, "case": 1, "u": 1, "c": [1, 2], "textsf": 1, "k": 1, "mr": 1, "accuraci": [1, 5, 6], "synthet": [1, 6], "data": [1, 6], "next": [1, 6], "contributor": [2, 4], "guid": [2, 6], "do": 2, "contribut": 2, "develop": [2, 4], "depend": 2, "cycl": 2, "run": 2, "sh": 2, "publish": 2, "directori": 2, "structur": 2, "gener": [2, 5, 6], "design": 2, "strategi": [2, 6], "But": 2, "bewar": 2, "virtual": 2, "function": 2, "call": 2, "so": 2, "why": 2, "all": 2, "templat": 2, "how": 2, "tos": 2, "updat": 2, "document": 2, "choos": 2, "python": 2, "your": 2, "chang": 2, "tweak": 2, "an": [2, 6], "exist": 2, "add": 2, "new": [2, 4], "extens": 2, "point": 2, "dynam": 2, "static": 2, "default": [2, 4], "behavior": 2, "backward": 2, "compat": 2, "extern": 2, "solver": 2, "get": [3, 4], "start": [3, 4], "linc": [3, 4, 5, 6], "us": [3, 6], "command": [3, 5], "line": [3, 5], "interfac": [3, 5], "what": [3, 6], "now": 3, "readm": 4, "project": 4, "goal": 4, "provid": 4, "mcda": 4, "tool": 4, "usabl": 4, "out": 4, "box": 4, "base": [4, 6], "algorithm": 4, "except": 4, "valu": [4, 6], "file": [4, 5, 6], "format": [4, 5, 6], "itself": 4, "refer": 5, "The": 5, "problem": [5, 6], "model": [5, 6], "altern": [5, 6], "info": 5, "ha": 5, "gpu": 5, "visual": [5, 6], "user": 6, "criteria": 6, "categori": 6, "accept": 6, "suffici": 6, "coalit": 6, "comment": 6, "random": 6, "whole": 6, "tree": 6, "option": 6, "avail": 6, "sub": 6, "weight": 6, "profil": 6, "breed": 6, "termin": 6, "step": 6, "sat": 6, "comput": 6, "": 6}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 58}, "alltitles": {"Get started": [[3, "get-started"], [4, "get-started"]], "Get lincs": [[3, "get-lincs"]], "Start using lincs\u2019 command-line interface": [[3, "start-using-lincs-command-line-interface"]], "What now?": [[3, "what-now"]], "README": [[4, "readme"]], "Contributors": [[4, "contributors"]], "Project goals": [[4, "project-goals"]], "Provide MCDA tools usable out of the box": [[4, "provide-mcda-tools-usable-out-of-the-box"]], "Provide a base for developing new MCDA algorithms": [[4, "provide-a-base-for-developing-new-mcda-algorithms"]], "Versioning": [[4, "versioning"]], "Exceptions": [[4, "exceptions"]], "Default values": [[4, "default-values"]], "File formats": [[4, "file-formats"], [5, "file-formats"]], "Develop lincs itself": [[4, "develop-lincs-itself"]], "Changelog": [[0, "changelog"]], "Versions 0.10.0 to 0.10.2": [[0, "versions-0-10-0-to-0-10-2"]], "Versions 0.9.0 to 0.9.2": [[0, "versions-0-9-0-to-0-9-2"]], "Version 0.8.7": [[0, "version-0-8-7"]], "Versions 0.8.5 to 0.8.6": [[0, "versions-0-8-5-to-0-8-6"]], "Versions 0.8.0 to 0.8.4": [[0, "versions-0-8-0-to-0-8-4"]], "Version 0.7.0": [[0, "version-0-7-0"]], "Version 0.6.0": [[0, "version-0-6-0"]], "Version 0.5.1": [[0, "version-0-5-1"]], "Version 0.5.0": [[0, "version-0-5-0"]], "Version 0.4.5": [[0, "version-0-4-5"]], "Versions 0.4.1 to 0.4.4": [[0, "versions-0-4-1-to-0-4-4"]], "Version 0.4.0": [[0, "version-0-4-0"]], "Versions 0.3.4 to 0.3.7": [[0, "versions-0-3-4-to-0-3-7"]], "Version 0.3.3": [[0, "version-0-3-3"]], "Version 0.3.2": [[0, "version-0-3-2"]], "Version 0.3.1": [[0, "version-0-3-1"]], "Version 0.3.0": [[0, "version-0-3-0"]], "Version 0.2.2": [[0, "version-0-2-2"]], "Version 0.2.1": [[0, "version-0-2-1"]], "Version 0.2.0": [[0, "version-0-2-0"]], "Version 0.1.3": [[0, "version-0-1-3"]], "Conceptual overview": [[1, "conceptual-overview"]], "Notation": [[1, "notation"]], "About classification": [[1, "about-classification"]], "Formal definition": [[1, null], [1, null], [1, null], [1, null], [1, null]], "Learning and classifying": [[1, "learning-and-classifying"]], "Non-compensatory sorting (NCS)": [[1, "non-compensatory-sorting-ncs"]], "Example": [[1, "example"], [1, "id1"]], "Particular cases": [[1, "particular-cases"]], "U^c \\textsf{-} NCS": [[1, "u-c-textsf-ncs"]], "1 \\textsf{-} U^c \\textsf{-} NCS a.k.a. MR-Sort": [[1, "textsf-u-c-textsf-ncs-a-k-a-mr-sort"]], "Classification accuracy": [[1, "classification-accuracy"]], "Synthetic data": [[1, "synthetic-data"]], "Next": [[1, "next"]], "Contributor guide": [[2, "contributor-guide"]], "Do contribute!": [[2, "do-contribute"]], "Development dependencies": [[2, "development-dependencies"]], "Development cycle": [[2, "development-cycle"]], "./run-development-cycle.sh": [[2, "run-development-cycle-sh"]], "./publish.sh": [[2, "publish-sh"]], "Directory structure": [[2, "directory-structure"]], "General design": [[2, "general-design"]], "Strategies": [[2, "strategies"], [6, "strategies"]], "But beware of virtual function calls": [[2, "but-beware-of-virtual-function-calls"]], "So, why not all templates?": [[2, "so-why-not-all-templates"]], "How-tos": [[2, "how-tos"]], "Update the documentation": [[2, "update-the-documentation"]], "Choose Python or C++ for your change": [[2, "choose-python-or-c-for-your-change"]], "Tweak an existing strategy": [[2, "tweak-an-existing-strategy"]], "Add a new strategy": [[2, "add-a-new-strategy"]], "Add a new extension point": [[2, "add-a-new-extension-point"]], "Dynamic or static?": [[2, "dynamic-or-static"]], "Definition of an dynamic extension point": [[2, "definition-of-an-dynamic-extension-point"]], "Definition of an static extension point": [[2, "definition-of-an-static-extension-point"]], "Default behavior for backward compatibility": [[2, "default-behavior-for-backward-compatibility"]], "Add an external solver": [[2, "add-an-external-solver"]], "User Guide": [[6, "user-guide"]], "Formatting data for lincs": [[6, "formatting-data-for-lincs"]], "\u201cProblem\u201d files": [[6, "problem-files"]], "Criteria": [[6, "criteria"]], "Categories": [[6, "categories"]], "\u201cModel\u201d files": [[6, "model-files"]], "Accepted values": [[6, "accepted-values"]], "Sufficient coalitions": [[6, "sufficient-coalitions"]], "\u201cAlternatives\u201d files": [[6, "alternatives-files"]], "Comments in generated files": [[6, "comments-in-generated-files"]], "Generating synthetic data": [[6, "generating-synthetic-data"]], "About randomness": [[6, "about-randomness"]], "Generating a problem": [[6, "generating-a-problem"]], "Generating a model": [[6, "generating-a-model"]], "Generating alternatives": [[6, "generating-alternatives"]], "Learning a model": [[6, "learning-a-model"]], "An whole tree of options": [[6, "an-whole-tree-of-options"]], "Available learning (sub-)strategies": [[6, "available-learning-sub-strategies"]], "Weights, profiles, breed": [[6, "weights-profiles-breed"]], "General options": [[6, "general-options"]], "Termination": [[6, "termination"]], "\u201cWeights\u201d step": [[6, "weights-step"]], "\u201cProfiles\u201d step": [[6, "profiles-step"]], "\u201cBreed\u201d step": [[6, "breed-step"]], "SAT-based strategies": [[6, "sat-based-strategies"]], "Using a model": [[6, "using-a-model"]], "Classifying alternatives": [[6, "classifying-alternatives"]], "Computing a classification accuracy": [[6, "computing-a-classification-accuracy"]], "Visualizing a model and alternatives": [[6, "visualizing-a-model-and-alternatives"]], "What\u2019s next?": [[6, "what-s-next"]], "Reference": [[5, "reference"]], "The problem file": [[5, "the-problem-file"]], "The NCS model file": [[5, "the-ncs-model-file"]], "The alternatives file": [[5, "the-alternatives-file"]], "Command-line interface": [[5, "command-line-interface"]], "lincs": [[5, "lincs"]], "classification-accuracy": [[5, "lincs-classification-accuracy"]], "classify": [[5, "lincs-classify"]], "generate": [[5, "lincs-generate"]], "classification-model": [[5, "lincs-generate-classification-model"], [5, "lincs-learn-classification-model"], [5, "lincs-visualize-classification-model"]], "classification-problem": [[5, "lincs-generate-classification-problem"]], "classified-alternatives": [[5, "lincs-generate-classified-alternatives"]], "info": [[5, "lincs-info"]], "has-gpu": [[5, "lincs-info-has-gpu"]], "learn": [[5, "lincs-learn"]], "visualize": [[5, "lincs-visualize"]]}, "indexentries": {"--doctest-option": [[2, "cmdoption-.-run-development-cycle.sh-doctest-option"]], "--forbid-chrones": [[2, "cmdoption-.-run-development-cycle.sh-forbid-chrones"]], "--forbid-gpu": [[2, "cmdoption-.-run-development-cycle.sh-forbid-gpu"]], "--single-python-version": [[2, "cmdoption-.-run-development-cycle.sh-single-python-version"]], "--skip-long": [[2, "cmdoption-.-run-development-cycle.sh-skip-long"]], "--skip-unit": [[2, "cmdoption-.-run-development-cycle.sh-skip-unit"]], "--stop-after-unit": [[2, "cmdoption-.-run-development-cycle.sh-stop-after-unit"]], "--unit-coverage": [[2, "cmdoption-.-run-development-cycle.sh-unit-coverage"]], "--with-docs": [[2, "cmdoption-.-run-development-cycle.sh-with-docs"]], "./publish.sh command line option": [[2, "cmdoption-.-publish.sh-arg-LEVEL"]], "./run-development-cycle.sh command line option": [[2, "cmdoption-.-run-development-cycle.sh-doctest-option"], [2, "cmdoption-.-run-development-cycle.sh-forbid-chrones"], [2, "cmdoption-.-run-development-cycle.sh-forbid-gpu"], [2, "cmdoption-.-run-development-cycle.sh-single-python-version"], [2, "cmdoption-.-run-development-cycle.sh-skip-long"], [2, "cmdoption-.-run-development-cycle.sh-skip-unit"], [2, "cmdoption-.-run-development-cycle.sh-stop-after-unit"], [2, "cmdoption-.-run-development-cycle.sh-unit-coverage"], [2, "cmdoption-.-run-development-cycle.sh-with-docs"]], "level": [[2, "cmdoption-.-publish.sh-arg-LEVEL"]], "--allow-decreasing-criteria": [[5, "cmdoption-lincs-generate-classification-problem-allow-decreasing-criteria"]], "--alternatives": [[5, "cmdoption-lincs-visualize-classification-model-alternatives"]], "--alternatives-count": [[5, "cmdoption-lincs-visualize-classification-model-alternatives-count"]], "--denormalized-min-max": [[5, "cmdoption-lincs-generate-classification-problem-denormalized-min-max"]], "--max-imbalance": [[5, "cmdoption-lincs-generate-classified-alternatives-max-imbalance"]], "--misclassified-count": [[5, "cmdoption-lincs-generate-classified-alternatives-misclassified-count"]], "--model-type": [[5, "cmdoption-lincs-generate-classification-model-model-type"], [5, "cmdoption-lincs-learn-classification-model-model-type"]], "--mrsort.fixed-weights-sum": [[5, "cmdoption-lincs-generate-classification-model-mrsort.fixed-weights-sum"]], "--mrsort.strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.strategy"]], "--mrsort.weights-profiles-breed.accuracy-heuristic.processor": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.processor"]], "--mrsort.weights-profiles-breed.accuracy-heuristic.random-seed": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.random-seed"]], "--mrsort.weights-profiles-breed.breed-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.breed-strategy"]], "--mrsort.weights-profiles-breed.initialization-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.initialization-strategy"]], "--mrsort.weights-profiles-breed.linear-program.solver": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.linear-program.solver"]], "--mrsort.weights-profiles-breed.max-duration": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration"]], "--mrsort.weights-profiles-breed.max-duration-without-progress": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration-without-progress"]], "--mrsort.weights-profiles-breed.max-iterations": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations"]], "--mrsort.weights-profiles-breed.max-iterations-without-progress": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations-without-progress"]], "--mrsort.weights-profiles-breed.models-count": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.models-count"]], "--mrsort.weights-profiles-breed.profiles-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.profiles-strategy"]], "--mrsort.weights-profiles-breed.reinitialize-least-accurate.portion": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.reinitialize-least-accurate.portion"]], "--mrsort.weights-profiles-breed.target-accuracy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.target-accuracy"]], "--mrsort.weights-profiles-breed.verbose": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.verbose"]], "--mrsort.weights-profiles-breed.weights-strategy": [[5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.weights-strategy"]], "--output-alternatives": [[5, "cmdoption-lincs-classify-output-alternatives"], [5, "cmdoption-lincs-generate-classified-alternatives-output-alternatives"]], "--output-model": [[5, "cmdoption-lincs-generate-classification-model-output-model"], [5, "cmdoption-lincs-learn-classification-model-output-model"]], "--output-problem": [[5, "cmdoption-lincs-generate-classification-problem-output-problem"]], "--quiet": [[5, "cmdoption-lincs-info-has-gpu-quiet"]], "--random-seed": [[5, "cmdoption-lincs-generate-classification-model-random-seed"], [5, "cmdoption-lincs-generate-classification-problem-random-seed"], [5, "cmdoption-lincs-generate-classified-alternatives-random-seed"]], "--ucncs.strategy": [[5, "cmdoption-lincs-learn-classification-model-ucncs.strategy"]], "--version": [[5, "cmdoption-lincs-version"]], "alternatives": [[5, "cmdoption-lincs-classify-arg-ALTERNATIVES"]], "alternatives_count": [[5, "cmdoption-lincs-generate-classified-alternatives-arg-ALTERNATIVES_COUNT"]], "categories_count": [[5, "cmdoption-lincs-generate-classification-problem-arg-CATEGORIES_COUNT"]], "criteria_count": [[5, "cmdoption-lincs-generate-classification-problem-arg-CRITERIA_COUNT"]], "learning_set": [[5, "cmdoption-lincs-learn-classification-model-arg-LEARNING_SET"]], "model": [[5, "cmdoption-lincs-classification-accuracy-arg-MODEL"], [5, "cmdoption-lincs-classify-arg-MODEL"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-MODEL"], [5, "cmdoption-lincs-visualize-classification-model-arg-MODEL"]], "output": [[5, "cmdoption-lincs-visualize-classification-model-arg-OUTPUT"]], "problem": [[5, "cmdoption-lincs-classification-accuracy-arg-PROBLEM"], [5, "cmdoption-lincs-classify-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-PROBLEM"], [5, "cmdoption-lincs-learn-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-visualize-classification-model-arg-PROBLEM"]], "testing_set": [[5, "cmdoption-lincs-classification-accuracy-arg-TESTING_SET"]], "lincs command line option": [[5, "cmdoption-lincs-version"]], "lincs-classification-accuracy command line option": [[5, "cmdoption-lincs-classification-accuracy-arg-MODEL"], [5, "cmdoption-lincs-classification-accuracy-arg-PROBLEM"], [5, "cmdoption-lincs-classification-accuracy-arg-TESTING_SET"]], "lincs-classify command line option": [[5, "cmdoption-lincs-classify-arg-ALTERNATIVES"], [5, "cmdoption-lincs-classify-arg-MODEL"], [5, "cmdoption-lincs-classify-arg-PROBLEM"], [5, "cmdoption-lincs-classify-output-alternatives"]], "lincs-generate-classification-model command line option": [[5, "cmdoption-lincs-generate-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classification-model-model-type"], [5, "cmdoption-lincs-generate-classification-model-mrsort.fixed-weights-sum"], [5, "cmdoption-lincs-generate-classification-model-output-model"], [5, "cmdoption-lincs-generate-classification-model-random-seed"]], "lincs-generate-classification-problem command line option": [[5, "cmdoption-lincs-generate-classification-problem-allow-decreasing-criteria"], [5, "cmdoption-lincs-generate-classification-problem-arg-CATEGORIES_COUNT"], [5, "cmdoption-lincs-generate-classification-problem-arg-CRITERIA_COUNT"], [5, "cmdoption-lincs-generate-classification-problem-denormalized-min-max"], [5, "cmdoption-lincs-generate-classification-problem-output-problem"], [5, "cmdoption-lincs-generate-classification-problem-random-seed"]], "lincs-generate-classified-alternatives command line option": [[5, "cmdoption-lincs-generate-classified-alternatives-arg-ALTERNATIVES_COUNT"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-MODEL"], [5, "cmdoption-lincs-generate-classified-alternatives-arg-PROBLEM"], [5, "cmdoption-lincs-generate-classified-alternatives-max-imbalance"], [5, "cmdoption-lincs-generate-classified-alternatives-misclassified-count"], [5, "cmdoption-lincs-generate-classified-alternatives-output-alternatives"], [5, "cmdoption-lincs-generate-classified-alternatives-random-seed"]], "lincs-info-has-gpu command line option": [[5, "cmdoption-lincs-info-has-gpu-quiet"]], "lincs-learn-classification-model command line option": [[5, "cmdoption-lincs-learn-classification-model-arg-LEARNING_SET"], [5, "cmdoption-lincs-learn-classification-model-arg-PROBLEM"], [5, "cmdoption-lincs-learn-classification-model-model-type"], [5, "cmdoption-lincs-learn-classification-model-mrsort.strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.processor"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.accuracy-heuristic.random-seed"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.breed-strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.initialization-strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.linear-program.solver"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-duration-without-progress"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.max-iterations-without-progress"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.models-count"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.profiles-strategy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.reinitialize-least-accurate.portion"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.target-accuracy"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.verbose"], [5, "cmdoption-lincs-learn-classification-model-mrsort.weights-profiles-breed.weights-strategy"], [5, "cmdoption-lincs-learn-classification-model-output-model"], [5, "cmdoption-lincs-learn-classification-model-ucncs.strategy"]], "lincs-visualize-classification-model command line option": [[5, "cmdoption-lincs-visualize-classification-model-alternatives"], [5, "cmdoption-lincs-visualize-classification-model-alternatives-count"], [5, "cmdoption-lincs-visualize-classification-model-arg-MODEL"], [5, "cmdoption-lincs-visualize-classification-model-arg-OUTPUT"], [5, "cmdoption-lincs-visualize-classification-model-arg-PROBLEM"]]}}) \ No newline at end of file diff --git a/docs/user-guide.html b/docs/user-guide.html index e959ec80..ee510870 100644 --- a/docs/user-guide.html +++ b/docs/user-guide.html @@ -45,23 +45,23 @@

Formatting data for lincsconceptual overview. To describe problems, lincs uses YAML files conforming to the JSON schema you’ll find in our reference documentation.

Here is an example of a problem file:

-
kind: classification-problem
-format_version: 1
-criteria:
-  - name: Criterion 1
-    value_type: real
-    category_correlation: growing
-    min_value: 0
-    max_value: 20
-  - name: Criterion 2
-    value_type: real
-    category_correlation: decreasing
-    min_value: -5
-    max_value: 5
-categories:
-  - name: Low
-  - name: Medium
-  - name: High
+
kind: classification-problem
+format_version: 1
+criteria:
+  - name: Criterion 1
+    value_type: real
+    category_correlation: growing
+    min_value: 0
+    max_value: 20
+  - name: Criterion 2
+    value_type: real
+    category_correlation: decreasing
+    min_value: -5
+    max_value: 5
+categories:
+  - name: Low
+  - name: Medium
+  - name: High
 

The two first keys, kind and format_version are here to identify exactly the file format. @@ -103,18 +103,18 @@

Categories
kind: ncs-classification-model
-format_version: 1
-accepted_values:
-  - kind: thresholds
-    thresholds: [7.49331188, 15.9249287]
-  - kind: thresholds
-    thresholds: [4.49812794, -3.15932083]
-sufficient_coalitions:
-  - &coalitions
-    kind: weights
-    criterion_weights: [0.938825667, 0.343733728]
-  - *coalitions
+
kind: ncs-classification-model
+format_version: 1
+accepted_values:
+  - kind: thresholds
+    thresholds: [7.49331188, 15.9249287]
+  - kind: thresholds
+    thresholds: [4.49812794, -3.15932083]
+sufficient_coalitions:
+  - &coalitions
+    kind: weights
+    criterion_weights: [0.938825667, 0.343733728]
+  - *coalitions
 

Like for problem files, the two first keys must take exactly these values.

@@ -186,20 +186,20 @@

Sufficient coalitions

Here is another model corresponding to the problem file above, but this time using the roots kind of sufficient coalitions, and using different coalitions for the two boundaries (so, no YAML anchor):

-
kind: ncs-classification-model
-format_version: 1
-accepted_values:
-  - kind: thresholds
-    thresholds: [7.49331188, 15.9249287]
-  - kind: thresholds
-    thresholds: [4.49812794, -3.15932083]
-sufficient_coalitions:
-  - kind: roots
-    upset_roots:
-      - [2]
-  - kind: roots
-    upset_roots:
-      - [1, 2]
+
kind: ncs-classification-model
+format_version: 1
+accepted_values:
+  - kind: thresholds
+    thresholds: [7.49331188, 15.9249287]
+  - kind: thresholds
+    thresholds: [4.49812794, -3.15932083]
+sufficient_coalitions:
+  - kind: roots
+    upset_roots:
+      - [2]
+  - kind: roots
+    upset_roots:
+      - [1, 2]
 

@@ -210,12 +210,12 @@

“Alternatives” files

Like model files, alternatives files are always associated to a problem file.

Here is an example corresponding to the problem above:

-
name,"Criterion 1","Criterion 2",category
-"Alternative 1",10.8156891,4.39045048,Medium
-"Alternative 2",0.25551182,-1.45864725,Low
-"Alternative 3",18.4786396,4.31117153,Medium
-"Alternative 4",18.0154629,1.33949804,Medium
-"Alternative 5",9.30789757,2.66963387,Medium
+
name,"Criterion 1","Criterion 2",category
+"Alternative 1",10.8156891,4.39045048,Medium
+"Alternative 2",0.25551182,-1.45864725,Low
+"Alternative 3",18.4786396,4.31117153,Medium
+"Alternative 4",18.0154629,1.33949804,Medium
+"Alternative 5",9.30789757,2.66963387,Medium
 

Its header line contains the names of its columns. @@ -223,12 +223,12 @@

“Alternatives” filescategory, contains the names of the categories in which each alternative is classified.

Values in the category column can be empty to describe alternatives that are not (yet) classified:

-
name,"Criterion 1","Criterion 2",category
-"Alternative 1",10.8156891,4.39045048,
-"Alternative 2",0.25551182,-1.45864725,
-"Alternative 3",18.4786396,4.31117153,
-"Alternative 4",18.0154629,1.33949804,
-"Alternative 5",9.30789757,2.66963387,
+
name,"Criterion 1","Criterion 2",category
+"Alternative 1",10.8156891,4.39045048,
+"Alternative 2",0.25551182,-1.45864725,
+"Alternative 3",18.4786396,4.31117153,
+"Alternative 4",18.0154629,1.33949804,
+"Alternative 5",9.30789757,2.66963387,
 
@@ -258,7 +258,7 @@

About randomness

With lincs generate classification-problem, you can generate a classification problem file. Using its default settings, you just have to pass it the numbers of criteria and categories you want, as you saw in our get started guide:

-
lincs generate classification-problem 4 3
+
lincs generate classification-problem 4 3
 

The --help option on the command-line and our reference documentation describe the options available to tweak the generated problem. @@ -272,7 +272,7 @@

Generating a problemGenerating a model

With lincs generate classification-model, you can generate a classification model file. Using its default settings, you just have to pass it the problem file you want to use:

-
lincs generate classification-model problem.yml
+
lincs generate classification-model problem.yml
 

For now, lincs can only generate MR-Sort models, so the --model-type option can only take its default value: mrsort. @@ -284,7 +284,7 @@

Generating a model

Generating alternatives

With its default settings, lincs generate classified-alternatives requires only the problem and model files and the number of alternatives to generate:

-
lincs generate classified-alternatives problem.yml model.yml 100
+
lincs generate classified-alternatives problem.yml model.yml 100
 

This generates 100 random alternatives, and then classifies them according to the model.

@@ -306,7 +306,7 @@

Generating alternatives

Learning a model

As you’ve seen in our get started guide, the basic command to learn a classification model with lincs is lincs learn classification-model. With its default settings, you just have to pass it a problem file and a learning set file (of classified alternatives):

-
lincs learn classification-model problem.yml learning-set.csv
+
lincs learn classification-model problem.yml learning-set.csv
 

Its --help option and our reference documentation give you a list of the numerous options it accepts.

@@ -372,8 +372,8 @@
“Weights” step--mrsort.weights-profiles-breed.linear-program.solver option.

By default, it uses GLOP, which is a part of Google’s OR-Tools.

Here is an example using the Alglib solver:

-
lincs learn classification-model problem.yml learning-set.csv \
-  --mrsort.weights-profiles-breed.linear-program.solver alglib
+
lincs learn classification-model problem.yml learning-set.csv \
+  --mrsort.weights-profiles-breed.linear-program.solver alglib
 

It should produce a very similar model, with slight numerical differences.

@@ -390,8 +390,8 @@
“Profiles” steplincs info has-gpu.

Here is an example:

-
lincs learn classification-model problem.yml learning-set.csv \
-  --mrsort.weights-profiles-breed.accuracy-heuristic.processor gpu
+
lincs learn classification-model problem.yml learning-set.csv \
+  --mrsort.weights-profiles-breed.accuracy-heuristic.processor gpu
 

It should produce the exact same model as when using the CPU;