p= 5 num clusters= 2
linkage completed in  10.82324504852295
silhouette_score of the clusters 0.011002010781645042
sampled assortment [2, 3, 4, 59, 40, 84] number: 0
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 1, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 3, 14: 3, 100: 0} [2, 3, 4, 6, 7, 8, 100, 1, 5, 10, 14]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 7: 0, 9: 0, 10: 0, 12: 0, 100: 0} [1, 5, 6, 7, 9, 10, 12, 100]
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 3, 11: 2, 14: 2, 19: 3, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 1, 11, 14, 10, 19]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 2: 0, 6: 0, 10: 0, 14: 0, 100: 0} [1, 2, 6, 10, 14, 100]
empirical probabilities from test set: {2: 0.279, 3: 0.247, 4: 0.242, 59: 0.064, 40: 0.069, 84: 0.053, 0: 0.046}
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.7742772864530603), 3: np.float64(0.11405037571647494), 4: np.float64(0.11123678245405545), 59: np.float64(0.0001088888441023556), 40: np.float64(0.0001088888441023556), 84: np.float64(0.0001088888441023556), 0: np.float64(0.0001088888441023556)}
err dic= {2: np.float64(0.49527728645306024), 3: np.float64(0.13294962428352505), 4: np.float64(0.13076321754594455), 59: np.float64(0.06389111115589764), 40: np.float64(0.06889111115589765), 84: np.float64(0.05289111115589764), 0: np.float64(0.04589111115589764)} 

err list= [np.float64(0.49527728645306024), np.float64(0.13294962428352505), np.float64(0.13076321754594455), np.float64(0.06389111115589764), np.float64(0.06889111115589765), np.float64(0.05289111115589764), np.float64(0.04589111115589764)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.7777450918634228), 3: np.float64(0.11390505981188154), 4: np.float64(0.10834984452887218), 59: np.float64(9.489558569336532e-10), 40: np.float64(9.489558569336532e-10), 84: np.float64(9.489558569336532e-10), 0: np.float64(9.489558569336532e-10)}
err dic= {2: np.float64(0.49874509186342275), 3: np.float64(0.13309494018811846), 4: np.float64(0.1336501554711278), 59: np.float64(0.06399999905104414), 40: np.float64(0.06899999905104415), 84: np.float64(0.05299999905104414), 0: np.float64(0.04599999905104414)} 

err list= [np.float64(0.49874509186342275), np.float64(0.13309494018811846), np.float64(0.1336501554711278), np.float64(0.06399999905104414), np.float64(0.06899999905104415), np.float64(0.05299999905104414), np.float64(0.04599999905104414)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.7835705671799365), 3: np.float64(0.11362094778840477), 4: np.float64(0.10280848503165878), 59: np.float64(8.398059117212677e-20), 40: np.float64(8.398059117212677e-20), 84: np.float64(8.398059117212677e-20), 0: np.float64(8.398059117212677e-20)}
err dic= {2: np.float64(0.5045705671799364), 3: np.float64(0.13337905221159524), 4: np.float64(0.1391915149683412), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.5045705671799364), np.float64(0.13337905221159524), np.float64(0.1391915149683412), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.8013763014505165), 3: np.float64(0.11166157584354412), 4: np.float64(0.08696212270593924), 59: np.float64(2.333284323018554e-49), 40: np.float64(2.333284323018554e-49), 84: np.float64(2.333284323018554e-49), 0: np.float64(2.333284323018554e-49)}
err dic= {2: np.float64(0.5223763014505165), 3: np.float64(0.13533842415645586), 4: np.float64(0.15503787729406077), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.5223763014505165), np.float64(0.13533842415645586), np.float64(0.15503787729406077), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.8312162937410338), 3: np.float64(0.10506099291572647), 4: np.float64(0.06372271334323988), 59: np.float64(4.573045506060091e-98), 40: np.float64(4.573045506060091e-98), 84: np.float64(4.573045506060091e-98), 0: np.float64(4.573045506060091e-98)}
err dic= {2: np.float64(0.5522162937410338), 3: np.float64(0.14193900708427354), 4: np.float64(0.17827728665676013), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.5522162937410338), np.float64(0.14193900708427354), np.float64(0.17827728665676013), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.8597108009706298), 3: np.float64(0.09528143570512537), 4: np.float64(0.045007763324244714), 59: np.float64(1.0999024335993196e-146), 40: np.float64(1.0999024335993196e-146), 84: np.float64(1.0999024335993196e-146), 0: np.float64(1.0999024335993196e-146)}
err dic= {2: np.float64(0.5807108009706298), 3: np.float64(0.15171856429487462), 4: np.float64(0.19699223667575527), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.5807108009706298), np.float64(0.15171856429487462), np.float64(0.19699223667575527), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1 

learned probs for this beta: {2: np.float64(0.885512406874989), 3: np.float64(0.08369713710074082), 4: np.float64(0.030790456024270125), 59: np.float64(2.9015277261489224e-195), 40: np.float64(2.9015277261489224e-195), 84: np.float64(2.9015277261489224e-195), 0: np.float64(2.9015277261489224e-195)}
err dic= {2: np.float64(0.606512406874989), 3: np.float64(0.16330286289925916), 4: np.float64(0.21120954397572986), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.606512406874989), np.float64(0.16330286289925916), np.float64(0.21120954397572986), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.9078922621873196), 3: np.float64(0.07159533181491132), 4: np.float64(0.02051240599776907), 59: np.float64(8.021838346911322e-244), 40: np.float64(8.021838346911322e-244), 84: np.float64(8.021838346911322e-244), 0: np.float64(8.021838346911322e-244)}
err dic= {2: np.float64(0.6288922621873195), 3: np.float64(0.17540466818508868), 4: np.float64(0.22148759400223092), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.6288922621873195), np.float64(0.17540466818508868), np.float64(0.22148759400223092), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.5 

learned probs for this beta: {2: np.float64(0.9266741858295324), 3: np.float64(0.059949314111892506), 4: np.float64(0.013376500058575092), 59: np.float64(2.2742996324693743e-292), 40: np.float64(2.2742996324693743e-292), 84: np.float64(2.2742996324693743e-292), 0: np.float64(2.2742996324693743e-292)}
err dic= {2: np.float64(0.6476741858295324), 3: np.float64(0.1870506858881075), 4: np.float64(0.2286234999414249), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.6476741858295324), np.float64(0.1870506858881075), np.float64(0.2286234999414249), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.75 

learned probs for this beta: {2: np.float64(0.942059921001875), 3: np.float64(0.04936221264871772), 4: np.float64(0.008577866349407121), 59: np.float64(0.0), 40: np.float64(0.0), 84: np.float64(0.0), 0: np.float64(0.0)}
err dic= {2: np.float64(0.6630599210018749), 3: np.float64(0.1976377873512823), 4: np.float64(0.23342213365059286), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.6630599210018749), np.float64(0.1976377873512823), np.float64(0.23342213365059286), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  2 

learned probs for this beta: {2: np.float64(0.9544501596114885), 3: np.float64(0.04012016631655982), 4: np.float64(0.005429674071951629), 59: np.float64(0.0), 40: np.float64(0.0), 84: np.float64(0.0), 0: np.float64(0.0)}
err dic= {2: np.float64(0.6754501596114885), 3: np.float64(0.20687983368344018), 4: np.float64(0.23657032592804836), 59: np.float64(0.064), 40: np.float64(0.069), 84: np.float64(0.053), 0: np.float64(0.046)} 

err list= [np.float64(0.6754501596114885), np.float64(0.20687983368344018), np.float64(0.23657032592804836), np.float64(0.064), np.float64(0.069), np.float64(0.053), np.float64(0.046)]
results for assortment [2, 3, 4, 59, 40, 84] :

err MNL dic= {2: 0.279, 3: 0.247, 4: 0.242, 59: 0.064, 40: 0.069, 84: 0.053, 0: np.float64(0.36004320269644335)} 

err MNL list= [0.279, 0.247, 0.242, 0.064, 0.069, 0.053, np.float64(0.36004320269644335)]
sampled assortment [3, 6, 8, 39, 11, 65] number: 1
#  Learning probs for MM model, A = [3, 6, 8, 39, 11, 65]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 1, 11: 0, 14: 3, 100: 0} [2, 3, 4, 6, 7, 8, 11, 100, 5, 10, 14]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 10: 0, 100: 0} [1, 5, 10, 100]
#  Learning probs for MM model, A = [3, 6, 8, 39, 11, 65]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 3, 6: 0, 7: 0, 8: 0, 10: 2, 11: 2, 14: 4, 100: 0} [2, 3, 4, 6, 7, 8, 100, 1, 10, 11, 5, 14]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 10: 0, 12: 0, 100: 0} [1, 5, 10, 12, 100]
empirical probabilities from test set: {3: 0.216, 6: 0.226, 8: 0.248, 39: 0.064, 11: 0.169, 65: 0.044, 0: 0.033}
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  0.025 

learned probs for this beta: {3: np.float64(0.18618671024273747), 6: np.float64(0.18214618282328626), 8: np.float64(0.17826996322828803), 39: np.float64(0.09401242476273765), 11: np.float64(0.17135986941747514), 65: np.float64(0.09401242476273765), 0: np.float64(0.09401242476273765)}
err dic= {3: np.float64(0.029813289757262523), 6: np.float64(0.043853817176713744), 8: np.float64(0.06973003677171197), 39: np.float64(0.030012424762737647), 11: np.float64(0.0023598694174751245), 65: np.float64(0.05001242476273765), 0: np.float64(0.061012424762737646)} 

err list= [np.float64(0.029813289757262523), np.float64(0.043853817176713744), np.float64(0.06973003677171197), np.float64(0.030012424762737647), np.float64(0.0023598694174751245), np.float64(0.05001242476273765), np.float64(0.061012424762737646)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  0.05 

learned probs for this beta: {3: np.float64(0.1930094927239647), 6: np.float64(0.1845524665865429), 8: np.float64(0.17676705453788416), 39: np.float64(0.09400000017861777), 11: np.float64(0.163670985615755), 65: np.float64(0.09400000017861777), 0: np.float64(0.09400000017861777)}
err dic= {3: np.float64(0.0229905072760353), 6: np.float64(0.04144753341345711), 8: np.float64(0.07123294546211584), 39: np.float64(0.030000000178617772), 11: np.float64(0.005329014384245018), 65: np.float64(0.050000000178617776), 0: np.float64(0.06100000017861777)} 

err list= [np.float64(0.0229905072760353), np.float64(0.04144753341345711), np.float64(0.07123294546211584), np.float64(0.030000000178617772), np.float64(0.005329014384245018), np.float64(0.050000000178617776), np.float64(0.06100000017861777)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  0.1 

learned probs for this beta: {3: np.float64(0.20683595063151738), 6: np.float64(0.18850903549360057), 8: np.float64(0.17296194888527766), 39: np.float64(0.094), 11: np.float64(0.14969306498960464), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.009164049368482613), 6: np.float64(0.03749096450639944), 8: np.float64(0.07503805111472234), 39: np.float64(0.03), 11: np.float64(0.019306935010395376), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.009164049368482613), np.float64(0.03749096450639944), np.float64(0.07503805111472234), np.float64(0.03), np.float64(0.019306935010395376), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  0.25 

learned probs for this beta: {3: np.float64(0.24761587309989178), 6: np.float64(0.19344081985115613), 8: np.float64(0.15736290614731352), 39: np.float64(0.094), 11: np.float64(0.11958040090163835), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.03161587309989178), 6: np.float64(0.032559180148843875), 8: np.float64(0.09063709385268648), 39: np.float64(0.03), 11: np.float64(0.04941959909836166), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.03161587309989178), np.float64(0.032559180148843875), np.float64(0.09063709385268648), np.float64(0.03), np.float64(0.04941959909836166), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  0.5 

learned probs for this beta: {3: np.float64(0.3049293249010914), 6: np.float64(0.18376382620379503), 8: np.float64(0.12995784681536104), 39: np.float64(0.094), 11: np.float64(0.09934900207975268), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.08892932490109143), 6: np.float64(0.04223617379620498), 8: np.float64(0.11804215318463895), 39: np.float64(0.03), 11: np.float64(0.06965099792024733), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.08892932490109143), np.float64(0.04223617379620498), np.float64(0.11804215318463895), np.float64(0.03), np.float64(0.06965099792024733), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  0.75 

learned probs for this beta: {3: np.float64(0.3468395796545004), 6: np.float64(0.16475456100973684), 8: np.float64(0.11147834341231852), 39: np.float64(0.094), 11: np.float64(0.09492751592344421), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.1308395796545004), 6: np.float64(0.06124543899026316), 8: np.float64(0.13652165658768148), 39: np.float64(0.03), 11: np.float64(0.0740724840765558), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.1308395796545004), np.float64(0.06124543899026316), np.float64(0.13652165658768148), np.float64(0.03), np.float64(0.0740724840765558), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  1 

learned probs for this beta: {3: np.float64(0.3764242006168559), 6: np.float64(0.1456740765039183), 8: np.float64(0.1017544553363583), 39: np.float64(0.094), 11: np.float64(0.09414726754286765), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.1604242006168559), 6: np.float64(0.0803259234960817), 8: np.float64(0.1462455446636417), 39: np.float64(0.03), 11: np.float64(0.07485273245713236), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.1604242006168559), np.float64(0.0803259234960817), np.float64(0.1462455446636417), np.float64(0.03), np.float64(0.07485273245713236), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  1.25 

learned probs for this beta: {3: np.float64(0.39679889040444416), 6: np.float64(0.12993272849112003), 8: np.float64(0.09724608989850159), 39: np.float64(0.094), 11: np.float64(0.09402229120593403), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.18079889040444416), 6: np.float64(0.09606727150887998), 8: np.float64(0.1507539101014984), 39: np.float64(0.03), 11: np.float64(0.07497770879406598), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.18079889040444416), np.float64(0.09606727150887998), np.float64(0.1507539101014984), np.float64(0.03), np.float64(0.07497770879406598), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  1.5 

learned probs for this beta: {3: np.float64(0.41053902081559257), 6: np.float64(0.11815003213666961), 8: np.float64(0.09530767452107931), 39: np.float64(0.094), 11: np.float64(0.09400327252665824), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.19453902081559257), 6: np.float64(0.1078499678633304), 8: np.float64(0.1526923254789207), 39: np.float64(0.03), 11: np.float64(0.07499672747334177), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.19453902081559257), np.float64(0.1078499678633304), np.float64(0.1526923254789207), np.float64(0.03), np.float64(0.07499672747334177), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  1.75 

learned probs for this beta: {3: np.float64(0.41964956594289904), 6: np.float64(0.10983659179501046), 8: np.float64(0.09451337191935914), 39: np.float64(0.094), 11: np.float64(0.09400047034273117), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.20364956594289904), 6: np.float64(0.11616340820498955), 8: np.float64(0.15348662808064084), 39: np.float64(0.03), 11: np.float64(0.07499952965726885), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.20364956594289904), np.float64(0.11616340820498955), np.float64(0.15348662808064084), np.float64(0.03), np.float64(0.07499952965726885), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

beta is  2 

learned probs for this beta: {3: np.float64(0.42560440869779115), 6: np.float64(0.10419751005092937), 8: np.float64(0.09419801467265516), 39: np.float64(0.094), 11: np.float64(0.09400006657862403), 65: np.float64(0.094), 0: np.float64(0.094)}
err dic= {3: np.float64(0.20960440869779115), 6: np.float64(0.12180248994907064), 8: np.float64(0.15380198532734485), 39: np.float64(0.03), 11: np.float64(0.07499993342137598), 65: np.float64(0.05), 0: np.float64(0.061)} 

err list= [np.float64(0.20960440869779115), np.float64(0.12180248994907064), np.float64(0.15380198532734485), np.float64(0.03), np.float64(0.07499993342137598), np.float64(0.05), np.float64(0.061)]
results for assortment [3, 6, 8, 39, 11, 65] :

err MNL dic= {3: 0.216, 6: 0.226, 8: 0.248, 39: 0.064, 11: 0.169, 65: 0.044, 0: np.float64(0.3642301618911109)} 

err MNL list= [0.216, 0.226, 0.248, 0.064, 0.169, 0.044, np.float64(0.3642301618911109)]
sampled assortment [5, 4, 2, 30, 77, 18] number: 2
#  Learning probs for MM model, A = [5, 4, 2, 30, 77, 18]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 2, 11: 0, 20: 4, 100: 0} [2, 3, 4, 6, 7, 8, 11, 100, 5, 1, 10, 20]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 9: 0, 10: 0, 12: 0, 15: 0, 100: 0} [1, 5, 9, 10, 12, 15, 100]
#  Learning probs for MM model, A = [5, 4, 2, 30, 77, 18]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 2, 6: 0, 7: 0, 8: 0, 9: 1, 10: 2, 12: 4, 14: 4, 16: 5, 20: 4, 100: 0} [2, 3, 4, 6, 7, 8, 100, 9, 1, 5, 10, 12, 14, 20, 16]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 9: 0, 100: 0} [1, 5, 6, 9, 100]
empirical probabilities from test set: {5: 0.218, 4: 0.234, 2: 0.234, 30: 0.089, 77: 0.045, 18: 0.152, 0: 0.028}
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.7596330268380549), 4: np.float64(0.11737466283801667), 2: np.float64(0.12259625054223304), 30: np.float64(9.901494542381196e-05), 77: np.float64(9.901494542381196e-05), 18: np.float64(9.901494542381196e-05), 0: np.float64(9.901494542381196e-05)}
err dic= {5: np.float64(0.5416330268380549), 4: np.float64(0.11662533716198334), 2: np.float64(0.11140374945776697), 30: np.float64(0.08890098505457618), 77: np.float64(0.04490098505457619), 18: np.float64(0.1519009850545762), 0: np.float64(0.027900985054576187)} 

err list= [np.float64(0.5416330268380549), np.float64(0.11662533716198334), np.float64(0.11140374945776697), np.float64(0.08890098505457618), np.float64(0.04490098505457619), np.float64(0.1519009850545762), np.float64(0.027900985054576187)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.7489038446754166), 4: np.float64(0.12010657499830113), 2: np.float64(0.13098957704706915), 30: np.float64(8.198032863856429e-10), 77: np.float64(8.198032863856429e-10), 18: np.float64(8.198032863856429e-10), 0: np.float64(8.198032863856429e-10)}
err dic= {5: np.float64(0.5309038446754166), 4: np.float64(0.11389342500169888), 2: np.float64(0.10301042295293086), 30: np.float64(0.08899999918019671), 77: np.float64(0.04499999918019671), 18: np.float64(0.15199999918019672), 0: np.float64(0.027999999180196713)} 

err list= [np.float64(0.5309038446754166), np.float64(0.11389342500169888), np.float64(0.10301042295293086), np.float64(0.08899999918019671), np.float64(0.04499999918019671), np.float64(0.15199999918019672), np.float64(0.027999999180196713)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.7285239739415337), 4: np.float64(0.12408528402706746), 2: np.float64(0.14739074203139912), 30: np.float64(7.494641518271201e-20), 77: np.float64(7.494641518271201e-20), 18: np.float64(7.494641518271201e-20), 0: np.float64(7.494641518271201e-20)}
err dic= {5: np.float64(0.5105239739415337), 4: np.float64(0.10991471597293255), 2: np.float64(0.08660925796860089), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.5105239739415337), np.float64(0.10991471597293255), np.float64(0.08660925796860089), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.6863279459232055), 4: np.float64(0.12414707236797208), 2: np.float64(0.1895249817088221), 30: np.float64(3.373625756898282e-49), 77: np.float64(3.373625756898282e-49), 18: np.float64(3.373625756898282e-49), 0: np.float64(3.373625756898282e-49)}
err dic= {5: np.float64(0.4683279459232055), 4: np.float64(0.10985292763202793), 2: np.float64(0.04447501829117792), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.4683279459232055), np.float64(0.10985292763202793), np.float64(0.04447501829117792), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.6623242450450514), 4: np.float64(0.10192824175419807), 2: np.float64(0.2357475132007507), 30: np.float64(8.500951755921615e-98), 77: np.float64(8.500951755921615e-98), 18: np.float64(8.500951755921615e-98), 0: np.float64(8.500951755921615e-98)}
err dic= {5: np.float64(0.4443242450450514), 4: np.float64(0.13207175824580195), 2: np.float64(0.0017475132007507), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.4443242450450514), np.float64(0.13207175824580195), np.float64(0.0017475132007507), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.6585338389396469), 4: np.float64(0.07543186734699099), 2: np.float64(0.2660342937133622), 30: np.float64(2.1673908869569585e-146), 77: np.float64(2.1673908869569585e-146), 18: np.float64(2.1673908869569585e-146), 0: np.float64(2.1673908869569585e-146)}
err dic= {5: np.float64(0.4405338389396469), 4: np.float64(0.158568132653009), 2: np.float64(0.032034293713362166), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.4405338389396469), np.float64(0.158568132653009), np.float64(0.032034293713362166), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  1 

learned probs for this beta: {5: np.float64(0.6580614927558751), 4: np.float64(0.05328703300968028), 2: np.float64(0.2886514742344448), 30: np.float64(5.786856283593279e-195), 77: np.float64(5.786856283593279e-195), 18: np.float64(5.786856283593279e-195), 0: np.float64(5.786856283593279e-195)}
err dic= {5: np.float64(0.44006149275587514), 4: np.float64(0.18071296699031975), 2: np.float64(0.0546514742344448), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.44006149275587514), np.float64(0.18071296699031975), np.float64(0.0546514742344448), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.6580069112737374), 4: np.float64(0.03645555862506176), 2: np.float64(0.3055375301012007), 30: np.float64(1.6035500190809898e-243), 77: np.float64(1.6035500190809898e-243), 18: np.float64(1.6035500190809898e-243), 0: np.float64(1.6035500190809898e-243)}
err dic= {5: np.float64(0.4400069112737375), 4: np.float64(0.19754444137493826), 2: np.float64(0.0715375301012007), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.4400069112737375), np.float64(0.19754444137493826), np.float64(0.0715375301012007), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  1.5 

learned probs for this beta: {5: np.float64(0.6580007665850802), 4: np.float64(0.024312687921006826), 2: np.float64(0.3176865454939129), 30: np.float64(4.548183764153231e-292), 77: np.float64(4.548183764153231e-292), 18: np.float64(4.548183764153231e-292), 0: np.float64(4.548183764153231e-292)}
err dic= {5: np.float64(0.44000076658508025), 4: np.float64(0.2096873120789932), 2: np.float64(0.08368654549391288), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.44000076658508025), np.float64(0.2096873120789932), np.float64(0.08368654549391288), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  1.75 

learned probs for this beta: {5: np.float64(0.6580000842025762), 4: np.float64(0.015885795432199794), 2: np.float64(0.3261141203652239), 30: np.float64(0.0), 77: np.float64(0.0), 18: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.4400000842025762), 4: np.float64(0.21811420456780023), 2: np.float64(0.0921141203652239), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.4400000842025762), np.float64(0.21811420456780023), np.float64(0.0921141203652239), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

beta is  2 

learned probs for this beta: {5: np.float64(0.6580000091755032), 4: np.float64(0.010212114445036561), 2: np.float64(0.33178787637945983), 30: np.float64(0.0), 77: np.float64(0.0), 18: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.4400000091755032), 4: np.float64(0.22378788555496346), 2: np.float64(0.09778787637945982), 30: np.float64(0.089), 77: np.float64(0.045), 18: np.float64(0.152), 0: np.float64(0.028)} 

err list= [np.float64(0.4400000091755032), np.float64(0.22378788555496346), np.float64(0.09778787637945982), np.float64(0.089), np.float64(0.045), np.float64(0.152), np.float64(0.028)]
results for assortment [5, 4, 2, 30, 77, 18] :

err MNL dic= {5: 0.218, 4: 0.234, 2: 0.234, 30: 0.089, 77: 0.045, 18: 0.152, 0: np.float64(0.3699113855882817)} 

err MNL list= [0.218, 0.234, 0.234, 0.089, 0.045, 0.152, np.float64(0.3699113855882817)]
sampled assortment [8, 3, 9, 95, 19, 50] number: 3
#  Learning probs for MM model, A = [8, 3, 9, 95, 19, 50]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 3, 11: 0, 100: 0} [2, 3, 4, 6, 7, 8, 11, 100, 5, 1, 10]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 12: 0, 100: 0} [1, 5, 6, 12, 100]
#  Learning probs for MM model, A = [8, 3, 9, 95, 19, 50]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 1, 2: 0, 3: 0, 4: 0, 5: 3, 6: 0, 7: 0, 8: 0, 9: 2, 10: 1, 11: 0, 14: 4, 100: 0} [2, 3, 4, 6, 7, 8, 11, 100, 1, 10, 9, 5, 14]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 10: 0, 12: 0, 100: 0} [1, 5, 6, 10, 12, 100]
empirical probabilities from test set: {8: 0.248, 3: 0.213, 9: 0.195, 95: 0.056, 19: 0.185, 50: 0.066, 0: 0.037}
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  0.025 

learned probs for this beta: {8: np.float64(0.20842450277428784), 3: np.float64(0.21804596515190305), 9: np.float64(0.19746577239112423), 95: np.float64(0.0940159399206712), 19: np.float64(0.0940159399206712), 50: np.float64(0.0940159399206712), 0: np.float64(0.0940159399206712)}
err dic= {8: np.float64(0.03957549722571216), 3: np.float64(0.005045965151903059), 9: np.float64(0.0024657723911242213), 95: np.float64(0.0380159399206712), 19: np.float64(0.0909840600793288), 50: np.float64(0.028015939920671196), 0: np.float64(0.0570159399206712)} 

err list= [np.float64(0.03957549722571216), np.float64(0.005045965151903059), np.float64(0.0024657723911242213), np.float64(0.0380159399206712), np.float64(0.0909840600793288), np.float64(0.028015939920671196), np.float64(0.0570159399206712)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  0.05 

learned probs for this beta: {8: np.float64(0.20835924297482603), 3: np.float64(0.22826769941663833), 9: np.float64(0.18737305666756118), 95: np.float64(0.09400000023524364), 19: np.float64(0.09400000023524364), 50: np.float64(0.09400000023524364), 0: np.float64(0.09400000023524364)}
err dic= {8: np.float64(0.03964075702517397), 3: np.float64(0.01526769941663833), 9: np.float64(0.007626943332438824), 95: np.float64(0.03800000023524364), 19: np.float64(0.09099999976475635), 50: np.float64(0.02800000023524364), 0: np.float64(0.057000000235243646)} 

err list= [np.float64(0.03964075702517397), np.float64(0.01526769941663833), np.float64(0.007626943332438824), np.float64(0.03800000023524364), np.float64(0.09099999976475635), np.float64(0.02800000023524364), np.float64(0.057000000235243646)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  0.1 

learned probs for this beta: {8: np.float64(0.20663602952299115), 3: np.float64(0.24871404395575805), 9: np.float64(0.168649926521251), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.04136397047700885), 3: np.float64(0.03571404395575806), 9: np.float64(0.026350073478749014), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.04136397047700885), np.float64(0.03571404395575806), np.float64(0.026350073478749014), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  0.25 

learned probs for this beta: {8: np.float64(0.1913991624560935), 3: np.float64(0.3053521486628781), 9: np.float64(0.12724868888102817), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.05660083754390649), 3: np.float64(0.09235214866287808), 9: np.float64(0.06775131111897184), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.05660083754390649), np.float64(0.09235214866287808), np.float64(0.06775131111897184), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  0.5 

learned probs for this beta: {8: np.float64(0.15360167642735117), 3: np.float64(0.3703461820089553), 9: np.float64(0.10005214156369369), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.09439832357264882), 3: np.float64(0.1573461820089553), 9: np.float64(0.09494785843630632), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.09439832357264882), np.float64(0.1573461820089553), np.float64(0.09494785843630632), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  0.75 

learned probs for this beta: {8: np.float64(0.12433106433778356), 3: np.float64(0.40481349574813774), 9: np.float64(0.09485543991407873), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.12366893566221644), 3: np.float64(0.19181349574813775), 9: np.float64(0.10014456008592128), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.12366893566221644), np.float64(0.19181349574813775), np.float64(0.10014456008592128), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  1 

learned probs for this beta: {8: np.float64(0.1079086189076559), 3: np.float64(0.4219838543937734), 9: np.float64(0.09410752669857099), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.1400913810923441), 3: np.float64(0.2089838543937734), 9: np.float64(0.10089247330142902), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.1400913810923441), np.float64(0.2089838543937734), np.float64(0.10089247330142902), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  1.25 

learned probs for this beta: {8: np.float64(0.0999713342678297), 3: np.float64(0.43001592226172236), 9: np.float64(0.09401274347044773), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.1480286657321703), 3: np.float64(0.21701592226172237), 9: np.float64(0.10098725652955227), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.1480286657321703), np.float64(0.21701592226172237), np.float64(0.10098725652955227), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  1.5 

learned probs for this beta: {8: np.float64(0.0964529578349391), 3: np.float64(0.433545582764307), 9: np.float64(0.09400145940075365), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.1515470421650609), 3: np.float64(0.220545582764307), 9: np.float64(0.10099854059924636), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.1515470421650609), np.float64(0.220545582764307), np.float64(0.10099854059924636), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  1.75 

learned probs for this beta: {8: np.float64(0.09497757272988469), 3: np.float64(0.435022263835933), 9: np.float64(0.09400016343418222), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.1530224272701153), 3: np.float64(0.22202226383593301), 9: np.float64(0.10099983656581779), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.1530224272701153), np.float64(0.22202226383593301), np.float64(0.10099983656581779), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

beta is  2 

learned probs for this beta: {8: np.float64(0.09438142876612994), 3: np.float64(0.43561855321402665), 9: np.float64(0.0940000180198434), 95: np.float64(0.094), 19: np.float64(0.094), 50: np.float64(0.094), 0: np.float64(0.094)}
err dic= {8: np.float64(0.15361857123387007), 3: np.float64(0.22261855321402665), 9: np.float64(0.10099998198015661), 95: np.float64(0.038), 19: np.float64(0.091), 50: np.float64(0.027999999999999997), 0: np.float64(0.057)} 

err list= [np.float64(0.15361857123387007), np.float64(0.22261855321402665), np.float64(0.10099998198015661), np.float64(0.038), np.float64(0.091), np.float64(0.027999999999999997), np.float64(0.057)]
results for assortment [8, 3, 9, 95, 19, 50] :

err MNL dic= {8: 0.248, 3: 0.213, 9: 0.195, 95: 0.056, 19: 0.185, 50: 0.066, 0: np.float64(0.36523540082401995)} 

err MNL list= [0.248, 0.213, 0.195, 0.056, 0.185, 0.066, np.float64(0.36523540082401995)]
sampled assortment [9, 2, 3, 45, 38, 86] number: 4
#  Learning probs for MM model, A = [9, 2, 3, 45, 38, 86]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 0, 10: 1, 11: 2, 12: 5, 100: 0} [2, 3, 4, 6, 7, 8, 9, 100, 5, 10, 1, 11, 12]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 6: 0, 9: 0, 10: 0, 12: 0, 13: 0, 100: 0} [1, 6, 9, 10, 12, 13, 100]
#  Learning probs for MM model, A = [9, 2, 3, 45, 38, 86]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 2, 11: 2, 14: 4, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 1, 9, 11, 14]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 10: 0, 12: 0} [1, 5, 6, 10, 12]
empirical probabilities from test set: {9: 0.255, 2: 0.264, 3: 0.234, 45: 0.074, 38: 0.085, 86: 0.049, 0: 0.039}
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  0.025 

learned probs for this beta: {9: np.float64(0.1954635123009797), 2: np.float64(0.21574025555758514), 3: np.float64(0.21273447793817507), 45: np.float64(0.09401543855081498), 38: np.float64(0.09401543855081498), 86: np.float64(0.09401543855081498), 0: np.float64(0.09401543855081498)}
err dic= {9: np.float64(0.05953648769902031), 2: np.float64(0.048259744442414876), 3: np.float64(0.021265522061824943), 45: np.float64(0.020015438550814987), 38: np.float64(0.009015438550814978), 86: np.float64(0.04501543855081498), 0: np.float64(0.055015438550814984)} 

err list= [np.float64(0.05953648769902031), np.float64(0.048259744442414876), np.float64(0.021265522061824943), np.float64(0.020015438550814987), np.float64(0.009015438550814978), np.float64(0.04501543855081498), np.float64(0.055015438550814984)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  0.05 

learned probs for this beta: {9: np.float64(0.18365501823627634), 2: np.float64(0.2233261457191189), 3: np.float64(0.21701883516529297), 45: np.float64(0.09400000021982795), 38: np.float64(0.09400000021982795), 86: np.float64(0.09400000021982795), 0: np.float64(0.09400000021982795)}
err dic= {9: np.float64(0.07134498176372367), 2: np.float64(0.040673854280881105), 3: np.float64(0.016981164834707047), 45: np.float64(0.02000000021982795), 38: np.float64(0.009000000219827942), 86: np.float64(0.045000000219827946), 0: np.float64(0.05500000021982795)} 

err list= [np.float64(0.07134498176372367), np.float64(0.040673854280881105), np.float64(0.016981164834707047), np.float64(0.02000000021982795), np.float64(0.009000000219827942), np.float64(0.045000000219827946), np.float64(0.05500000021982795)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  0.1 

learned probs for this beta: {9: np.float64(0.1624273391192595), 2: np.float64(0.2376199532256229), 3: np.float64(0.2239527076551179), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.09257266088074051), 2: np.float64(0.02638004677437711), 3: np.float64(0.010047292344882108), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.09257266088074051), np.float64(0.02638004677437711), np.float64(0.010047292344882108), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  0.25 

learned probs for this beta: {9: np.float64(0.11987296646627309), 2: np.float64(0.2717191895473978), 3: np.float64(0.2324078439863289), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.1351270335337269), 2: np.float64(0.007719189547397809), 3: np.float64(0.0015921560136711033), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.1351270335337269), np.float64(0.007719189547397809), np.float64(0.0015921560136711033), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  0.5 

learned probs for this beta: {9: np.float64(0.09752913599028139), 2: np.float64(0.30468434764280344), 3: np.float64(0.22178651636691535), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.1574708640097186), 2: np.float64(0.04068434764280343), 3: np.float64(0.012213483633084665), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.1574708640097186), np.float64(0.04068434764280343), np.float64(0.012213483633084665), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  0.75 

learned probs for this beta: {9: np.float64(0.094395159034554), 2: np.float64(0.3260107315189287), 3: np.float64(0.2035941094465174), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.160604840965446), 2: np.float64(0.06201073151892866), 3: np.float64(0.030405890553482612), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.160604840965446), np.float64(0.06201073151892866), np.float64(0.030405890553482612), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  1 

learned probs for this beta: {9: np.float64(0.09404211720640147), 2: np.float64(0.343991243746414), 3: np.float64(0.18596663904718463), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.16095788279359852), 2: np.float64(0.07999124374641398), 3: np.float64(0.04803336095281538), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.16095788279359852), np.float64(0.07999124374641398), np.float64(0.04803336095281538), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  1.25 

learned probs for this beta: {9: np.float64(0.09400444710365859), 2: np.float64(0.35983309578868783), 3: np.float64(0.17016245710765343), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.16099555289634143), 2: np.float64(0.09583309578868782), 3: np.float64(0.06383754289234658), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.16099555289634143), np.float64(0.09583309578868782), np.float64(0.06383754289234658), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  1.5 

learned probs for this beta: {9: np.float64(0.09400046884703786), 2: np.float64(0.37361008754085445), 3: np.float64(0.15638944361210733), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.16099953115296214), 2: np.float64(0.10961008754085444), 3: np.float64(0.07761055638789269), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.16099953115296214), np.float64(0.10961008754085444), np.float64(0.07761055638789269), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  1.75 

learned probs for this beta: {9: np.float64(0.09400004941801522), 2: np.float64(0.3853678161713455), 3: np.float64(0.14463213441063907), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.1609999505819848), 2: np.float64(0.12136781617134551), 3: np.float64(0.08936786558936094), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.1609999505819848), np.float64(0.12136781617134551), np.float64(0.08936786558936094), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

beta is  2 

learned probs for this beta: {9: np.float64(0.09400000520864857), 2: np.float64(0.3952325960806732), 3: np.float64(0.13476739871067805), 45: np.float64(0.094), 38: np.float64(0.094), 86: np.float64(0.094), 0: np.float64(0.094)}
err dic= {9: np.float64(0.16099999479135144), 2: np.float64(0.13123259608067317), 3: np.float64(0.09923260128932196), 45: np.float64(0.020000000000000004), 38: np.float64(0.008999999999999994), 86: np.float64(0.045), 0: np.float64(0.055)} 

err list= [np.float64(0.16099999479135144), np.float64(0.13123259608067317), np.float64(0.09923260128932196), np.float64(0.020000000000000004), np.float64(0.008999999999999994), np.float64(0.045), np.float64(0.055)]
results for assortment [9, 2, 3, 45, 38, 86] :

err MNL dic= {9: 0.255, 2: 0.264, 3: 0.234, 45: 0.074, 38: 0.085, 86: 0.049, 0: np.float64(0.36711052359529933)} 

err MNL list= [0.255, 0.264, 0.234, 0.074, 0.085, 0.049, np.float64(0.36711052359529933)]
sampled assortment [7, 4, 3, 59, 13, 90] number: 5
#  Learning probs for MM model, A = [7, 4, 3, 59, 13, 90]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 1, 10: 3, 11: 1, 16: 5, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 9, 11, 1, 10, 16]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 10: 0, 100: 0} [1, 5, 6, 10, 100]
#  Learning probs for MM model, A = [7, 4, 3, 59, 13, 90]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 3, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 0, 10: 3, 11: 2, 100: 0} [2, 3, 4, 6, 7, 8, 9, 100, 5, 11, 1, 10]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 9: 0, 11: 0, 13: 0, 100: 0} [1, 5, 6, 9, 11, 13, 100]
empirical probabilities from test set: {7: 0.19, 4: 0.228, 3: 0.243, 59: 0.06, 13: 0.202, 90: 0.037, 0: 0.04}
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  0.025 

learned probs for this beta: {7: np.float64(0.10985127204993944), 4: np.float64(0.11476567222369541), 3: np.float64(0.11766806025074797), 59: np.float64(0.00013052137757167155), 13: np.float64(0.657323431342902), 90: np.float64(0.00013052137757167155), 0: np.float64(0.00013052137757167155)}
err dic= {7: np.float64(0.08014872795006056), 4: np.float64(0.1132343277763046), 3: np.float64(0.12533193974925202), 59: np.float64(0.05986947862242833), 13: np.float64(0.45532343134290204), 90: np.float64(0.03686947862242833), 0: np.float64(0.03986947862242833)} 

err list= [np.float64(0.08014872795006056), np.float64(0.1132343277763046), np.float64(0.12533193974925202), np.float64(0.05986947862242833), np.float64(0.45532343134290204), np.float64(0.03686947862242833), np.float64(0.03986947862242833)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  0.05 

learned probs for this beta: {7: np.float64(0.10557570562943158), 4: np.float64(0.11525746026304802), 3: np.float64(0.1211668365597008), 59: np.float64(1.317125489185588e-09), 13: np.float64(0.6579999935964432), 90: np.float64(1.317125489185588e-09), 0: np.float64(1.317125489185588e-09)}
err dic= {7: np.float64(0.08442429437056842), 4: np.float64(0.11274253973695199), 3: np.float64(0.1218331634402992), 59: np.float64(0.059999998682874506), 13: np.float64(0.4559999935964432), 90: np.float64(0.036999998682874506), 0: np.float64(0.03999999868287451)} 

err list= [np.float64(0.08442429437056842), np.float64(0.11274253973695199), np.float64(0.1218331634402992), np.float64(0.059999998682874506), np.float64(0.4559999935964432), np.float64(0.036999998682874506), np.float64(0.03999999868287451)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  0.1 

learned probs for this beta: {7: np.float64(0.09742917263653565), 4: np.float64(0.11617623313314085), 3: np.float64(0.12839459423032373), 59: np.float64(1.4199082498313837e-19), 13: np.float64(0.658), 90: np.float64(1.4199082498313837e-19), 0: np.float64(1.4199082498313837e-19)}
err dic= {7: np.float64(0.09257082736346435), 4: np.float64(0.11182376686685916), 3: np.float64(0.11460540576967626), 59: np.float64(0.06), 13: np.float64(0.456), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.09257082736346435), np.float64(0.11182376686685916), np.float64(0.11460540576967626), np.float64(0.06), np.float64(0.456), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  0.25 

learned probs for this beta: {7: np.float64(0.07498852398953317), 4: np.float64(0.11690389873055032), 3: np.float64(0.15010757727991644), 59: np.float64(3.74707975101176e-49), 13: np.float64(0.6579999999999996), 90: np.float64(3.74707975101176e-49), 0: np.float64(3.74707975101176e-49)}
err dic= {7: np.float64(0.11501147601046684), 4: np.float64(0.11109610126944969), 3: np.float64(0.09289242272008355), 59: np.float64(0.06), 13: np.float64(0.4559999999999996), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.11501147601046684), np.float64(0.11109610126944969), np.float64(0.09289242272008355), np.float64(0.06), np.float64(0.4559999999999996), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  0.5 

learned probs for this beta: {7: np.float64(0.04539292986538216), 4: np.float64(0.11198123162888209), 3: np.float64(0.1846258385057359), 59: np.float64(8.453441337026617e-98), 13: np.float64(0.658), 90: np.float64(8.453441337026617e-98), 0: np.float64(8.453441337026617e-98)}
err dic= {7: np.float64(0.14460707013461785), 4: np.float64(0.11601876837111792), 3: np.float64(0.05837416149426408), 59: np.float64(0.06), 13: np.float64(0.456), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.14460707013461785), np.float64(0.11601876837111792), np.float64(0.05837416149426408), np.float64(0.06), np.float64(0.456), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  0.75 

learned probs for this beta: {7: np.float64(0.02559233061730702), 4: np.float64(0.10151032008223779), 3: np.float64(0.21489734930045534), 59: np.float64(2.6694186348586397e-146), 13: np.float64(0.6579999999999998), 90: np.float64(2.6694186348586397e-146), 0: np.float64(2.6694186348586397e-146)}
err dic= {7: np.float64(0.16440766938269297), 4: np.float64(0.12648967991776222), 3: np.float64(0.02810265069954465), 59: np.float64(0.06), 13: np.float64(0.4559999999999998), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.16440766938269297), np.float64(0.12648967991776222), np.float64(0.02810265069954465), np.float64(0.06), np.float64(0.4559999999999998), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  1 

learned probs for this beta: {7: np.float64(0.013647255635780602), 4: np.float64(0.08830765378005186), 3: np.float64(0.24004509058416768), 59: np.float64(9.106760656954926e-195), 13: np.float64(0.6579999999999999), 90: np.float64(9.106760656954926e-195), 0: np.float64(9.106760656954926e-195)}
err dic= {7: np.float64(0.1763527443642194), 4: np.float64(0.13969234621994814), 3: np.float64(0.0029549094158323186), 59: np.float64(0.06), 13: np.float64(0.4559999999999999), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.1763527443642194), np.float64(0.13969234621994814), np.float64(0.0029549094158323186), np.float64(0.06), np.float64(0.4559999999999999), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  1.25 

learned probs for this beta: {7: np.float64(0.006987125356343809), 4: np.float64(0.07460741369140798), 3: np.float64(0.2604054609522481), 59: np.float64(3.2180862186803803e-243), 13: np.float64(0.6579999999999999), 90: np.float64(3.2180862186803803e-243), 0: np.float64(3.2180862186803803e-243)}
err dic= {7: np.float64(0.1830128746436562), 4: np.float64(0.15339258630859204), 3: np.float64(0.017405460952248097), 59: np.float64(0.06), 13: np.float64(0.4559999999999999), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.1830128746436562), np.float64(0.15339258630859204), np.float64(0.017405460952248097), np.float64(0.06), np.float64(0.4559999999999999), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  1.5 

learned probs for this beta: {7: np.float64(0.003477540763490423), 4: np.float64(0.061755136946436084), 3: np.float64(0.27676732229007306), 59: np.float64(1.1580718296210133e-291), 13: np.float64(0.6580000000000001), 90: np.float64(1.1580718296210133e-291), 0: np.float64(1.1580718296210133e-291)}
err dic= {7: np.float64(0.1865224592365096), 4: np.float64(0.16624486305356392), 3: np.float64(0.033767322290073065), 59: np.float64(0.06), 13: np.float64(0.4560000000000001), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.1865224592365096), np.float64(0.16624486305356392), np.float64(0.033767322290073065), np.float64(0.06), np.float64(0.4560000000000001), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  1.75 

learned probs for this beta: {7: np.float64(0.0016983529653448487), 4: np.float64(0.05038070532904963), 3: np.float64(0.28992094170560534), 59: np.float64(0.0), 13: np.float64(0.6579999999999998), 90: np.float64(0.0), 0: np.float64(0.0)}
err dic= {7: np.float64(0.18830164703465516), 4: np.float64(0.1776192946709504), 3: np.float64(0.046920941705605346), 59: np.float64(0.06), 13: np.float64(0.4559999999999998), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.18830164703465516), np.float64(0.1776192946709504), np.float64(0.046920941705605346), np.float64(0.06), np.float64(0.4559999999999998), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

beta is  2 

learned probs for this beta: {7: np.float64(0.0008192689929675253), 4: np.float64(0.04066974007368033), 3: np.float64(0.30051099093335193), 59: np.float64(0.0), 13: np.float64(0.6579999999999999), 90: np.float64(0.0), 0: np.float64(0.0)}
err dic= {7: np.float64(0.18918073100703248), 4: np.float64(0.1873302599263197), 3: np.float64(0.057510990933351935), 59: np.float64(0.06), 13: np.float64(0.4559999999999999), 90: np.float64(0.037), 0: np.float64(0.04)} 

err list= [np.float64(0.18918073100703248), np.float64(0.1873302599263197), np.float64(0.057510990933351935), np.float64(0.06), np.float64(0.4559999999999999), np.float64(0.037), np.float64(0.04)]
results for assortment [7, 4, 3, 59, 13, 90] :

err MNL dic= {7: 0.19, 4: 0.228, 3: 0.243, 59: 0.06, 13: 0.202, 90: 0.037, 0: np.float64(0.3614729800308247)} 

err MNL list= [0.19, 0.228, 0.243, 0.06, 0.202, 0.037, np.float64(0.3614729800308247)]
sampled assortment [5, 4, 8, 50, 43, 60] number: 6
#  Learning probs for MM model, A = [5, 4, 8, 50, 43, 60]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 1, 11: 2, 14: 3, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 10, 1, 11, 14]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 9: 0, 10: 0, 12: 0, 13: 0} [1, 5, 9, 10, 12, 13]
#  Learning probs for MM model, A = [5, 4, 8, 50, 43, 60]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 1, 10: 3, 11: 2, 12: 5, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 9, 1, 11, 10, 12]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 10: 0, 12: 0} [1, 5, 6, 10, 12]
empirical probabilities from test set: {5: 0.241, 4: 0.233, 8: 0.252, 50: 0.085, 43: 0.081, 60: 0.066, 0: 0.042}
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.7658148949640272), 4: np.float64(0.12053244932223403), 8: np.float64(0.11325551918447546), 50: np.float64(9.928413231577191e-05), 43: np.float64(9.928413231577191e-05), 60: np.float64(9.928413231577191e-05), 0: np.float64(9.928413231577191e-05)}
err dic= {5: np.float64(0.5248148949640272), 4: np.float64(0.11246755067776598), 8: np.float64(0.13874448081552454), 50: np.float64(0.08490071586768423), 43: np.float64(0.08090071586768423), 60: np.float64(0.06590071586768423), 0: np.float64(0.04190071586768423)} 

err list= [np.float64(0.5248148949640272), np.float64(0.11246755067776598), np.float64(0.13874448081552454), np.float64(0.08490071586768423), np.float64(0.08090071586768423), np.float64(0.06590071586768423), np.float64(0.04190071586768423)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.7607545649986013), 4: np.float64(0.12704622274973776), 8: np.float64(0.11219920893720732), 50: np.float64(8.286134306804821e-10), 43: np.float64(8.286134306804821e-10), 60: np.float64(8.286134306804821e-10), 0: np.float64(8.286134306804821e-10)}
err dic= {5: np.float64(0.5197545649986013), 4: np.float64(0.10595377725026225), 8: np.float64(0.1398007910627927), 50: np.float64(0.08499999917138658), 43: np.float64(0.08099999917138657), 60: np.float64(0.06599999917138658), 0: np.float64(0.041999999171386575)} 

err list= [np.float64(0.5197545649986013), np.float64(0.10595377725026225), np.float64(0.1398007910627927), np.float64(0.08499999917138658), np.float64(0.08099999917138657), np.float64(0.06599999917138658), np.float64(0.041999999171386575)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.7499014385193017), 4: np.float64(0.1404275291082796), 8: np.float64(0.10967103237241901), 50: np.float64(7.940777518973553e-20), 43: np.float64(7.940777518973553e-20), 60: np.float64(7.940777518973553e-20), 0: np.float64(7.940777518973553e-20)}
err dic= {5: np.float64(0.5089014385193017), 4: np.float64(0.09257247089172041), 8: np.float64(0.142328967627581), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.5089014385193017), np.float64(0.09257247089172041), np.float64(0.142328967627581), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.7207560973915582), 4: np.float64(0.18091418552211488), 8: np.float64(0.09832971708632654), 50: np.float64(4.818535405339519e-49), 43: np.float64(4.818535405339519e-49), 60: np.float64(4.818535405339519e-49), 0: np.float64(4.818535405339519e-49)}
err dic= {5: np.float64(0.4797560973915582), 4: np.float64(0.05208581447788513), 8: np.float64(0.15367028291367346), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.4797560973915582), np.float64(0.05208581447788513), np.float64(0.15367028291367346), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.6867470891669614), 4: np.float64(0.24096531849700006), 8: np.float64(0.07228759233603872), 50: np.float64(2.2427584711503062e-97), 43: np.float64(2.2427584711503062e-97), 60: np.float64(2.2427584711503062e-97), 0: np.float64(2.2427584711503062e-97)}
err dic= {5: np.float64(0.4457470891669614), 4: np.float64(0.007965318497000051), 8: np.float64(0.1797124076639613), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.4457470891669614), np.float64(0.007965318497000051), np.float64(0.1797124076639613), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.6693642817552014), 4: np.float64(0.28387295246273153), 8: np.float64(0.04676276578206725), 50: np.float64(1.0838985666356378e-145), 43: np.float64(1.0838985666356378e-145), 60: np.float64(1.0838985666356378e-145), 0: np.float64(1.0838985666356378e-145)}
err dic= {5: np.float64(0.42836428175520136), 4: np.float64(0.05087295246273152), 8: np.float64(0.20523723421793275), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.42836428175520136), np.float64(0.05087295246273152), np.float64(0.20523723421793275), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  1 

learned probs for this beta: {5: np.float64(0.6620489412041198), 4: np.float64(0.310363576188499), 8: np.float64(0.027587482607381364), 50: np.float64(5.303444088204709e-194), 43: np.float64(5.303444088204709e-194), 60: np.float64(5.303444088204709e-194), 0: np.float64(5.303444088204709e-194)}
err dic= {5: np.float64(0.42104894120411984), 4: np.float64(0.07736357618849901), 8: np.float64(0.22441251739261864), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.42104894120411984), np.float64(0.07736357618849901), np.float64(0.22441251739261864), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.6593461841876717), 4: np.float64(0.325384062773912), 8: np.float64(0.01526975303841626), 50: np.float64(2.600141033891114e-242), 43: np.float64(2.600141033891114e-242), 60: np.float64(2.600141033891114e-242), 0: np.float64(2.600141033891114e-242)}
err dic= {5: np.float64(0.41834618418767167), 4: np.float64(0.092384062773912), 8: np.float64(0.23673024696158373), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.41834618418767167), np.float64(0.092384062773912), np.float64(0.23673024696158373), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  1.5 

learned probs for this beta: {5: np.float64(0.658427690043477), 4: np.float64(0.33348400533120015), 8: np.float64(0.00808830462532276), 50: np.float64(1.2720027869849347e-290), 43: np.float64(1.2720027869849347e-290), 60: np.float64(1.2720027869849347e-290), 0: np.float64(1.2720027869849347e-290)}
err dic= {5: np.float64(0.417427690043477), 4: np.float64(0.10048400533120014), 8: np.float64(0.24391169537467725), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.417427690043477), np.float64(0.10048400533120014), np.float64(0.24391169537467725), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  1.75 

learned probs for this beta: {5: np.float64(0.6581318362270304), 4: np.float64(0.33771326717568706), 8: np.float64(0.004154896597282381), 50: np.float64(0.0), 43: np.float64(0.0), 60: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.41713183622703043), 4: np.float64(0.10471326717568705), 8: np.float64(0.24784510340271762), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.41713183622703043), np.float64(0.10471326717568705), np.float64(0.24784510340271762), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

beta is  2 

learned probs for this beta: {5: np.float64(0.658039814791809), 4: np.float64(0.33987175846650264), 8: np.float64(0.0020884267416881965), 50: np.float64(0.0), 43: np.float64(0.0), 60: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.41703981479180896), 4: np.float64(0.10687175846650263), 8: np.float64(0.24991157325831181), 50: np.float64(0.085), 43: np.float64(0.081), 60: np.float64(0.066), 0: np.float64(0.042)} 

err list= [np.float64(0.41703981479180896), np.float64(0.10687175846650263), np.float64(0.24991157325831181), np.float64(0.085), np.float64(0.081), np.float64(0.066), np.float64(0.042)]
results for assortment [5, 4, 8, 50, 43, 60] :

err MNL dic= {5: 0.241, 4: 0.233, 8: 0.252, 50: 0.085, 43: 0.081, 60: 0.066, 0: np.float64(0.36364601088075554)} 

err MNL list= [0.241, 0.233, 0.252, 0.085, 0.081, 0.066, np.float64(0.36364601088075554)]
sampled assortment [6, 8, 1, 48, 45, 40] number: 7
#  Learning probs for MM model, A = [6, 8, 1, 48, 45, 40]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 1, 10: 2, 11: 3, 16: 6, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 9, 10, 11, 16]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 7: 0, 10: 0, 100: 0} [1, 5, 6, 7, 10, 100]
#  Learning probs for MM model, A = [6, 8, 1, 48, 45, 40]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 0, 2: 0, 3: 0, 4: 0, 5: 2, 6: 0, 7: 0, 8: 0, 9: 1, 10: 2, 11: 1, 100: 0} [1, 2, 3, 4, 6, 7, 8, 100, 9, 11, 5, 10]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 10: 0, 12: 0, 100: 0} [1, 5, 6, 10, 12, 100]
empirical probabilities from test set: {6: 0.235, 8: 0.252, 1: 0.237, 48: 0.082, 45: 0.084, 40: 0.076, 0: 0.034}
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  0.025 

learned probs for this beta: {6: np.float64(0.4345466875005076), 8: np.float64(0.10761368939529443), 1: np.float64(0.4577307370939955), 48: np.float64(2.722150255063986e-05), 45: np.float64(2.722150255063986e-05), 40: np.float64(2.722150255063986e-05), 0: np.float64(2.722150255063986e-05)}
err dic= {6: np.float64(0.19954668750050764), 8: np.float64(0.14438631060470558), 1: np.float64(0.2207307370939955), 48: np.float64(0.08197277849744937), 45: np.float64(0.08397277849744937), 40: np.float64(0.07597277849744936), 0: np.float64(0.03397277849744936)} 

err list= [np.float64(0.19954668750050764), np.float64(0.14438631060470558), np.float64(0.2207307370939955), np.float64(0.08197277849744937), np.float64(0.08397277849744937), np.float64(0.07597277849744936), np.float64(0.03397277849744936)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  0.05 

learned probs for this beta: {6: np.float64(0.42595165324786144), 8: np.float64(0.10132827063925134), 1: np.float64(0.4727200748650957), 48: np.float64(3.1194787498629174e-10), 45: np.float64(3.1194787498629174e-10), 40: np.float64(3.1194787498629174e-10), 0: np.float64(3.1194787498629174e-10)}
err dic= {6: np.float64(0.19095165324786145), 8: np.float64(0.15067172936074866), 1: np.float64(0.23572007486509572), 48: np.float64(0.08199999968805213), 45: np.float64(0.08399999968805213), 40: np.float64(0.07599999968805213), 0: np.float64(0.033999999688052125)} 

err list= [np.float64(0.19095165324786145), np.float64(0.15067172936074866), np.float64(0.23572007486509572), np.float64(0.08199999968805213), np.float64(0.08399999968805213), np.float64(0.07599999968805213), np.float64(0.033999999688052125)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  0.1 

learned probs for this beta: {6: np.float64(0.408009862997629), 8: np.float64(0.08909746122842618), 1: np.float64(0.5028926757739451), 48: np.float64(4.96539997189994e-20), 45: np.float64(4.96539997189994e-20), 40: np.float64(4.96539997189994e-20), 0: np.float64(4.96539997189994e-20)}
err dic= {6: np.float64(0.173009862997629), 8: np.float64(0.16290253877157382), 1: np.float64(0.26589267577394515), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.173009862997629), np.float64(0.16290253877157382), np.float64(0.26589267577394515), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  0.25 

learned probs for this beta: {6: np.float64(0.35053492630377914), 8: np.float64(0.05676214474762917), 1: np.float64(0.5927029289485913), 48: np.float64(3.473850272658191e-49), 45: np.float64(3.473850272658191e-49), 40: np.float64(3.473850272658191e-49), 0: np.float64(3.473850272658191e-49)}
err dic= {6: np.float64(0.11553492630377915), 8: np.float64(0.19523785525237083), 1: np.float64(0.35570292894859135), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.11553492630377915), np.float64(0.19523785525237083), np.float64(0.35570292894859135), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  0.5 

learned probs for this beta: {6: np.float64(0.25458944530766425), 8: np.float64(0.021951207793899256), 1: np.float64(0.7234593468984366), 48: np.float64(1.0393719893500004e-97), 45: np.float64(1.0393719893500004e-97), 40: np.float64(1.0393719893500004e-97), 0: np.float64(1.0393719893500004e-97)}
err dic= {6: np.float64(0.019589445307664266), 8: np.float64(0.23004879220610075), 1: np.float64(0.4864593468984366), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.019589445307664266), np.float64(0.23004879220610075), np.float64(0.4864593468984366), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  0.75 

learned probs for this beta: {6: np.float64(0.1746554394977129), 8: np.float64(0.007009168163510092), 1: np.float64(0.8183353923387771), 48: np.float64(3.1350141390639306e-146), 45: np.float64(3.1350141390639306e-146), 40: np.float64(3.1350141390639306e-146), 0: np.float64(3.1350141390639306e-146)}
err dic= {6: np.float64(0.06034456050228709), 8: np.float64(0.2449908318364899), 1: np.float64(0.5813353923387771), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.06034456050228709), np.float64(0.2449908318364899), np.float64(0.5813353923387771), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  1 

learned probs for this beta: {6: np.float64(0.11622053946408302), 8: np.float64(0.0019739295039037925), 1: np.float64(0.8818055310320132), 48: np.float64(9.458371527701466e-195), 45: np.float64(9.458371527701466e-195), 40: np.float64(9.458371527701466e-195), 0: np.float64(9.458371527701466e-195)}
err dic= {6: np.float64(0.11877946053591697), 8: np.float64(0.2500260704960962), 1: np.float64(0.6448055310320132), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.11877946053591697), np.float64(0.2500260704960962), np.float64(0.6448055310320132), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  1.25 

learned probs for this beta: {6: np.float64(0.07606693149361489), 8: np.float64(0.0005139604015980799), 1: np.float64(0.923419108104787), 48: np.float64(2.8351115527511525e-243), 45: np.float64(2.8351115527511525e-243), 40: np.float64(2.8351115527511525e-243), 0: np.float64(2.8351115527511525e-243)}
err dic= {6: np.float64(0.1589330685063851), 8: np.float64(0.25148603959840193), 1: np.float64(0.686419108104787), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.1589330685063851), np.float64(0.25148603959840193), np.float64(0.686419108104787), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  1.5 

learned probs for this beta: {6: np.float64(0.049221610610620484), 8: np.float64(0.00012739450916432045), 1: np.float64(0.9506509948802152), 48: np.float64(8.440302834421274e-292), 45: np.float64(8.440302834421274e-292), 40: np.float64(8.440302834421274e-292), 0: np.float64(8.440302834421274e-292)}
err dic= {6: np.float64(0.18577838938937952), 8: np.float64(0.2518726054908357), 1: np.float64(0.7136509948802152), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.18577838938937952), np.float64(0.2518726054908357), np.float64(0.7136509948802152), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  1.75 

learned probs for this beta: {6: np.float64(0.03153994003172239), 8: np.float64(3.059264324625911e-05), 1: np.float64(0.9684294673250311), 48: np.float64(0.0), 45: np.float64(0.0), 40: np.float64(0.0), 0: np.float64(0.0)}
err dic= {6: np.float64(0.2034600599682776), 8: np.float64(0.2519694073567537), 1: np.float64(0.7314294673250311), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.2034600599682776), np.float64(0.2519694073567537), np.float64(0.7314294673250311), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

beta is  2 

learned probs for this beta: {6: np.float64(0.020029024524025184), 8: np.float64(7.193950130255866e-06), 1: np.float64(0.9799637815258444), 48: np.float64(0.0), 45: np.float64(0.0), 40: np.float64(0.0), 0: np.float64(0.0)}
err dic= {6: np.float64(0.2149709754759748), 8: np.float64(0.25199280604986973), 1: np.float64(0.7429637815258444), 48: np.float64(0.082), 45: np.float64(0.084), 40: np.float64(0.076), 0: np.float64(0.034)} 

err list= [np.float64(0.2149709754759748), np.float64(0.25199280604986973), np.float64(0.7429637815258444), np.float64(0.082), np.float64(0.084), np.float64(0.076), np.float64(0.034)]
results for assortment [6, 8, 1, 48, 45, 40] :

err MNL dic= {6: 0.235, 8: 0.252, 1: 0.237, 48: 0.082, 45: 0.084, 40: 0.076, 0: np.float64(0.3681663093432741)} 

err MNL list= [0.235, 0.252, 0.237, 0.082, 0.084, 0.076, np.float64(0.3681663093432741)]
sampled assortment [2, 1, 9, 80, 38, 46] number: 8
#  Learning probs for MM model, A = [2, 1, 9, 80, 38, 46]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 10: 3, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 1, 10]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 7: 0, 9: 0, 100: 0} [1, 5, 6, 7, 9, 100]
#  Learning probs for MM model, A = [2, 1, 9, 80, 38, 46]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 2, 6: 0, 7: 0, 8: 0, 10: 2, 17: 6, 100: 0} [2, 3, 4, 6, 7, 8, 100, 1, 5, 10, 17]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 10: 0, 12: 0, 100: 0} [1, 5, 10, 12, 100]
empirical probabilities from test set: {2: 0.26, 1: 0.257, 9: 0.224, 80: 0.056, 38: 0.077, 46: 0.079, 0: 0.047}
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.1817100983124928), 1: np.float64(0.8177930001086242), 9: np.float64(9.938031577658724e-05), 80: np.float64(9.938031577658724e-05), 38: np.float64(9.938031577658724e-05), 46: np.float64(9.938031577658724e-05), 0: np.float64(9.938031577658724e-05)}
err dic= {2: np.float64(0.07828990168750721), 1: np.float64(0.5607930001086242), 9: np.float64(0.22390061968422342), 80: np.float64(0.05590061968422341), 38: np.float64(0.07690061968422342), 46: np.float64(0.07890061968422342), 0: np.float64(0.04690061968422341)} 

err list= [np.float64(0.07828990168750721), np.float64(0.5607930001086242), np.float64(0.22390061968422342), np.float64(0.05590061968422341), np.float64(0.07690061968422342), np.float64(0.07890061968422342), np.float64(0.04690061968422341)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.1922748675606192), 1: np.float64(0.8077251284118486), 9: np.float64(8.05506442866723e-10), 80: np.float64(8.05506442866723e-10), 38: np.float64(8.05506442866723e-10), 46: np.float64(8.05506442866723e-10), 0: np.float64(8.05506442866723e-10)}
err dic= {2: np.float64(0.0677251324393808), 1: np.float64(0.5507251284118486), 9: np.float64(0.22399999919449357), 80: np.float64(0.055999999194493555), 38: np.float64(0.07699999919449356), 46: np.float64(0.07899999919449356), 0: np.float64(0.046999999194493554)} 

err list= [np.float64(0.0677251324393808), np.float64(0.5507251284118486), np.float64(0.22399999919449357), np.float64(0.055999999194493555), np.float64(0.07699999919449356), np.float64(0.07899999919449356), np.float64(0.046999999194493554)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.21296091088552863), 1: np.float64(0.7870390891144716), 9: np.float64(6.819392949164003e-20), 80: np.float64(6.819392949164003e-20), 38: np.float64(6.819392949164003e-20), 46: np.float64(6.819392949164003e-20), 0: np.float64(6.819392949164003e-20)}
err dic= {2: np.float64(0.04703908911447138), 1: np.float64(0.5300390891144716), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.04703908911447138), np.float64(0.5300390891144716), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.2667201659488752), 1: np.float64(0.7332798340511247), 9: np.float64(2.017453640245859e-49), 80: np.float64(2.017453640245859e-49), 38: np.float64(2.017453640245859e-49), 46: np.float64(2.017453640245859e-49), 0: np.float64(2.017453640245859e-49)}
err dic= {2: np.float64(0.006720165948875201), 1: np.float64(0.47627983405112473), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.006720165948875201), np.float64(0.47627983405112473), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.3185029816921133), 1: np.float64(0.6814970183078869), 9: np.float64(2.500834986195576e-98), 80: np.float64(2.500834986195576e-98), 38: np.float64(2.500834986195576e-98), 46: np.float64(2.500834986195576e-98), 0: np.float64(2.500834986195576e-98)}
err dic= {2: np.float64(0.058502981692113265), 1: np.float64(0.4244970183078869), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.058502981692113265), np.float64(0.4244970183078869), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.3361698892326315), 1: np.float64(0.6638301107673685), 9: np.float64(2.872924355236853e-147), 80: np.float64(2.872924355236853e-147), 38: np.float64(2.872924355236853e-147), 46: np.float64(2.872924355236853e-147), 0: np.float64(2.872924355236853e-147)}
err dic= {2: np.float64(0.07616988923263152), 1: np.float64(0.4068301107673685), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.07616988923263152), np.float64(0.4068301107673685), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  1 

learned probs for this beta: {2: np.float64(0.3407330958272887), 1: np.float64(0.6592669041727112), 9: np.float64(3.174870823345438e-196), 80: np.float64(3.174870823345438e-196), 38: np.float64(3.174870823345438e-196), 46: np.float64(3.174870823345438e-196), 0: np.float64(3.174870823345438e-196)}
err dic= {2: np.float64(0.08073309582728871), 1: np.float64(0.40226690417271116), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.08073309582728871), np.float64(0.40226690417271116), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.3417448033122284), 1: np.float64(0.6582551966877715), 9: np.float64(3.4570316073535416e-245), 80: np.float64(3.4570316073535416e-245), 38: np.float64(3.4570316073535416e-245), 46: np.float64(3.4570316073535416e-245), 0: np.float64(3.4570316073535416e-245)}
err dic= {2: np.float64(0.08174480331222839), 1: np.float64(0.40125519668777154), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.08174480331222839), np.float64(0.40125519668777154), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  1.5 

learned probs for this beta: {2: np.float64(0.34195088659322864), 1: np.float64(0.6580491134067713), 9: np.float64(3.743876514779478e-294), 80: np.float64(3.743876514779478e-294), 38: np.float64(3.743876514779478e-294), 46: np.float64(3.743876514779478e-294), 0: np.float64(3.743876514779478e-294)}
err dic= {2: np.float64(0.08195088659322863), 1: np.float64(0.4010491134067713), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.08195088659322863), np.float64(0.4010491134067713), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  1.75 

learned probs for this beta: {2: np.float64(0.34199081943861387), 1: np.float64(0.6580091805613861), 9: np.float64(0.0), 80: np.float64(0.0), 38: np.float64(0.0), 46: np.float64(0.0), 0: np.float64(0.0)}
err dic= {2: np.float64(0.08199081943861386), 1: np.float64(0.4010091805613861), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.08199081943861386), np.float64(0.4010091805613861), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

beta is  2 

learned probs for this beta: {2: np.float64(0.3419983172148638), 1: np.float64(0.6580016827851362), 9: np.float64(0.0), 80: np.float64(0.0), 38: np.float64(0.0), 46: np.float64(0.0), 0: np.float64(0.0)}
err dic= {2: np.float64(0.08199831721486378), 1: np.float64(0.40100168278513615), 9: np.float64(0.224), 80: np.float64(0.056), 38: np.float64(0.077), 46: np.float64(0.079), 0: np.float64(0.047)} 

err list= [np.float64(0.08199831721486378), np.float64(0.40100168278513615), np.float64(0.224), np.float64(0.056), np.float64(0.077), np.float64(0.079), np.float64(0.047)]
results for assortment [2, 1, 9, 80, 38, 46] :

err MNL dic= {2: 0.26, 1: 0.257, 9: 0.224, 80: 0.056, 38: 0.077, 46: 0.079, 0: np.float64(0.3567940576788661)} 

err MNL list= [0.26, 0.257, 0.224, 0.056, 0.077, 0.079, np.float64(0.3567940576788661)]
sampled assortment [5, 9, 3, 88, 47, 55] number: 9
#  Learning probs for MM model, A = [5, 9, 3, 88, 47, 55]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 0, 11: 1, 100: 0} [2, 3, 4, 6, 7, 8, 9, 100, 5, 11, 1]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0, 10: 0, 12: 0, 100: 0} [1, 5, 6, 10, 12, 100]
#  Learning probs for MM model, A = [5, 9, 3, 88, 47, 55]
#cluster  2 with weight 0.342
Learned cluster center of cluster 2:  {1: 2, 2: 0, 3: 0, 4: 0, 5: 1, 6: 0, 7: 0, 8: 0, 9: 1, 10: 2, 100: 0} [2, 3, 4, 6, 7, 8, 100, 5, 9, 1, 10]
#cluster  1 with weight 0.658
Learned cluster center of cluster 1:  {1: 0, 5: 0, 6: 0} [1, 5, 6]
empirical probabilities from test set: {5: 0.24, 9: 0.243, 3: 0.247, 88: 0.048, 47: 0.107, 55: 0.069, 0: 0.046}
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.7678809090620261), 9: np.float64(0.10761906952403844), 3: np.float64(0.12418315800443931), 88: np.float64(7.921585237402723e-05), 47: np.float64(7.921585237402723e-05), 55: np.float64(7.921585237402723e-05), 0: np.float64(7.921585237402723e-05)}
err dic= {5: np.float64(0.5278809090620261), 9: np.float64(0.13538093047596156), 3: np.float64(0.12281684199556069), 88: np.float64(0.047920784147625975), 47: np.float64(0.10692078414762597), 55: np.float64(0.06892078414762598), 0: np.float64(0.04592078414762597)} 

err list= [np.float64(0.5278809090620261), np.float64(0.13538093047596156), np.float64(0.12281684199556069), np.float64(0.047920784147625975), np.float64(0.10692078414762597), np.float64(0.06892078414762598), np.float64(0.04592078414762597)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.7643170778119209), 9: np.float64(0.10113193532338284), 3: np.float64(0.13455098460875753), 88: np.float64(5.639847016408047e-10), 47: np.float64(5.639847016408047e-10), 55: np.float64(5.639847016408047e-10), 0: np.float64(5.639847016408047e-10)}
err dic= {5: np.float64(0.5243170778119209), 9: np.float64(0.14186806467661717), 3: np.float64(0.11244901539124247), 88: np.float64(0.0479999994360153), 47: np.float64(0.10699999943601529), 55: np.float64(0.0689999994360153), 0: np.float64(0.0459999994360153)} 

err list= [np.float64(0.5243170778119209), np.float64(0.14186806467661717), np.float64(0.11244901539124247), np.float64(0.0479999994360153), np.float64(0.10699999943601529), np.float64(0.0689999994360153), np.float64(0.0459999994360153)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.7556865301193041), 9: np.float64(0.08839042769004309), 3: np.float64(0.15592304219065303), 88: np.float64(4.484132886262164e-20), 47: np.float64(4.484132886262164e-20), 55: np.float64(4.484132886262164e-20), 0: np.float64(4.484132886262164e-20)}
err dic= {5: np.float64(0.5156865301193041), 9: np.float64(0.15460957230995692), 3: np.float64(0.09107695780934696), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.5156865301193041), np.float64(0.15460957230995692), np.float64(0.09107695780934696), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.7272023803129357), 9: np.float64(0.05389486797811956), 3: np.float64(0.21890275170894444), 88: np.float64(1.77476915248756e-49), 47: np.float64(1.77476915248756e-49), 55: np.float64(1.77476915248756e-49), 0: np.float64(1.77476915248756e-49)}
err dic= {5: np.float64(0.4872023803129357), 9: np.float64(0.18910513202188045), 3: np.float64(0.02809724829105556), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.4872023803129357), np.float64(0.18910513202188045), np.float64(0.02809724829105556), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.687615791892634), 9: np.float64(0.01796288579455136), 3: np.float64(0.29442132231281476), 88: np.float64(2.9615835743444596e-98), 47: np.float64(2.9615835743444596e-98), 55: np.float64(2.9615835743444596e-98), 0: np.float64(2.9615835743444596e-98)}
err dic= {5: np.float64(0.447615791892634), 9: np.float64(0.22503711420544864), 3: np.float64(0.04742132231281476), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.447615791892634), np.float64(0.22503711420544864), np.float64(0.04742132231281476), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.6678716205036227), 9: np.float64(0.0046630233472638154), 3: np.float64(0.32746535614911343), 88: np.float64(4.5833162405262764e-147), 47: np.float64(4.5833162405262764e-147), 55: np.float64(4.5833162405262764e-147), 0: np.float64(4.5833162405262764e-147)}
err dic= {5: np.float64(0.4278716205036227), 9: np.float64(0.23833697665273618), 3: np.float64(0.08046535614911343), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.4278716205036227), np.float64(0.23833697665273618), np.float64(0.08046535614911343), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  1 

learned probs for this beta: {5: np.float64(0.6608310774697973), 9: np.float64(0.0010414951975020966), 3: np.float64(0.3381274273327007), 88: np.float64(6.748677875995442e-196), 47: np.float64(6.748677875995442e-196), 55: np.float64(6.748677875995442e-196), 0: np.float64(6.748677875995442e-196)}
err dic= {5: np.float64(0.4208310774697973), 9: np.float64(0.2419585048024979), 3: np.float64(0.09112742733270068), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.4208310774697973), np.float64(0.2419585048024979), np.float64(0.09112742733270068), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.6587441054728239), 9: np.float64(0.00021318978733398815), 3: np.float64(0.3410427047398419), 88: np.float64(9.683350593891732e-245), 47: np.float64(9.683350593891732e-245), 55: np.float64(9.683350593891732e-245), 0: np.float64(9.683350593891732e-245)}
err dic= {5: np.float64(0.4187441054728239), 9: np.float64(0.24278681021266602), 3: np.float64(0.09404270473984189), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.4187441054728239), np.float64(0.24278681021266602), np.float64(0.09404270473984189), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  1.5 

learned probs for this beta: {5: np.float64(0.6581856272531273), 9: np.float64(4.14190387182339e-05), 3: np.float64(0.3417729537081543), 88: np.float64(1.370960791218526e-293), 47: np.float64(1.370960791218526e-293), 55: np.float64(1.370960791218526e-293), 0: np.float64(1.370960791218526e-293)}
err dic= {5: np.float64(0.41818562725312736), 9: np.float64(0.24295858096128176), 3: np.float64(0.0947729537081543), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.41818562725312736), np.float64(0.24295858096128176), np.float64(0.0947729537081543), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  1.75 

learned probs for this beta: {5: np.float64(0.6580448084807142), 9: np.float64(7.786546393732644e-06), 3: np.float64(0.34194740497289183), 88: np.float64(0.0), 47: np.float64(0.0), 55: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.41804480848071424), 9: np.float64(0.24299221345360625), 3: np.float64(0.09494740497289184), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.41804480848071424), np.float64(0.24299221345360625), np.float64(0.09494740497289184), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

beta is  2 

learned probs for this beta: {5: np.float64(0.6580105834217339), 9: np.float64(1.4323103779947062e-06), 3: np.float64(0.3419879842678878), 88: np.float64(0.0), 47: np.float64(0.0), 55: np.float64(0.0), 0: np.float64(0.0)}
err dic= {5: np.float64(0.4180105834217339), 9: np.float64(0.242998567689622), 3: np.float64(0.09498798426788779), 88: np.float64(0.048), 47: np.float64(0.107), 55: np.float64(0.069), 0: np.float64(0.046)} 

err list= [np.float64(0.4180105834217339), np.float64(0.242998567689622), np.float64(0.09498798426788779), np.float64(0.048), np.float64(0.107), np.float64(0.069), np.float64(0.046)]
results for assortment [5, 9, 3, 88, 47, 55] :

err MNL dic= {5: 0.24, 9: 0.243, 3: 0.247, 88: 0.048, 47: 0.107, 55: 0.069, 0: np.float64(0.3629810843967686)} 

err MNL list= [0.24, 0.243, 0.247, 0.048, 0.107, 0.069, np.float64(0.3629810843967686)]
****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.15082312 0.150314   0.14932233 0.14679192 0.14572137 0.145641
 0.14573141 0.1458288  0.14591    0.14597592 0.14603002]
mean_std= [0.         0.00050912 0.00146273 0.0045622  0.00460817 0.0042105
 0.00390445 0.00366136 0.00345959 0.00328801 0.00313966]
MNL: [0.18772046 0.19017574 0.19170163 0.18974791 0.18973007 0.18878185
 0.18880657 0.19059519 0.18711344 0.18814015]
 mean error for MNL:

mean_err_MNL= 0.18925130167036636
mean_std_MNL= 0.0013306881906770237
