p= 5 num clusters= 5
linkage completed in  10.682723760604858
silhouette_score of the clusters -0.014768830260824784
sampled assortment [2, 3, 4, 59, 40, 84] number: 0
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 1, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 12: 4, 14: 2, 15: 3, 100: 1} [3, 2, 8, 11, 100, 1, 4, 5, 14, 15, 12]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {6: 0, 10: 0} [6, 10]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 1, 3: 2, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 2, 12: 4, 13: 2, 14: 4, 15: 2, 16: 4, 100: 2} [4, 2, 5, 6, 8, 9, 3, 7, 10, 13, 15, 100, 12, 14, 16]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 6: 1, 9: 1, 10: 1, 14: 1, 100: 1} [1, 2, 6, 9, 10, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 4, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 17: 5, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 5, 17]
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 1, 3: 0, 4: 1, 5: 2, 7: 3, 8: 1, 11: 2, 12: 2, 14: 2, 100: 1} [3, 2, 4, 8, 100, 1, 5, 11, 12, 14, 7]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {6: 0, 7: 0, 8: 0, 12: 0} [6, 7, 8, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 2, 4: 0, 5: 1, 6: 1, 7: 3, 8: 1, 9: 1, 12: 4, 13: 1, 19: 1, 100: 1} [4, 5, 6, 8, 9, 13, 19, 100, 3, 7, 12]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 9: 1, 10: 1, 14: 1, 15: 1, 100: 1} [1, 2, 5, 9, 10, 14, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 17: 5, 20: 5, 100: 2} [2, 6, 7, 8, 10, 100, 1, 11, 5, 17, 20]
empirical probabilities from test set: {2: 0.26, 3: 0.24, 4: 0.244, 59: 0.07, 40: 0.073, 84: 0.065, 0: 0.048}
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.38495066462979205), 3: np.float64(0.16695257190481255), 4: np.float64(0.17297137409332733), 59: np.float64(0.06878134734301697), 40: np.float64(0.06878134734301697), 84: np.float64(0.06878134734301697), 0: np.float64(0.06878134734301697)}
err dic= {2: np.float64(0.12495066462979204), 3: np.float64(0.07304742809518744), 4: np.float64(0.07102862590667267), 59: np.float64(0.001218652656983038), 40: np.float64(0.004218652656983027), 84: np.float64(0.0037813473430169664), 0: np.float64(0.020781347343016968)} 

err list= [np.float64(0.12495066462979204), np.float64(0.07304742809518744), np.float64(0.07102862590667267), np.float64(0.001218652656983038), np.float64(0.004218652656983027), np.float64(0.0037813473430169664), np.float64(0.020781347343016968)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.38526152674550185), 3: np.float64(0.1639566849359127), 4: np.float64(0.1759246424044194), 59: np.float64(0.06871428647854151), 40: np.float64(0.06871428647854151), 84: np.float64(0.06871428647854151), 0: np.float64(0.06871428647854151)}
err dic= {2: np.float64(0.12526152674550184), 3: np.float64(0.07604331506408729), 4: np.float64(0.06807535759558059), 59: np.float64(0.0012857135214584953), 40: np.float64(0.004285713521458484), 84: np.float64(0.003714286478541509), 0: np.float64(0.02071428647854151)} 

err list= [np.float64(0.12526152674550184), np.float64(0.07604331506408729), np.float64(0.06807535759558059), np.float64(0.0012857135214584953), np.float64(0.004285713521458484), np.float64(0.003714286478541509), np.float64(0.02071428647854151)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.38515353487362086), 3: np.float64(0.15830909194259232), 4: np.float64(0.18168023032664404), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.12515353487362085), 3: np.float64(0.08169090805740767), 4: np.float64(0.06231976967335595), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.12515353487362085), np.float64(0.08169090805740767), np.float64(0.06231976967335595), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.38440874436826444), 3: np.float64(0.14541347445546082), 4: np.float64(0.19532063831913177), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.12440874436826443), 3: np.float64(0.09458652554453917), 4: np.float64(0.04867936168086823), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.12440874436826443), np.float64(0.09458652554453917), np.float64(0.04867936168086823), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.38189975085769057), 3: np.float64(0.14013064870056124), 4: np.float64(0.2031124575846055), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.12189975085769056), 3: np.float64(0.09986935129943875), 4: np.float64(0.040887542415394496), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.12189975085769056), np.float64(0.09986935129943875), np.float64(0.040887542415394496), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.37818237530980126), 3: np.float64(0.14646781646811535), 4: np.float64(0.20049266536494056), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.11818237530980125), 3: np.float64(0.09353218353188464), 4: np.float64(0.04350733463505943), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.11818237530980125), np.float64(0.09353218353188464), np.float64(0.04350733463505943), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1 

learned probs for this beta: {2: np.float64(0.37377898695140943), 3: np.float64(0.1553777745697946), 4: np.float64(0.19598609562165317), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.11377898695140942), 3: np.float64(0.0846222254302054), 4: np.float64(0.04801390437834682), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.11377898695140942), np.float64(0.0846222254302054), np.float64(0.04801390437834682), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.3691788855269713), 3: np.float64(0.16373106422572334), 4: np.float64(0.19223290739016244), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.1091788855269713), 3: np.float64(0.07626893577427665), 4: np.float64(0.051767092609837556), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.1091788855269713), np.float64(0.07626893577427665), np.float64(0.051767092609837556), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.5 

learned probs for this beta: {2: np.float64(0.3647520366924905), 3: np.float64(0.17084616158790242), 4: np.float64(0.1895446588624641), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.1047520366924905), 3: np.float64(0.06915383841209757), 4: np.float64(0.05445534113753589), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.1047520366924905), np.float64(0.06915383841209757), np.float64(0.05445534113753589), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.75 

learned probs for this beta: {2: np.float64(0.3607276998790029), 3: np.float64(0.17669089854296682), 4: np.float64(0.18772425872088727), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.10072769987900287), 3: np.float64(0.06330910145703317), 4: np.float64(0.05627574127911272), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.10072769987900287), np.float64(0.06330910145703317), np.float64(0.05627574127911272), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  2 

learned probs for this beta: {2: np.float64(0.35721464133169145), 3: np.float64(0.1814001072416911), 4: np.float64(0.18652810856947444), 59: np.float64(0.06871428571428571), 40: np.float64(0.06871428571428571), 84: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {2: np.float64(0.09721464133169144), 3: np.float64(0.0585998927583089), 4: np.float64(0.05747189143052556), 59: np.float64(0.0012857142857142928), 40: np.float64(0.004285714285714282), 84: np.float64(0.0037142857142857116), 0: np.float64(0.020714285714285713)} 

err list= [np.float64(0.09721464133169144), np.float64(0.0585998927583089), np.float64(0.05747189143052556), np.float64(0.0012857142857142928), np.float64(0.004285714285714282), np.float64(0.0037142857142857116), np.float64(0.020714285714285713)]
results for assortment [2, 3, 4, 59, 40, 84] :

err MNL dic= {2: 0.26, 3: 0.24, 4: 0.244, 59: 0.07, 40: 0.073, 84: 0.065, 0: np.float64(0.5338314735353992)} 

err MNL list= [0.26, 0.24, 0.244, 0.07, 0.073, 0.065, np.float64(0.5338314735353992)]
sampled assortment [5, 6, 2, 74, 55, 48] number: 1
#  Learning probs for MM model, A = [5, 6, 2, 74, 55, 48]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 5: 2, 7: 2, 8: 1, 11: 1, 14: 2, 15: 3, 20: 4, 21: 4, 100: 1} [3, 8, 11, 100, 1, 2, 4, 5, 7, 14, 15, 20, 21]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 8: 0, 10: 0, 12: 0} [5, 6, 8, 10, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 1, 4: 0, 5: 1, 6: 1, 8: 1, 9: 1, 10: 1, 19: 1, 100: 1} [4, 3, 5, 6, 8, 9, 10, 19, 100]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 13: 1, 100: 1} [1, 2, 5, 6, 9, 10, 13, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 2, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 13: 6, 17: 5, 100: 2} [2, 6, 7, 8, 10, 1, 100, 11, 5, 17, 13]
#  Learning probs for MM model, A = [5, 6, 2, 74, 55, 48]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 3: 0, 4: 2, 5: 2, 7: 3, 8: 1, 11: 1, 14: 3, 20: 2, 21: 3, 100: 1} [3, 1, 8, 11, 100, 4, 5, 20, 7, 14, 21]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 7: 0, 8: 0, 12: 0, 100: 0} [5, 7, 8, 12, 100]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 1, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 2, 13: 2, 15: 1, 100: 2} [4, 3, 5, 6, 8, 9, 15, 7, 10, 13, 100]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 100: 1} [1, 2, 5, 6, 9, 10, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 17: 5, 25: 6, 100: 2} [2, 6, 7, 8, 10, 100, 1, 17, 25]
empirical probabilities from test set: {5: 0.232, 6: 0.257, 2: 0.264, 74: 0.056, 55: 0.076, 48: 0.079, 0: 0.036}
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.7279903746712556), 6: np.float64(0.16227642283003527), 2: np.float64(0.10929773102911394), 74: np.float64(0.00010886786739878366), 55: np.float64(0.00010886786739878366), 48: np.float64(0.00010886786739878366), 0: np.float64(0.00010886786739878366)}
err dic= {5: np.float64(0.4959903746712556), 6: np.float64(0.09472357716996474), 2: np.float64(0.15470226897088607), 74: np.float64(0.05589113213260122), 55: np.float64(0.07589113213260121), 48: np.float64(0.07889113213260121), 0: np.float64(0.035891132132601214)} 

err list= [np.float64(0.4959903746712556), np.float64(0.09472357716996474), np.float64(0.15470226897088607), np.float64(0.05589113213260122), np.float64(0.07589113213260121), np.float64(0.07889113213260121), np.float64(0.035891132132601214)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.7292724317332765), 6: np.float64(0.15942634907940262), 2: np.float64(0.11130121480169164), 74: np.float64(1.0964072880793431e-09), 55: np.float64(1.0964072880793431e-09), 48: np.float64(1.0964072880793431e-09), 0: np.float64(1.0964072880793431e-09)}
err dic= {5: np.float64(0.4972724317332765), 6: np.float64(0.09757365092059739), 2: np.float64(0.15269878519830837), 74: np.float64(0.05599999890359271), 55: np.float64(0.07599999890359271), 48: np.float64(0.07899999890359272), 0: np.float64(0.035999998903592706)} 

err list= [np.float64(0.4972724317332765), np.float64(0.09757365092059739), np.float64(0.15269878519830837), np.float64(0.05599999890359271), np.float64(0.07599999890359271), np.float64(0.07899999890359272), np.float64(0.035999998903592706)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.7305701648060898), 6: np.float64(0.1539123124024285), 2: np.float64(0.11551752279148178), 74: np.float64(1.5393533849539427e-19), 55: np.float64(1.5393533849539427e-19), 48: np.float64(1.5393533849539427e-19), 0: np.float64(1.5393533849539427e-19)}
err dic= {5: np.float64(0.49857016480608984), 6: np.float64(0.1030876875975715), 2: np.float64(0.14848247720851823), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.49857016480608984), np.float64(0.1030876875975715), np.float64(0.14848247720851823), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.7338616929141021), 6: np.float64(0.1378252944407232), 2: np.float64(0.1283130126451745), 74: np.float64(1.2062434020948702e-48), 55: np.float64(1.2062434020948702e-48), 48: np.float64(1.2062434020948702e-48), 0: np.float64(1.2062434020948702e-48)}
err dic= {5: np.float64(0.5018616929141021), 6: np.float64(0.11917470555927681), 2: np.float64(0.1356869873548255), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5018616929141021), np.float64(0.11917470555927681), np.float64(0.1356869873548255), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.7374233393587889), 6: np.float64(0.11301792079618189), 2: np.float64(0.1495587398450293), 74: np.float64(5.534066168497109e-97), 55: np.float64(5.534066168497109e-97), 48: np.float64(5.534066168497109e-97), 0: np.float64(5.534066168497109e-97)}
err dic= {5: np.float64(0.5054233393587889), 6: np.float64(0.14398207920381811), 2: np.float64(0.11444126015497072), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5054233393587889), np.float64(0.14398207920381811), np.float64(0.11444126015497072), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.7389272564172921), 6: np.float64(0.09130760731982054), 2: np.float64(0.16976513626288742), 74: np.float64(2.673393108059445e-145), 55: np.float64(2.673393108059445e-145), 48: np.float64(2.673393108059445e-145), 0: np.float64(2.673393108059445e-145)}
err dic= {5: np.float64(0.5069272564172921), 6: np.float64(0.16569239268017946), 2: np.float64(0.0942348637371126), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5069272564172921), np.float64(0.16569239268017946), np.float64(0.0942348637371126), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  1 

learned probs for this beta: {5: np.float64(0.7389369698531223), 6: np.float64(0.07295099278159632), 2: np.float64(0.18811203736528148), 74: np.float64(1.3030266467247757e-193), 55: np.float64(1.3030266467247757e-193), 48: np.float64(1.3030266467247757e-193), 0: np.float64(1.3030266467247757e-193)}
err dic= {5: np.float64(0.5069369698531223), 6: np.float64(0.18404900721840367), 2: np.float64(0.07588796263471853), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5069369698531223), np.float64(0.18404900721840367), np.float64(0.07588796263471853), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.7380261832913193), 6: np.float64(0.057828499201740685), 2: np.float64(0.2041453175069399), 74: np.float64(6.3495562663130975e-242), 55: np.float64(6.3495562663130975e-242), 48: np.float64(6.3495562663130975e-242), 0: np.float64(6.3495562663130975e-242)}
err dic= {5: np.float64(0.5060261832913193), 6: np.float64(0.19917150079825932), 2: np.float64(0.05985468249306011), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5060261832913193), np.float64(0.19917150079825932), np.float64(0.05985468249306011), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  1.5 

learned probs for this beta: {5: np.float64(0.7366606450282005), 6: np.float64(0.045597136515859206), 2: np.float64(0.21774221845594008), 74: np.float64(3.088916668552709e-290), 55: np.float64(3.088916668552709e-290), 48: np.float64(3.088916668552709e-290), 0: np.float64(3.088916668552709e-290)}
err dic= {5: np.float64(0.5046606450282005), 6: np.float64(0.2114028634841408), 2: np.float64(0.046257781544059934), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5046606450282005), np.float64(0.2114028634841408), np.float64(0.046257781544059934), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  1.75 

learned probs for this beta: {5: np.float64(0.7351606468828701), 6: np.float64(0.03582542804074466), 2: np.float64(0.2290139250763852), 74: np.float64(0.0), 55: np.float64(0.0), 48: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.5031606468828701), 6: np.float64(0.22117457195925536), 2: np.float64(0.0349860749236148), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.5031606468828701), np.float64(0.22117457195925536), np.float64(0.0349860749236148), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

beta is  2 

learned probs for this beta: {5: np.float64(0.7337162075011769), 6: np.float64(0.028081113944523534), 2: np.float64(0.23820267855429939), 74: np.float64(0.0), 55: np.float64(0.0), 48: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.501716207501177), 6: np.float64(0.22891888605547647), 2: np.float64(0.025797321445700627), 74: np.float64(0.056), 55: np.float64(0.076), 48: np.float64(0.079), 0: np.float64(0.036)} 

err list= [np.float64(0.501716207501177), np.float64(0.22891888605547647), np.float64(0.025797321445700627), np.float64(0.056), np.float64(0.076), np.float64(0.079), np.float64(0.036)]
results for assortment [5, 6, 2, 74, 55, 48] :

err MNL dic= {5: 0.232, 6: 0.257, 2: 0.264, 74: 0.056, 55: 0.076, 48: 0.079, 0: np.float64(0.548035094818128)} 

err MNL list= [0.232, 0.257, 0.264, 0.056, 0.076, 0.079, np.float64(0.548035094818128)]
sampled assortment [8, 7, 2, 21, 40, 31] number: 2
#  Learning probs for MM model, A = [8, 7, 2, 21, 40, 31]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 6: 4, 7: 2, 8: 1, 11: 1, 14: 2, 19: 2, 100: 1} [3, 8, 11, 100, 1, 2, 4, 7, 14, 19, 6]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 7: 0, 8: 0, 11: 0, 12: 0} [5, 6, 7, 8, 11, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 2, 3: 1, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 2, 13: 1, 14: 3, 15: 4, 16: 4, 18: 3, 19: 1, 100: 1} [4, 3, 5, 6, 8, 9, 13, 19, 100, 2, 7, 10, 14, 18, 15, 16]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 13: 1, 14: 1, 100: 1} [1, 2, 5, 6, 9, 10, 13, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 4, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 13: 5, 15: 6, 17: 5, 100: 2} [2, 6, 7, 8, 10, 100, 1, 5, 13, 17, 15]
#  Learning probs for MM model, A = [8, 7, 2, 21, 40, 31]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 2, 3: 0, 4: 2, 5: 2, 7: 2, 8: 1, 11: 1, 14: 3, 16: 5, 100: 1} [3, 1, 8, 11, 100, 2, 4, 5, 7, 14, 16]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 8: 0, 12: 0} [5, 8, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 3, 3: 2, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 1, 12: 4, 18: 4, 19: 1, 20: 4, 100: 1} [4, 5, 6, 8, 9, 10, 19, 100, 3, 7, 2, 12, 18, 20]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 9: 1, 10: 1, 13: 1, 14: 1, 100: 1} [1, 2, 5, 9, 10, 13, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 13: 6, 17: 5, 100: 2} [2, 6, 7, 8, 10, 11, 100, 1, 17, 13]
empirical probabilities from test set: {8: 0.243, 7: 0.176, 2: 0.225, 21: 0.146, 40: 0.076, 31: 0.094, 0: 0.04}
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  0.025 

learned probs for this beta: {8: np.float64(0.5998872714737), 7: np.float64(0.10991418925182853), 2: np.float64(0.28982360304236254), 21: np.float64(9.373405802720128e-05), 40: np.float64(9.373405802720128e-05), 31: np.float64(9.373405802720128e-05), 0: np.float64(9.373405802720128e-05)}
err dic= {8: np.float64(0.35688727147370003), 7: np.float64(0.06608581074817146), 2: np.float64(0.06482360304236254), 21: np.float64(0.14590626594197278), 40: np.float64(0.07590626594197279), 31: np.float64(0.0939062659419728), 0: np.float64(0.0399062659419728)} 

err list= [np.float64(0.35688727147370003), np.float64(0.06608581074817146), np.float64(0.06482360304236254), np.float64(0.14590626594197278), np.float64(0.07590626594197279), np.float64(0.0939062659419728), np.float64(0.0399062659419728)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  0.05 

learned probs for this beta: {8: np.float64(0.6054664726850331), 7: np.float64(0.10564906230104956), 2: np.float64(0.28888446189945316), 21: np.float64(7.78616048065576e-10), 40: np.float64(7.78616048065576e-10), 31: np.float64(7.78616048065576e-10), 0: np.float64(7.78616048065576e-10)}
err dic= {8: np.float64(0.36246647268503307), 7: np.float64(0.07035093769895043), 2: np.float64(0.06388446189945315), 21: np.float64(0.14599999922138393), 40: np.float64(0.07599999922138395), 31: np.float64(0.09399999922138395), 0: np.float64(0.039999999221383954)} 

err list= [np.float64(0.36246647268503307), np.float64(0.07035093769895043), np.float64(0.06388446189945315), np.float64(0.14599999922138393), np.float64(0.07599999922138395), np.float64(0.09399999922138395), np.float64(0.039999999221383954)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  0.1 

learned probs for this beta: {8: np.float64(0.6163558246963615), 7: np.float64(0.09716634588333863), 2: np.float64(0.2864778294203001), 21: np.float64(7.459913806808693e-20), 40: np.float64(7.459913806808693e-20), 31: np.float64(7.459913806808693e-20), 0: np.float64(7.459913806808693e-20)}
err dic= {8: np.float64(0.3733558246963615), 7: np.float64(0.07883365411666136), 2: np.float64(0.061477829420300084), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.3733558246963615), np.float64(0.07883365411666136), np.float64(0.061477829420300084), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  0.25 

learned probs for this beta: {8: np.float64(0.6487142411805933), 7: np.float64(0.07261860341219076), 2: np.float64(0.27866715540721554), 21: np.float64(3.583258671819264e-49), 40: np.float64(3.583258671819264e-49), 31: np.float64(3.583258671819264e-49), 0: np.float64(3.583258671819264e-49)}
err dic= {8: np.float64(0.4057142411805933), 7: np.float64(0.10338139658780923), 2: np.float64(0.05366715540721553), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.4057142411805933), np.float64(0.10338139658780923), np.float64(0.05366715540721553), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  0.5 

learned probs for this beta: {8: np.float64(0.6895478553114055), 7: np.float64(0.041634031730527765), 2: np.float64(0.26881811295806696), 21: np.float64(2.067117971621092e-97), 40: np.float64(2.067117971621092e-97), 31: np.float64(2.067117971621092e-97), 0: np.float64(2.067117971621092e-97)}
err dic= {8: np.float64(0.4465478553114055), 7: np.float64(0.13436596826947222), 2: np.float64(0.04381811295806695), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.4465478553114055), np.float64(0.13436596826947222), np.float64(0.04381811295806695), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  0.75 

learned probs for this beta: {8: np.float64(0.710346653522069), 7: np.float64(0.02452510387145046), 2: np.float64(0.26512824260648027), 21: np.float64(1.390267518030602e-145), 40: np.float64(1.390267518030602e-145), 31: np.float64(1.390267518030602e-145), 0: np.float64(1.390267518030602e-145)}
err dic= {8: np.float64(0.46734665352206906), 7: np.float64(0.15147489612854953), 2: np.float64(0.04012824260648026), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.46734665352206906), np.float64(0.15147489612854953), np.float64(0.04012824260648026), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  1 

learned probs for this beta: {8: np.float64(0.7193408676158497), 7: np.float64(0.01552898306526014), 2: np.float64(0.26513014931889023), 21: np.float64(9.161838885551172e-194), 40: np.float64(9.161838885551172e-194), 31: np.float64(9.161838885551172e-194), 0: np.float64(9.161838885551172e-194)}
err dic= {8: np.float64(0.4763408676158497), 7: np.float64(0.16047101693473986), 2: np.float64(0.040130149318890224), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.4763408676158497), np.float64(0.16047101693473986), np.float64(0.040130149318890224), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  1.25 

learned probs for this beta: {8: np.float64(0.7232404503584668), 7: np.float64(0.010227115088420856), 2: np.float64(0.26653243455311204), 21: np.float64(5.9041375128654825e-242), 40: np.float64(5.9041375128654825e-242), 31: np.float64(5.9041375128654825e-242), 0: np.float64(5.9041375128654825e-242)}
err dic= {8: np.float64(0.48024045035846685), 7: np.float64(0.16577288491157913), 2: np.float64(0.041532434553112035), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.48024045035846685), np.float64(0.16577288491157913), np.float64(0.041532434553112035), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  1.5 

learned probs for this beta: {8: np.float64(0.7250371410834686), 7: np.float64(0.006764011980556338), 2: np.float64(0.26819884693597484), 21: np.float64(3.7524429609591907e-290), 40: np.float64(3.7524429609591907e-290), 31: np.float64(3.7524429609591907e-290), 0: np.float64(3.7524429609591907e-290)}
err dic= {8: np.float64(0.4820371410834686), 7: np.float64(0.16923598801944365), 2: np.float64(0.04319884693597484), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.4820371410834686), np.float64(0.16923598801944365), np.float64(0.04319884693597484), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  1.75 

learned probs for this beta: {8: np.float64(0.7259058330928065), 7: np.float64(0.004424054115335027), 2: np.float64(0.2696701127918581), 21: np.float64(0.0), 40: np.float64(0.0), 31: np.float64(0.0), 0: np.float64(0.0)}
err dic= {8: np.float64(0.48290583309280655), 7: np.float64(0.17157594588466496), 2: np.float64(0.04467011279185809), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.48290583309280655), np.float64(0.17157594588466496), np.float64(0.04467011279185809), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

beta is  2 

learned probs for this beta: {8: np.float64(0.7263345894847003), 7: np.float64(0.002852192378250524), 2: np.float64(0.27081321813704884), 21: np.float64(0.0), 40: np.float64(0.0), 31: np.float64(0.0), 0: np.float64(0.0)}
err dic= {8: np.float64(0.4833345894847003), 7: np.float64(0.17314780762174947), 2: np.float64(0.04581321813704883), 21: np.float64(0.146), 40: np.float64(0.076), 31: np.float64(0.094), 0: np.float64(0.04)} 

err list= [np.float64(0.4833345894847003), np.float64(0.17314780762174947), np.float64(0.04581321813704883), np.float64(0.146), np.float64(0.076), np.float64(0.094), np.float64(0.04)]
results for assortment [8, 7, 2, 21, 40, 31] :

err MNL dic= {8: 0.243, 7: 0.176, 2: 0.225, 21: 0.146, 40: 0.076, 31: 0.094, 0: np.float64(0.534904011471829)} 

err MNL list= [0.243, 0.176, 0.225, 0.146, 0.076, 0.094, np.float64(0.534904011471829)]
sampled assortment [1, 7, 2, 64, 69, 79] number: 3
#  Learning probs for MM model, A = [1, 7, 2, 64, 69, 79]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 1, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 12: 4, 14: 2, 100: 1} [3, 1, 2, 8, 11, 100, 4, 5, 14, 12]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 8: 0, 12: 0} [5, 6, 8, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 2, 3: 2, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 3, 13: 1, 14: 4, 100: 1} [4, 5, 6, 8, 9, 13, 100, 2, 3, 7, 10, 14]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 14: 1, 15: 1, 100: 1} [1, 2, 5, 6, 9, 14, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 13: 5, 17: 5, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 5, 13, 17]
#  Learning probs for MM model, A = [1, 7, 2, 64, 69, 79]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 1, 3: 0, 4: 2, 7: 2, 8: 1, 11: 2, 12: 4, 14: 2, 23: 6, 100: 1} [3, 1, 2, 8, 100, 4, 7, 11, 14, 12, 23]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 8: 0, 10: 0, 11: 0, 12: 0, 13: 0} [5, 6, 8, 10, 11, 12, 13]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 2, 4: 0, 5: 1, 6: 1, 8: 1, 9: 1, 10: 2, 12: 4, 13: 1, 15: 2, 100: 1} [4, 5, 6, 8, 9, 13, 100, 3, 10, 15, 12]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 11: 1, 13: 1, 14: 1, 21: 1, 100: 1} [1, 2, 5, 6, 9, 10, 11, 13, 14, 21, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 17: 5, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 5, 17]
empirical probabilities from test set: {1: 0.266, 7: 0.23, 2: 0.27, 64: 0.068, 69: 0.052, 79: 0.07, 0: 0.044}
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.24957037380486347), 7: np.float64(0.15854647044150194), 2: np.float64(0.2508161666326093), 64: np.float64(0.08526674728025631), 69: np.float64(0.08526674728025631), 79: np.float64(0.08526674728025631), 0: np.float64(0.08526674728025631)}
err dic= {1: np.float64(0.01642962619513655), 7: np.float64(0.07145352955849807), 2: np.float64(0.019183833367390712), 64: np.float64(0.017266747280256303), 69: np.float64(0.03326674728025631), 79: np.float64(0.015266747280256301), 0: np.float64(0.04126674728025631)} 

err list= [np.float64(0.01642962619513655), np.float64(0.07145352955849807), np.float64(0.019183833367390712), np.float64(0.017266747280256303), np.float64(0.03326674728025631), np.float64(0.015266747280256301), np.float64(0.04126674728025631)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.25012744749090854), 7: np.float64(0.15640885119967887), 2: np.float64(0.2524637004683646), 64: np.float64(0.08525000021026204), 69: np.float64(0.08525000021026204), 79: np.float64(0.08525000021026204), 0: np.float64(0.08525000021026204)}
err dic= {1: np.float64(0.015872552509091475), 7: np.float64(0.07359114880032114), 2: np.float64(0.017536299531635435), 64: np.float64(0.01725000021026203), 69: np.float64(0.03325000021026204), 79: np.float64(0.01525000021026203), 0: np.float64(0.04125000021026204)} 

err list= [np.float64(0.015872552509091475), np.float64(0.07359114880032114), np.float64(0.017536299531635435), np.float64(0.01725000021026203), np.float64(0.03325000021026204), np.float64(0.01525000021026203), np.float64(0.04125000021026204)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.2514625035873505), 7: np.float64(0.15209352609848503), 2: np.float64(0.2554439703141646), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.014537496412649509), 7: np.float64(0.07790647390151498), 2: np.float64(0.014556029685835414), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.014537496412649509), np.float64(0.07790647390151498), np.float64(0.014556029685835414), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.2578752359221864), 7: np.float64(0.139327461463788), 2: np.float64(0.26179730261402545), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.008124764077813595), 7: np.float64(0.09067253853621202), 2: np.float64(0.008202697385974567), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.008124764077813595), np.float64(0.09067253853621202), np.float64(0.008202697385974567), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.27438938866456103), 7: np.float64(0.12133386656357976), 2: np.float64(0.2632767447718593), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.008389388664561015), 7: np.float64(0.10866613343642025), 2: np.float64(0.006723255228140712), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.008389388664561015), np.float64(0.10866613343642025), np.float64(0.006723255228140712), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.2925801165797224), 7: np.float64(0.10903172647222609), 2: np.float64(0.2573881569480515), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.026580116579722368), 7: np.float64(0.12096827352777392), 2: np.float64(0.012611843051948513), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.026580116579722368), np.float64(0.12096827352777392), np.float64(0.012611843051948513), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  1 

learned probs for this beta: {1: np.float64(0.3092047730104808), 7: np.float64(0.10105294706012546), 2: np.float64(0.2487422799293938), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.04320477301048081), 7: np.float64(0.12894705293987455), 2: np.float64(0.021257720070606223), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.04320477301048081), np.float64(0.12894705293987455), np.float64(0.021257720070606223), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.3237138465229513), 7: np.float64(0.09575168836297077), 2: np.float64(0.23953446511407778), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.057713846522951306), 7: np.float64(0.13424831163702924), 2: np.float64(0.03046553488592224), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.057713846522951306), np.float64(0.13424831163702924), np.float64(0.03046553488592224), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  1.5 

learned probs for this beta: {1: np.float64(0.33619141534858715), 7: np.float64(0.09216314475500006), 2: np.float64(0.23064543989641262), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.07019141534858714), 7: np.float64(0.13783685524499995), 2: np.float64(0.0393545601035874), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.07019141534858714), np.float64(0.13783685524499995), np.float64(0.0393545601035874), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  1.75 

learned probs for this beta: {1: np.float64(0.34678280281827817), 7: np.float64(0.08974124053053172), 2: np.float64(0.22247595665118997), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.08078280281827815), 7: np.float64(0.1402587594694683), 2: np.float64(0.04752404334881005), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.08078280281827815), np.float64(0.1402587594694683), np.float64(0.04752404334881005), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

beta is  2 

learned probs for this beta: {1: np.float64(0.3556496520043508), 7: np.float64(0.0881299076769034), 2: np.float64(0.21522044031874576), 64: np.float64(0.08524999999999999), 69: np.float64(0.08524999999999999), 79: np.float64(0.08524999999999999), 0: np.float64(0.08524999999999999)}
err dic= {1: np.float64(0.08964965200435077), 7: np.float64(0.1418700923230966), 2: np.float64(0.05477955968125425), 64: np.float64(0.017249999999999988), 69: np.float64(0.033249999999999995), 79: np.float64(0.015249999999999986), 0: np.float64(0.041249999999999995)} 

err list= [np.float64(0.08964965200435077), np.float64(0.1418700923230966), np.float64(0.05477955968125425), np.float64(0.017249999999999988), np.float64(0.033249999999999995), np.float64(0.015249999999999986), np.float64(0.041249999999999995)]
results for assortment [1, 7, 2, 64, 69, 79] :

err MNL dic= {1: 0.266, 7: 0.23, 2: 0.27, 64: 0.068, 69: 0.052, 79: 0.07, 0: np.float64(0.5398695098013008)} 

err MNL list= [0.266, 0.23, 0.27, 0.068, 0.052, 0.07, np.float64(0.5398695098013008)]
sampled assortment [7, 9, 8, 60, 42, 91] number: 4
#  Learning probs for MM model, A = [7, 9, 8, 60, 42, 91]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 2, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 14: 2, 23: 5, 100: 1} [3, 1, 8, 11, 100, 2, 4, 5, 14, 23]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 7: 0, 8: 0, 12: 0} [5, 6, 7, 8, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 2, 4: 0, 5: 1, 6: 1, 7: 3, 8: 1, 9: 1, 10: 2, 12: 4, 13: 2, 19: 1, 100: 1} [4, 5, 6, 8, 9, 19, 100, 3, 10, 13, 7, 12]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 5: 1, 6: 1, 9: 1, 10: 1, 13: 1, 15: 2, 100: 1} [1, 5, 6, 9, 10, 13, 100, 15]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 6, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 17: 5, 20: 5, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 17, 20, 5]
#  Learning probs for MM model, A = [7, 9, 8, 60, 42, 91]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 1, 3: 0, 4: 2, 7: 2, 8: 1, 11: 1, 14: 2, 23: 4, 100: 1} [3, 2, 8, 11, 100, 1, 4, 7, 14, 23]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 8: 0, 10: 0, 11: 0, 12: 0} [5, 8, 10, 11, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {4: 0, 5: 1, 6: 1, 7: 2, 9: 1, 13: 2, 15: 3, 16: 4, 100: 1} [4, 5, 6, 9, 100, 7, 13, 15, 16]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 14: 1, 100: 1} [1, 2, 5, 6, 9, 10, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 14: 6, 16: 7, 17: 5, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 17, 14, 16]
empirical probabilities from test set: {7: 0.227, 9: 0.234, 8: 0.272, 60: 0.067, 42: 0.091, 91: 0.061, 0: 0.048}
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  0.025 

learned probs for this beta: {7: np.float64(0.16747755135319328), 9: np.float64(0.23593698860391146), 8: np.float64(0.5961459178133887), 60: np.float64(0.0001098855573766121), 42: np.float64(0.0001098855573766121), 91: np.float64(0.0001098855573766121), 0: np.float64(0.0001098855573766121)}
err dic= {7: np.float64(0.059522448646806725), 9: np.float64(0.0019369886039114492), 8: np.float64(0.32414591781338864), 60: np.float64(0.0668901144426234), 42: np.float64(0.09089011444262339), 91: np.float64(0.060890114442623385), 0: np.float64(0.04789011444262339)} 

err list= [np.float64(0.059522448646806725), np.float64(0.0019369886039114492), np.float64(0.32414591781338864), np.float64(0.0668901144426234), np.float64(0.09089011444262339), np.float64(0.060890114442623385), np.float64(0.04789011444262339)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  0.05 

learned probs for this beta: {7: np.float64(0.16384949103077173), 9: np.float64(0.23728515125548127), 8: np.float64(0.5988653538407319), 60: np.float64(9.682537463952677e-10), 42: np.float64(9.682537463952677e-10), 91: np.float64(9.682537463952677e-10), 0: np.float64(9.682537463952677e-10)}
err dic= {7: np.float64(0.06315050896922828), 9: np.float64(0.003285151255481261), 8: np.float64(0.3268653538407319), 60: np.float64(0.06699999903174626), 42: np.float64(0.09099999903174626), 91: np.float64(0.06099999903174625), 0: np.float64(0.04799999903174625)} 

err list= [np.float64(0.06315050896922828), np.float64(0.003285151255481261), np.float64(0.3268653538407319), np.float64(0.06699999903174626), np.float64(0.09099999903174626), np.float64(0.06099999903174625), np.float64(0.04799999903174625)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  0.1 

learned probs for this beta: {7: np.float64(0.1567949202103108), 9: np.float64(0.23968749240797688), 8: np.float64(0.6035175873817124), 60: np.float64(8.626105178547327e-20), 42: np.float64(8.626105178547327e-20), 91: np.float64(8.626105178547327e-20), 0: np.float64(8.626105178547327e-20)}
err dic= {7: np.float64(0.0702050797896892), 9: np.float64(0.005687492407976863), 8: np.float64(0.33151758738171233), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.0702050797896892), np.float64(0.005687492407976863), np.float64(0.33151758738171233), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  0.25 

learned probs for this beta: {7: np.float64(0.13706705482145415), 9: np.float64(0.24677146531394487), 8: np.float64(0.6161614798646007), 60: np.float64(1.4375273805026764e-49), 42: np.float64(1.4375273805026764e-49), 91: np.float64(1.4375273805026764e-49), 0: np.float64(1.4375273805026764e-49)}
err dic= {7: np.float64(0.08993294517854586), 9: np.float64(0.012771465313944852), 8: np.float64(0.34416147986460066), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.08993294517854586), np.float64(0.012771465313944852), np.float64(0.34416147986460066), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  0.5 

learned probs for this beta: {7: np.float64(0.11216116904231727), 9: np.float64(0.25775846671468544), 8: np.float64(0.6300803642429973), 60: np.float64(1.043075317742088e-98), 42: np.float64(1.043075317742088e-98), 91: np.float64(1.043075317742088e-98), 0: np.float64(1.043075317742088e-98)}
err dic= {7: np.float64(0.11483883095768274), 9: np.float64(0.023758466714685428), 8: np.float64(0.3580803642429973), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.11483883095768274), np.float64(0.023758466714685428), np.float64(0.3580803642429973), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  0.75 

learned probs for this beta: {7: np.float64(0.09784203502201783), 9: np.float64(0.26717125448146894), 8: np.float64(0.6349867104965132), 60: np.float64(1.1896853740399273e-147), 42: np.float64(1.1896853740399273e-147), 91: np.float64(1.1896853740399273e-147), 0: np.float64(1.1896853740399273e-147)}
err dic= {7: np.float64(0.12915796497798218), 9: np.float64(0.03317125448146893), 8: np.float64(0.3629867104965132), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.12915796497798218), np.float64(0.03317125448146893), np.float64(0.3629867104965132), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  1 

learned probs for this beta: {7: np.float64(0.09087496147985592), 9: np.float64(0.27471057131004106), 8: np.float64(0.6344144672101031), 60: np.float64(1.6267084989066706e-196), 42: np.float64(1.6267084989066706e-196), 91: np.float64(1.6267084989066706e-196), 0: np.float64(1.6267084989066706e-196)}
err dic= {7: np.float64(0.13612503852014407), 9: np.float64(0.04071057131004105), 8: np.float64(0.36241446721010306), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.13612503852014407), np.float64(0.04071057131004105), np.float64(0.36241446721010306), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  1.25 

learned probs for this beta: {7: np.float64(0.08797946882532232), 9: np.float64(0.28041122046651623), 8: np.float64(0.6316093107081613), 60: np.float64(2.46073783323187e-245), 42: np.float64(2.46073783323187e-245), 91: np.float64(2.46073783323187e-245), 0: np.float64(2.46073783323187e-245)}
err dic= {7: np.float64(0.1390205311746777), 9: np.float64(0.04641122046651622), 8: np.float64(0.35960931070816127), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.1390205311746777), np.float64(0.04641122046651622), np.float64(0.35960931070816127), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  1.5 

learned probs for this beta: {7: np.float64(0.0871836448145264), 9: np.float64(0.2845213307782125), 8: np.float64(0.6282950244072613), 60: np.float64(3.9486054170478e-294), 42: np.float64(3.9486054170478e-294), 91: np.float64(3.9486054170478e-294), 0: np.float64(3.9486054170478e-294)}
err dic= {7: np.float64(0.1398163551854736), 9: np.float64(0.0505213307782125), 8: np.float64(0.35629502440726124), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.1398163551854736), np.float64(0.0505213307782125), np.float64(0.35629502440726124), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  1.75 

learned probs for this beta: {7: np.float64(0.08745854923330329), 9: np.float64(0.2873734451196042), 8: np.float64(0.6251680056470924), 60: np.float64(0.0), 42: np.float64(0.0), 91: np.float64(0.0), 0: np.float64(0.0)}
err dic= {7: np.float64(0.13954145076669672), 9: np.float64(0.05337344511960421), 8: np.float64(0.3531680056470924), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.13954145076669672), np.float64(0.05337344511960421), np.float64(0.3531680056470924), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

beta is  2 

learned probs for this beta: {7: np.float64(0.08825773088582003), 9: np.float64(0.2892937066486256), 8: np.float64(0.6224485624655542), 60: np.float64(0.0), 42: np.float64(0.0), 91: np.float64(0.0), 0: np.float64(0.0)}
err dic= {7: np.float64(0.13874226911417997), 9: np.float64(0.05529370664862557), 8: np.float64(0.3504485624655542), 60: np.float64(0.067), 42: np.float64(0.091), 91: np.float64(0.061), 0: np.float64(0.048)} 

err list= [np.float64(0.13874226911417997), np.float64(0.05529370664862557), np.float64(0.3504485624655542), np.float64(0.067), np.float64(0.091), np.float64(0.061), np.float64(0.048)]
results for assortment [7, 9, 8, 60, 42, 91] :

err MNL dic= {7: 0.227, 9: 0.234, 8: 0.272, 60: 0.067, 42: 0.091, 91: 0.061, 0: np.float64(0.5358847418740387)} 

err MNL list= [0.227, 0.234, 0.272, 0.067, 0.091, 0.061, np.float64(0.5358847418740387)]
sampled assortment [9, 6, 7, 57, 92, 76] number: 5
#  Learning probs for MM model, A = [9, 6, 7, 57, 92, 76]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 12: 2, 14: 2, 100: 1} [3, 8, 11, 100, 1, 2, 4, 5, 12, 14]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {6: 0, 8: 0, 10: 0, 11: 0, 12: 0, 100: 0} [6, 8, 10, 11, 12, 100]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 2, 4: 0, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 13: 2, 19: 1, 100: 2} [4, 5, 6, 7, 8, 9, 19, 3, 13, 100]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 15: 1, 100: 1} [1, 2, 5, 6, 9, 10, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 17: 4, 100: 1} [2, 6, 7, 8, 10, 100, 1, 11, 17]
#  Learning probs for MM model, A = [9, 6, 7, 57, 92, 76]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 1, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 14: 2, 15: 3, 100: 1} [3, 1, 2, 8, 11, 100, 4, 5, 14, 15]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 10: 0, 11: 0, 12: 0, 100: 0} [5, 10, 11, 12, 100]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 1, 4: 0, 5: 1, 6: 1, 7: 4, 8: 1, 9: 1, 10: 2, 12: 4, 15: 3, 100: 2} [4, 3, 5, 6, 8, 9, 10, 100, 15, 7, 12]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 4: 2, 5: 1, 6: 1, 9: 1, 10: 1, 13: 1, 100: 1} [1, 2, 5, 6, 9, 10, 13, 100, 4]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 13: 5, 17: 5, 100: 1} [2, 6, 7, 8, 10, 100, 1, 11, 13, 17]
empirical probabilities from test set: {9: 0.258, 6: 0.279, 7: 0.226, 57: 0.069, 92: 0.06, 76: 0.063, 0: 0.045}
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  0.025 

learned probs for this beta: {9: np.float64(0.21368419873592515), 6: np.float64(0.2663481547767153), 7: np.float64(0.17076528222899434), 57: np.float64(0.08730059106459129), 92: np.float64(0.08730059106459129), 76: np.float64(0.08730059106459129), 0: np.float64(0.08730059106459129)}
err dic= {9: np.float64(0.04431580126407486), 6: np.float64(0.012651845223284719), 7: np.float64(0.055234717771005665), 57: np.float64(0.01830059106459128), 92: np.float64(0.02730059106459129), 76: np.float64(0.024300591064591287), 0: np.float64(0.04230059106459129)} 

err list= [np.float64(0.04431580126407486), np.float64(0.012651845223284719), np.float64(0.055234717771005665), np.float64(0.01830059106459128), np.float64(0.02730059106459129), np.float64(0.024300591064591287), np.float64(0.04230059106459129)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  0.05 

learned probs for this beta: {9: np.float64(0.21294713892135111), 6: np.float64(0.27027803406608636), 7: np.float64(0.16763196916370868), 57: np.float64(0.08728571446221348), 92: np.float64(0.08728571446221348), 76: np.float64(0.08728571446221348), 0: np.float64(0.08728571446221348)}
err dic= {9: np.float64(0.04505286107864889), 6: np.float64(0.008721965933913667), 7: np.float64(0.05836803083629133), 57: np.float64(0.01828571446221347), 92: np.float64(0.02728571446221348), 76: np.float64(0.024285714462213476), 0: np.float64(0.04228571446221348)} 

err list= [np.float64(0.04505286107864889), np.float64(0.008721965933913667), np.float64(0.05836803083629133), np.float64(0.01828571446221347), np.float64(0.02728571446221348), np.float64(0.024285714462213476), np.float64(0.04228571446221348)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  0.1 

learned probs for this beta: {9: np.float64(0.21117430607977145), 6: np.float64(0.27806844955756077), 7: np.float64(0.16161438721981075), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.04682569392022856), 6: np.float64(0.0009315504424392551), 7: np.float64(0.06438561278018926), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.04682569392022856), np.float64(0.0009315504424392551), np.float64(0.06438561278018926), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  0.25 

learned probs for this beta: {9: np.float64(0.20387852595073197), 6: np.float64(0.30082474327622893), 7: np.float64(0.1461538736301818), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.05412147404926804), 6: np.float64(0.02182474327622891), 7: np.float64(0.0798461263698182), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.05412147404926804), np.float64(0.02182474327622891), np.float64(0.0798461263698182), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  0.5 

learned probs for this beta: {9: np.float64(0.18723226027673778), 6: np.float64(0.3344010631480886), 7: np.float64(0.1292238194323166), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.07076773972326222), 6: np.float64(0.05540106314808857), 7: np.float64(0.09677618056768342), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.07076773972326222), np.float64(0.05540106314808857), np.float64(0.09677618056768342), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  0.75 

learned probs for this beta: {9: np.float64(0.16922860136892193), 6: np.float64(0.36188716518755226), 7: np.float64(0.11974137630066865), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.08877139863107808), 6: np.float64(0.08288716518755224), 7: np.float64(0.10625862369933135), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.08877139863107808), np.float64(0.08288716518755224), np.float64(0.10625862369933135), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  1 

learned probs for this beta: {9: np.float64(0.1528428937264504), 6: np.float64(0.3844398748021671), 7: np.float64(0.11357437432852534), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.1051571062735496), 6: np.float64(0.1054398748021671), 7: np.float64(0.11242562567147467), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.1051571062735496), np.float64(0.1054398748021671), np.float64(0.11242562567147467), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  1.25 

learned probs for this beta: {9: np.float64(0.13902634948298753), 6: np.float64(0.40301215584189), 7: np.float64(0.10881863753226516), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.11897365051701247), 6: np.float64(0.12401215584188996), 7: np.float64(0.11718136246773485), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.11897365051701247), np.float64(0.12401215584188996), np.float64(0.11718136246773485), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  1.5 

learned probs for this beta: {9: np.float64(0.12780076324649123), 6: np.float64(0.41818898072773114), 7: np.float64(0.10486739888292046), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.13019923675350878), 6: np.float64(0.13918898072773112), 7: np.float64(0.12113260111707955), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.13019923675350878), np.float64(0.13918898072773112), np.float64(0.12113260111707955), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  1.75 

learned probs for this beta: {9: np.float64(0.11886609664852424), 6: np.float64(0.4304503692014341), 7: np.float64(0.1015406770071844), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.13913390335147577), 6: np.float64(0.15145036920143407), 7: np.float64(0.1244593229928156), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.13913390335147577), np.float64(0.15145036920143407), np.float64(0.1244593229928156), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

beta is  2 

learned probs for this beta: {9: np.float64(0.11184083156683002), 6: np.float64(0.4402560638513283), 7: np.float64(0.09876024743898447), 57: np.float64(0.08728571428571429), 92: np.float64(0.08728571428571429), 76: np.float64(0.08728571428571429), 0: np.float64(0.08728571428571429)}
err dic= {9: np.float64(0.14615916843317), 6: np.float64(0.1612560638513283), 7: np.float64(0.12723975256101555), 57: np.float64(0.01828571428571428), 92: np.float64(0.027285714285714288), 76: np.float64(0.024285714285714285), 0: np.float64(0.04228571428571429)} 

err list= [np.float64(0.14615916843317), np.float64(0.1612560638513283), np.float64(0.12723975256101555), np.float64(0.01828571428571428), np.float64(0.027285714285714288), np.float64(0.024285714285714285), np.float64(0.04228571428571429)]
results for assortment [9, 6, 7, 57, 92, 76] :

err MNL dic= {9: 0.258, 6: 0.279, 7: 0.226, 57: 0.069, 92: 0.06, 76: 0.063, 0: np.float64(0.5416747165210652)} 

err MNL list= [0.258, 0.279, 0.226, 0.069, 0.06, 0.063, np.float64(0.5416747165210652)]
sampled assortment [9, 5, 4, 100, 62, 70] number: 6
#  Learning probs for MM model, A = [9, 5, 4, 100, 62, 70]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 1, 3: 0, 4: 2, 5: 2, 7: 2, 8: 1, 11: 1, 12: 2, 14: 2, 100: 1} [3, 2, 8, 11, 100, 1, 4, 5, 7, 12, 14]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 8: 0, 12: 0} [5, 8, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 3, 3: 1, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 12: 3, 13: 1, 15: 4, 16: 4, 19: 1, 24: 4, 100: 1} [4, 3, 5, 6, 8, 9, 13, 19, 100, 7, 2, 12, 15, 16, 24]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 14: 1, 100: 1} [1, 2, 5, 6, 9, 10, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 17: 5, 20: 5, 23: 7, 100: 1} [2, 6, 7, 8, 10, 100, 1, 11, 5, 17, 20, 23]
#  Learning probs for MM model, A = [9, 5, 4, 100, 62, 70]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 5: 2, 7: 2, 8: 1, 11: 2, 12: 2, 14: 2, 15: 4, 20: 3, 100: 1} [3, 8, 100, 1, 2, 4, 5, 7, 11, 12, 14, 20, 15]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 7: 0, 10: 0, 11: 0, 12: 0} [5, 6, 7, 10, 11, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 1, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 12: 4, 13: 2, 100: 1} [4, 3, 5, 6, 8, 9, 100, 7, 13, 12]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 17: 3, 25: 1, 100: 1} [1, 2, 5, 6, 9, 10, 25, 100, 17]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 17: 5, 20: 5, 100: 1} [2, 6, 7, 8, 10, 100, 1, 11, 17, 20]
empirical probabilities from test set: {9: 0.206, 5: 0.19, 4: 0.23, 100: 0.233, 62: 0.056, 70: 0.052, 0: 0.033}
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  0.025 

learned probs for this beta: {9: np.float64(0.08724169315600884), 5: np.float64(0.6139859736518086), 4: np.float64(0.0739196768766803), 100: np.float64(0.2245386567039142), 62: np.float64(0.00010466653719600737), 70: np.float64(0.00010466653719600737), 0: np.float64(0.00010466653719600737)}
err dic= {9: np.float64(0.11875830684399115), 5: np.float64(0.4239859736518086), 4: np.float64(0.1560803231233197), 100: np.float64(0.008461343296085805), 62: np.float64(0.055895333462803995), 70: np.float64(0.05189533346280399), 0: np.float64(0.032895333462803995)} 

err list= [np.float64(0.11875830684399115), np.float64(0.4239859736518086), np.float64(0.1560803231233197), np.float64(0.008461343296085805), np.float64(0.055895333462803995), np.float64(0.05189533346280399), np.float64(0.032895333462803995)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  0.05 

learned probs for this beta: {9: np.float64(0.08623632236506999), 5: np.float64(0.6164661105390047), 4: np.float64(0.07540657371773694), 100: np.float64(0.22189099037349275), 62: np.float64(1.0015652411650477e-09), 70: np.float64(1.0015652411650477e-09), 0: np.float64(1.0015652411650477e-09)}
err dic= {9: np.float64(0.11976367763493), 5: np.float64(0.4264661105390047), 4: np.float64(0.15459342628226308), 100: np.float64(0.011109009626507266), 62: np.float64(0.05599999899843476), 70: np.float64(0.05199999899843476), 0: np.float64(0.03299999899843476)} 

err list= [np.float64(0.11976367763493), np.float64(0.4264661105390047), np.float64(0.15459342628226308), np.float64(0.011109009626507266), np.float64(0.05599999899843476), np.float64(0.05199999899843476), np.float64(0.03299999899843476)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  0.1 

learned probs for this beta: {9: np.float64(0.08403554422711407), 5: np.float64(0.620514480325647), 4: np.float64(0.07855096990140736), 100: np.float64(0.2168990055458317), 62: np.float64(1.1112984278433735e-19), 70: np.float64(1.1112984278433735e-19), 0: np.float64(1.1112984278433735e-19)}
err dic= {9: np.float64(0.12196445577288592), 5: np.float64(0.43051448032564704), 4: np.float64(0.15144903009859265), 100: np.float64(0.01610099445416832), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.12196445577288592), np.float64(0.43051448032564704), np.float64(0.15144903009859265), np.float64(0.01610099445416832), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  0.25 

learned probs for this beta: {9: np.float64(0.07514120186228335), 5: np.float64(0.6311399407938015), 4: np.float64(0.08746832538458935), 100: np.float64(0.20625053195932544), 62: np.float64(4.41141148916477e-49), 70: np.float64(4.41141148916477e-49), 0: np.float64(4.41141148916477e-49)}
err dic= {9: np.float64(0.13085879813771664), 5: np.float64(0.44113994079380153), 4: np.float64(0.14253167461541066), 100: np.float64(0.026749468040674573), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.13085879813771664), np.float64(0.44113994079380153), np.float64(0.14253167461541066), np.float64(0.026749468040674573), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  0.5 

learned probs for this beta: {9: np.float64(0.057199660136599155), 5: np.float64(0.6424710371448727), 4: np.float64(0.09831055533089776), 100: np.float64(0.2020187473876305), 62: np.float64(1.1223708703326073e-97), 70: np.float64(1.1223708703326073e-97), 0: np.float64(1.1223708703326073e-97)}
err dic= {9: np.float64(0.14880033986340083), 5: np.float64(0.45247103714487275), 4: np.float64(0.13168944466910226), 100: np.float64(0.030981252612369503), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.14880033986340083), np.float64(0.45247103714487275), np.float64(0.13168944466910226), np.float64(0.030981252612369503), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  0.75 

learned probs for this beta: {9: np.float64(0.040903962386863016), 5: np.float64(0.6478168920132208), 4: np.float64(0.10389123017550857), 100: np.float64(0.20738791542440752), 62: np.float64(4.219452132915039e-146), 70: np.float64(4.219452132915039e-146), 0: np.float64(4.219452132915039e-146)}
err dic= {9: np.float64(0.16509603761313696), 5: np.float64(0.4578168920132208), 4: np.float64(0.12610876982449143), 100: np.float64(0.025612084575592498), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.16509603761313696), np.float64(0.4578168920132208), np.float64(0.12610876982449143), np.float64(0.025612084575592498), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  1 

learned probs for this beta: {9: np.float64(0.02829181944522481), 5: np.float64(0.6506259759867825), 4: np.float64(0.10674344624740685), 100: np.float64(0.21433875832058596), 62: np.float64(1.9128684520631276e-194), 70: np.float64(1.9128684520631276e-194), 0: np.float64(1.9128684520631276e-194)}
err dic= {9: np.float64(0.17770818055477516), 5: np.float64(0.4606259759867825), 4: np.float64(0.12325655375259316), 100: np.float64(0.018661241679414048), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.17770818055477516), np.float64(0.4606259759867825), np.float64(0.12325655375259316), np.float64(0.018661241679414048), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  1.25 

learned probs for this beta: {9: np.float64(0.019117903030770836), 5: np.float64(0.6526014859705085), 4: np.float64(0.1087336643769572), 100: np.float64(0.21954694662176327), 62: np.float64(9.258999306694995e-243), 70: np.float64(9.258999306694995e-243), 0: np.float64(9.258999306694995e-243)}
err dic= {9: np.float64(0.18688209696922914), 5: np.float64(0.4626014859705085), 4: np.float64(0.12126633562304281), 100: np.float64(0.01345305337823674), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.18688209696922914), np.float64(0.4626014859705085), np.float64(0.12126633562304281), np.float64(0.01345305337823674), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  1.5 

learned probs for this beta: {9: np.float64(0.012665822608878614), 5: np.float64(0.6541691224313411), 4: np.float64(0.11044347850028441), 100: np.float64(0.22272157645949592), 62: np.float64(4.555499979101527e-291), 70: np.float64(4.555499979101527e-291), 0: np.float64(4.555499979101527e-291)}
err dic= {9: np.float64(0.19333417739112138), 5: np.float64(0.46416912243134106), 4: np.float64(0.1195565214997156), 100: np.float64(0.010278423540504095), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.19333417739112138), np.float64(0.46416912243134106), np.float64(0.1195565214997156), np.float64(0.010278423540504095), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  1.75 

learned probs for this beta: {9: np.float64(0.00824798524964806), 5: np.float64(0.6553806771462237), 4: np.float64(0.11190602465417657), 100: np.float64(0.22446531294995137), 62: np.float64(0.0), 70: np.float64(0.0), 0: np.float64(0.0)}
err dic= {9: np.float64(0.19775201475035192), 5: np.float64(0.4653806771462237), 4: np.float64(0.11809397534582344), 100: np.float64(0.008534687050048645), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.19775201475035192), np.float64(0.4653806771462237), np.float64(0.11809397534582344), np.float64(0.008534687050048645), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

beta is  2 

learned probs for this beta: {9: np.float64(0.005293387997203898), 5: np.float64(0.656264088836231), 4: np.float64(0.11307347222543529), 100: np.float64(0.2253690509411297), 62: np.float64(0.0), 70: np.float64(0.0), 0: np.float64(0.0)}
err dic= {9: np.float64(0.2007066120027961), 5: np.float64(0.466264088836231), 4: np.float64(0.11692652777456472), 100: np.float64(0.007630949058870323), 62: np.float64(0.056), 70: np.float64(0.052), 0: np.float64(0.033)} 

err list= [np.float64(0.2007066120027961), np.float64(0.466264088836231), np.float64(0.11692652777456472), np.float64(0.007630949058870323), np.float64(0.056), np.float64(0.052), np.float64(0.033)]
results for assortment [9, 5, 4, 100, 62, 70] :

err MNL dic= {9: 0.206, 5: 0.19, 4: 0.23, 100: 0.233, 62: 0.056, 70: 0.052, 0: np.float64(0.5448555560656058)} 

err MNL list= [0.206, 0.19, 0.23, 0.233, 0.056, 0.052, np.float64(0.5448555560656058)]
sampled assortment [1, 7, 4, 22, 87, 21] number: 7
#  Learning probs for MM model, A = [1, 7, 4, 22, 87, 21]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 1, 5: 2, 7: 2, 8: 1, 11: 2, 12: 2, 14: 2, 20: 3, 100: 1} [3, 4, 8, 100, 1, 2, 5, 7, 11, 12, 14, 20]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 12: 0} [5, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {4: 0, 5: 1, 6: 1, 7: 3, 9: 1, 10: 2, 13: 2, 15: 2, 17: 4, 19: 1, 100: 1} [4, 5, 6, 9, 19, 100, 10, 13, 15, 7, 17]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 5: 1, 9: 1, 10: 1, 13: 1, 14: 1, 15: 1, 100: 1} [1, 5, 9, 10, 13, 14, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 5]
#  Learning probs for MM model, A = [1, 7, 4, 22, 87, 21]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 14: 2, 15: 2, 16: 5, 100: 1} [3, 8, 11, 100, 1, 2, 4, 5, 14, 15, 16]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 8: 0, 11: 0, 12: 0, 100: 0} [5, 8, 11, 12, 100]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 2, 3: 1, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 12: 4, 100: 1} [4, 3, 5, 6, 8, 9, 100, 2, 7, 12]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 14: 1, 100: 1} [1, 2, 5, 6, 9, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 3, 13: 5, 14: 6, 17: 5, 20: 5, 31: 7, 100: 1} [2, 6, 7, 8, 10, 100, 1, 11, 5, 13, 17, 20, 14, 31]
empirical probabilities from test set: {1: 0.215, 7: 0.2, 4: 0.213, 22: 0.146, 87: 0.034, 21: 0.154, 0: 0.038}
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.35819519754023327), 7: np.float64(0.1724323113099804), 4: np.float64(0.19433234156621118), 22: np.float64(0.06876003739589379), 87: np.float64(0.06876003739589379), 21: np.float64(0.06876003739589379), 0: np.float64(0.06876003739589379)}
err dic= {1: np.float64(0.14319519754023327), 7: np.float64(0.027567688690019604), 4: np.float64(0.018667658433788814), 22: np.float64(0.0772399626041062), 87: np.float64(0.034760037395893784), 21: np.float64(0.08523996260410621), 0: np.float64(0.030760037395893787)} 

err list= [np.float64(0.14319519754023327), np.float64(0.027567688690019604), np.float64(0.018667658433788814), np.float64(0.0772399626041062), np.float64(0.034760037395893784), np.float64(0.08523996260410621), np.float64(0.030760037395893787)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.35794293067195937), 7: np.float64(0.170167762978744), 4: np.float64(0.19703216156782477), 22: np.float64(0.068714286195368), 87: np.float64(0.068714286195368), 21: np.float64(0.068714286195368), 0: np.float64(0.068714286195368)}
err dic= {1: np.float64(0.14294293067195937), 7: np.float64(0.02983223702125601), 4: np.float64(0.015967838432175224), 22: np.float64(0.07728571380463199), 87: np.float64(0.034714286195368), 21: np.float64(0.085285713804632), 0: np.float64(0.030714286195368)} 

err list= [np.float64(0.14294293067195937), np.float64(0.02983223702125601), np.float64(0.015967838432175224), np.float64(0.07728571380463199), np.float64(0.034714286195368), np.float64(0.085285713804632), np.float64(0.030714286195368)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.3570744585314637), 7: np.float64(0.16587237605690772), 4: np.float64(0.20219602255448593), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.1420744585314637), 7: np.float64(0.034127623943092295), 4: np.float64(0.010803977445514062), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.1420744585314637), np.float64(0.034127623943092295), np.float64(0.010803977445514062), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.35488988304156033), 7: np.float64(0.1563491543762719), 4: np.float64(0.2139038197250248), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.13988988304156033), 7: np.float64(0.04365084562372812), 4: np.float64(0.0009038197250248181), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.13988988304156033), np.float64(0.04365084562372812), np.float64(0.0009038197250248181), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.3536382149519995), 7: np.float64(0.1533149223872462), 4: np.float64(0.21818971980361157), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.1386382149519995), 7: np.float64(0.04668507761275381), 4: np.float64(0.0051897198036115755), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.1386382149519995), np.float64(0.04668507761275381), np.float64(0.0051897198036115755), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.35556838254751905), 7: np.float64(0.15746227461298212), 4: np.float64(0.21211219998235598), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.14056838254751905), 7: np.float64(0.04253772538701789), 4: np.float64(0.0008878000176440193), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.14056838254751905), np.float64(0.04253772538701789), np.float64(0.0008878000176440193), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  1 

learned probs for this beta: {1: np.float64(0.3593724700473566), 7: np.float64(0.1612280005026737), 4: np.float64(0.20454238659282692), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.14437247004735662), 7: np.float64(0.03877199949732632), 4: np.float64(0.008457613407173076), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.14437247004735662), np.float64(0.03877199949732632), np.float64(0.008457613407173076), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.363537356332116), 7: np.float64(0.16331189826421832), 4: np.float64(0.19829360254652276), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.14853735633211598), 7: np.float64(0.036688101735781686), 4: np.float64(0.014706397453477238), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.14853735633211598), np.float64(0.036688101735781686), np.float64(0.014706397453477238), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  1.5 

learned probs for this beta: {1: np.float64(0.36716295561832063), 7: np.float64(0.1642781752535044), 4: np.float64(0.19370172627103197), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.15216295561832063), 7: np.float64(0.0357218247464956), 4: np.float64(0.01929827372896803), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.15216295561832063), np.float64(0.0357218247464956), np.float64(0.01929827372896803), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  1.75 

learned probs for this beta: {1: np.float64(0.369950945738374), 7: np.float64(0.16468978179100113), 4: np.float64(0.19050212961348179), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.154950945738374), 7: np.float64(0.03531021820899888), 4: np.float64(0.02249787038651821), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.154950945738374), np.float64(0.03531021820899888), np.float64(0.02249787038651821), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

beta is  2 

learned probs for this beta: {1: np.float64(0.3719398343100243), 7: np.float64(0.16485702731188706), 4: np.float64(0.18834599552094566), 22: np.float64(0.06871428571428571), 87: np.float64(0.06871428571428571), 21: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {1: np.float64(0.1569398343100243), 7: np.float64(0.03514297268811295), 4: np.float64(0.02465400447905433), 22: np.float64(0.07728571428571428), 87: np.float64(0.03471428571428571), 21: np.float64(0.08528571428571428), 0: np.float64(0.030714285714285715)} 

err list= [np.float64(0.1569398343100243), np.float64(0.03514297268811295), np.float64(0.02465400447905433), np.float64(0.07728571428571428), np.float64(0.03471428571428571), np.float64(0.08528571428571428), np.float64(0.030714285714285715)]
results for assortment [1, 7, 4, 22, 87, 21] :

err MNL dic= {1: 0.215, 7: 0.2, 4: 0.213, 22: 0.146, 87: 0.034, 21: 0.154, 0: np.float64(0.5379271959504678)} 

err MNL list= [0.215, 0.2, 0.213, 0.146, 0.034, 0.154, np.float64(0.5379271959504678)]
sampled assortment [5, 3, 6, 20, 100, 74] number: 8
#  Learning probs for MM model, A = [5, 3, 6, 20, 100, 74]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 5: 2, 7: 3, 8: 1, 11: 1, 12: 4, 14: 2, 100: 1} [3, 8, 11, 100, 1, 2, 4, 5, 14, 7, 12]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 7: 0, 8: 0, 10: 0, 12: 0} [5, 7, 8, 10, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 1, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 13: 1, 14: 3, 19: 1, 100: 1} [4, 3, 5, 6, 8, 9, 13, 19, 100, 7, 14]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 6: 1, 9: 1, 10: 1, 14: 1, 15: 1, 100: 1} [1, 6, 9, 10, 14, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 14: 4, 17: 5, 20: 6, 100: 2} [2, 6, 7, 8, 10, 11, 100, 14, 17, 20]
#  Learning probs for MM model, A = [5, 3, 6, 20, 100, 74]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 2, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 14: 2, 15: 2, 20: 3, 100: 1} [3, 1, 8, 11, 100, 2, 4, 5, 14, 15, 20]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 8: 0} [5, 6, 8]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {3: 1, 4: 0, 5: 1, 6: 1, 7: 4, 8: 1, 9: 1, 10: 1, 12: 4, 19: 2, 25: 5} [4, 3, 5, 6, 8, 9, 10, 19, 7, 12, 25]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 6: 1, 9: 1, 10: 1, 11: 1, 14: 1, 15: 1, 100: 1} [1, 6, 9, 10, 11, 14, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 3, 2: 0, 5: 6, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 17: 5, 32: 10, 100: 1} [2, 6, 7, 8, 10, 100, 11, 1, 17, 5, 32]
empirical probabilities from test set: {5: 0.169, 3: 0.193, 6: 0.211, 20: 0.154, 100: 0.215, 74: 0.04, 0: 0.018}
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.34278705736005194), 3: np.float64(0.07579624774743882), 6: np.float64(0.4030944913253007), 20: np.float64(0.02924905114657769), 100: np.float64(0.1490314680204257), 74: np.float64(2.084220010250534e-05), 0: np.float64(2.084220010250534e-05)}
err dic= {5: np.float64(0.17378705736005193), 3: np.float64(0.11720375225256119), 6: np.float64(0.19209449132530068), 20: np.float64(0.1247509488534223), 100: np.float64(0.06596853197957431), 74: np.float64(0.0399791577998975), 0: np.float64(0.017979157799897495)} 

err list= [np.float64(0.17378705736005193), np.float64(0.11720375225256119), np.float64(0.19209449132530068), np.float64(0.1247509488534223), np.float64(0.06596853197957431), np.float64(0.0399791577998975), np.float64(0.017979157799897495)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.34187946216836274), 3: np.float64(0.08065739594684646), 6: np.float64(0.40660778784264473), 20: np.float64(0.02611974689181114), 100: np.float64(0.1447356066929551), 74: np.float64(2.2869001713440984e-10), 0: np.float64(2.2869001713440984e-10)}
err dic= {5: np.float64(0.17287946216836272), 3: np.float64(0.11234260405315355), 6: np.float64(0.19560778784264474), 20: np.float64(0.12788025310818885), 100: np.float64(0.0702643933070449), 74: np.float64(0.03999999977130998), 0: np.float64(0.01799999977130998)} 

err list= [np.float64(0.17287946216836272), np.float64(0.11234260405315355), np.float64(0.19560778784264474), np.float64(0.12788025310818885), np.float64(0.0702643933070449), np.float64(0.03999999977130998), np.float64(0.01799999977130998)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.3399855160006364), 3: np.float64(0.09070422087504806), 6: np.float64(0.4134895878674888), 20: np.float64(0.020427340882316486), 100: np.float64(0.13539333437451037), 74: np.float64(3.1962415311571876e-20), 0: np.float64(3.1962415311571876e-20)}
err dic= {5: np.float64(0.1709855160006364), 3: np.float64(0.10229577912495194), 6: np.float64(0.2024895878674888), 20: np.float64(0.1335726591176835), 100: np.float64(0.07960666562548963), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.1709855160006364), np.float64(0.10229577912495194), np.float64(0.2024895878674888), np.float64(0.1335726591176835), np.float64(0.07960666562548963), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.33625826629178446), 3: np.float64(0.12076171933217604), 6: np.float64(0.4308358177959458), 20: np.float64(0.008362906624659877), 100: np.float64(0.10378128995543327), 74: np.float64(1.2806365020586775e-49), 0: np.float64(1.2806365020586775e-49)}
err dic= {5: np.float64(0.16725826629178445), 3: np.float64(0.07223828066782396), 6: np.float64(0.21983581779594583), 20: np.float64(0.14563709337534012), 100: np.float64(0.11121871004456672), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.16725826629178445), np.float64(0.07223828066782396), np.float64(0.21983581779594583), np.float64(0.14563709337534012), np.float64(0.11121871004456672), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.34306743388068334), 3: np.float64(0.160369854720421), 6: np.float64(0.44015578361758206), 20: np.float64(0.001267544680183854), 100: np.float64(0.05513938310112992), 74: np.float64(1.5888039109418235e-98), 0: np.float64(1.5888039109418235e-98)}
err dic= {5: np.float64(0.17406743388068333), 3: np.float64(0.032630145279579), 6: np.float64(0.22915578361758207), 20: np.float64(0.15273245531981613), 100: np.float64(0.15986061689887007), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.17406743388068333), np.float64(0.032630145279579), np.float64(0.22915578361758207), np.float64(0.15273245531981613), np.float64(0.15986061689887007), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.36077617987648297), 3: np.float64(0.1854582389915126), 6: np.float64(0.42841917114877504), 20: np.float64(0.00014532190535588552), 100: np.float64(0.025201088077873586), 74: np.float64(2.0134258251421292e-147), 0: np.float64(2.0134258251421292e-147)}
err dic= {5: np.float64(0.19177617987648296), 3: np.float64(0.007541761008487413), 6: np.float64(0.21741917114877504), 20: np.float64(0.15385467809464412), 100: np.float64(0.18979891192212642), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.19177617987648296), np.float64(0.007541761008487413), np.float64(0.21741917114877504), np.float64(0.15385467809464412), np.float64(0.18979891192212642), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  1 

learned probs for this beta: {5: np.float64(0.3803378348805535), 3: np.float64(0.20144459666890158), 6: np.float64(0.40753500769863366), 20: np.float64(1.4591432414717951e-05), 100: np.float64(0.010667969319496613), 74: np.float64(2.5744328611943646e-196), 0: np.float64(2.5744328611943646e-196)}
err dic= {5: np.float64(0.2113378348805535), 3: np.float64(0.008444596668901572), 6: np.float64(0.19653500769863366), 20: np.float64(0.15398540856758527), 100: np.float64(0.20433203068050337), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.2113378348805535), np.float64(0.008444596668901572), np.float64(0.19653500769863366), np.float64(0.15398540856758527), np.float64(0.20433203068050337), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.3981830123988843), 3: np.float64(0.21225225901368866), 6: np.float64(0.3852277396793317), 20: np.float64(1.3665438858798947e-06), 100: np.float64(0.004335622364209164), 74: np.float64(3.3326621266654367e-245), 0: np.float64(3.3326621266654367e-245)}
err dic= {5: np.float64(0.2291830123988843), 3: np.float64(0.019252259013688655), 6: np.float64(0.17422773967933172), 20: np.float64(0.15399863345611411), 100: np.float64(0.21066437763579082), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.2291830123988843), np.float64(0.019252259013688655), np.float64(0.17422773967933172), np.float64(0.15399863345611411), np.float64(0.21066437763579082), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  1.5 

learned probs for this beta: {5: np.float64(0.4135560617741251), 3: np.float64(0.2199900272230411), 6: np.float64(0.36473491997342344), 20: np.float64(1.228314164458513e-07), 100: np.float64(0.0017188681979937305), 74: np.float64(4.3674135927743354e-294), 0: np.float64(4.3674135927743354e-294)}
err dic= {5: np.float64(0.24455606177412512), 3: np.float64(0.026990027223041085), 6: np.float64(0.15373491997342345), 20: np.float64(0.15399987716858354), 100: np.float64(0.21328113180200628), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.24455606177412512), np.float64(0.026990027223041085), np.float64(0.15373491997342345), np.float64(0.15399987716858354), np.float64(0.21328113180200628), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  1.75 

learned probs for this beta: {5: np.float64(0.42649826581567357), 3: np.float64(0.22576661607532364), 6: np.float64(0.34706519387409346), 20: np.float64(1.0755149651403672e-08), 100: np.float64(0.0006699134797595009), 74: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.2574982658156736), 3: np.float64(0.032766616075323635), 6: np.float64(0.13606519387409347), 20: np.float64(0.15399998924485034), 100: np.float64(0.2143300865202405), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.2574982658156736), np.float64(0.032766616075323635), np.float64(0.13606519387409347), np.float64(0.15399998924485034), np.float64(0.2143300865202405), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

beta is  2 

learned probs for this beta: {5: np.float64(0.43724248720514136), 3: np.float64(0.2301882958100417), 6: np.float64(0.33231140259883807), 20: np.float64(9.253272951990462e-10), 100: np.float64(0.00025781346065130667), 74: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.2682424872051413), 3: np.float64(0.03718829581004168), 6: np.float64(0.12131140259883808), 20: np.float64(0.1539999990746727), 100: np.float64(0.21474218653934868), 74: np.float64(0.04), 0: np.float64(0.018)} 

err list= [np.float64(0.2682424872051413), np.float64(0.03718829581004168), np.float64(0.12131140259883808), np.float64(0.1539999990746727), np.float64(0.21474218653934868), np.float64(0.04), np.float64(0.018)]
results for assortment [5, 3, 6, 20, 100, 74] :

err MNL dic= {5: 0.169, 3: 0.193, 6: 0.211, 20: 0.154, 100: 0.215, 74: 0.04, 0: np.float64(0.5531807721419262)} 

err MNL list= [0.169, 0.193, 0.211, 0.154, 0.215, 0.04, np.float64(0.5531807721419262)]
sampled assortment [6, 9, 7, 19, 73, 71] number: 9
#  Learning probs for MM model, A = [6, 9, 7, 19, 73, 71]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 2, 2: 2, 3: 0, 4: 2, 5: 2, 8: 1, 11: 1, 14: 2, 25: 6, 100: 1} [3, 8, 11, 100, 1, 2, 4, 5, 14, 25]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 6: 0, 8: 0, 12: 0, 16: 0} [5, 6, 8, 12, 16]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {4: 0, 5: 1, 6: 1, 7: 2, 9: 1, 10: 3, 16: 4, 26: 4} [4, 5, 6, 9, 7, 10, 16, 26]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 6: 1, 9: 1, 10: 1, 14: 1, 100: 1} [1, 2, 5, 6, 9, 10, 14, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {1: 2, 2: 0, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 17: 5, 20: 5, 100: 2} [2, 6, 7, 8, 10, 1, 11, 100, 17, 20]
#  Learning probs for MM model, A = [6, 9, 7, 19, 73, 71]
#cluster  4 with weight 0.13
Learned cluster center of cluster 4:  {1: 1, 2: 2, 3: 0, 4: 2, 5: 2, 7: 3, 8: 1, 11: 1, 14: 3, 25: 6, 100: 1} [3, 1, 8, 11, 100, 2, 4, 5, 7, 14, 25]
#cluster  2 with weight 0.481
Learned cluster center of cluster 2:  {5: 0, 11: 0, 12: 0} [5, 11, 12]
#cluster  5 with weight 0.11575
Learned cluster center of cluster 5:  {2: 3, 3: 2, 4: 0, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 2, 12: 3, 13: 3, 16: 4, 19: 2, 100: 1} [4, 5, 6, 8, 9, 100, 3, 7, 10, 19, 2, 12, 13, 16]
#cluster  1 with weight 0.177
Learned cluster center of cluster 1:  {1: 0, 2: 1, 5: 1, 9: 1, 14: 1, 15: 1, 100: 1} [1, 2, 5, 9, 14, 15, 100]
#cluster  3 with weight 0.09625
Learned cluster center of cluster 3:  {2: 0, 4: 6, 5: 5, 6: 1, 7: 1, 8: 1, 10: 1, 11: 2, 17: 5, 20: 5, 25: 6, 100: 2} [2, 6, 7, 8, 10, 11, 100, 5, 17, 20, 4, 25]
empirical probabilities from test set: {6: 0.244, 9: 0.212, 7: 0.196, 19: 0.187, 73: 0.057, 71: 0.058, 0: 0.046}
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  0.025 

learned probs for this beta: {6: np.float64(0.14870240242557642), 9: np.float64(0.27542062641073983), 7: np.float64(0.27398411027604125), 19: np.float64(0.09551506627990367), 73: np.float64(0.0687925982025796), 71: np.float64(0.0687925982025796), 0: np.float64(0.0687925982025796)}
err dic= {6: np.float64(0.09529759757442358), 9: np.float64(0.06342062641073984), 7: np.float64(0.07798411027604124), 19: np.float64(0.09148493372009633), 73: np.float64(0.0117925982025796), 71: np.float64(0.0107925982025796), 0: np.float64(0.022792598202579603)} 

err list= [np.float64(0.09529759757442358), np.float64(0.06342062641073984), np.float64(0.07798411027604124), np.float64(0.09148493372009633), np.float64(0.0117925982025796), np.float64(0.0107925982025796), np.float64(0.022792598202579603)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  0.05 

learned probs for this beta: {6: np.float64(0.15158291799113505), 9: np.float64(0.27639025524043653), 7: np.float64(0.27257133231127095), 19: np.float64(0.09331263429713367), 73: np.float64(0.06871428672000794), 71: np.float64(0.06871428672000794), 0: np.float64(0.06871428672000794)}
err dic= {6: np.float64(0.09241708200886495), 9: np.float64(0.06439025524043654), 7: np.float64(0.07657133231127095), 19: np.float64(0.09368736570286633), 73: np.float64(0.01171428672000794), 71: np.float64(0.010714286720007939), 0: np.float64(0.022714286720007942)} 

err list= [np.float64(0.09241708200886495), np.float64(0.06439025524043654), np.float64(0.07657133231127095), np.float64(0.09368736570286633), np.float64(0.01171428672000794), np.float64(0.010714286720007939), np.float64(0.022714286720007942)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  0.1 

learned probs for this beta: {6: np.float64(0.15756169860774594), 9: np.float64(0.2778100161462448), 7: np.float64(0.2691715159991103), 19: np.float64(0.08931391210404199), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.08643830139225406), 9: np.float64(0.06581001614624479), 7: np.float64(0.07317151599911031), 19: np.float64(0.09768608789595801), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.08643830139225406), np.float64(0.06581001614624479), np.float64(0.07317151599911031), np.float64(0.09768608789595801), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  0.25 

learned probs for this beta: {6: np.float64(0.17558529660024774), 9: np.float64(0.27988878591273525), 7: np.float64(0.2585775395279509), 19: np.float64(0.07980552081620876), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.06841470339975225), 9: np.float64(0.06788878591273526), 7: np.float64(0.06257753952795087), 19: np.float64(0.10719447918379124), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.06841470339975225), np.float64(0.06788878591273526), np.float64(0.06257753952795087), np.float64(0.10719447918379124), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  0.5 

learned probs for this beta: {6: np.float64(0.20187449058173487), 9: np.float64(0.2769821326479063), 7: np.float64(0.24319294447933548), 19: np.float64(0.07180757514816631), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.04212550941826512), 9: np.float64(0.06498213264790628), 7: np.float64(0.047192944479335475), 19: np.float64(0.11519242485183369), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.04212550941826512), np.float64(0.06498213264790628), np.float64(0.047192944479335475), np.float64(0.11519242485183369), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  0.75 

learned probs for this beta: {6: np.float64(0.22147129379845581), 9: np.float64(0.2702899058295345), 7: np.float64(0.23267823196595847), 19: np.float64(0.06941771126319407), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.02252870620154418), 9: np.float64(0.0582899058295345), 7: np.float64(0.03667823196595846), 19: np.float64(0.11758228873680593), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.02252870620154418), np.float64(0.0582899058295345), np.float64(0.03667823196595846), np.float64(0.11758228873680593), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  1 

learned probs for this beta: {6: np.float64(0.23584814514206728), 9: np.float64(0.2635053885700846), 7: np.float64(0.2256460762633815), 19: np.float64(0.06885753288160947), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.008151854857932711), 9: np.float64(0.051505388570084604), 7: np.float64(0.029646076263381504), 19: np.float64(0.11814246711839053), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.008151854857932711), np.float64(0.051505388570084604), np.float64(0.029646076263381504), np.float64(0.11814246711839053), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  1.25 

learned probs for this beta: {6: np.float64(0.2466382805422636), 9: np.float64(0.2579942862704892), 7: np.float64(0.2204827565621577), 19: np.float64(0.0687418194822322), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.0026382805422636157), 9: np.float64(0.04599428627048921), 7: np.float64(0.024482756562157704), 19: np.float64(0.1182581805177678), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.0026382805422636157), np.float64(0.04599428627048921), np.float64(0.024482756562157704), np.float64(0.1182581805177678), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  1.5 

learned probs for this beta: {6: np.float64(0.25483288837213014), 9: np.float64(0.2539293805745037), 7: np.float64(0.21637546175586903), 19: np.float64(0.06871941215463985), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.010832888372130145), 9: np.float64(0.04192938057450371), 7: np.float64(0.020375461755869018), 19: np.float64(0.11828058784536015), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.010832888372130145), np.float64(0.04192938057450371), np.float64(0.020375461755869018), np.float64(0.11828058784536015), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  1.75 

learned probs for this beta: {6: np.float64(0.26105936390056794), 9: np.float64(0.2510877494495307), 7: np.float64(0.212994807377927), 19: np.float64(0.06871522212911683), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.017059363900567948), 9: np.float64(0.03908774944953072), 7: np.float64(0.016994807377926996), 19: np.float64(0.11828477787088316), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.017059363900567948), np.float64(0.03908774944953072), np.float64(0.016994807377926996), np.float64(0.11828477787088316), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

beta is  2 

learned probs for this beta: {6: np.float64(0.2657760209329811), 9: np.float64(0.24916988089617487), 7: np.float64(0.21019678638655268), 19: np.float64(0.06871445464143401), 73: np.float64(0.06871428571428571), 71: np.float64(0.06871428571428571), 0: np.float64(0.06871428571428571)}
err dic= {6: np.float64(0.02177602093298109), 9: np.float64(0.03716988089617487), 7: np.float64(0.014196786386552668), 19: np.float64(0.11828554535856599), 73: np.float64(0.011714285714285712), 71: np.float64(0.010714285714285711), 0: np.float64(0.022714285714285715)} 

err list= [np.float64(0.02177602093298109), np.float64(0.03716988089617487), np.float64(0.014196786386552668), np.float64(0.11828554535856599), np.float64(0.011714285714285712), np.float64(0.010714285714285711), np.float64(0.022714285714285715)]
results for assortment [6, 9, 7, 19, 73, 71] :

err MNL dic= {6: 0.244, 9: 0.212, 7: 0.196, 19: 0.187, 73: 0.057, 71: 0.058, 0: np.float64(0.5349825317574954)} 

err MNL list= [0.244, 0.212, 0.196, 0.187, 0.057, 0.058, np.float64(0.5349825317574954)]
****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.05336644 0.05326957 0.0530487  0.05233004 0.05085363 0.04904998
 0.04719771 0.0455215  0.04421849 0.04317621 0.04232345]
mean_std= [0.00000000e+00 9.68690833e-05 3.22211007e-04 1.27565350e-03
 3.16559610e-03 4.96151626e-03 6.45642189e-03 7.49282297e-03
 7.96786859e-03 8.18018624e-03 8.25252624e-03]
MNL: [0.21226164 0.21600501 0.21355772 0.21369564 0.21255496 0.21381067
 0.21597937 0.21427531 0.21931154 0.21271179]
 mean error for MNL:

mean_err_MNL= 0.21441636577053225
mean_std_MNL= 0.0020392697399362054
