From d37503e4c9343b156084c0ef7ba3a2354b2ca948 Mon Sep 17 00:00:00 2001 From: Vincent Jacques Date: Tue, 24 Oct 2023 12:12:26 +0000 Subject: [PATCH] Publish version 0.10.2 --- doc-sources/changelog.rst | 12 +++++------- doc-sources/conceptual-overview.rst | 2 +- doc-sources/get-started.rst | 8 ++++---- doc-sources/user-guide.rst | 6 +++--- docs/.buildinfo | 2 +- docs/.doctrees/changelog.doctree | Bin 39485 -> 40191 bytes docs/.doctrees/conceptual-overview.doctree | Bin 108517 -> 108495 bytes docs/.doctrees/environment.pickle | Bin 79259 -> 78842 bytes docs/.doctrees/get-started.doctree | Bin 50476 -> 50410 bytes docs/.doctrees/reference.doctree | Bin 164980 -> 164804 bytes docs/.doctrees/user-guide.doctree | Bin 114496 -> 114419 bytes docs/_sources/changelog.rst.txt | 12 +++++------- docs/_sources/conceptual-overview.rst.txt | 4 ++-- docs/_sources/get-started.rst.txt | 14 +++++++------- docs/_sources/user-guide.rst.txt | 12 ++++++------ docs/_static/documentation_options.js | 2 +- docs/changelog.html | 20 ++++++++------------ docs/conceptual-overview.html | 4 ++-- docs/contributor-guide.html | 4 ++-- docs/genindex.html | 14 +++++++------- docs/get-started.html | 18 +++++++++--------- docs/index.html | 4 ++-- docs/objects.inv | Bin 1632 -> 1628 bytes docs/reference.html | 12 ++++++------ docs/search.html | 4 ++-- docs/searchindex.js | 2 +- docs/user-guide.html | 8 ++++---- lincs/__init__.py | 2 +- 28 files changed, 79 insertions(+), 87 deletions(-) diff --git a/doc-sources/changelog.rst b/doc-sources/changelog.rst index 4452fe5d..3f1de12d 100644 --- a/doc-sources/changelog.rst +++ b/doc-sources/changelog.rst @@ -4,18 +4,16 @@ Changelog ========= -Version 0.10.1 -============== - -- Fix ``lincs visualize`` to use criteria's min/max values and category correlation - -Version 0.10.0 -============== +Versions 0.10.0 to 0.10.2 +========================= This is the first release candidate for version 1.0.0. - **Breaking**: Allow more flexible description of accepted values in the model json schema. See user guide for details. - **Breaking**: Rename option ``--ucncs.approach`` to ``--ucncs.strategy`` +- **Breaking**: Rename option ``--output-classified-alternatives`` to ``--output-alternatives`` +- Fix line ends on Windows +- Fix ``lincs visualize`` to use criteria's min/max values and category correlation - Validate consistency with problem when loading alternatives or model files - Output "reproduction command" in ``lincs classify`` - Improve documentation diff --git a/doc-sources/conceptual-overview.rst b/doc-sources/conceptual-overview.rst index 1cb3d034..9a02682e 100644 --- a/doc-sources/conceptual-overview.rst +++ b/doc-sources/conceptual-overview.rst @@ -362,7 +362,7 @@ If yes, they get a partial scholarship. .. STOP .. START concept-example/expected-classified-alternatives.csv - # Reproduction command (with lincs version 0.10.2-dev): lincs classify problem.yml model.yml alternatives.csv + # Reproduction command (with lincs version 0.10.2): lincs classify problem.yml model.yml alternatives.csv name,Math,Physics,Literature,History,category A,1,1,1,1,"Full scholarship" B,1,1,1,0,"Full scholarship" diff --git a/doc-sources/get-started.rst b/doc-sources/get-started.rst index 9cac2d08..e738b887 100644 --- a/doc-sources/get-started.rst +++ b/doc-sources/get-started.rst @@ -86,7 +86,7 @@ So, start by generating a classification problem with 4 criteria and 3 categorie The generated ``problem.yml`` should look like:: - # Reproduction command (with lincs version 0.10.2-dev): lincs generate classification-problem 4 3 --random-seed 40 + # Reproduction command (with lincs version 0.10.2): lincs generate classification-problem 4 3 --random-seed 40 kind: classification-problem format_version: 1 criteria: @@ -142,7 +142,7 @@ Then generate an NCS classification model:: It should look like:: - # Reproduction command (with lincs version 0.10.2-dev): lincs generate classification-model problem.yml --random-seed 41 --model-type mrsort + # Reproduction command (with lincs version 0.10.2): lincs generate classification-model problem.yml --random-seed 41 --model-type mrsort kind: ncs-classification-model format_version: 1 accepted_values: @@ -212,7 +212,7 @@ Then we'll need to think about the how the ``--max-imbalance`` option interacts It should start with something like this, and contain 1000 alternatives:: - # Reproduction command (with lincs version 0.10.2-dev): lincs generate classified-alternatives problem.yml model.yml 1000 --random-seed 42 --misclassified-count 0 + # Reproduction command (with lincs version 0.10.2): lincs generate classified-alternatives problem.yml model.yml 1000 --random-seed 42 --misclassified-count 0 name,"Criterion 1","Criterion 2","Criterion 3","Criterion 4",category "Alternative 1",0.37454012,0.796543002,0.95071429,0.183434784,"Category 3" "Alternative 2",0.731993914,0.779690981,0.598658502,0.596850157,"Category 2" @@ -268,7 +268,7 @@ The learning set doesn't contain all the information from the original model, and the trained model was reconstituted from this partial information, so it is numerically different:: - # Reproduction command (with lincs version 0.10.2-dev): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver glop --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver glop --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 # Termination condition: target accuracy reached # Number of iterations: 22 kind: ncs-classification-model diff --git a/doc-sources/user-guide.rst b/doc-sources/user-guide.rst index af27a74f..cf7ce4e9 100644 --- a/doc-sources/user-guide.rst +++ b/doc-sources/user-guide.rst @@ -475,7 +475,7 @@ Here is an example using the `Alglib `_ solver:: It should produce a very similar model, with slight numerical differences. .. START alglib-learning/expected-alglib-trained-model.yml - # Reproduction command (with lincs version 0.10.2-dev): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver alglib --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver alglib --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 # Termination condition: target accuracy reached # Number of iterations: 9 kind: ncs-classification-model @@ -591,7 +591,7 @@ And:: They should produce a different kind of model, with the sufficient coalitions specified explicitly by their roots:: - # Reproduction command (with lincs version 0.10.2-dev): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy sat-by-coalitions + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy sat-by-coalitions kind: ncs-classification-model format_version: 1 accepted_values: @@ -613,7 +613,7 @@ They should produce a different kind of model, with the sufficient coalitions sp .. STOP .. START sat-learnings/expected-max-sat-by-separation-trained-model.yml - # Reproduction command (with lincs version 0.10.2-dev): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy max-sat-by-separation + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy max-sat-by-separation kind: ncs-classification-model format_version: 1 accepted_values: diff --git a/docs/.buildinfo b/docs/.buildinfo index c0af87c1..f10fbebc 100644 --- a/docs/.buildinfo +++ b/docs/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 4d21c6d4dfc9ed9c5861a55078162fe0 +config: 3e5c069326af377335200e954a72817b tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/docs/.doctrees/changelog.doctree b/docs/.doctrees/changelog.doctree index 1824584746849ce5775663f65ebe411ffa083c08..672534384732ed076d9995200577022f6047f9c1 100644 GIT binary patch literal 40191 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 VFuW26PdWT>Z#YayC2dS){~t&7Xh#45 delta 9269 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 B_=o@i diff --git a/docs/.doctrees/conceptual-overview.doctree b/docs/.doctrees/conceptual-overview.doctree index 73160ec0f749d2fad577454df1f753e4f91ff3e9..38eb2eb75150c43a59eea8de4ee836904a8ea90b 100644 GIT binary patch delta 72 zcmaEQp6&d3HkJm~sV*B?)E6_ZnXGtOax=$L4aUjV%knug*kh+;2u2`8H(M_Y(PcE+ SJmK;zMlhwqxY_^Ow2J`$xg4zk delta 81 zcmX?qp6%&*HkJm~sZkqQ)E6^u->kFPk#X{YCE}ASmt>)GlQ&OU_Ed+(P}53bvfdKY U$-YAmlg8SW$TWhT?^GzMeZLOH6+gwY7X%0wHNiH>5!b;G-7zv{C>MJ)tHuw7psNe zrNfropTK)U4D8FB0p1fmVB>^P$jCnjzm@8SWF==p{Dh`;rFsY~G{74Z&Y`Ow0*Zp* zwF2ty1sjTj!C3e`Y$_fGDMc+1HZd6X6!GxPMb3 zyjpS*+{(OR>)nmeRc3&Q(mq%`$rFOgn&ID*{J>sz5iXT`L-(XcFjW}9rJU2(PY#m2 zT_CN<1Yb`Mg$F9m!Ix7;z=M-#&_rif8h}jUp0lcg;QEvqaIz{9td-~B;4}}C0WDQc zaHz%;?ydHN8&!R958hv!+6*7n_(5xRAAC5?6B=upVQHBkT&U@Toavr$c3Ly+neGQu z@3{y&XLv)|^hSue*8uNL?;~mO+6)^!InxhD-`fZBEKf+E*$f`{`N58v7r}M5H*A^J z2#aSMApE{=2>Zhk*R`%Vn001=SvjrnK}HaH5$4q{Brm{;`b_xSXTzmuU4cB^05O?7fwFXOsq$YK za7lx&bjTH^yk5b8dmDyJH#zVS@HAxweo6h`!1!|W0d{3r=yIPa-Q^}4JL(j=v!)3G z-E|G!PgK_bN2O<^)i9)K7}m(EBY#yO)*knR?fU`+n3GzV<2?0c`{T(qCG6k(Mdr)ekRP?oeXIlL zCuV`i8^fglcR1WtL`yL5jcA>t1b*=Bf-Ie*0^U^CJM!;ygEh8Mu%pdi!lc&NGBte* z1S5b(GyOPB4g%)#YMcG#CNe}}zZW9Q|X`nG|%z@aWSse9j!5E5{LyhT~U zoF+Qf?RD?Ok~k$odRI(2nnnn7Ac7${QVP|vUXOS$o!qS;$nT96IEyt11%o5J@qRp+ zs~{vD9VsA~H3&_EBNTrSPSz+0yFW-05LRmt9vKWF1T0Il;hhiTNH0Yposjl`A51(Z z7H}5}bWFD$ynu1X!*LDwmwfH>&Yq&0glm6^>!-&*IvtY%*5CnE!F1fRU}m7&Qn6?g4to^u*#& zg@dJkvc!K9P3~7%)_;;JurzB~Oj;Ji7|4Qicp%GiwigL`;ATJ2qn7Q5QnouhecDRj z-lUy+NZVNmy)7f9?Rv<2CKEpYEJ)g>$K{cU(;|aCJGYx7rBizPP?pZ1|F$YB?cSaW z9$NyWgL>F;e}?{$URk^!>EXijnfmus#fKd2#8abT^PF(l`3oo*`o#7JqQTxQj^+UOl^=p)kv z@XGukf$D25)p;!yD^@kU^2Y?p%~Ki3&;@tt9J9t5raYUab4;2cR32FGf!X4$8kp_- zjuAQB87F0_MClJ?2t;>jh|<^L6pLCID&3<7Ji72sA)s0lP^rnR!jnz4jSogj3snf$ zMacrh0u6+1aEOq_;nFiI#6ydd1c;|J5E}-Ec(N--I;=vtElCp~4r(CYWU^yQSHQ0A zSvtpjNT;$e1Zsh&Ntaa$?`2}Ge$-I((c=DhSuF8})Sbn2`8F?47p9JfmuC68bA=-* z7cW*_e5b+xW%@Djl}5lw)nXV2#o%l8(uy=vqu`iVj*$-OA?4*fVYiy>)xY;;L&HO{ zWWM73$wR3EX@{1yjfPp^$ipFIy%LhJN?g{U4Oyejb2aa4_9H>$PYTAyN5t)9uNI^C zcQ9UhG@N{)VEA^&3aOvfVx0aRjIh-a7Wj2dvd~@pmwMpis8maXAOmS|3Jj#d zNr(zzY4rWx(#VD|7$J45x%?l9Wm~1qWu-TpH7)j7X}cP8)-EoQZQ7WvOrdj>>3Nv^ zdJSCdNs~^f7<1Q;6KZfwi*a;tjJ0yQbXCRh*pMS&T+(9vz!gFs-kLgM?*`V9?I6{# z|A}BJ!bg1$JSoobP#?{3jo=Cg4T20DE__=VNVAo_NVw9S48J?9Xa5n8jf;?``@oca zh0wNf9PR;E4rIdS-r-V}4-UZ!X(6>0NzFcR^65yO*++Q?Sb&aMx_PQ>V}avd_m$c) z0{`zh|4gK`NewRBlq>{q)C504W&H*fj6u{u-R2nShzfCPbGiWWmImU$U=Vz7`~KM^ z=^rXg?Q^39n6FrvqZ@yxy|zI0^9E_CuhR29&qoL$5=6W&_WYKH`6lf@WgZO&UkH)n zRhXD9cM32u6h`l0j`T%lGq`T8lP1xS)OGuv;km6rWFk7ILD!)GItW8wj2AEpHL2t? z*-^*waOLP^r+9OjFZjMRPg>ZI>ymM=FOK7FA9)s_7AFS5&pzEG+`huT6hAWZuOAD1 z@io@~PTLZt)oOP50ZKx{%5C98X=n#r_|&K*dU@M8AyJzq(RL~e13umtB2JHjS#SDF zScizynSzbgvziUbQC7=4n{lFayVthXH(T)Y@Lc>z?G)A0kY=};{pfcu$0U7ML;Dv^ zeQv^)BU!owv>5Cw*WaluQ1?&e?j14Ge;G9$f*U*1gr5CJLvdBpvwjG_ox#!wKV?F7 z?i5Ec5Kes}PACJFZ_nc4UA|HdgGju+07Ii%O$)5IS73|=JB!JV8Pcw)Koymx4L&g9 zV4ifq7tS|Z@yqoveB3WRQv{aJGNcat3UqB0`##y`hf|jRJCqHX*~1Bb6hBiet?+}V zvSalR`6)&1p#hot$5h2S8fJl4&xVryG=!`G!`~8xh}X3duW?TL>2fDl0C$(<&*^iV z2g{!uh2XQ=;L}|3smk9E@yZubQ2zNuWFK}eRRFlj{K;eB`bEBeK-BoYQQ-BZzl0qa z-V%}1kaw&66%oPk9FXmrf!)1qzWZ!{`qhr zs!S7ALZdA3=0!J{bs<=?C{af)WC>AoXq3)T^A;vMdeaD}zO8`^Uj;zt1zLjKuM@~a zaN|Ng_B-dRe4XgIv~L`ClExzXppC1Et^5n1p}k32cFo_G1?IB=DlxlVgz6 zm!*sJS0?68CJ*ds3x2h_aFI^QjPGLv#A1pl^tb?z7ueVZv2U7&9}M_inFn_KU=#wI zXrR!M1|~a5YZ!lSs^t+u(d zO|91U7E}MJ93It`>ev}yX#hLmD|KS0dnnPPz0xptu2<@T=ZFh`%ExoWgFh7()5F0v z<`?h@hDVrYE^Qqky);02d4RNCk$Ug`c?OBL2H-4zh8`K(@DA(=^idwqo^s{pPE?hf zAAtA&J2L!1cE5;S`FYP`ykBMR!s{%%c_{>6H+s=zP@spF*Z?$Mf7JOobm%Sy@@qOI z{4#@!v@{E_3S4894rytq7iHq7Za!`SKz5Rms6SCr6+p5y=Py>9qg|=f#S&CggDEe z5#mqYmVY2*EjEiK@;El0L&$1uHVz@%I83g5g^+BTv%K1g=-R`7^Cp1Bx;zq`@Ud_>wLaxkX zN?Jk}`4=6TfDt)*vIU!O^rV*i6v#`xNS2%=5l?xo2gya_u3$1o_V6TS+@pwl$eyH< zD~hRNyqxSsCZYF(UgS8}H^`@a$qf0t4{?`!y-6L{+Ei_@yw-=bb8Q{f*2(w#l0P8E zF<Q82)aj`!+hs{g_Ie|@506EKDn`jy}^1)%mSMC@_8o1WVwP8WT zPu>-XD3yU^9yhhCrfvk<9z;Im`cAI@>u~ZU>RU&UKU1DyvK$+%1)V-QA?%N1cb zZe5-vQ0@vr{IF1^E_tdcfDObOp{(S;g_4IjQ7(7biASAX%W?TEvUj`S?*!I*s zvGfj`xfI`d>4wm6_h_!|m~EP8!{1uq&j3=fj!LD=)>$c z39D=jvH1xHoVjTjMMu57A)M&Ra(PQQsr2Zi2c0iqLM!d&Kgv!KB%G^WR8(mZB(RHl zz1*)toNk@b*l~YLn{kc>e*uD_%wfkM4z|`7tLm^zaPUC{tEJ6Y+lap>F%EF+72Nbj zW1~fWKZ59aUVHm(@`VTzl*DNNB)EGUjSZH1tEt0kw6xK>soV$T*hmuQ%p%^BOCw3J z^9uU*`K~-SlBDOe`=cD`DcZxKlPU@d%V;<=9TQBtsfATjOUjF9R~1fG9Ztv>BFV6> z!56&h^)ZLpLK$2pS61Yg6;4u(p9)3|{Tace&nuf+SXrJowWOx7N)7&;dC1G6$Y>9i z@s~X0HJQYafE1>>(66HGSXlPE9iz3g&7`7yqXcD$JX-~oAD~`0LXFklY+jmY&Ykh~YrM1yw z#Qnn9)Mk@+#1cs`DmXa7&S=_>geWb>FDMTdYnJVt#Qsr}0noW`n7Au4czVyESbmO~SXFYiLJ zYRE|>rJV6@MTd-W94t7PxF##5m?YS5n}(AWqkJV1-^AF!RLQy|lFPwsxIHBh!Tn{Q zP+~ACxYGsGZMZW9qh@-~7EI0+)l(-|JC<}Ev)Rnc<B8_6uEgLtqj=Oq(=xiy)j;F*rRDVbDq z_3>m9B?qREY^ttGA(Qb#lDs8_l+yNU3Mr=Tm{d|n+fAwXKwlw$ol5esiAf{)53byr zhA&Mk5ErECB_Q#mHW-fK1U!=^fTrp2ov~z_`Rm^7!`Di)`9)dA4{z@dG zqEj_L!2K6d1)Cv@xnilRSjH7ARK-fJSfwf+kux($ar7x1Li&Fc{dwgYGnKHvCkH4` i%Fktx(PXQ9E`tnrJKb;Fuzn;N=XOSs_7#mJ)#QJaUhgdc delta 11232 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 diff --git a/docs/.doctrees/reference.doctree b/docs/.doctrees/reference.doctree index de7cb1c8d71b755acbeaac7e715331c03c2c76e1..b34d46545ea7a2eb51540e43d673090b9b9cc77c 100644 GIT binary patch delta 333 zcmey;!F8mai=}~eD#J#W4fh!>C;xw)EEVXz_kIrPd^Wq$p zy7{Fg1*Ij^|Cuw&Pd@%agHu}aEd9|Kn$3? z@PRN-hF}j|VDr9*esa?TI2etlx-+VBPIY2nWB`H5j*nEfPGCG^Ha*Uf(Owv$TNl}F z(>FLWnoNId&d5Ifzd55DNiLF@{=tGV1CO&N?|Ue@eZ3`P`myO7@)(7uyZmPqonDZ| Y$UQZPX)ov0)Ml_F8MgB?GNm>H04r^IR{#J2 delta 467 zcmX@o&h@2(i=}~eD&t0$4fm(7PiJJGEc!xj@|mxk(~Ha*#hIt{m{0zAUjfXSEc?KU z(@|G9zqF*Fv}F24Yevb*c@H?alXDV_i!;+QQ&Zxn-->5aBl&yhPHrx$}sujW#Q?S{~7O2UoXwXzBP?0 Gt{DKZW2&(L diff --git a/docs/.doctrees/user-guide.doctree b/docs/.doctrees/user-guide.doctree index e2155e4c7efd29e3f8d2b27746298986c4d5bc30..3348be86ebc6d275168134cdc464fecf81ccade3 100644 GIT binary patch delta 236 zcmX@`kL~kcwheqjjB7UY3mG#_77(xH$Y771k|7uY5!oyt9&(z|YPw?`qwM6~N2&;> z+~%K;gk>lHana$NdT$>C7;JT9RQF~ynm)gW(Qo^9Z^n35B+eU_=>-!RIk!iJF-|am zh^KB3XlMM+h{V~$2vJnj&8Pzu-wrfs1rvnUVA>AUU&zk5ar%mxjMJxA&Sd1C-anJ^ lCbwilg060UX-Pq8$@IEejN+W4aPHh?j1t=q&SI=r0RUvAQ?vj8 delta 296 zcmezTm+inmwheqjjN3Q!3mG#_UN0;$*M!)HD z9E@z+?E@K~u}pu^!N@+nE`TuyU9R4g(QrFZbqo`PR%F_4+s$ao2vL_hJ*t6Gbo<*L zMm?ZB$W(;LI>zZhm7LpsCo*QRGwzvQIFoVubl;hb+(4I$PfwZ2c$P;cAwgF+zqF*F av_uyqI@#_47ncI6Q2qn%?Ip7q>s0`^H)s_A diff --git a/docs/_sources/changelog.rst.txt b/docs/_sources/changelog.rst.txt index 4452fe5d..3f1de12d 100644 --- a/docs/_sources/changelog.rst.txt +++ b/docs/_sources/changelog.rst.txt @@ -4,18 +4,16 @@ Changelog ========= -Version 0.10.1 -============== - -- Fix ``lincs visualize`` to use criteria's min/max values and category correlation - -Version 0.10.0 -============== +Versions 0.10.0 to 0.10.2 +========================= This is the first release candidate for version 1.0.0. - **Breaking**: Allow more flexible description of accepted values in the model json schema. See user guide for details. - **Breaking**: Rename option ``--ucncs.approach`` to ``--ucncs.strategy`` +- **Breaking**: Rename option ``--output-classified-alternatives`` to ``--output-alternatives`` +- Fix line ends on Windows +- Fix ``lincs visualize`` to use criteria's min/max values and category correlation - Validate consistency with problem when loading alternatives or model files - Output "reproduction command" in ``lincs classify`` - Improve documentation diff --git a/docs/_sources/conceptual-overview.rst.txt b/docs/_sources/conceptual-overview.rst.txt index 5635a5bc..9a02682e 100644 --- a/docs/_sources/conceptual-overview.rst.txt +++ b/docs/_sources/conceptual-overview.rst.txt @@ -160,7 +160,7 @@ The profiles for this model look like this: lincs visualize classification-model problem.yml model.yml concept-example-model.png cp concept-example-model.png ../../../../doc-sources - lincs classify problem.yml model.yml alternatives.csv --output-classified-alternatives classified-alternatives.csv + lincs classify problem.yml model.yml alternatives.csv --output-alternatives classified-alternatives.csv diff classified-alternatives.csv expected-classified-alternatives.csv .. STOP @@ -362,7 +362,7 @@ If yes, they get a partial scholarship. .. STOP .. START concept-example/expected-classified-alternatives.csv - # Reproduction command (with lincs version 0.10.1): lincs classify problem.yml model.yml alternatives.csv + # Reproduction command (with lincs version 0.10.2): lincs classify problem.yml model.yml alternatives.csv name,Math,Physics,Literature,History,category A,1,1,1,1,"Full scholarship" B,1,1,1,0,"Full scholarship" diff --git a/docs/_sources/get-started.rst.txt b/docs/_sources/get-started.rst.txt index 4c14f103..e738b887 100644 --- a/docs/_sources/get-started.rst.txt +++ b/docs/_sources/get-started.rst.txt @@ -86,7 +86,7 @@ So, start by generating a classification problem with 4 criteria and 3 categorie The generated ``problem.yml`` should look like:: - # Reproduction command (with lincs version 0.10.1): lincs generate classification-problem 4 3 --random-seed 40 + # Reproduction command (with lincs version 0.10.2): lincs generate classification-problem 4 3 --random-seed 40 kind: classification-problem format_version: 1 criteria: @@ -142,7 +142,7 @@ Then generate an NCS classification model:: It should look like:: - # Reproduction command (with lincs version 0.10.1): lincs generate classification-model problem.yml --random-seed 41 --model-type mrsort + # Reproduction command (with lincs version 0.10.2): lincs generate classification-model problem.yml --random-seed 41 --model-type mrsort kind: ncs-classification-model format_version: 1 accepted_values: @@ -195,7 +195,7 @@ It should output something like: And finally generate a set of classified alternatives:: - lincs generate classified-alternatives problem.yml model.yml 1000 --output-classified-alternatives learning-set.csv + lincs generate classified-alternatives problem.yml model.yml 1000 --output-alternatives learning-set.csv .. APPEND-TO-LAST-LINE --random-seed 42 .. STOP @@ -212,7 +212,7 @@ Then we'll need to think about the how the ``--max-imbalance`` option interacts It should start with something like this, and contain 1000 alternatives:: - # Reproduction command (with lincs version 0.10.1): lincs generate classified-alternatives problem.yml model.yml 1000 --random-seed 42 --misclassified-count 0 + # Reproduction command (with lincs version 0.10.2): lincs generate classified-alternatives problem.yml model.yml 1000 --random-seed 42 --misclassified-count 0 name,"Criterion 1","Criterion 2","Criterion 3","Criterion 4",category "Alternative 1",0.37454012,0.796543002,0.95071429,0.183434784,"Category 3" "Alternative 2",0.731993914,0.779690981,0.598658502,0.596850157,"Category 2" @@ -268,7 +268,7 @@ The learning set doesn't contain all the information from the original model, and the trained model was reconstituted from this partial information, so it is numerically different:: - # Reproduction command (with lincs version 0.10.1): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver glop --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver glop --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 # Termination condition: target accuracy reached # Number of iterations: 22 kind: ncs-classification-model @@ -303,7 +303,7 @@ To see how close a trained model is to the original one, you can reclassify a te First, generate a testing set:: - lincs generate classified-alternatives problem.yml model.yml 10000 --output-classified-alternatives testing-set.csv + lincs generate classified-alternatives problem.yml model.yml 10000 --output-alternatives testing-set.csv .. APPEND-TO-LAST-LINE --random-seed 44 .. STOP @@ -314,7 +314,7 @@ First, generate a testing set:: And ask the trained model to classify it:: - lincs classify problem.yml trained-model.yml testing-set.csv --output-classified-alternatives reclassified-testing-set.csv + lincs classify problem.yml trained-model.yml testing-set.csv --output-alternatives reclassified-testing-set.csv .. STOP diff --git a/docs/_sources/user-guide.rst.txt b/docs/_sources/user-guide.rst.txt index 004413f5..cf7ce4e9 100644 --- a/docs/_sources/user-guide.rst.txt +++ b/docs/_sources/user-guide.rst.txt @@ -33,7 +33,7 @@ To describe problems, *lincs* uses YAML files conforming to the `JSON schema /dev/null - lincs classify problem.yml mrsort-model.yml unclassified-alternatives.csv --output-classified-alternatives classified-alternatives.csv + lincs classify problem.yml mrsort-model.yml unclassified-alternatives.csv --output-alternatives classified-alternatives.csv diff <(tail -n +2 classified-alternatives.csv) expected-classified-alternatives.csv .. STOP @@ -336,7 +336,7 @@ With its default settings, ``lincs generate classified-alternatives`` requires o lincs generate classified-alternatives problem.yml model.yml 100 -.. APPEND-TO-LAST-LINE --output-classified-alternatives learning-set.csv +.. APPEND-TO-LAST-LINE --output-alternatives learning-set.csv .. STOP This generates 100 random alternatives, and then classifies them according to the model. @@ -475,7 +475,7 @@ Here is an example using the `Alglib `_ solver:: It should produce a very similar model, with slight numerical differences. .. START alglib-learning/expected-alglib-trained-model.yml - # Reproduction command (with lincs version 0.10.1): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver alglib --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver alglib --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0 # Termination condition: target accuracy reached # Number of iterations: 9 kind: ncs-classification-model @@ -591,7 +591,7 @@ And:: They should produce a different kind of model, with the sufficient coalitions specified explicitly by their roots:: - # Reproduction command (with lincs version 0.10.1): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy sat-by-coalitions + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy sat-by-coalitions kind: ncs-classification-model format_version: 1 accepted_values: @@ -613,7 +613,7 @@ They should produce a different kind of model, with the sufficient coalitions sp .. STOP .. START sat-learnings/expected-max-sat-by-separation-trained-model.yml - # Reproduction command (with lincs version 0.10.1): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy max-sat-by-separation + # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type ucncs --ucncs.strategy max-sat-by-separation kind: ncs-classification-model format_version: 1 accepted_values: @@ -646,7 +646,7 @@ you can use it to classify alternatives with ``lincs classify problem.yml model. The ``category`` column in the input alternatives file is ignored and may be empty. Note that the input files will not be modified: the classified alternatives will be printed on the standard output -or written in the file specified by ``--output-classified-alternatives``. +or written in the file specified by ``--output-alternatives``. Computing a classification accuracy ----------------------------------- diff --git a/docs/_static/documentation_options.js b/docs/_static/documentation_options.js index 1a724067..db6d22fe 100644 --- a/docs/_static/documentation_options.js +++ b/docs/_static/documentation_options.js @@ -1,6 +1,6 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), - VERSION: '0.10.1', + VERSION: '0.10.2', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/docs/changelog.html b/docs/changelog.html index 90388610..013fbe13 100644 --- a/docs/changelog.html +++ b/docs/changelog.html @@ -5,11 +5,11 @@ - Changelog — lincs 0.10.1 documentation + Changelog — lincs 0.10.2 documentation - + @@ -34,18 +34,15 @@

Changelog

-
-

Version 0.10.1

-
    -
  • Fix lincs visualize to use criteria’s min/max values and category correlation

  • -
-
-
-

Version 0.10.0

+
+

Versions 0.10.0 to 0.10.2

This is the first release candidate for version 1.0.0.

  • Breaking: Allow more flexible description of accepted values in the model json schema. See user guide for details.

  • Breaking: Rename option --ucncs.approach to --ucncs.strategy

  • +
  • Breaking: Rename option --output-classified-alternatives to --output-alternatives

  • +
  • Fix line ends on Windows

  • +
  • Fix lincs visualize to use criteria’s min/max values and category correlation

  • Validate consistency with problem when loading alternatives or model files

  • Output “reproduction command” in lincs classify

  • Improve documentation

  • @@ -271,8 +268,7 @@

    Navigation

  • Reference
  • Contributor guide
  • Changelog
      -
    • Version 0.10.1
    • -
    • Version 0.10.0
    • +
    • Versions 0.10.0 to 0.10.2
    • Versions 0.9.0 to 0.9.2
    • Version 0.8.7
    • Versions 0.8.5 to 0.8.6
    • diff --git a/docs/conceptual-overview.html b/docs/conceptual-overview.html index 0dc0cb4d..f96868ba 100644 --- a/docs/conceptual-overview.html +++ b/docs/conceptual-overview.html @@ -5,11 +5,11 @@ - Conceptual overview — lincs 0.10.1 documentation + Conceptual overview — lincs 0.10.2 documentation - + diff --git a/docs/contributor-guide.html b/docs/contributor-guide.html index 81d02b04..50d16a72 100644 --- a/docs/contributor-guide.html +++ b/docs/contributor-guide.html @@ -5,11 +5,11 @@ - Contributor guide — lincs 0.10.1 documentation + Contributor guide — lincs 0.10.2 documentation - + diff --git a/docs/genindex.html b/docs/genindex.html index e38be5f7..ca726bc3 100644 --- a/docs/genindex.html +++ b/docs/genindex.html @@ -4,11 +4,11 @@ - Index — lincs 0.10.1 documentation + Index — lincs 0.10.2 documentation - + @@ -240,12 +240,12 @@

      Symbols

  • - --output-classified-alternatives + --output-alternatives
  • @@ -454,7 +454,7 @@

    L

    lincs-classify command line option
      -
    • --output-classified-alternatives +
    • --output-alternatives
    • ALTERNATIVES
    • @@ -503,7 +503,7 @@

      L

    • --misclassified-count
    • -
    • --output-classified-alternatives +
    • --output-alternatives
    • --random-seed
    • diff --git a/docs/get-started.html b/docs/get-started.html index d6c6767c..e6d08e8a 100644 --- a/docs/get-started.html +++ b/docs/get-started.html @@ -5,11 +5,11 @@ - Get started — lincs 0.10.1 documentation + Get started — lincs 0.10.2 documentation - + @@ -73,7 +73,7 @@

      Get lincsproblem.yml should look like:

      -
      # Reproduction command (with lincs version 0.10.1): lincs generate classification-problem 4 3 --random-seed 40
      +
      # Reproduction command (with lincs version 0.10.2): lincs generate classification-problem 4 3 --random-seed 40
       kind: classification-problem
       format_version: 1
       criteria:
      @@ -111,7 +111,7 @@ 

      Get lincs
      # Reproduction command (with lincs version 0.10.1): lincs generate classification-model problem.yml --random-seed 41 --model-type mrsort
      +
      # Reproduction command (with lincs version 0.10.2): lincs generate classification-model problem.yml --random-seed 41 --model-type mrsort
       kind: ncs-classification-model
       format_version: 1
       accepted_values:
      @@ -140,7 +140,7 @@ 

      Get lincs

      And finally generate a set of classified alternatives:

      -
      lincs generate classified-alternatives problem.yml model.yml 1000 --output-classified-alternatives learning-set.csv
      +
      lincs generate classified-alternatives problem.yml model.yml 1000 --output-alternatives learning-set.csv
       

      The file format is documented in our reference documentation.

      @@ -148,7 +148,7 @@

      Get lincs--max-imbalance option interacts with that feature.

      It should start with something like this, and contain 1000 alternatives:

      -
      # Reproduction command (with lincs version 0.10.1): lincs generate classified-alternatives problem.yml model.yml 1000 --random-seed 42 --misclassified-count 0
      +
      # Reproduction command (with lincs version 0.10.2): lincs generate classified-alternatives problem.yml model.yml 1000 --random-seed 42 --misclassified-count 0
       name,"Criterion 1","Criterion 2","Criterion 3","Criterion 4",category
       "Alternative 1",0.37454012,0.796543002,0.95071429,0.183434784,"Category 3"
       "Alternative 2",0.731993914,0.779690981,0.598658502,0.596850157,"Category 2"
      @@ -172,7 +172,7 @@ 

      Get lincs
      # Reproduction command (with lincs version 0.10.1): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver glop --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0
      +
      # Reproduction command (with lincs version 0.10.2): lincs learn classification-model problem.yml learning-set.csv --model-type mrsort --mrsort.strategy weights-profiles-breed --mrsort.weights-profiles-breed.models-count 9 --mrsort.weights-profiles-breed.accuracy-heuristic.random-seed 43 --mrsort.weights-profiles-breed.initialization-strategy maximize-discrimination-per-criterion --mrsort.weights-profiles-breed.weights-strategy linear-program --mrsort.weights-profiles-breed.linear-program.solver glop --mrsort.weights-profiles-breed.profiles-strategy accuracy-heuristic --mrsort.weights-profiles-breed.accuracy-heuristic.processor cpu --mrsort.weights-profiles-breed.breed-strategy reinitialize-least-accurate --mrsort.weights-profiles-breed.reinitialize-least-accurate.portion 0.5 --mrsort.weights-profiles-breed.target-accuracy 1.0
       # Termination condition: target accuracy reached
       # Number of iterations: 22
       kind: ncs-classification-model
      @@ -196,11 +196,11 @@ 

      Get lincs
      lincs generate classified-alternatives problem.yml model.yml 10000 --output-classified-alternatives testing-set.csv
      +
      lincs generate classified-alternatives problem.yml model.yml 10000 --output-alternatives testing-set.csv
       

      And ask the trained model to classify it:

      -
      lincs classify problem.yml trained-model.yml testing-set.csv --output-classified-alternatives reclassified-testing-set.csv
      +
      lincs classify problem.yml trained-model.yml testing-set.csv --output-alternatives reclassified-testing-set.csv
       

      There are a few differences between the original testing set and the reclassified one:

      diff --git a/docs/index.html b/docs/index.html index 7ef88464..752408b7 100644 --- a/docs/index.html +++ b/docs/index.html @@ -5,11 +5,11 @@ - README — lincs 0.10.1 documentation + README — lincs 0.10.2 documentation - + diff --git a/docs/objects.inv b/docs/objects.inv index b6940a138b4e9b87cc4907f7d757bf594e5f08f4..991af15563d7c564ac01f37726be6070baffe3d5 100644 GIT binary patch delta 1497 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 D8;Re~ diff --git a/docs/reference.html b/docs/reference.html index 0f792655..f0b074b5 100644 --- a/docs/reference.html +++ b/docs/reference.html @@ -5,11 +5,11 @@ - Reference — lincs 0.10.1 documentation + Reference — lincs 0.10.2 documentation - + @@ -416,8 +416,8 @@

      classifyOptions

      -
      ---output-classified-alternatives <output_classified_alternatives>
      +
      +--output-alternatives <output_alternatives>

      Write classified alternatives to this file instead of standard output.

      @@ -559,8 +559,8 @@

      classified-alternativesOptions

      -
      ---output-classified-alternatives <output_classified_alternatives>
      +
      +--output-alternatives <output_alternatives>

      Write generated classified alternatives to this file instead of standard output.

      diff --git a/docs/search.html b/docs/search.html index 5727ee50..0c848211 100644 --- a/docs/search.html +++ b/docs/search.html @@ -4,12 +4,12 @@ - Search — lincs 0.10.1 documentation + Search — lincs 0.10.2 documentation - + diff --git a/docs/searchindex.js b/docs/searchindex.js index c41b4ac8..779775fc 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": {"fix": [0, 2, 5, 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], "valu": [0, 1, 2, 3, 5], "categori": [0, 1, 3, 5], "correl": [0, 5, 6], "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], "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], "valid": [0, 5, 6], "consist": [0, 1, 2, 6], "problem": [0, 1, 3], "when": [0, 1, 2, 4, 5, 6], "load": 0, "altern": [0, 1, 3], "file": [0, 1, 2, 3], "output": [0, 3, 5, 6], "reproduct": [0, 3, 6], "command": [0, 2, 4, 6], "classifi": [0, 3], "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], "end": [0, 3], "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], "window": [0, 3, 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, "line": [0, 2, 4, 6], "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_classified_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-classified-alternatives", "--output-classified-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-classified-alternatives", "--output-classified-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, "1": [0, 1], "9": 0, "2": 0, "8": 0, "7": 0, "5": 0, "6": 0, "4": 0, "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": {"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"]], "Get started": [[4, "get-started"], [3, "get-started"]], "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"]], "Version 0.10.1": [[0, "version-0-10-1"]], "Version 0.10.0": [[0, "version-0-10-0"]], "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 lincs": [[3, "get-lincs"]], "Start using lincs\u2019 command-line interface": [[3, "start-using-lincs-command-line-interface"]], "What now?": [[3, "what-now"]], "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"]], "Strategies": [[6, "strategies"], [2, "strategies"]], "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"]], "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"]], "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"]], "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-classified-alternatives": [[5, "cmdoption-lincs-classify-output-classified-alternatives"], [5, "cmdoption-lincs-generate-classified-alternatives-output-classified-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-classified-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-classified-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, 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": {"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"]], "Get started": [[4, "get-started"], [3, "get-started"]], "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"]], "Get lincs": [[3, "get-lincs"]], "Start using lincs\u2019 command-line interface": [[3, "start-using-lincs-command-line-interface"]], "What now?": [[3, "what-now"]], "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"]], "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"]], "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 189f2ec4..e959ec80 100644 --- a/docs/user-guide.html +++ b/docs/user-guide.html @@ -5,11 +5,11 @@ - User Guide — lincs 0.10.1 documentation + User Guide — lincs 0.10.2 documentation - + @@ -420,7 +420,7 @@

      SAT-based strategies

      They should produce a different kind of model, with the sufficient coalitions specified explicitly by their roots:

      -

Computing a classification accuracy

diff --git a/lincs/__init__.py b/lincs/__init__.py index 248985bf..02fc8575 100644 --- a/lincs/__init__.py +++ b/lincs/__init__.py @@ -1,6 +1,6 @@ # Copyright 2023 Vincent Jacques -__version__ = "0.10.2-dev" +__version__ = "0.10.2" # I/O from liblincs import DataValidationException