p= 0.05 num clusters= 1
sampled assortment [2, 3, 4, 59, 40, 84] number: 0
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 100]
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 12: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 100]
empirical probabilities from test set: {2: 0.275, 3: 0.247, 4: 0.252, 59: 0.059, 40: 0.072, 84: 0.06, 0: 0.035}
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.11582967945169491), 3: np.float64(0.11296983447630252), 4: np.float64(0.11018059932493791), 59: np.float64(0.1652549716867656), 40: np.float64(0.1652549716867656), 84: np.float64(0.1652549716867656), 0: np.float64(0.1652549716867656)}
err dic= {2: np.float64(0.1591703205483051), 3: np.float64(0.13403016552369748), 4: np.float64(0.1418194006750621), 59: np.float64(0.10625497168676559), 40: np.float64(0.0932549716867656), 84: np.float64(0.10525497168676559), 0: np.float64(0.13025497168676559)} 

err list= [np.float64(0.1591703205483051), np.float64(0.13403016552369748), np.float64(0.1418194006750621), np.float64(0.10625497168676559), np.float64(0.0932549716867656), np.float64(0.10525497168676559), np.float64(0.13025497168676559)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.1569585380196277), 3: np.float64(0.14930357979088368), 4: np.float64(0.1420219582803788), 59: np.float64(0.13792898097727782), 40: np.float64(0.13792898097727782), 84: np.float64(0.13792898097727782), 0: np.float64(0.13792898097727782)}
err dic= {2: np.float64(0.11804146198037233), 3: np.float64(0.09769642020911631), 4: np.float64(0.1099780417196212), 59: np.float64(0.07892898097727782), 40: np.float64(0.06592898097727783), 84: np.float64(0.07792898097727782), 0: np.float64(0.10292898097727782)} 

err list= [np.float64(0.11804146198037233), np.float64(0.09769642020911631), np.float64(0.1099780417196212), np.float64(0.07892898097727782), np.float64(0.06592898097727783), np.float64(0.07792898097727782), np.float64(0.10292898097727782)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.24635473225902535), 3: np.float64(0.22291097985819672), 4: np.float64(0.20169819546675638), 59: np.float64(0.08225902310400536), 40: np.float64(0.08225902310400536), 84: np.float64(0.08225902310400536), 0: np.float64(0.08225902310400536)}
err dic= {2: np.float64(0.028645267740974673), 3: np.float64(0.02408902014180328), 4: np.float64(0.05030180453324362), 59: np.float64(0.023259023104005364), 40: np.float64(0.010259023104005366), 84: np.float64(0.022259023104005363), 0: np.float64(0.04725902310400536)} 

err list= [np.float64(0.028645267740974673), np.float64(0.02408902014180328), np.float64(0.05030180453324362), np.float64(0.023259023104005364), np.float64(0.010259023104005366), np.float64(0.022259023104005363), np.float64(0.04725902310400536)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.4058429344108636), 3: np.float64(0.3160707951231778), 4: np.float64(0.24615618274793144), 59: np.float64(0.00798252192950865), 40: np.float64(0.00798252192950865), 84: np.float64(0.00798252192950865), 0: np.float64(0.00798252192950865)}
err dic= {2: np.float64(0.1308429344108636), 3: np.float64(0.06907079512317782), 4: np.float64(0.005843817252068562), 59: np.float64(0.05101747807049135), 40: np.float64(0.06401747807049135), 84: np.float64(0.05201747807049135), 0: np.float64(0.027017478070491353)} 

err list= [np.float64(0.1308429344108636), np.float64(0.06907079512317782), np.float64(0.005843817252068562), np.float64(0.05101747807049135), np.float64(0.06401747807049135), np.float64(0.05201747807049135), np.float64(0.027017478070491353)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.505980125881842), 3: np.float64(0.30689245955259553), 4: np.float64(0.18613968595326824), 59: np.float64(0.0002469321530742177), 40: np.float64(0.0002469321530742177), 84: np.float64(0.0002469321530742177), 0: np.float64(0.0002469321530742177)}
err dic= {2: np.float64(0.23098012588184202), 3: np.float64(0.059892459552595534), 4: np.float64(0.06586031404673176), 59: np.float64(0.05875306784692578), 40: np.float64(0.07175306784692578), 84: np.float64(0.05975306784692578), 0: np.float64(0.034753067846925785)} 

err list= [np.float64(0.23098012588184202), np.float64(0.059892459552595534), np.float64(0.06586031404673176), np.float64(0.05875306784692578), np.float64(0.07175306784692578), np.float64(0.05975306784692578), np.float64(0.034753067846925785)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.5897718839389249), 3: np.float64(0.2785885117198029), 4: np.float64(0.13159589491433327), 59: np.float64(1.0927356735853249e-05), 40: np.float64(1.0927356735853249e-05), 84: np.float64(1.0927356735853249e-05), 0: np.float64(1.0927356735853249e-05)}
err dic= {2: np.float64(0.31477188393892486), 3: np.float64(0.031588511719802925), 4: np.float64(0.12040410508566673), 59: np.float64(0.05898907264326415), 40: np.float64(0.07198907264326414), 84: np.float64(0.05998907264326415), 0: np.float64(0.03498907264326415)} 

err list= [np.float64(0.31477188393892486), np.float64(0.031588511719802925), np.float64(0.12040410508566673), np.float64(0.05898907264326415), np.float64(0.07198907264326414), np.float64(0.05998907264326415), np.float64(0.03498907264326415)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1 

learned probs for this beta: {2: np.float64(0.6652397622627327), 3: np.float64(0.24472803198623722), 4: np.float64(0.09003041164608379), 59: np.float64(4.485262367525762e-07), 40: np.float64(4.485262367525762e-07), 84: np.float64(4.485262367525762e-07), 0: np.float64(4.485262367525762e-07)}
err dic= {2: np.float64(0.3902397622627327), 3: np.float64(0.002271968013762782), 4: np.float64(0.16196958835391623), 59: np.float64(0.05899955147376324), 40: np.float64(0.07199955147376325), 84: np.float64(0.05999955147376324), 0: np.float64(0.03499955147376325)} 

err list= [np.float64(0.3902397622627327), np.float64(0.002271968013762782), np.float64(0.16196958835391623), np.float64(0.05899955147376324), np.float64(0.07199955147376325), np.float64(0.05999955147376324), np.float64(0.03499955147376325)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.7306790860511791), 3: np.float64(0.20934306311908238), 4: np.float64(0.059977791773022635), 59: np.float64(1.4764178902485876e-08), 40: np.float64(1.4764178902485876e-08), 84: np.float64(1.4764178902485876e-08), 0: np.float64(1.4764178902485876e-08)}
err dic= {2: np.float64(0.4556790860511791), 3: np.float64(0.03765693688091762), 4: np.float64(0.19202220822697735), 59: np.float64(0.0589999852358211), 40: np.float64(0.07199998523582109), 84: np.float64(0.0599999852358211), 0: np.float64(0.0349999852358211)} 

err list= [np.float64(0.4556790860511791), np.float64(0.03765693688091762), np.float64(0.19202220822697735), np.float64(0.0589999852358211), np.float64(0.07199998523582109), np.float64(0.0599999852358211), np.float64(0.0349999852358211)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.5 

learned probs for this beta: {2: np.float64(0.7855970332659129), 3: np.float64(0.17529039184475445), 4: np.float64(0.039112573204801084), 59: np.float64(4.211327195293761e-10), 40: np.float64(4.211327195293761e-10), 84: np.float64(4.211327195293761e-10), 0: np.float64(4.211327195293761e-10)}
err dic= {2: np.float64(0.5105970332659129), 3: np.float64(0.07170960815524555), 4: np.float64(0.21288742679519893), 59: np.float64(0.05899999957886728), 40: np.float64(0.07199999957886727), 84: np.float64(0.05999999957886728), 0: np.float64(0.034999999578867284)} 

err list= [np.float64(0.5105970332659129), np.float64(0.07170960815524555), np.float64(0.21288742679519893), np.float64(0.05899999957886728), np.float64(0.07199999957886727), np.float64(0.05999999957886728), np.float64(0.034999999578867284)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.75 

learned probs for this beta: {2: np.float64(0.8305845642947242), 3: np.float64(0.14433395510656397), 4: np.float64(0.025081480552667137), 59: np.float64(1.1511059508228544e-11), 40: np.float64(1.1511059508228544e-11), 84: np.float64(1.1511059508228544e-11), 0: np.float64(1.1511059508228544e-11)}
err dic= {2: np.float64(0.5555845642947241), 3: np.float64(0.10266604489343603), 4: np.float64(0.22691851944733288), 59: np.float64(0.058999999988488934), 40: np.float64(0.07199999998848894), 84: np.float64(0.059999999988488935), 0: np.float64(0.03499999998848894)} 

err list= [np.float64(0.5555845642947241), np.float64(0.10266604489343603), np.float64(0.22691851944733288), np.float64(0.058999999988488934), np.float64(0.07199999998848894), np.float64(0.059999999988488935), np.float64(0.03499999998848894)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  2 

learned probs for this beta: {2: np.float64(0.8668133321962513), 3: np.float64(0.11731042782605174), 4: np.float64(0.01587623997644693), 59: np.float64(3.1238562186150535e-13), 40: np.float64(3.1238562186150535e-13), 84: np.float64(3.1238562186150535e-13), 0: np.float64(3.1238562186150535e-13)}
err dic= {2: np.float64(0.5918133321962513), 3: np.float64(0.12968957217394828), 4: np.float64(0.23612376002355306), 59: np.float64(0.05899999999968761), 40: np.float64(0.0719999999996876), 84: np.float64(0.05999999999968761), 0: np.float64(0.034999999999687614)} 

err list= [np.float64(0.5918133321962513), np.float64(0.12968957217394828), np.float64(0.23612376002355306), np.float64(0.05899999999968761), np.float64(0.0719999999996876), np.float64(0.05999999999968761), np.float64(0.034999999999687614)]
results for assortment [2, 3, 4, 59, 40, 84] :

err MNL dic= {2: 0.275, 3: 0.247, 4: 0.252, 59: 0.059, 40: 0.072, 84: 0.06, 0: np.float64(0.2293824027072758)} 

err MNL list= [0.275, 0.247, 0.252, 0.059, 0.072, 0.06, np.float64(0.2293824027072758)]
sampled assortment [3, 4, 8, 74, 40, 87] number: 1
#  Learning probs for MM model, A = [3, 4, 8, 74, 40, 87]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 12: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 100]
#  Learning probs for MM model, A = [3, 4, 8, 74, 40, 87]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 12: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 100]
empirical probabilities from test set: {3: 0.259, 4: 0.246, 8: 0.256, 74: 0.066, 40: 0.077, 87: 0.047, 0: 0.049}
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  0.025 

learned probs for this beta: {3: np.float64(0.11422080184787188), 4: np.float64(0.11140068020205361), 8: np.float64(0.10126625630292745), 74: np.float64(0.16827806541178503), 40: np.float64(0.16827806541178503), 87: np.float64(0.16827806541178503), 0: np.float64(0.16827806541178503)}
err dic= {3: np.float64(0.14477919815212814), 4: np.float64(0.13459931979794637), 8: np.float64(0.15473374369707255), 74: np.float64(0.10227806541178502), 40: np.float64(0.09127806541178503), 87: np.float64(0.12127806541178503), 0: np.float64(0.11927806541178503)} 

err list= [np.float64(0.14477919815212814), np.float64(0.13459931979794637), np.float64(0.15473374369707255), np.float64(0.10227806541178502), np.float64(0.09127806541178503), np.float64(0.12127806541178503), np.float64(0.11927806541178503)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  0.05 

learned probs for this beta: {3: np.float64(0.1536552315609968), 4: np.float64(0.14616137748929067), 8: np.float64(0.12108929045283326), 74: np.float64(0.14477352512422034), 40: np.float64(0.14477352512422034), 87: np.float64(0.14477352512422034), 0: np.float64(0.14477352512422034)}
err dic= {3: np.float64(0.1053447684390032), 4: np.float64(0.09983862251070932), 8: np.float64(0.13491070954716675), 74: np.float64(0.07877352512422034), 40: np.float64(0.06777352512422034), 87: np.float64(0.09777352512422034), 0: np.float64(0.09577352512422034)} 

err list= [np.float64(0.1053447684390032), np.float64(0.09983862251070932), np.float64(0.13491070954716675), np.float64(0.07877352512422034), np.float64(0.06777352512422034), np.float64(0.09777352512422034), np.float64(0.09577352512422034)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  0.1 

learned probs for this beta: {3: np.float64(0.2432689151461308), 4: np.float64(0.22011881706923364), 8: np.float64(0.15279703228412836), 74: np.float64(0.09595380887512668), 40: np.float64(0.09595380887512668), 87: np.float64(0.09595380887512668), 0: np.float64(0.09595380887512668)}
err dic= {3: np.float64(0.015731084853869204), 4: np.float64(0.025881182930766355), 8: np.float64(0.10320296771587165), 74: np.float64(0.029953808875126678), 40: np.float64(0.018953808875126682), 87: np.float64(0.04895380887512668), 0: np.float64(0.04695380887512668)} 

err list= [np.float64(0.015731084853869204), np.float64(0.025881182930766355), np.float64(0.10320296771587165), np.float64(0.029953808875126678), np.float64(0.018953808875126682), np.float64(0.04895380887512668), np.float64(0.04695380887512668)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  0.25 

learned probs for this beta: {3: np.float64(0.44629013806629575), 4: np.float64(0.347571109003076), 8: np.float64(0.1471624683364246), 74: np.float64(0.01474407114855259), 40: np.float64(0.01474407114855259), 87: np.float64(0.01474407114855259), 0: np.float64(0.01474407114855259)}
err dic= {3: np.float64(0.18729013806629574), 4: np.float64(0.10157110900307598), 8: np.float64(0.1088375316635754), 74: np.float64(0.05125592885144741), 40: np.float64(0.06225592885144741), 87: np.float64(0.03225592885144741), 0: np.float64(0.03425592885144741)} 

err list= [np.float64(0.18729013806629574), np.float64(0.10157110900307598), np.float64(0.1088375316635754), np.float64(0.05125592885144741), np.float64(0.06225592885144741), np.float64(0.03225592885144741), np.float64(0.03425592885144741)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  0.5 

learned probs for this beta: {3: np.float64(0.5829029341810757), 4: np.float64(0.3535485012172778), 8: np.float64(0.06135678713901725), 74: np.float64(0.0005479443656579166), 40: np.float64(0.0005479443656579166), 87: np.float64(0.0005479443656579166), 0: np.float64(0.0005479443656579166)}
err dic= {3: np.float64(0.32390293418107574), 4: np.float64(0.10754850121727783), 8: np.float64(0.19464321286098274), 74: np.float64(0.06545205563434209), 40: np.float64(0.07645205563434208), 87: np.float64(0.046452055634342085), 0: np.float64(0.04845205563434209)} 

err list= [np.float64(0.32390293418107574), np.float64(0.10754850121727783), np.float64(0.19464321286098274), np.float64(0.06545205563434209), np.float64(0.07645205563434208), np.float64(0.046452055634342085), np.float64(0.04845205563434209)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  0.75 

learned probs for this beta: {3: np.float64(0.665065860532006), 4: np.float64(0.3141548678852398), 8: np.float64(0.020655480409787513), 74: np.float64(3.094779324249996e-05), 40: np.float64(3.094779324249996e-05), 87: np.float64(3.094779324249996e-05), 0: np.float64(3.094779324249996e-05)}
err dic= {3: np.float64(0.406065860532006), 4: np.float64(0.06815486788523978), 8: np.float64(0.2353445195902125), 74: np.float64(0.0659690522067575), 40: np.float64(0.0769690522067575), 87: np.float64(0.0469690522067575), 0: np.float64(0.0489690522067575)} 

err list= [np.float64(0.406065860532006), np.float64(0.06815486788523978), np.float64(0.2353445195902125), np.float64(0.0659690522067575), np.float64(0.0769690522067575), np.float64(0.0469690522067575), np.float64(0.0489690522067575)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  1 

learned probs for this beta: {3: np.float64(0.7263908821660776), 4: np.float64(0.26722427180328756), 8: np.float64(0.006378451184686785), 74: np.float64(1.5987114871372103e-06), 40: np.float64(1.5987114871372103e-06), 87: np.float64(1.5987114871372103e-06), 0: np.float64(1.5987114871372103e-06)}
err dic= {3: np.float64(0.4673908821660776), 4: np.float64(0.021224271803287564), 8: np.float64(0.24962154881531323), 74: np.float64(0.06599840128851286), 40: np.float64(0.07699840128851286), 87: np.float64(0.04699840128851286), 0: np.float64(0.04899840128851286)} 

err list= [np.float64(0.4673908821660776), np.float64(0.021224271803287564), np.float64(0.24962154881531323), np.float64(0.06599840128851286), np.float64(0.07699840128851286), np.float64(0.04699840128851286), np.float64(0.04899840128851286)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  1.25 

learned probs for this beta: {3: np.float64(0.7758320189627967), 4: np.float64(0.2222795949905672), 8: np.float64(0.0018881255262512078), 74: np.float64(6.513009606815928e-08), 40: np.float64(6.513009606815928e-08), 87: np.float64(6.513009606815928e-08), 0: np.float64(6.513009606815928e-08)}
err dic= {3: np.float64(0.5168320189627967), 4: np.float64(0.023720405009432788), 8: np.float64(0.2541118744737488), 74: np.float64(0.06599993486990394), 40: np.float64(0.07699993486990393), 87: np.float64(0.046999934869903934), 0: np.float64(0.048999934869903936)} 

err list= [np.float64(0.5168320189627967), np.float64(0.023720405009432788), np.float64(0.2541118744737488), np.float64(0.06599993486990394), np.float64(0.07699993486990393), np.float64(0.046999934869903934), np.float64(0.048999934869903936)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  1.5 

learned probs for this beta: {3: np.float64(0.8171261928288773), 4: np.float64(0.18232549826738415), 8: np.float64(0.0005482997360785714), 74: np.float64(2.291914891887267e-09), 40: np.float64(2.291914891887267e-09), 87: np.float64(2.291914891887267e-09), 0: np.float64(2.291914891887267e-09)}
err dic= {3: np.float64(0.5581261928288773), 4: np.float64(0.06367450173261585), 8: np.float64(0.25545170026392144), 74: np.float64(0.06599999770808511), 40: np.float64(0.0769999977080851), 87: np.float64(0.046999997708085106), 0: np.float64(0.04899999770808511)} 

err list= [np.float64(0.5581261928288773), np.float64(0.06367450173261585), np.float64(0.25545170026392144), np.float64(0.06599999770808511), np.float64(0.0769999977080851), np.float64(0.046999997708085106), np.float64(0.04899999770808511)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  1.75 

learned probs for this beta: {3: np.float64(0.8518182493789812), 4: np.float64(0.14802381629764022), 8: np.float64(0.00015793401325724703), 74: np.float64(7.753015988219749e-11), 40: np.float64(7.753015988219749e-11), 87: np.float64(7.753015988219749e-11), 0: np.float64(7.753015988219749e-11)}
err dic= {3: np.float64(0.5928182493789812), 4: np.float64(0.09797618370235978), 8: np.float64(0.25584206598674275), 74: np.float64(0.06599999992246984), 40: np.float64(0.07699999992246984), 87: np.float64(0.04699999992246984), 0: np.float64(0.04899999992246984)} 

err list= [np.float64(0.5928182493789812), np.float64(0.09797618370235978), np.float64(0.25584206598674275), np.float64(0.06599999992246984), np.float64(0.07699999992246984), np.float64(0.04699999992246984), np.float64(0.04899999992246984)]
results for assortment [3, 4, 8, 74, 40, 87] :

beta is  2 

learned probs for this beta: {3: np.float64(0.880757140231926), 4: np.float64(0.11919751703595673), 8: np.float64(4.534272164629135e-05), 74: np.float64(2.6176966861460945e-12), 40: np.float64(2.6176966861460945e-12), 87: np.float64(2.6176966861460945e-12), 0: np.float64(2.6176966861460945e-12)}
err dic= {3: np.float64(0.621757140231926), 4: np.float64(0.12680248296404328), 8: np.float64(0.2559546572783537), 74: np.float64(0.0659999999973823), 40: np.float64(0.0769999999973823), 87: np.float64(0.0469999999973823), 0: np.float64(0.048999999997382304)} 

err list= [np.float64(0.621757140231926), np.float64(0.12680248296404328), np.float64(0.2559546572783537), np.float64(0.0659999999973823), np.float64(0.0769999999973823), np.float64(0.0469999999973823), np.float64(0.048999999997382304)]
results for assortment [3, 4, 8, 74, 40, 87] :

err MNL dic= {3: 0.259, 4: 0.246, 8: 0.256, 74: 0.066, 40: 0.077, 87: 0.047, 0: np.float64(0.21578843404120113)} 

err MNL list= [0.259, 0.246, 0.256, 0.066, 0.077, 0.047, np.float64(0.21578843404120113)]
sampled assortment [1, 3, 9, 83, 79, 70] number: 2
#  Learning probs for MM model, A = [1, 3, 9, 83, 79, 70]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 11: 0, 100: 0} [1, 2, 3, 5, 6, 7, 8, 10, 11, 100]
#  Learning probs for MM model, A = [1, 3, 9, 83, 79, 70]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 10: 0, 100: 0} [1, 2, 3, 5, 6, 7, 8, 9, 10, 100]
empirical probabilities from test set: {1: 0.265, 3: 0.251, 9: 0.235, 83: 0.052, 79: 0.068, 70: 0.081, 0: 0.048}
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.10972798558766883), 3: np.float64(0.10453400691624344), 9: np.float64(0.09276619439506938), 83: np.float64(0.17324295327525593), 79: np.float64(0.17324295327525593), 70: np.float64(0.17324295327525593), 0: np.float64(0.17324295327525593)}
err dic= {1: np.float64(0.15527201441233118), 3: np.float64(0.14646599308375657), 9: np.float64(0.1422338056049306), 83: np.float64(0.12124295327525594), 79: np.float64(0.10524295327525593), 70: np.float64(0.09224295327525593), 0: np.float64(0.12524295327525592)} 

err list= [np.float64(0.15527201441233118), np.float64(0.14646599308375657), np.float64(0.1422338056049306), np.float64(0.12124295327525594), np.float64(0.10524295327525593), np.float64(0.09224295327525593), np.float64(0.12524295327525592)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.15184400568403106), 3: np.float64(0.13796416113833676), 9: np.float64(0.10898324196323496), 83: np.float64(0.15030214780359938), 79: np.float64(0.15030214780359938), 70: np.float64(0.15030214780359938), 0: np.float64(0.15030214780359938)}
err dic= {1: np.float64(0.11315599431596896), 3: np.float64(0.11303583886166324), 9: np.float64(0.12601675803676504), 83: np.float64(0.09830214780359939), 79: np.float64(0.08230214780359937), 70: np.float64(0.06930214780359938), 0: np.float64(0.10230214780359938)} 

err list= [np.float64(0.11315599431596896), np.float64(0.11303583886166324), np.float64(0.12601675803676504), np.float64(0.09830214780359939), np.float64(0.08230214780359937), np.float64(0.06930214780359938), np.float64(0.10230214780359938)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.25419921517682054), 3: np.float64(0.21104322519074378), 9: np.float64(0.133520172860263), 83: np.float64(0.10030934669304466), 79: np.float64(0.10030934669304466), 70: np.float64(0.10030934669304466), 0: np.float64(0.10030934669304466)}
err dic= {1: np.float64(0.010800784823179477), 3: np.float64(0.03995677480925622), 9: np.float64(0.101479827139737), 83: np.float64(0.04830934669304466), 79: np.float64(0.03230934669304465), 70: np.float64(0.019309346693044654), 0: np.float64(0.052309346693044656)} 

err list= [np.float64(0.010800784823179477), np.float64(0.03995677480925622), np.float64(0.101479827139737), np.float64(0.04830934669304466), np.float64(0.03230934669304465), np.float64(0.019309346693044654), np.float64(0.052309346693044656)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.504361417614251), 3: np.float64(0.3278099499342931), 9: np.float64(0.11127463662668921), 83: np.float64(0.014138498956191776), 79: np.float64(0.014138498956191776), 70: np.float64(0.014138498956191776), 0: np.float64(0.014138498956191776)}
err dic= {1: np.float64(0.239361417614251), 3: np.float64(0.07680994993429308), 9: np.float64(0.12372536337331078), 83: np.float64(0.03786150104380822), 79: np.float64(0.05386150104380823), 70: np.float64(0.06686150104380822), 0: np.float64(0.03386150104380822)} 

err list= [np.float64(0.239361417614251), np.float64(0.07680994993429308), np.float64(0.12372536337331078), np.float64(0.03786150104380822), np.float64(0.05386150104380823), np.float64(0.06686150104380822), np.float64(0.03386150104380822)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.6757073842178611), 3: np.float64(0.2912046401031531), 9: np.float64(0.03132557094066524), 83: np.float64(0.00044060118458006997), 79: np.float64(0.00044060118458006997), 70: np.float64(0.00044060118458006997), 0: np.float64(0.00044060118458006997)}
err dic= {1: np.float64(0.4107073842178611), 3: np.float64(0.04020464010315311), 9: np.float64(0.20367442905933475), 83: np.float64(0.051559398815419925), 79: np.float64(0.06755939881541993), 70: np.float64(0.08055939881541993), 0: np.float64(0.04755939881541993)} 

err list= [np.float64(0.4107073842178611), np.float64(0.04020464010315311), np.float64(0.20367442905933475), np.float64(0.051559398815419925), np.float64(0.06755939881541993), np.float64(0.08055939881541993), np.float64(0.04755939881541993)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.774047128747132), 3: np.float64(0.21915713600226133), 9: np.float64(0.006714297191506319), 83: np.float64(2.035951477517127e-05), 79: np.float64(2.035951477517127e-05), 70: np.float64(2.035951477517127e-05), 0: np.float64(2.035951477517127e-05)}
err dic= {1: np.float64(0.509047128747132), 3: np.float64(0.03184286399773867), 9: np.float64(0.22828570280849367), 83: np.float64(0.051979640485224826), 79: np.float64(0.06797964048522484), 70: np.float64(0.08097964048522484), 0: np.float64(0.04797964048522483)} 

err list= [np.float64(0.509047128747132), np.float64(0.03184286399773867), np.float64(0.22828570280849367), np.float64(0.051979640485224826), np.float64(0.06797964048522484), np.float64(0.08097964048522484), np.float64(0.04797964048522483)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  1 

learned probs for this beta: {1: np.float64(0.8431170445298591), 3: np.float64(0.15557058273967456), 9: np.float64(0.001308973265019092), 83: np.float64(8.498663619292382e-07), 79: np.float64(8.498663619292382e-07), 70: np.float64(8.498663619292382e-07), 0: np.float64(8.498663619292382e-07)}
err dic= {1: np.float64(0.5781170445298591), 3: np.float64(0.09542941726032544), 9: np.float64(0.2336910267349809), 83: np.float64(0.05199915013363807), 79: np.float64(0.06799915013363808), 70: np.float64(0.08099915013363808), 0: np.float64(0.04799915013363807)} 

err list= [np.float64(0.5781170445298591), np.float64(0.09542941726032544), np.float64(0.2336910267349809), np.float64(0.05199915013363807), np.float64(0.06799915013363808), np.float64(0.08099915013363808), np.float64(0.04799915013363807)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.8931966417163452), 3: np.float64(0.10655823518211627), 9: np.float64(0.00024501207255848024), 83: np.float64(2.7757244977737284e-08), 79: np.float64(2.7757244977737284e-08), 70: np.float64(2.7757244977737284e-08), 0: np.float64(2.7757244977737284e-08)}
err dic= {1: np.float64(0.6281966417163451), 3: np.float64(0.14444176481788373), 9: np.float64(0.2347549879274415), 83: np.float64(0.05199997224275502), 79: np.float64(0.06799997224275503), 70: np.float64(0.08099997224275503), 0: np.float64(0.047999972242755026)} 

err list= [np.float64(0.6281966417163451), np.float64(0.14444176481788373), np.float64(0.2347549879274415), np.float64(0.05199997224275502), np.float64(0.06799997224275503), np.float64(0.08099997224275503), np.float64(0.047999972242755026)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  1.5 

learned probs for this beta: {1: np.float64(0.9288707213302914), 3: np.float64(0.07108431947445427), 9: np.float64(4.495606800442007e-05), 83: np.float64(7.818124789630373e-10), 79: np.float64(7.818124789630373e-10), 70: np.float64(7.818124789630373e-10), 0: np.float64(7.818124789630373e-10)}
err dic= {1: np.float64(0.6638707213302913), 3: np.float64(0.17991568052554574), 9: np.float64(0.23495504393199557), 83: np.float64(0.05199999921818752), 79: np.float64(0.06799999921818753), 70: np.float64(0.08099999921818753), 0: np.float64(0.047999999218187525)} 

err list= [np.float64(0.6638707213302913), np.float64(0.17991568052554574), np.float64(0.23495504393199557), np.float64(0.05199999921818752), np.float64(0.06799999921818753), np.float64(0.08099999921818753), np.float64(0.047999999218187525)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  1.75 

learned probs for this beta: {1: np.float64(0.9535429243385873), 3: np.float64(0.04644892579739819), 9: np.float64(8.149779618298753e-06), 83: np.float64(2.1098972777997986e-11), 79: np.float64(2.1098972777997986e-11), 70: np.float64(2.1098972777997986e-11), 0: np.float64(2.1098972777997986e-11)}
err dic= {1: np.float64(0.6885429243385873), 3: np.float64(0.20455107420260182), 9: np.float64(0.2349918502203817), 83: np.float64(0.05199999997890103), 79: np.float64(0.06799999997890104), 70: np.float64(0.08099999997890103), 0: np.float64(0.04799999997890103)} 

err list= [np.float64(0.6885429243385873), np.float64(0.20455107420260182), np.float64(0.2349918502203817), np.float64(0.05199999997890103), np.float64(0.06799999997890104), np.float64(0.08099999997890103), np.float64(0.04799999997890103)]
results for assortment [1, 3, 9, 83, 79, 70] :

beta is  2 

learned probs for this beta: {1: np.float64(0.9701386587614844), 3: np.float64(0.029859876603355432), 9: np.float64(1.4646328981425445e-06), 83: np.float64(5.654123348857683e-13), 79: np.float64(5.654123348857683e-13), 70: np.float64(5.654123348857683e-13), 0: np.float64(5.654123348857683e-13)}
err dic= {1: np.float64(0.7051386587614844), 3: np.float64(0.22114012339664457), 9: np.float64(0.23499853536710186), 83: np.float64(0.05199999999943458), 79: np.float64(0.0679999999994346), 70: np.float64(0.0809999999994346), 0: np.float64(0.047999999999434585)} 

err list= [np.float64(0.7051386587614844), np.float64(0.22114012339664457), np.float64(0.23499853536710186), np.float64(0.05199999999943458), np.float64(0.0679999999994346), np.float64(0.0809999999994346), np.float64(0.047999999999434585)]
results for assortment [1, 3, 9, 83, 79, 70] :

err MNL dic= {1: 0.265, 3: 0.251, 9: 0.235, 83: 0.052, 79: 0.068, 70: 0.081, 0: np.float64(0.21829740093736688)} 

err MNL list= [0.265, 0.251, 0.235, 0.052, 0.068, 0.081, np.float64(0.21829740093736688)]
sampled assortment [1, 4, 8, 32, 27, 82] number: 3
#  Learning probs for MM model, A = [1, 4, 8, 32, 27, 82]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100]
#  Learning probs for MM model, A = [1, 4, 8, 32, 27, 82]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 100]
empirical probabilities from test set: {1: 0.222, 4: 0.23, 8: 0.232, 32: 0.102, 27: 0.12, 82: 0.05, 0: 0.044}
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.1098860923870497), 4: np.float64(0.10225070541856272), 8: np.float64(0.09290326292273253), 32: np.float64(0.17373998481791475), 27: np.float64(0.17373998481791475), 82: np.float64(0.17373998481791475), 0: np.float64(0.17373998481791475)}
err dic= {1: np.float64(0.1121139076129503), 4: np.float64(0.1277492945814373), 8: np.float64(0.1390967370772675), 32: np.float64(0.07173998481791476), 27: np.float64(0.053739984817914754), 82: np.float64(0.12373998481791475), 0: np.float64(0.12973998481791477)} 

err list= [np.float64(0.1121139076129503), np.float64(0.1277492945814373), np.float64(0.1390967370772675), np.float64(0.07173998481791476), np.float64(0.053739984817914754), np.float64(0.12373998481791475), np.float64(0.12973998481791477)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.1524197706674229), 4: np.float64(0.1322575706730967), 8: np.float64(0.10941787435218141), 32: np.float64(0.15147619607682453), 27: np.float64(0.15147619607682453), 82: np.float64(0.15147619607682453), 0: np.float64(0.15147619607682453)}
err dic= {1: np.float64(0.0695802293325771), 4: np.float64(0.0977424293269033), 8: np.float64(0.1225821256478186), 32: np.float64(0.04947619607682453), 27: np.float64(0.03147619607682453), 82: np.float64(0.10147619607682452), 0: np.float64(0.10747619607682453)} 

err list= [np.float64(0.0695802293325771), np.float64(0.0977424293269033), np.float64(0.1225821256478186), np.float64(0.04947619607682453), np.float64(0.03147619607682453), np.float64(0.10147619607682452), np.float64(0.10747619607682453)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.25722054992186105), 4: np.float64(0.19576114651671836), 8: np.float64(0.13527982288390475), 32: np.float64(0.10293462016938047), 27: np.float64(0.10293462016938047), 82: np.float64(0.10293462016938047), 0: np.float64(0.10293462016938047)}
err dic= {1: np.float64(0.03522054992186105), 4: np.float64(0.03423885348328165), 8: np.float64(0.09672017711609526), 32: np.float64(0.000934620169380479), 27: np.float64(0.017065379830619523), 82: np.float64(0.05293462016938047), 0: np.float64(0.058934620169380475)} 

err list= [np.float64(0.03522054992186105), np.float64(0.03423885348328165), np.float64(0.09672017711609526), np.float64(0.000934620169380479), np.float64(0.017065379830619523), np.float64(0.05293462016938047), np.float64(0.058934620169380475)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.5303866095334424), 4: np.float64(0.2865904110354517), 8: np.float64(0.11907284361146919), 32: np.float64(0.015987533954909462), 27: np.float64(0.015987533954909462), 82: np.float64(0.015987533954909462), 0: np.float64(0.015987533954909462)}
err dic= {1: np.float64(0.30838660953344244), 4: np.float64(0.056590411035451677), 8: np.float64(0.11292715638853082), 32: np.float64(0.08601246604509052), 27: np.float64(0.10401246604509054), 82: np.float64(0.03401246604509054), 0: np.float64(0.028012466045090535)} 

err list= [np.float64(0.30838660953344244), np.float64(0.056590411035451677), np.float64(0.11292715638853082), np.float64(0.08601246604509052), np.float64(0.10401246604509054), np.float64(0.03401246604509054), np.float64(0.028012466045090535)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.736915357104262), 4: np.float64(0.22406970868165965), 8: np.float64(0.03689401166300957), 32: np.float64(0.0005302306377669869), 27: np.float64(0.0005302306377669869), 82: np.float64(0.0005302306377669869), 0: np.float64(0.0005302306377669869)}
err dic= {1: np.float64(0.5149153571042621), 4: np.float64(0.005930291318340358), 8: np.float64(0.19510598833699044), 32: np.float64(0.10146976936223301), 27: np.float64(0.11946976936223301), 82: np.float64(0.04946976936223302), 0: np.float64(0.04346976936223301)} 

err list= [np.float64(0.5149153571042621), np.float64(0.005930291318340358), np.float64(0.19510598833699044), np.float64(0.10146976936223301), np.float64(0.11946976936223301), np.float64(0.04946976936223302), np.float64(0.04346976936223301)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.8494075679228962), 4: np.float64(0.1419398367247009), 8: np.float64(0.008548370934371177), 32: np.float64(2.6056104508240518e-05), 27: np.float64(2.6056104508240518e-05), 82: np.float64(2.6056104508240518e-05), 0: np.float64(2.6056104508240518e-05)}
err dic= {1: np.float64(0.6274075679228962), 4: np.float64(0.08806016327529911), 8: np.float64(0.22345162906562882), 32: np.float64(0.10197394389549175), 27: np.float64(0.11997394389549175), 82: np.float64(0.049973943895491764), 0: np.float64(0.04397394389549176)} 

err list= [np.float64(0.6274075679228962), np.float64(0.08806016327529911), np.float64(0.22345162906562882), np.float64(0.10197394389549175), np.float64(0.11997394389549175), np.float64(0.049973943895491764), np.float64(0.04397394389549176)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  1 

learned probs for this beta: {1: np.float64(0.9159673563126722), 4: np.float64(0.0822626789582998), 8: np.float64(0.0017653691483769354), 32: np.float64(1.1488951628378267e-06), 27: np.float64(1.1488951628378267e-06), 82: np.float64(1.1488951628378267e-06), 0: np.float64(1.1488951628378267e-06)}
err dic= {1: np.float64(0.6939673563126723), 4: np.float64(0.1477373210417002), 8: np.float64(0.23023463085162307), 32: np.float64(0.10199885110483715), 27: np.float64(0.11999885110483716), 82: np.float64(0.049998851104837164), 0: np.float64(0.04399885110483716)} 

err list= [np.float64(0.6939673563126723), np.float64(0.1477373210417002), np.float64(0.23023463085162307), np.float64(0.10199885110483715), np.float64(0.11999885110483716), np.float64(0.049998851104837164), np.float64(0.04399885110483716)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.9545810290929305), 4: np.float64(0.045075252830226814), 8: np.float64(0.0003435622325858946), 32: np.float64(3.896106419578788e-08), 27: np.float64(3.896106419578788e-08), 82: np.float64(3.896106419578788e-08), 0: np.float64(3.896106419578788e-08)}
err dic= {1: np.float64(0.7325810290929305), 4: np.float64(0.1849247471697732), 8: np.float64(0.23165643776741413), 32: np.float64(0.1019999610389358), 27: np.float64(0.1199999610389358), 82: np.float64(0.04999996103893581), 0: np.float64(0.0439999610389358)} 

err list= [np.float64(0.7325810290929305), np.float64(0.1849247471697732), np.float64(0.23165643776741413), np.float64(0.1019999610389358), np.float64(0.1199999610389358), np.float64(0.04999996103893581), np.float64(0.0439999610389358)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  1.5 

learned probs for this beta: {1: np.float64(0.9761795754843805), 4: np.float64(0.023755776884774343), 8: np.float64(6.464313241430791e-05), 32: np.float64(1.12460774658049e-09), 27: np.float64(1.12460774658049e-09), 82: np.float64(1.12460774658049e-09), 0: np.float64(1.12460774658049e-09)}
err dic= {1: np.float64(0.7541795754843805), 4: np.float64(0.20624422311522567), 8: np.float64(0.2319353568675857), 32: np.float64(0.10199999887539225), 27: np.float64(0.11999999887539226), 82: np.float64(0.049999998875392256), 0: np.float64(0.04399999887539225)} 

err list= [np.float64(0.7541795754843805), np.float64(0.20624422311522567), np.float64(0.2319353568675857), np.float64(0.10199999887539225), np.float64(0.11999999887539226), np.float64(0.049999998875392256), np.float64(0.04399999887539225)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  1.75 

learned probs for this beta: {1: np.float64(0.9878141690105596), 4: np.float64(0.012173924276178274), 8: np.float64(1.190658994593629e-05), 32: np.float64(3.082900771277328e-11), 27: np.float64(3.082900771277328e-11), 82: np.float64(3.082900771277328e-11), 0: np.float64(3.082900771277328e-11)}
err dic= {1: np.float64(0.7658141690105597), 4: np.float64(0.21782607572382173), 8: np.float64(0.23198809341005408), 32: np.float64(0.10199999996917099), 27: np.float64(0.11999999996917099), 82: np.float64(0.049999999969171), 0: np.float64(0.04399999996917099)} 

err list= [np.float64(0.7658141690105597), np.float64(0.21782607572382173), np.float64(0.23198809341005408), np.float64(0.10199999996917099), np.float64(0.11999999996917099), np.float64(0.049999999969171), np.float64(0.04399999996917099)]
results for assortment [1, 4, 8, 32, 27, 82] :

beta is  2 

learned probs for this beta: {1: np.float64(0.993885516299515), 4: np.float64(0.006112322445182264), 8: np.float64(2.1612519646798115e-06), 32: np.float64(8.343732298421117e-13), 27: np.float64(8.343732298421117e-13), 82: np.float64(8.343732298421117e-13), 0: np.float64(8.343732298421117e-13)}
err dic= {1: np.float64(0.7718855162995151), 4: np.float64(0.22388767755481775), 8: np.float64(0.23199783874803534), 32: np.float64(0.10199999999916562), 27: np.float64(0.11999999999916562), 82: np.float64(0.04999999999916563), 0: np.float64(0.04399999999916562)} 

err list= [np.float64(0.7718855162995151), np.float64(0.22388767755481775), np.float64(0.23199783874803534), np.float64(0.10199999999916562), np.float64(0.11999999999916562), np.float64(0.04999999999916563), np.float64(0.04399999999916562)]
results for assortment [1, 4, 8, 32, 27, 82] :

err MNL dic= {1: 0.222, 4: 0.23, 8: 0.232, 32: 0.102, 27: 0.12, 82: 0.05, 0: np.float64(0.21605096999011808)} 

err MNL list= [0.222, 0.23, 0.232, 0.102, 0.12, 0.05, np.float64(0.21605096999011808)]
sampled assortment [9, 4, 6, 51, 82, 41] number: 4
#  Learning probs for MM model, A = [9, 4, 6, 51, 82, 41]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 100]
#  Learning probs for MM model, A = [9, 4, 6, 51, 82, 41]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 10, 100]
empirical probabilities from test set: {9: 0.221, 4: 0.245, 6: 0.256, 51: 0.086, 82: 0.04, 41: 0.093, 0: 0.059}
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  0.025 

learned probs for this beta: {9: np.float64(0.16294184573502993), 4: np.float64(0.0949032584797649), 6: np.float64(0.09038751284508248), 51: np.float64(0.16294184573502993), 82: np.float64(0.16294184573502993), 41: np.float64(0.16294184573502993), 0: np.float64(0.16294184573502993)}
err dic= {9: np.float64(0.058058154264970074), 4: np.float64(0.1500967415202351), 6: np.float64(0.16561248715491753), 51: np.float64(0.07694184573502993), 82: np.float64(0.12294184573502992), 41: np.float64(0.06994184573502993), 0: np.float64(0.10394184573502993)} 

err list= [np.float64(0.058058154264970074), np.float64(0.1500967415202351), np.float64(0.16561248715491753), np.float64(0.07694184573502993), np.float64(0.12294184573502992), np.float64(0.06994184573502993), np.float64(0.10394184573502993)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  0.05 

learned probs for this beta: {9: np.float64(0.1524934848126697), 4: np.float64(0.12451065482464482), 6: np.float64(0.11302192111200217), 51: np.float64(0.1524934848126697), 82: np.float64(0.1524934848126697), 41: np.float64(0.1524934848126697), 0: np.float64(0.1524934848126697)}
err dic= {9: np.float64(0.06850651518733031), 4: np.float64(0.12048934517535517), 6: np.float64(0.14297807888799785), 51: np.float64(0.0664934848126697), 82: np.float64(0.11249348481266969), 41: np.float64(0.059493484812669695), 0: np.float64(0.0934934848126697)} 

err list= [np.float64(0.06850651518733031), np.float64(0.12048934517535517), np.float64(0.14297807888799785), np.float64(0.0664934848126697), np.float64(0.11249348481266969), np.float64(0.059493484812669695), np.float64(0.0934934848126697)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  0.1 

learned probs for this beta: {9: np.float64(0.12763300558757457), 4: np.float64(0.19807174230988772), 6: np.float64(0.16376322975224028), 51: np.float64(0.12763300558757457), 82: np.float64(0.12763300558757457), 41: np.float64(0.12763300558757457), 0: np.float64(0.12763300558757457)}
err dic= {9: np.float64(0.09336699441242544), 4: np.float64(0.046928257690112274), 6: np.float64(0.09223677024775973), 51: np.float64(0.04163300558757457), 82: np.float64(0.08763300558757456), 41: np.float64(0.03463300558757457), 0: np.float64(0.06863300558757457)} 

err list= [np.float64(0.09336699441242544), np.float64(0.046928257690112274), np.float64(0.09223677024775973), np.float64(0.04163300558757457), np.float64(0.08763300558757456), np.float64(0.03463300558757457), np.float64(0.06863300558757457)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  0.25 

learned probs for this beta: {9: np.float64(0.0543089273992327), 4: np.float64(0.44422790590096045), 6: np.float64(0.28422745710287584), 51: np.float64(0.0543089273992327), 82: np.float64(0.0543089273992327), 41: np.float64(0.0543089273992327), 0: np.float64(0.0543089273992327)}
err dic= {9: np.float64(0.1666910726007673), 4: np.float64(0.19922790590096046), 6: np.float64(0.02822745710287583), 51: np.float64(0.03169107260076729), 82: np.float64(0.014308927399232702), 41: np.float64(0.0386910726007673), 0: np.float64(0.0046910726007672945)} 

err list= [np.float64(0.1666910726007673), np.float64(0.19922790590096046), np.float64(0.02822745710287583), np.float64(0.03169107260076729), np.float64(0.014308927399232702), np.float64(0.0386910726007673), np.float64(0.0046910726007672945)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  0.5 

learned probs for this beta: {9: np.float64(0.005880885583690336), 4: np.float64(0.6786666925346551), 6: np.float64(0.2919288795468933), 51: np.float64(0.005880885583690336), 82: np.float64(0.005880885583690336), 41: np.float64(0.005880885583690336), 0: np.float64(0.005880885583690336)}
err dic= {9: np.float64(0.21511911441630965), 4: np.float64(0.43366669253465506), 6: np.float64(0.03592887954689328), 51: np.float64(0.08011911441630966), 82: np.float64(0.034119114416309666), 41: np.float64(0.08711911441630966), 0: np.float64(0.05311911441630966)} 

err list= [np.float64(0.21511911441630965), np.float64(0.43366669253465506), np.float64(0.03592887954689328), np.float64(0.08011911441630966), np.float64(0.034119114416309666), np.float64(0.08711911441630966), np.float64(0.05311911441630966)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  0.75 

learned probs for this beta: {9: np.float64(0.00047714052873434556), 4: np.float64(0.7772944082961172), 6: np.float64(0.22031988906021166), 51: np.float64(0.00047714052873434556), 82: np.float64(0.00047714052873434556), 41: np.float64(0.00047714052873434556), 0: np.float64(0.00047714052873434556)}
err dic= {9: np.float64(0.22052285947126565), 4: np.float64(0.5322944082961172), 6: np.float64(0.035680110939788345), 51: np.float64(0.08552285947126564), 82: np.float64(0.03952285947126565), 41: np.float64(0.09252285947126565), 0: np.float64(0.05852285947126565)} 

err list= [np.float64(0.22052285947126565), np.float64(0.5322944082961172), np.float64(0.035680110939788345), np.float64(0.08552285947126564), np.float64(0.03952285947126565), np.float64(0.09252285947126565), np.float64(0.05852285947126565)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  1 

learned probs for this beta: {9: np.float64(4.515563682198946e-05), 4: np.float64(0.8439740459851983), 6: np.float64(0.15580017583069158), 51: np.float64(4.515563682198946e-05), 82: np.float64(4.515563682198946e-05), 41: np.float64(4.515563682198946e-05), 0: np.float64(4.515563682198946e-05)}
err dic= {9: np.float64(0.220954844363178), 4: np.float64(0.5989740459851983), 6: np.float64(0.10019982416930842), 51: np.float64(0.085954844363178), 82: np.float64(0.03995484436317801), 41: np.float64(0.09295484436317801), 0: np.float64(0.05895484436317801)} 

err list= [np.float64(0.220954844363178), np.float64(0.5989740459851983), np.float64(0.10019982416930842), np.float64(0.085954844363178), np.float64(0.03995484436317801), np.float64(0.09295484436317801), np.float64(0.05895484436317801)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  1.25 

learned probs for this beta: {9: np.float64(3.864181252739459e-06), 4: np.float64(0.8933853234820287), 6: np.float64(0.10659535561170716), 51: np.float64(3.864181252739459e-06), 82: np.float64(3.864181252739459e-06), 41: np.float64(3.864181252739459e-06), 0: np.float64(3.864181252739459e-06)}
err dic= {9: np.float64(0.22099613581874727), 4: np.float64(0.6483853234820287), 6: np.float64(0.14940464438829285), 51: np.float64(0.08599613581874725), 82: np.float64(0.03999613581874726), 41: np.float64(0.09299613581874726), 0: np.float64(0.058996135818747256)} 

err list= [np.float64(0.22099613581874727), np.float64(0.6483853234820287), np.float64(0.14940464438829285), np.float64(0.08599613581874725), np.float64(0.03999613581874726), np.float64(0.09299613581874726), np.float64(0.058996135818747256)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  1.5 

learned probs for this beta: {9: np.float64(2.9200438532526334e-07), 4: np.float64(0.9289087098091077), 6: np.float64(0.07108983016896617), 51: np.float64(2.9200438532526334e-07), 82: np.float64(2.9200438532526334e-07), 41: np.float64(2.9200438532526334e-07), 0: np.float64(2.9200438532526334e-07)}
err dic= {9: np.float64(0.22099970799561466), 4: np.float64(0.6839087098091077), 6: np.float64(0.18491016983103384), 51: np.float64(0.08599970799561467), 82: np.float64(0.039999707995614676), 41: np.float64(0.09299970799561467), 0: np.float64(0.05899970799561467)} 

err list= [np.float64(0.22099970799561466), np.float64(0.6839087098091077), np.float64(0.18491016983103384), np.float64(0.08599970799561467), np.float64(0.039999707995614676), np.float64(0.09299970799561467), np.float64(0.05899970799561467)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  1.75 

learned probs for this beta: {9: np.float64(2.1178240223495966e-08), 4: np.float64(0.9535501862076871), 6: np.float64(0.046449707901111754), 51: np.float64(2.1178240223495966e-08), 82: np.float64(2.1178240223495966e-08), 41: np.float64(2.1178240223495966e-08), 0: np.float64(2.1178240223495966e-08)}
err dic= {9: np.float64(0.22099997882175978), 4: np.float64(0.7085501862076871), 6: np.float64(0.20955029209888826), 51: np.float64(0.08599997882175978), 82: np.float64(0.03999997882175978), 41: np.float64(0.09299997882175978), 0: np.float64(0.05899997882175977)} 

err list= [np.float64(0.22099997882175978), np.float64(0.7085501862076871), np.float64(0.20955029209888826), np.float64(0.08599997882175978), np.float64(0.03999997882175978), np.float64(0.09299997882175978), np.float64(0.05899997882175977)]
results for assortment [9, 4, 6, 51, 82, 41] :

beta is  2 

learned probs for this beta: {9: np.float64(1.524531098828063e-09), 4: np.float64(0.9701400071882254), 6: np.float64(0.029859985189119066), 51: np.float64(1.524531098828063e-09), 82: np.float64(1.524531098828063e-09), 41: np.float64(1.524531098828063e-09), 0: np.float64(1.524531098828063e-09)}
err dic= {9: np.float64(0.2209999984754689), 4: np.float64(0.7251400071882254), 6: np.float64(0.22614001481088095), 51: np.float64(0.0859999984754689), 82: np.float64(0.0399999984754689), 41: np.float64(0.0929999984754689), 0: np.float64(0.0589999984754689)} 

err list= [np.float64(0.2209999984754689), np.float64(0.7251400071882254), np.float64(0.22614001481088095), np.float64(0.0859999984754689), np.float64(0.0399999984754689), np.float64(0.0929999984754689), np.float64(0.0589999984754689)]
results for assortment [9, 4, 6, 51, 82, 41] :

err MNL dic= {9: 0.221, 4: 0.245, 6: 0.256, 51: 0.086, 82: 0.04, 41: 0.093, 0: np.float64(0.20371542664985287)} 

err MNL list= [0.221, 0.245, 0.256, 0.086, 0.04, 0.093, np.float64(0.20371542664985287)]
sampled assortment [5, 9, 6, 39, 80, 68] number: 5
#  Learning probs for MM model, A = [5, 9, 6, 39, 80, 68]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 100]
#  Learning probs for MM model, A = [5, 9, 6, 39, 80, 68]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 10: 0, 11: 0, 12: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 100]
empirical probabilities from test set: {5: 0.245, 9: 0.228, 6: 0.258, 39: 0.1, 80: 0.063, 68: 0.056, 0: 0.05}
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.11833265537009288), 9: np.float64(0.10742552221611092), 6: np.float64(0.1154110116990844), 39: np.float64(0.16470770267867876), 80: np.float64(0.16470770267867876), 68: np.float64(0.16470770267867876), 0: np.float64(0.16470770267867876)}
err dic= {5: np.float64(0.1266673446299071), 9: np.float64(0.12057447778388909), 6: np.float64(0.1425889883009156), 39: np.float64(0.06470770267867876), 80: np.float64(0.10170770267867876), 68: np.float64(0.10870770267867877), 0: np.float64(0.11470770267867876)} 

err list= [np.float64(0.1266673446299071), np.float64(0.12057447778388909), np.float64(0.1425889883009156), np.float64(0.06470770267867876), np.float64(0.10170770267867876), np.float64(0.10870770267867877), np.float64(0.11470770267867876)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.15553794473814042), 9: np.float64(0.1284049372136675), 6: np.float64(0.1479522696612851), 39: np.float64(0.14202621209672614), 80: np.float64(0.14202621209672614), 68: np.float64(0.14202621209672614), 0: np.float64(0.14202621209672614)}
err dic= {5: np.float64(0.08946205526185957), 9: np.float64(0.09959506278633251), 6: np.float64(0.1100477303387149), 39: np.float64(0.042026212096726134), 80: np.float64(0.07902621209672614), 68: np.float64(0.08602621209672615), 0: np.float64(0.09202621209672614)} 

err list= [np.float64(0.08946205526185957), np.float64(0.09959506278633251), np.float64(0.1100477303387149), np.float64(0.042026212096726134), np.float64(0.07902621209672614), np.float64(0.08602621209672615), np.float64(0.09202621209672614)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.2365340190331175), 9: np.float64(0.16236039509130176), 6: np.float64(0.2140248310595946), 39: np.float64(0.09677018870399595), 80: np.float64(0.09677018870399595), 68: np.float64(0.09677018870399595), 0: np.float64(0.09677018870399595)}
err dic= {5: np.float64(0.008465980966882503), 9: np.float64(0.06563960490869825), 6: np.float64(0.0439751689404054), 39: np.float64(0.0032298112960040537), 80: np.float64(0.03377018870399595), 68: np.float64(0.04077018870399595), 0: np.float64(0.04677018870399595)} 

err list= [np.float64(0.008465980966882503), np.float64(0.06563960490869825), np.float64(0.0439751689404054), np.float64(0.0032298112960040537), np.float64(0.03377018870399595), np.float64(0.04077018870399595), np.float64(0.04677018870399595)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.4236397116260535), 9: np.float64(0.17120977110420782), 6: np.float64(0.3299309391545145), 39: np.float64(0.018804894528804204), 80: np.float64(0.018804894528804204), 68: np.float64(0.018804894528804204), 0: np.float64(0.018804894528804204)}
err dic= {5: np.float64(0.17863971162605352), 9: np.float64(0.05679022889579219), 6: np.float64(0.07193093915451448), 39: np.float64(0.0811951054711958), 80: np.float64(0.044195105471195796), 68: np.float64(0.0371951054711958), 0: np.float64(0.0311951054711958)} 

err list= [np.float64(0.17863971162605352), np.float64(0.05679022889579219), np.float64(0.07193093915451448), np.float64(0.0811951054711958), np.float64(0.044195105471195796), np.float64(0.0371951054711958), np.float64(0.0311951054711958)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.5635029676712079), 9: np.float64(0.09122921047060861), 6: np.float64(0.34178182673164487), 39: np.float64(0.0008714987816341396), 80: np.float64(0.0008714987816341396), 68: np.float64(0.0008714987816341396), 0: np.float64(0.0008714987816341396)}
err dic= {5: np.float64(0.3185029676712079), 9: np.float64(0.1367707895293914), 6: np.float64(0.08378182673164486), 39: np.float64(0.09912850121836586), 80: np.float64(0.06212850121836586), 68: np.float64(0.055128501218365863), 0: np.float64(0.049128501218365865)} 

err list= [np.float64(0.3185029676712079), np.float64(0.1367707895293914), np.float64(0.08378182673164486), np.float64(0.09912850121836586), np.float64(0.06212850121836586), np.float64(0.055128501218365863), np.float64(0.049128501218365865)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.6517236816211425), 9: np.float64(0.04017150304215006), 6: np.float64(0.3078524688270614), 39: np.float64(6.308662741176459e-05), 80: np.float64(6.308662741176459e-05), 68: np.float64(6.308662741176459e-05), 0: np.float64(6.308662741176459e-05)}
err dic= {5: np.float64(0.4067236816211425), 9: np.float64(0.18782849695784995), 6: np.float64(0.0498524688270614), 39: np.float64(0.09993691337258824), 80: np.float64(0.06293691337258824), 68: np.float64(0.055936913372588236), 0: np.float64(0.04993691337258824)} 

err list= [np.float64(0.4067236816211425), np.float64(0.18782849695784995), np.float64(0.0498524688270614), np.float64(0.09993691337258824), np.float64(0.06293691337258824), np.float64(0.055936913372588236), np.float64(0.04993691337258824)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  1 

learned probs for this beta: {5: np.float64(0.7190880002735873), 9: np.float64(0.01635703185503878), 6: np.float64(0.26453769169373753), 39: np.float64(4.319044408818565e-06), 80: np.float64(4.319044408818565e-06), 68: np.float64(4.319044408818565e-06), 0: np.float64(4.319044408818565e-06)}
err dic= {5: np.float64(0.47408800027358733), 9: np.float64(0.21164296814496122), 6: np.float64(0.006537691693737524), 39: np.float64(0.09999568095559119), 80: np.float64(0.06299568095559119), 68: np.float64(0.05599568095559118), 0: np.float64(0.04999568095559118)} 

err list= [np.float64(0.47408800027358733), np.float64(0.21164296814496122), np.float64(0.006537691693737524), np.float64(0.09999568095559119), np.float64(0.06299568095559119), np.float64(0.05599568095559118), np.float64(0.04999568095559118)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.7723561965862481), 9: np.float64(0.006359112649840721), 6: np.float64(0.22128375520665214), 39: np.float64(2.338893145976875e-07), 80: np.float64(2.338893145976875e-07), 68: np.float64(2.338893145976875e-07), 0: np.float64(2.338893145976875e-07)}
err dic= {5: np.float64(0.5273561965862481), 9: np.float64(0.2216408873501593), 6: np.float64(0.03671624479334787), 39: np.float64(0.09999976611068541), 80: np.float64(0.0629997661106854), 68: np.float64(0.055999766110685405), 0: np.float64(0.049999766110685406)} 

err list= [np.float64(0.5273561965862481), np.float64(0.2216408873501593), np.float64(0.03671624479334787), np.float64(0.09999976611068541), np.float64(0.0629997661106854), np.float64(0.055999766110685405), np.float64(0.049999766110685406)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  1.5 

learned probs for this beta: {5: np.float64(0.8156056868790107), 9: np.float64(0.0024080421292594946), 6: np.float64(0.18198622753128374), 39: np.float64(1.0865111424049994e-08), 80: np.float64(1.0865111424049994e-08), 68: np.float64(1.0865111424049994e-08), 0: np.float64(1.0865111424049994e-08)}
err dic= {5: np.float64(0.5706056868790107), 9: np.float64(0.22559195787074052), 6: np.float64(0.07601377246871627), 39: np.float64(0.09999998913488858), 80: np.float64(0.06299998913488858), 68: np.float64(0.05599998913488858), 0: np.float64(0.04999998913488858)} 

err list= [np.float64(0.5706056868790107), np.float64(0.22559195787074052), np.float64(0.07601377246871627), np.float64(0.09999998913488858), np.float64(0.06299998913488858), np.float64(0.05599998913488858), np.float64(0.04999998913488858)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  1.75 

learned probs for this beta: {5: np.float64(0.8511869004965286), 9: np.float64(0.0008989932625728663), 6: np.float64(0.1479141043126434), 39: np.float64(4.820636604954582e-10), 80: np.float64(4.820636604954582e-10), 68: np.float64(4.820636604954582e-10), 0: np.float64(4.820636604954582e-10)}
err dic= {5: np.float64(0.6061869004965286), 9: np.float64(0.22710100673742714), 6: np.float64(0.1100858956873566), 39: np.float64(0.09999999951793634), 80: np.float64(0.06299999951793633), 68: np.float64(0.05599999951793634), 0: np.float64(0.04999999951793634)} 

err list= [np.float64(0.6061869004965286), np.float64(0.22710100673742714), np.float64(0.1100858956873566), np.float64(0.09999999951793634), np.float64(0.06299999951793633), np.float64(0.05599999951793634), np.float64(0.04999999951793634)]
results for assortment [5, 9, 6, 39, 80, 68] :

beta is  2 

learned probs for this beta: {5: np.float64(0.8805036405717938), 9: np.float64(0.0003331497555006165), 6: np.float64(0.11916320958765234), 39: np.float64(2.126324361857513e-11), 80: np.float64(2.126324361857513e-11), 68: np.float64(2.126324361857513e-11), 0: np.float64(2.126324361857513e-11)}
err dic= {5: np.float64(0.6355036405717938), 9: np.float64(0.2276668502444994), 6: np.float64(0.13883679041234767), 39: np.float64(0.09999999997873676), 80: np.float64(0.06299999997873676), 68: np.float64(0.05599999997873676), 0: np.float64(0.04999999997873676)} 

err list= [np.float64(0.6355036405717938), np.float64(0.2276668502444994), np.float64(0.13883679041234767), np.float64(0.09999999997873676), np.float64(0.06299999997873676), np.float64(0.05599999997873676), np.float64(0.04999999997873676)]
results for assortment [5, 9, 6, 39, 80, 68] :

err MNL dic= {5: 0.245, 9: 0.228, 6: 0.258, 39: 0.1, 80: 0.063, 68: 0.056, 0: np.float64(0.2117252931323283)} 

err MNL list= [0.245, 0.228, 0.258, 0.1, 0.063, 0.056, np.float64(0.2117252931323283)]
sampled assortment [6, 3, 8, 15, 78, 97] number: 6
#  Learning probs for MM model, A = [6, 3, 8, 15, 78, 97]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100]
#  Learning probs for MM model, A = [6, 3, 8, 15, 78, 97]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 100]
empirical probabilities from test set: {6: 0.221, 3: 0.235, 8: 0.238, 15: 0.173, 78: 0.056, 97: 0.039, 0: 0.038}
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  0.025 

learned probs for this beta: {6: np.float64(0.09811364911255126), 3: np.float64(0.10545360095619648), 8: np.float64(0.093454469364676), 15: np.float64(0.1757445701416454), 78: np.float64(0.1757445701416454), 97: np.float64(0.1757445701416454), 0: np.float64(0.1757445701416454)}
err dic= {6: np.float64(0.12288635088744874), 3: np.float64(0.1295463990438035), 8: np.float64(0.144545530635324), 15: np.float64(0.0027445701416454193), 78: np.float64(0.11974457014164541), 97: np.float64(0.1367445701416454), 0: np.float64(0.1377445701416454)} 

err list= [np.float64(0.12288635088744874), np.float64(0.1295463990438035), np.float64(0.144545530635324), np.float64(0.0027445701416454193), np.float64(0.11974457014164541), np.float64(0.1367445701416454), np.float64(0.1377445701416454)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  0.05 

learned probs for this beta: {6: np.float64(0.12246680731949329), 3: np.float64(0.1412278836275336), 8: np.float64(0.11118283418862057), 15: np.float64(0.15628061871608798), 78: np.float64(0.15628061871608798), 97: np.float64(0.15628061871608798), 0: np.float64(0.15628061871608798)}
err dic= {6: np.float64(0.09853319268050671), 3: np.float64(0.09377211637246638), 8: np.float64(0.12681716581137942), 15: np.float64(0.01671938128391201), 78: np.float64(0.10028061871608798), 97: np.float64(0.11728061871608797), 0: np.float64(0.11828061871608797)} 

err list= [np.float64(0.09853319268050671), np.float64(0.09377211637246638), np.float64(0.12681716581137942), np.float64(0.01671938128391201), np.float64(0.10028061871608798), np.float64(0.11728061871608797), np.float64(0.11828061871608797)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  0.1 

learned probs for this beta: {6: np.float64(0.17263087484221065), 3: np.float64(0.22763670861404772), 8: np.float64(0.14268432669873368), 15: np.float64(0.11426202246125342), 78: np.float64(0.11426202246125342), 97: np.float64(0.11426202246125342), 0: np.float64(0.11426202246125342)}
err dic= {6: np.float64(0.04836912515778935), 3: np.float64(0.007363291385952264), 8: np.float64(0.09531567330126631), 15: np.float64(0.05873797753874657), 78: np.float64(0.058262022461253414), 97: np.float64(0.07526202246125341), 0: np.float64(0.07626202246125341)} 

err list= [np.float64(0.04836912515778935), np.float64(0.007363291385952264), np.float64(0.09531567330126631), np.float64(0.05873797753874657), np.float64(0.058262022461253414), np.float64(0.07526202246125341), np.float64(0.07626202246125341)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  0.25 

learned probs for this beta: {6: np.float64(0.2538115075227277), 3: np.float64(0.4773534869262348), 8: np.float64(0.16014006257487803), 15: np.float64(0.027173735744040216), 78: np.float64(0.027173735744040216), 97: np.float64(0.027173735744040216), 0: np.float64(0.027173735744040216)}
err dic= {6: np.float64(0.032811507522727684), 3: np.float64(0.24235348692623482), 8: np.float64(0.07785993742512196), 15: np.float64(0.14582626425595976), 78: np.float64(0.028826264255959785), 97: np.float64(0.011826264255959784), 0: np.float64(0.010826264255959783)} 

err list= [np.float64(0.032811507522727684), np.float64(0.24235348692623482), np.float64(0.07785993742512196), np.float64(0.14582626425595976), np.float64(0.028826264255959785), np.float64(0.011826264255959784), np.float64(0.010826264255959783)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  0.5 

learned probs for this beta: {6: np.float64(0.2099412654318164), 3: np.float64(0.7011984268498886), 8: np.float64(0.0833897685774031), 15: np.float64(0.0013676347852228732), 78: np.float64(0.0013676347852228732), 97: np.float64(0.0013676347852228732), 0: np.float64(0.0013676347852228732)}
err dic= {6: np.float64(0.011058734568183598), 3: np.float64(0.46619842684988866), 8: np.float64(0.1546102314225969), 15: np.float64(0.17163236521477712), 78: np.float64(0.05463236521477713), 97: np.float64(0.03763236521477713), 0: np.float64(0.03663236521477713)} 

err list= [np.float64(0.011058734568183598), np.float64(0.46619842684988866), np.float64(0.1546102314225969), np.float64(0.17163236521477712), np.float64(0.05463236521477713), np.float64(0.03763236521477713), np.float64(0.03663236521477713)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  0.75 

learned probs for this beta: {6: np.float64(0.1366488710719012), 3: np.float64(0.8297285319560974), 8: np.float64(0.03320425259655843), 15: np.float64(0.00010458609386080099), 78: np.float64(0.00010458609386080099), 97: np.float64(0.00010458609386080099), 0: np.float64(0.00010458609386080099)}
err dic= {6: np.float64(0.08435112892809879), 3: np.float64(0.5947285319560974), 8: np.float64(0.20479574740344156), 15: np.float64(0.1728954139061392), 78: np.float64(0.0558954139061392), 97: np.float64(0.0388954139061392), 0: np.float64(0.0378954139061392)} 

err list= [np.float64(0.08435112892809879), np.float64(0.5947285319560974), np.float64(0.20479574740344156), np.float64(0.1728954139061392), np.float64(0.0558954139061392), np.float64(0.0388954139061392), np.float64(0.0378954139061392)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  1 

learned probs for this beta: {6: np.float64(0.08066029466942844), 3: np.float64(0.9074702237475765), 8: np.float64(0.011838095641124521), 15: np.float64(7.846485467690308e-06), 78: np.float64(7.846485467690308e-06), 97: np.float64(7.846485467690308e-06), 0: np.float64(7.846485467690308e-06)}
err dic= {6: np.float64(0.14033970533057155), 3: np.float64(0.6724702237475765), 8: np.float64(0.22616190435887545), 15: np.float64(0.1729921535145323), 78: np.float64(0.05599215351453231), 97: np.float64(0.03899215351453231), 0: np.float64(0.037992153514532306)} 

err list= [np.float64(0.14033970533057155), np.float64(0.6724702237475765), np.float64(0.22616190435887545), np.float64(0.1729921535145323), np.float64(0.05599215351453231), np.float64(0.03899215351453231), np.float64(0.037992153514532306)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  1.25 

learned probs for this beta: {6: np.float64(0.04464818875410172), 3: np.float64(0.9514138211225235), 8: np.float64(0.003936185481129166), 15: np.float64(4.51160561448961e-07), 78: np.float64(4.51160561448961e-07), 97: np.float64(4.51160561448961e-07), 0: np.float64(4.51160561448961e-07)}
err dic= {6: np.float64(0.17635181124589827), 3: np.float64(0.7164138211225235), 8: np.float64(0.23406381451887082), 15: np.float64(0.17299954883943855), 78: np.float64(0.05599954883943855), 97: np.float64(0.03899954883943855), 0: np.float64(0.03799954883943855)} 

err list= [np.float64(0.17635181124589827), np.float64(0.7164138211225235), np.float64(0.23406381451887082), np.float64(0.17299954883943855), np.float64(0.05599954883943855), np.float64(0.03899954883943855), np.float64(0.03799954883943855)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  1.5 

learned probs for this beta: {6: np.float64(0.023650005761485057), 3: np.float64(0.9750993516259117), 8: np.float64(0.0012505550842265534), 15: np.float64(2.1882094288852738e-08), 78: np.float64(2.1882094288852738e-08), 97: np.float64(2.1882094288852738e-08), 0: np.float64(2.1882094288852738e-08)}
err dic= {6: np.float64(0.19734999423851496), 3: np.float64(0.7400993516259117), 8: np.float64(0.23674944491577343), 15: np.float64(0.1729999781179057), 78: np.float64(0.05599997811790571), 97: np.float64(0.03899997811790571), 0: np.float64(0.03799997811790571)} 

err list= [np.float64(0.19734999423851496), np.float64(0.7400993516259117), np.float64(0.23674944491577343), np.float64(0.1729999781179057), np.float64(0.05599997811790571), np.float64(0.03899997811790571), np.float64(0.03799997811790571)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  1.75 

learned probs for this beta: {6: np.float64(0.012148820191528109), 3: np.float64(0.9874656897733276), 8: np.float64(0.0003854860308209418), 15: np.float64(1.001080717472045e-09), 78: np.float64(1.001080717472045e-09), 97: np.float64(1.001080717472045e-09), 0: np.float64(1.001080717472045e-09)}
err dic= {6: np.float64(0.2088511798084719), 3: np.float64(0.7524656897733276), 8: np.float64(0.23761451396917904), 15: np.float64(0.17299999899891927), 78: np.float64(0.05599999899891928), 97: np.float64(0.03899999899891928), 0: np.float64(0.03799999899891928)} 

err list= [np.float64(0.2088511798084719), np.float64(0.7524656897733276), np.float64(0.23761451396917904), np.float64(0.17299999899891927), np.float64(0.05599999899891928), np.float64(0.03899999899891928), np.float64(0.03799999899891928)]
results for assortment [6, 3, 8, 15, 78, 97] :

beta is  2 

learned probs for this beta: {6: np.float64(0.006106510931463091), 3: np.float64(0.9937770713688668), 8: np.float64(0.00011641751962731796), 15: np.float64(4.501058602873864e-11), 78: np.float64(4.501058602873864e-11), 97: np.float64(4.501058602873864e-11), 0: np.float64(4.501058602873864e-11)}
err dic= {6: np.float64(0.21489348906853692), 3: np.float64(0.7587770713688669), 8: np.float64(0.23788358248037267), 15: np.float64(0.1729999999549894), 78: np.float64(0.055999999954989416), 97: np.float64(0.038999999954989414), 0: np.float64(0.037999999954989414)} 

err list= [np.float64(0.21489348906853692), np.float64(0.7587770713688669), np.float64(0.23788358248037267), np.float64(0.1729999999549894), np.float64(0.055999999954989416), np.float64(0.038999999954989414), np.float64(0.037999999954989414)]
results for assortment [6, 3, 8, 15, 78, 97] :

err MNL dic= {6: 0.221, 3: 0.235, 8: 0.238, 15: 0.173, 78: 0.056, 97: 0.039, 0: np.float64(0.22226755504658788)} 

err MNL list= [0.221, 0.235, 0.238, 0.173, 0.056, 0.039, np.float64(0.22226755504658788)]
sampled assortment [8, 2, 4, 95, 11, 22] number: 7
#  Learning probs for MM model, A = [8, 2, 4, 95, 11, 22]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 100]
#  Learning probs for MM model, A = [8, 2, 4, 95, 11, 22]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 10: 0, 11: 0, 14: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 14, 100]
empirical probabilities from test set: {8: 0.235, 2: 0.202, 4: 0.197, 95: 0.042, 11: 0.166, 22: 0.137, 0: 0.021}
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  0.025 

learned probs for this beta: {8: np.float64(0.10687303030206387), 2: np.float64(0.12331724151182484), 4: np.float64(0.11751524150814176), 95: np.float64(0.1834909625345917), 11: np.float64(0.10182159907419847), 22: np.float64(0.1834909625345917), 0: np.float64(0.1834909625345917)}
err dic= {8: np.float64(0.12812696969793613), 2: np.float64(0.07868275848817517), 4: np.float64(0.07948475849185825), 95: np.float64(0.1414909625345917), 11: np.float64(0.06417840092580154), 22: np.float64(0.0464909625345917), 0: np.float64(0.16249096253459172)} 

err list= [np.float64(0.12812696969793613), np.float64(0.07868275848817517), np.float64(0.07948475849185825), np.float64(0.1414909625345917), np.float64(0.06417840092580154), np.float64(0.0464909625345917), np.float64(0.16249096253459172)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  0.05 

learned probs for this beta: {8: np.float64(0.1261244318853064), 2: np.float64(0.16722339713565074), 4: np.float64(0.152057257135714), 95: np.float64(0.14667925721600802), 11: np.float64(0.11455714219530277), 22: np.float64(0.14667925721600802), 0: np.float64(0.14667925721600802)}
err dic= {8: np.float64(0.1088755681146936), 2: np.float64(0.034776602864349276), 4: np.float64(0.04494274286428601), 95: np.float64(0.10467925721600801), 11: np.float64(0.051442857804697234), 22: np.float64(0.009679257216008014), 0: np.float64(0.12567925721600803)} 

err list= [np.float64(0.1088755681146936), np.float64(0.034776602864349276), np.float64(0.04494274286428601), np.float64(0.10467925721600801), np.float64(0.051442857804697234), np.float64(0.009679257216008014), np.float64(0.12567925721600803)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  0.1 

learned probs for this beta: {8: np.float64(0.15177882946364704), 2: np.float64(0.2621750432673986), 4: np.float64(0.2180568925973487), 95: np.float64(0.0808312837886279), 11: np.float64(0.12549538330571985), 22: np.float64(0.0808312837886279), 0: np.float64(0.0808312837886279)}
err dic= {8: np.float64(0.08322117053635295), 2: np.float64(0.06017504326739859), 4: np.float64(0.021056892597348692), 95: np.float64(0.0388312837886279), 11: np.float64(0.040504616694280154), 22: np.float64(0.05616871621137211), 0: np.float64(0.0598312837886279)} 

err list= [np.float64(0.08322117053635295), np.float64(0.06017504326739859), np.float64(0.021056892597348692), np.float64(0.0388312837886279), np.float64(0.040504616694280154), np.float64(0.05616871621137211), np.float64(0.0598312837886279)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  0.25 

learned probs for this beta: {8: np.float64(0.12722859759424318), 2: np.float64(0.4678821272073984), 4: np.float64(0.30324734968328254), 95: np.float64(0.007472199072166901), 11: np.float64(0.07922532829856639), 22: np.float64(0.007472199072166901), 0: np.float64(0.007472199072166901)}
err dic= {8: np.float64(0.1077714024057568), 2: np.float64(0.2658821272073984), 4: np.float64(0.10624734968328253), 95: np.float64(0.0345278009278331), 11: np.float64(0.08677467170143362), 22: np.float64(0.12952780092783311), 0: np.float64(0.013527800927833102)} 

err list= [np.float64(0.1077714024057568), np.float64(0.2658821272073984), np.float64(0.10624734968328253), np.float64(0.0345278009278331), np.float64(0.08677467170143362), np.float64(0.12952780092783311), np.float64(0.013527800927833102)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  0.5 

learned probs for this beta: {8: np.float64(0.04704171338550995), 2: np.float64(0.6540258992108317), 4: np.float64(0.2804613333853484), 95: np.float64(0.00024405176412618177), 11: np.float64(0.017738898725927408), 22: np.float64(0.00024405176412618177), 0: np.float64(0.00024405176412618177)}
err dic= {8: np.float64(0.18795828661449004), 2: np.float64(0.45202589921083164), 4: np.float64(0.08346133338534839), 95: np.float64(0.04175594823587382), 11: np.float64(0.1482611012740726), 22: np.float64(0.13675594823587384), 0: np.float64(0.02075594823587382)} 

err list= [np.float64(0.18795828661449004), np.float64(0.45202589921083164), np.float64(0.08346133338534839), np.float64(0.04175594823587382), np.float64(0.1482611012740726), np.float64(0.13675594823587384), np.float64(0.02075594823587382)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  0.75 

learned probs for this beta: {8: np.float64(0.013535754575086758), 2: np.float64(0.7668309791659639), 4: np.float64(0.21654288009484618), 95: np.float64(9.697074519233975e-06), 11: np.float64(0.0030612949405465044), 22: np.float64(9.697074519233975e-06), 0: np.float64(9.697074519233975e-06)}
err dic= {8: np.float64(0.22146424542491322), 2: np.float64(0.5648309791659638), 4: np.float64(0.01954288009484617), 95: np.float64(0.04199030292548077), 11: np.float64(0.16293870505945351), 22: np.float64(0.13699030292548078), 0: np.float64(0.020990302925480767)} 

err list= [np.float64(0.22146424542491322), np.float64(0.5648309791659638), np.float64(0.01954288009484617), np.float64(0.04199030292548077), np.float64(0.16293870505945351), np.float64(0.13699030292548078), np.float64(0.020990302925480767)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  1 

learned probs for this beta: {8: np.float64(0.0034775442479723327), 2: np.float64(0.8410320552792534), 4: np.float64(0.15501604391502893), 95: np.float64(3.3170717444641195e-07), 11: np.float64(0.0004733614362209278), 22: np.float64(3.3170717444641195e-07), 0: np.float64(3.3170717444641195e-07)}
err dic= {8: np.float64(0.23152245575202765), 2: np.float64(0.6390320552792534), 4: np.float64(0.041983956084971075), 95: np.float64(0.04199966829282556), 11: np.float64(0.16552663856377908), 22: np.float64(0.13699966829282556), 0: np.float64(0.020999668292825555)} 

err list= [np.float64(0.23152245575202765), np.float64(0.6390320552792534), np.float64(0.041983956084971075), np.float64(0.04199966829282556), np.float64(0.16552663856377908), np.float64(0.13699966829282556), np.float64(0.020999668292825555)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  1.25 

learned probs for this beta: {8: np.float64(0.0008467392294183917), 2: np.float64(0.8926352594843994), 4: np.float64(0.10644832089742672), 95: np.float64(8.843338917067518e-09), 11: np.float64(6.965385873791985e-05), 22: np.float64(8.843338917067518e-09), 0: np.float64(8.843338917067518e-09)}
err dic= {8: np.float64(0.2341532607705816), 2: np.float64(0.6906352594843994), 4: np.float64(0.0905516791025733), 95: np.float64(0.04199999115666109), 11: np.float64(0.1659303461412621), 22: np.float64(0.1369999911566611), 0: np.float64(0.020999991156661083)} 

err list= [np.float64(0.2341532607705816), np.float64(0.6906352594843994), np.float64(0.0905516791025733), np.float64(0.04199999115666109), np.float64(0.1659303461412621), np.float64(0.1369999911566611), np.float64(0.020999991156661083)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  1.5 

learned probs for this beta: {8: np.float64(0.00020066374448792778), 2: np.float64(0.9287259683931609), 4: np.float64(0.0710633695028789), 95: np.float64(2.0120610011370458e-10), 11: np.float64(9.997755853467866e-06), 22: np.float64(2.0120610011370458e-10), 0: np.float64(2.0120610011370458e-10)}
err dic= {8: np.float64(0.23479933625551205), 2: np.float64(0.7267259683931608), 4: np.float64(0.12593663049712112), 95: np.float64(0.0419999997987939), 11: np.float64(0.16599000224414653), 22: np.float64(0.1369999997987939), 0: np.float64(0.0209999997987939)} 

err list= [np.float64(0.23479933625551205), np.float64(0.7267259683931608), np.float64(0.12593663049712112), np.float64(0.0419999997987939), np.float64(0.16599000224414653), np.float64(0.1369999997987939), np.float64(0.0209999997987939)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  1.75 

learned probs for this beta: {8: np.float64(4.682387878893796e-05), 2: np.float64(0.9535067301846316), 4: np.float64(0.0464450316324831), 95: np.float64(4.355612460026861e-12), 11: np.float64(1.4142910285100326e-06), 22: np.float64(4.355612460026861e-12), 0: np.float64(4.355612460026861e-12)}
err dic= {8: np.float64(0.23495317612121105), 2: np.float64(0.7515067301846317), 4: np.float64(0.15055496836751692), 95: np.float64(0.04199999999564439), 11: np.float64(0.1659985857089715), 22: np.float64(0.1369999999956444), 0: np.float64(0.020999999995644388)} 

err list= [np.float64(0.23495317612121105), np.float64(0.7515067301846317), np.float64(0.15055496836751692), np.float64(0.04199999999564439), np.float64(0.1659985857089715), np.float64(0.1369999999956444), np.float64(0.020999999995644388)]
results for assortment [8, 2, 4, 95, 11, 22] :

beta is  2 

learned probs for this beta: {8: np.float64(1.0815608602451285e-05), 2: np.float64(0.9701298210553663), 4: np.float64(0.02985916522650509), 95: np.float64(9.335627555846716e-14), 11: np.float64(1.981092455113974e-07), 22: np.float64(9.335627555846716e-14), 0: np.float64(9.335627555846716e-14)}
err dic= {8: np.float64(0.23498918439139754), 2: np.float64(0.7681298210553662), 4: np.float64(0.16714083477349492), 95: np.float64(0.04199999999990665), 11: np.float64(0.1659998018907545), 22: np.float64(0.13699999999990664), 0: np.float64(0.020999999999906645)} 

err list= [np.float64(0.23498918439139754), np.float64(0.7681298210553662), np.float64(0.16714083477349492), np.float64(0.04199999999990665), np.float64(0.1659998018907545), np.float64(0.13699999999990664), np.float64(0.020999999999906645)]
results for assortment [8, 2, 4, 95, 11, 22] :

err MNL dic= {8: 0.235, 2: 0.202, 4: 0.197, 95: 0.042, 11: 0.166, 22: 0.137, 0: np.float64(0.2356339886054509)} 

err MNL list= [0.235, 0.202, 0.197, 0.042, 0.166, 0.137, np.float64(0.2356339886054509)]
sampled assortment [1, 3, 9, 100, 22, 58] number: 8
#  Learning probs for MM model, A = [1, 3, 9, 100, 22, 58]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 100]
#  Learning probs for MM model, A = [1, 3, 9, 100, 22, 58]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 10: 0, 11: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 100]
empirical probabilities from test set: {1: 0.218, 3: 0.181, 9: 0.197, 100: 0.222, 22: 0.113, 58: 0.041, 0: 0.028}
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.12631880587033134), 3: np.float64(0.12038048260152849), 9: np.float64(0.10449278928155174), 100: np.float64(0.09723941849993258), 22: np.float64(0.18385616791555237), 58: np.float64(0.18385616791555237), 0: np.float64(0.18385616791555237)}
err dic= {1: np.float64(0.09168119412966866), 3: np.float64(0.060619517398471504), 9: np.float64(0.09250721071844827), 100: np.float64(0.12476058150006743), 22: np.float64(0.07085616791555237), 58: np.float64(0.14285616791555236), 0: np.float64(0.15585616791555237)} 

err list= [np.float64(0.09168119412966866), np.float64(0.060619517398471504), np.float64(0.09250721071844827), np.float64(0.12476058150006743), np.float64(0.07085616791555237), np.float64(0.14285616791555236), np.float64(0.15585616791555237)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.17497558375851477), 3: np.float64(0.15913965493622578), 9: np.float64(0.1204811266395261), 100: np.float64(0.10444106933503812), 22: np.float64(0.14698752177689856), 58: np.float64(0.14698752177689856), 0: np.float64(0.14698752177689856)}
err dic= {1: np.float64(0.04302441624148523), 3: np.float64(0.02186034506377421), 9: np.float64(0.0765188733604739), 100: np.float64(0.11755893066496188), 22: np.float64(0.03398752177689855), 58: np.float64(0.10598752177689855), 0: np.float64(0.11898752177689856)} 

err list= [np.float64(0.04302441624148523), np.float64(0.02186034506377421), np.float64(0.0765188733604739), np.float64(0.11755893066496188), np.float64(0.03398752177689855), np.float64(0.10598752177689855), np.float64(0.11898752177689856)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.2827158282728557), 3: np.float64(0.23539860774885707), 9: np.float64(0.13755619808226627), 100: np.float64(0.10368847703668689), 22: np.float64(0.08021362961977754), 58: np.float64(0.08021362961977754), 0: np.float64(0.08021362961977754)}
err dic= {1: np.float64(0.06471582827285569), 3: np.float64(0.054398607748857075), 9: np.float64(0.05944380191773374), 100: np.float64(0.11831152296331311), 22: np.float64(0.03278637038022246), 58: np.float64(0.03921362961977754), 0: np.float64(0.052213629619777546)} 

err list= [np.float64(0.06471582827285569), np.float64(0.054398607748857075), np.float64(0.05944380191773374), np.float64(0.11831152296331311), np.float64(0.03278637038022246), np.float64(0.03921362961977754), np.float64(0.052213629619777546)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.5104735056544878), 3: np.float64(0.332458248469005), 9: np.float64(0.0916029525934354), 100: np.float64(0.04496104415569633), 22: np.float64(0.006834749709121603), 58: np.float64(0.006834749709121603), 0: np.float64(0.006834749709121603)}
err dic= {1: np.float64(0.2924735056544878), 3: np.float64(0.15145824846900502), 9: np.float64(0.10539704740656461), 100: np.float64(0.17703895584430368), 22: np.float64(0.1061652502908784), 58: np.float64(0.0341652502908784), 0: np.float64(0.021165250290878398)} 

err list= [np.float64(0.2924735056544878), np.float64(0.15145824846900502), np.float64(0.10539704740656461), np.float64(0.17703895584430368), np.float64(0.1061652502908784), np.float64(0.0341652502908784), np.float64(0.021165250290878398)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.6811662903578115), 3: np.float64(0.29392218193763475), 9: np.float64(0.01987291499056753), 100: np.float64(0.00453797414144594), 22: np.float64(0.00016687952417864118), 58: np.float64(0.00016687952417864118), 0: np.float64(0.00016687952417864118)}
err dic= {1: np.float64(0.46316629035781154), 3: np.float64(0.11292218193763476), 9: np.float64(0.17712708500943247), 100: np.float64(0.21746202585855406), 22: np.float64(0.11283312047582136), 58: np.float64(0.04083312047582136), 0: np.float64(0.02783312047582136)} 

err list= [np.float64(0.46316629035781154), np.float64(0.11292218193763476), np.float64(0.17712708500943247), np.float64(0.21746202585855406), np.float64(0.11283312047582136), np.float64(0.04083312047582136), np.float64(0.02783312047582136)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.7763792691146167), 3: np.float64(0.2200091787598428), 9: np.float64(0.003251709362767268), 100: np.float64(0.00034521668995143997), 22: np.float64(4.875357608265526e-06), 58: np.float64(4.875357608265526e-06), 0: np.float64(4.875357608265526e-06)}
err dic= {1: np.float64(0.5583792691146168), 3: np.float64(0.039009178759842805), 9: np.float64(0.19374829063723273), 100: np.float64(0.22165478331004856), 22: np.float64(0.11299512464239174), 58: np.float64(0.04099512464239174), 0: np.float64(0.027995124642391737)} 

err list= [np.float64(0.5583792691146168), np.float64(0.039009178759842805), np.float64(0.19374829063723273), np.float64(0.22165478331004856), np.float64(0.11299512464239174), np.float64(0.04099512464239174), np.float64(0.027995124642391737)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  1 

learned probs for this beta: {1: np.float64(0.8437490705062991), 3: np.float64(0.15573984614781877), 9: np.float64(0.00048644626138230217), 100: np.float64(2.4260674041178797e-05), 22: np.float64(1.2547015250611343e-07), 58: np.float64(1.2547015250611343e-07), 0: np.float64(1.2547015250611343e-07)}
err dic= {1: np.float64(0.6257490705062991), 3: np.float64(0.025260153852181222), 9: np.float64(0.1965135537386177), 100: np.float64(0.22197573932595882), 22: np.float64(0.1129998745298475), 58: np.float64(0.0409998745298475), 0: np.float64(0.027999874529847493)} 

err list= [np.float64(0.6257490705062991), np.float64(0.025260153852181222), np.float64(0.1965135537386177), np.float64(0.22197573932595882), np.float64(0.1129998745298475), np.float64(0.0409998745298475), np.float64(0.027999874529847493)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.8933412278365227), 3: np.float64(0.10658666128600136), 9: np.float64(7.044586436584366e-05), 100: np.float64(1.6573248031581356e-06), 22: np.float64(2.5627688361400275e-09), 58: np.float64(2.5627688361400275e-09), 0: np.float64(2.5627688361400275e-09)}
err dic= {1: np.float64(0.6753412278365227), 3: np.float64(0.07441333871399863), 9: np.float64(0.19692955413563418), 100: np.float64(0.22199834267519686), 22: np.float64(0.11299999743723117), 58: np.float64(0.040999997437231164), 0: np.float64(0.027999997437231163)} 

err list= [np.float64(0.6753412278365227), np.float64(0.07441333871399863), np.float64(0.19692955413563418), np.float64(0.22199834267519686), np.float64(0.11299999743723117), np.float64(0.040999997437231164), np.float64(0.027999997437231163)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  1.5 

learned probs for this beta: {1: np.float64(0.9289011178404754), 3: np.float64(0.07108872797071329), 9: np.float64(1.004248384202134e-05), 100: np.float64(1.1156967789354934e-07), 22: np.float64(4.5097023210470406e-11), 58: np.float64(4.5097023210470406e-11), 0: np.float64(4.5097023210470406e-11)}
err dic= {1: np.float64(0.7109011178404754), 3: np.float64(0.1099112720292867), 9: np.float64(0.196989957516158), 100: np.float64(0.22199988843032212), 22: np.float64(0.11299999995490298), 58: np.float64(0.04099999995490298), 0: np.float64(0.027999999954902977)} 

err list= [np.float64(0.7109011178404754), np.float64(0.1099112720292867), np.float64(0.196989957516158), np.float64(0.22199988843032212), np.float64(0.11299999995490298), np.float64(0.04099999995490298), np.float64(0.027999999954902977)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  1.75 

learned probs for this beta: {1: np.float64(0.9535489961493191), 3: np.float64(0.04644957969889049), 9: np.float64(1.4167151804916098e-06), 100: np.float64(7.434334682239353e-09), 22: np.float64(7.581924694510813e-13), 58: np.float64(7.581924694510813e-13), 0: np.float64(7.581924694510813e-13)}
err dic= {1: np.float64(0.7355489961493191), 3: np.float64(0.1345504203011095), 9: np.float64(0.1969985832848195), 100: np.float64(0.22199999256566533), 22: np.float64(0.1129999999992418), 58: np.float64(0.04099999999924181), 0: np.float64(0.02799999999924181)} 

err list= [np.float64(0.7355489961493191), np.float64(0.1345504203011095), np.float64(0.1969985832848195), np.float64(0.22199999256566533), np.float64(0.1129999999992418), np.float64(0.04099999999924181), np.float64(0.02799999999924181)]
results for assortment [1, 3, 9, 100, 22, 58] :

beta is  2 

learned probs for this beta: {1: np.float64(0.9701398303256603), 3: np.float64(0.02985997094564839), 9: np.float64(1.982372702719425e-07), 100: np.float64(4.913822077321032e-10), 22: np.float64(1.2642572316658858e-14), 58: np.float64(1.2642572316658858e-14), 0: np.float64(1.2642572316658858e-14)}
err dic= {1: np.float64(0.7521398303256603), 3: np.float64(0.15114002905435162), 9: np.float64(0.19699980176272974), 100: np.float64(0.2219999995086178), 22: np.float64(0.11299999999998736), 58: np.float64(0.04099999999998736), 0: np.float64(0.027999999999987358)} 

err list= [np.float64(0.7521398303256603), np.float64(0.15114002905435162), np.float64(0.19699980176272974), np.float64(0.2219999995086178), np.float64(0.11299999999998736), np.float64(0.04099999999998736), np.float64(0.027999999999987358)]
results for assortment [1, 3, 9, 100, 22, 58] :

err MNL dic= {1: 0.218, 3: 0.181, 9: 0.197, 100: 0.222, 22: 0.113, 58: 0.041, 0: np.float64(0.22401612903225807)} 

err MNL list= [0.218, 0.181, 0.197, 0.222, 0.113, 0.041, np.float64(0.22401612903225807)]
sampled assortment [7, 6, 8, 16, 83, 70] number: 9
#  Learning probs for MM model, A = [7, 6, 8, 16, 83, 70]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 9: 0, 10: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100]
#  Learning probs for MM model, A = [7, 6, 8, 16, 83, 70]
#cluster  1 with weight 1.0
Learned cluster center of cluster 1:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0, 12: 0, 100: 0} [1, 2, 3, 4, 5, 6, 7, 8, 12, 100]
empirical probabilities from test set: {7: 0.207, 6: 0.246, 8: 0.249, 16: 0.148, 83: 0.048, 70: 0.058, 0: 0.044}
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  0.025 

learned probs for this beta: {7: np.float64(0.09637005553338837), 6: np.float64(0.09880967510416197), 8: np.float64(0.09399067038443443), 16: np.float64(0.1777073997445053), 83: np.float64(0.1777073997445053), 70: np.float64(0.1777073997445053), 0: np.float64(0.1777073997445053)}
err dic= {7: np.float64(0.11062994446661162), 6: np.float64(0.14719032489583803), 8: np.float64(0.15500932961556557), 16: np.float64(0.029707399744505314), 83: np.float64(0.1297073997445053), 70: np.float64(0.11970739974450531), 0: np.float64(0.1337073997445053)} 

err list= [np.float64(0.11062994446661162), np.float64(0.14719032489583803), np.float64(0.15500932961556557), np.float64(0.029707399744505314), np.float64(0.1297073997445053), np.float64(0.11970739974450531), np.float64(0.1337073997445053)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  0.05 

learned probs for this beta: {7: np.float64(0.11865045788928882), 6: np.float64(0.12473379695078997), 8: np.float64(0.11286380677477427), 16: np.float64(0.16093798459628567), 83: np.float64(0.16093798459628567), 70: np.float64(0.16093798459628567), 0: np.float64(0.16093798459628567)}
err dic= {7: np.float64(0.08834954211071117), 6: np.float64(0.12126620304921003), 8: np.float64(0.13613619322522574), 16: np.float64(0.012937984596285673), 83: np.float64(0.11293798459628566), 70: np.float64(0.10293798459628567), 0: np.float64(0.11693798459628567)} 

err list= [np.float64(0.08834954211071117), np.float64(0.12126620304921003), np.float64(0.13613619322522574), np.float64(0.012937984596285673), np.float64(0.11293798459628566), np.float64(0.10293798459628567), np.float64(0.11693798459628567)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  0.1 

learned probs for this beta: {7: np.float64(0.16537934974429142), 6: np.float64(0.18277244778765211), 8: np.float64(0.1496414238190905), 16: np.float64(0.12555169466224342), 83: np.float64(0.12555169466224342), 70: np.float64(0.12555169466224342), 0: np.float64(0.12555169466224342)}
err dic= {7: np.float64(0.041620650255708574), 6: np.float64(0.06322755221234788), 8: np.float64(0.09935857618090949), 16: np.float64(0.022448305337756574), 83: np.float64(0.07755169466224342), 70: np.float64(0.06755169466224342), 0: np.float64(0.08155169466224342)} 

err list= [np.float64(0.041620650255708574), np.float64(0.06322755221234788), np.float64(0.09935857618090949), np.float64(0.022448305337756574), np.float64(0.07755169466224342), np.float64(0.06755169466224342), np.float64(0.08155169466224342)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  0.25 

learned probs for this beta: {7: np.float64(0.2674209838142128), 6: np.float64(0.3433753401730897), 8: np.float64(0.20826767160423426), 16: np.float64(0.04523400110211577), 83: np.float64(0.04523400110211577), 70: np.float64(0.04523400110211577), 0: np.float64(0.04523400110211577)}
err dic= {7: np.float64(0.06042098381421282), 6: np.float64(0.09737534017308969), 8: np.float64(0.04073232839576574), 16: np.float64(0.10276599889788422), 83: np.float64(0.002765998897884231), 70: np.float64(0.012765998897884233), 0: np.float64(0.0012340011021157726)} 

err list= [np.float64(0.06042098381421282), np.float64(0.09737534017308969), np.float64(0.04073232839576574), np.float64(0.10276599889788422), np.float64(0.002765998897884231), np.float64(0.012765998897884233), np.float64(0.0012340011021157726)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  0.5 

learned probs for this beta: {7: np.float64(0.30231052548833176), 6: np.float64(0.4984257937291462), 8: np.float64(0.18336060246251082), 16: np.float64(0.003975769580002762), 83: np.float64(0.003975769580002762), 70: np.float64(0.003975769580002762), 0: np.float64(0.003975769580002762)}
err dic= {7: np.float64(0.09531052548833177), 6: np.float64(0.2524257937291462), 8: np.float64(0.06563939753748918), 16: np.float64(0.14402423041999723), 83: np.float64(0.04402423041999724), 70: np.float64(0.05402423041999724), 0: np.float64(0.04002423041999724)} 

err list= [np.float64(0.09531052548833177), np.float64(0.2524257937291462), np.float64(0.06563939753748918), np.float64(0.14402423041999723), np.float64(0.04402423041999724), np.float64(0.05402423041999724), np.float64(0.04002423041999724)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  0.75 

learned probs for this beta: {7: np.float64(0.278103029048208), 6: np.float64(0.5887441171150914), 8: np.float64(0.13136656913833633), 16: np.float64(0.0004465711745911781), 83: np.float64(0.0004465711745911781), 70: np.float64(0.0004465711745911781), 0: np.float64(0.0004465711745911781)}
err dic= {7: np.float64(0.071103029048208), 6: np.float64(0.34274411711509145), 8: np.float64(0.11763343086166367), 16: np.float64(0.1475534288254088), 83: np.float64(0.04755342882540882), 70: np.float64(0.05755342882540883), 0: np.float64(0.043553428825408816)} 

err list= [np.float64(0.071103029048208), np.float64(0.34274411711509145), np.float64(0.11763343086166367), np.float64(0.1475534288254088), np.float64(0.04755342882540882), np.float64(0.05755342882540883), np.float64(0.043553428825408816)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  1 

learned probs for this beta: {7: np.float64(0.2446669569060248), 6: np.float64(0.6650737429820193), 8: np.float64(0.09000794337970577), 16: np.float64(6.283918306255954e-05), 83: np.float64(6.283918306255954e-05), 70: np.float64(6.283918306255954e-05), 0: np.float64(6.283918306255954e-05)}
err dic= {7: np.float64(0.03766695690602481), 6: np.float64(0.41907374298201927), 8: np.float64(0.15899205662029423), 16: np.float64(0.14793716081693745), 83: np.float64(0.04793716081693744), 70: np.float64(0.05793716081693744), 0: np.float64(0.04393716081693744)} 

err list= [np.float64(0.03766695690602481), np.float64(0.41907374298201927), np.float64(0.15899205662029423), np.float64(0.14793716081693745), np.float64(0.04793716081693744), np.float64(0.05793716081693744), np.float64(0.04393716081693744)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  1.25 

learned probs for this beta: {7: np.float64(0.20933707534620746), 6: np.float64(0.7306581866702939), 8: np.float64(0.05997607624737147), 16: np.float64(7.1654340317882975e-06), 83: np.float64(7.1654340317882975e-06), 70: np.float64(7.1654340317882975e-06), 0: np.float64(7.1654340317882975e-06)}
err dic= {7: np.float64(0.0023370753462074734), 6: np.float64(0.4846581866702939), 8: np.float64(0.18902392375262853), 16: np.float64(0.1479928345659682), 83: np.float64(0.047992834565968215), 70: np.float64(0.05799283456596822), 0: np.float64(0.04399283456596821)} 

err list= [np.float64(0.0023370753462074734), np.float64(0.4846581866702939), np.float64(0.18902392375262853), np.float64(0.1479928345659682), np.float64(0.047992834565968215), np.float64(0.05799283456596822), np.float64(0.04399283456596821)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  1.5 

learned probs for this beta: {7: np.float64(0.1752898973661395), 6: np.float64(0.7855948171665086), 8: np.float64(0.03911246287170854), 16: np.float64(7.056489108095449e-07), 83: np.float64(7.056489108095449e-07), 70: np.float64(7.056489108095449e-07), 0: np.float64(7.056489108095449e-07)}
err dic= {7: np.float64(0.03171010263386048), 6: np.float64(0.5395948171665086), 8: np.float64(0.20988753712829145), 16: np.float64(0.1479992943510892), 83: np.float64(0.04799929435108919), 70: np.float64(0.05799929435108919), 0: np.float64(0.04399929435108919)} 

err list= [np.float64(0.03171010263386048), np.float64(0.5395948171665086), np.float64(0.20988753712829145), np.float64(0.1479992943510892), np.float64(0.04799929435108919), np.float64(0.05799929435108919), np.float64(0.04399929435108919)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  1.75 

learned probs for this beta: {7: np.float64(0.14433391670305476), 6: np.float64(0.830584343297787), 8: np.float64(0.025081473879137894), 16: np.float64(6.653000503736377e-08), 83: np.float64(6.653000503736377e-08), 70: np.float64(6.653000503736377e-08), 0: np.float64(6.653000503736377e-08)}
err dic= {7: np.float64(0.06266608329694523), 6: np.float64(0.584584343297787), 8: np.float64(0.2239185261208621), 16: np.float64(0.14799993346999496), 83: np.float64(0.04799993346999496), 70: np.float64(0.05799993346999496), 0: np.float64(0.04399993346999496)} 

err list= [np.float64(0.06266608329694523), np.float64(0.584584343297787), np.float64(0.2239185261208621), np.float64(0.14799993346999496), np.float64(0.04799993346999496), np.float64(0.05799993346999496), np.float64(0.04399993346999496)]
results for assortment [7, 6, 8, 16, 83, 70] :

beta is  2 

learned probs for this beta: {7: np.float64(0.11731042490500163), 6: np.float64(0.866813310612448), 8: np.float64(0.015876239581125773), 16: np.float64(6.225355995758282e-09), 83: np.float64(6.225355995758282e-09), 70: np.float64(6.225355995758282e-09), 0: np.float64(6.225355995758282e-09)}
err dic= {7: np.float64(0.08968957509499836), 6: np.float64(0.620813310612448), 8: np.float64(0.23312376041887423), 16: np.float64(0.14799999377464398), 83: np.float64(0.047999993774644006), 70: np.float64(0.05799999377464401), 0: np.float64(0.043999993774644)} 

err list= [np.float64(0.08968957509499836), np.float64(0.620813310612448), np.float64(0.23312376041887423), np.float64(0.14799999377464398), np.float64(0.047999993774644006), np.float64(0.05799999377464401), np.float64(0.043999993774644)]
results for assortment [7, 6, 8, 16, 83, 70] :

err MNL dic= {7: 0.207, 6: 0.246, 8: 0.249, 16: 0.148, 83: 0.048, 70: 0.058, 0: np.float64(0.21812319790301443)} 

err MNL list= [0.207, 0.246, 0.249, 0.148, 0.048, 0.058, np.float64(0.21812319790301443)]
****final outcomes:*****
beta range: [0.025, 0.05, 0.1, 0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2]
 mean error for all betas:

mean_err= [0.11795131 0.10836879 0.09383206 0.08173335 0.08525733 0.09075478
 0.09643229 0.10177094 0.10759305 0.11353616 0.11933971]
mean_std= [0.         0.00958252 0.02199658 0.02832002 0.02629244 0.0269664
 0.0285781  0.03023454 0.03292011 0.03596171 0.03889073]
MNL: [0.17062606 0.16668406 0.16718534 0.16743585 0.16353078 0.16596076
 0.16918108 0.17351914 0.17085945 0.16773189]
 mean error for MNL:

mean_err_MNL= 0.16827143997207789
mean_std_MNL= 0.0027038801497929975
