p= 1.25 num clusters= 2
linkage completed in  10.8388671875
silhouette_score of the clusters 0.007796245381136862
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.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 18: 6, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 100, 10, 18]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 11: 0, 12: 0, 100: 0} [2, 3, 6, 7, 10, 11, 12, 100]
#  Learning probs for MM model, A = [2, 3, 4, 59, 40, 84]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 15: 2, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10, 15]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 6: 0, 7: 0, 10: 0, 11: 0, 100: 0} [2, 6, 7, 10, 11, 100]
empirical probabilities from test set: {2: 0.265, 3: 0.245, 4: 0.258, 59: 0.06, 40: 0.07, 84: 0.049, 0: 0.053}
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.3815101894441617), 3: np.float64(0.16280596549917148), 4: np.float64(0.1603191578962241), 59: np.float64(0.07384117179011122), 40: np.float64(0.07384117179011122), 84: np.float64(0.07384117179011122), 0: np.float64(0.07384117179011122)}
err dic= {2: np.float64(0.1165101894441617), 3: np.float64(0.08219403450082852), 4: np.float64(0.0976808421037759), 59: np.float64(0.013841171790111226), 40: np.float64(0.003841171790111217), 84: np.float64(0.02484117179011122), 0: np.float64(0.020841171790111225)} 

err list= [np.float64(0.1165101894441617), np.float64(0.08219403450082852), np.float64(0.0976808421037759), np.float64(0.013841171790111226), np.float64(0.003841171790111217), np.float64(0.02484117179011122), np.float64(0.020841171790111225)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.680013401467914), 3: np.float64(0.12985656418982924), 4: np.float64(0.12426519369801713), 59: np.float64(0.016466210161060216), 40: np.float64(0.016466210161060216), 84: np.float64(0.016466210161060216), 0: np.float64(0.016466210161060216)}
err dic= {2: np.float64(0.415013401467914), 3: np.float64(0.11514343581017075), 4: np.float64(0.13373480630198287), 59: np.float64(0.04353378983893978), 40: np.float64(0.05353378983893979), 84: np.float64(0.032533789838939786), 0: np.float64(0.03653378983893978)} 

err list= [np.float64(0.415013401467914), np.float64(0.11514343581017075), np.float64(0.13373480630198287), np.float64(0.04353378983893978), np.float64(0.05353378983893979), np.float64(0.032533789838939786), np.float64(0.03653378983893978)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.7786213640821585), 3: np.float64(0.11608021613713461), 4: np.float64(0.10503930965294685), 59: np.float64(6.47775319400576e-05), 40: np.float64(6.47775319400576e-05), 84: np.float64(6.47775319400576e-05), 0: np.float64(6.47775319400576e-05)}
err dic= {2: np.float64(0.5136213640821585), 3: np.float64(0.1289197838628654), 4: np.float64(0.15296069034705317), 59: np.float64(0.05993522246805994), 40: np.float64(0.06993522246805994), 84: np.float64(0.048935222468059945), 0: np.float64(0.05293522246805994)} 

err list= [np.float64(0.5136213640821585), np.float64(0.1289197838628654), np.float64(0.15296069034705317), np.float64(0.05993522246805994), np.float64(0.06993522246805994), np.float64(0.048935222468059945), np.float64(0.05293522246805994)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.7971657113456393), 3: np.float64(0.114028670653648), 4: np.float64(0.08880561799779695), 59: np.float64(7.289327413489783e-13), 40: np.float64(7.289327413489783e-13), 84: np.float64(7.289327413489783e-13), 0: np.float64(7.289327413489783e-13)}
err dic= {2: np.float64(0.5321657113456393), 3: np.float64(0.130971329346352), 4: np.float64(0.16919438200220305), 59: np.float64(0.05999999999927107), 40: np.float64(0.06999999999927108), 84: np.float64(0.04899999999927107), 0: np.float64(0.05299999999927107)} 

err list= [np.float64(0.5321657113456393), np.float64(0.130971329346352), np.float64(0.16919438200220305), np.float64(0.05999999999927107), np.float64(0.06999999999927108), np.float64(0.04899999999927107), np.float64(0.05299999999927107)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.8276382765761873), 3: np.float64(0.10728816308718556), 4: np.float64(0.06507356033662728), 59: np.float64(4.124633894069163e-26), 40: np.float64(4.124633894069163e-26), 84: np.float64(4.124633894069163e-26), 0: np.float64(4.124633894069163e-26)}
err dic= {2: np.float64(0.5626382765761873), 3: np.float64(0.13771183691281444), 4: np.float64(0.19292643966337272), 59: np.float64(0.06), 40: np.float64(0.07), 84: np.float64(0.049), 0: np.float64(0.053)} 

err list= [np.float64(0.5626382765761873), np.float64(0.13771183691281444), np.float64(0.19292643966337272), np.float64(0.06), np.float64(0.07), np.float64(0.049), np.float64(0.053)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.8567368340321418), 3: np.float64(0.09730129070179837), 4: np.float64(0.04596187526605986), 59: np.float64(2.391471329806021e-39), 40: np.float64(2.391471329806021e-39), 84: np.float64(2.391471329806021e-39), 0: np.float64(2.391471329806021e-39)}
err dic= {2: np.float64(0.5917368340321418), 3: np.float64(0.1476987092982016), 4: np.float64(0.21203812473394015), 59: np.float64(0.06), 40: np.float64(0.07), 84: np.float64(0.049), 0: np.float64(0.053)} 

err list= [np.float64(0.5917368340321418), np.float64(0.1476987092982016), np.float64(0.21203812473394015), np.float64(0.06), np.float64(0.07), np.float64(0.049), np.float64(0.053)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1 

learned probs for this beta: {2: np.float64(0.8830854038043566), 3: np.float64(0.0854714185158881), 4: np.float64(0.03144317767975538), 59: np.float64(1.4477876781909639e-52), 40: np.float64(1.4477876781909639e-52), 84: np.float64(1.4477876781909639e-52), 0: np.float64(1.4477876781909639e-52)}
err dic= {2: np.float64(0.6180854038043566), 3: np.float64(0.1595285814841119), 4: np.float64(0.22655682232024463), 59: np.float64(0.06), 40: np.float64(0.07), 84: np.float64(0.049), 0: np.float64(0.053)} 

err list= [np.float64(0.6180854038043566), np.float64(0.1595285814841119), np.float64(0.22655682232024463), np.float64(0.06), np.float64(0.07), np.float64(0.049), np.float64(0.053)]
results for assortment [2, 3, 4, 59, 40, 84] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.905939685874039), 3: np.float64(0.07311306911215723), 4: np.float64(0.020947245013803645), 59: np.float64(9.359340593466795e-66), 40: np.float64(9.359340593466795e-66), 84: np.float64(9.359340593466795e-66), 0: np.float64(9.359340593466795e-66)}
err dic= {2: np.float64(0.6409396858740389), 3: np.float64(0.17188693088784276), 4: np.float64(0.23705275498619635), 59: np.float64(0.06), 40: np.float64(0.07), 84: np.float64(0.049), 0: np.float64(0.053)} 

err list= [np.float64(0.6409396858740389), np.float64(0.17188693088784276), np.float64(0.23705275498619635), np.float64(0.06), np.float64(0.07), np.float64(0.049), np.float64(0.053)]
results for assortment [2, 3, 4, 59, 40, 84] :

err MNL dic= {2: 0.265, 3: 0.245, 4: 0.258, 59: 0.06, 40: 0.07, 84: 0.049, 0: np.float64(0.35348407453989855)} 

err MNL list= [0.265, 0.245, 0.258, 0.06, 0.07, 0.049, np.float64(0.35348407453989855)]
sampled assortment [6, 4, 8, 88, 21, 45] number: 1
#  Learning probs for MM model, A = [6, 4, 8, 88, 21, 45]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 2, 13: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 100, 11, 13]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {5: 0, 6: 0, 7: 0, 10: 0, 12: 0, 13: 0, 100: 0} [5, 6, 7, 10, 12, 13, 100]
#  Learning probs for MM model, A = [6, 4, 8, 88, 21, 45]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 1, 12: 2, 14: 1, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 14, 100, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 15: 0, 100: 0} [2, 15, 100]
empirical probabilities from test set: {6: 0.221, 4: 0.2, 8: 0.244, 88: 0.048, 21: 0.164, 45: 0.07, 0: 0.053}
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  0.025 

learned probs for this beta: {6: np.float64(0.19236482380009814), 4: np.float64(0.19691810365315549), 8: np.float64(0.18799549206801747), 88: np.float64(0.10568039511968282), 21: np.float64(0.10568039511968282), 45: np.float64(0.10568039511968282), 0: np.float64(0.10568039511968282)}
err dic= {6: np.float64(0.028635176199901857), 4: np.float64(0.003081896346844526), 8: np.float64(0.05600450793198253), 88: np.float64(0.057680395119682815), 21: np.float64(0.05831960488031719), 45: np.float64(0.03568039511968281), 0: np.float64(0.05268039511968282)} 

err list= [np.float64(0.028635176199901857), np.float64(0.003081896346844526), np.float64(0.05600450793198253), np.float64(0.057680395119682815), np.float64(0.05831960488031719), np.float64(0.03568039511968281), np.float64(0.05268039511968282)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  0.05 

learned probs for this beta: {6: np.float64(0.2072449382034988), 4: np.float64(0.21767397644450695), 8: np.float64(0.1976195959308532), 88: np.float64(0.09436537235528543), 21: np.float64(0.09436537235528543), 45: np.float64(0.09436537235528543), 0: np.float64(0.09436537235528543)}
err dic= {6: np.float64(0.013755061796501211), 4: np.float64(0.01767397644450694), 8: np.float64(0.046380404069146786), 88: np.float64(0.04636537235528543), 21: np.float64(0.06963462764471458), 45: np.float64(0.024365372355285422), 0: np.float64(0.04136537235528543)} 

err list= [np.float64(0.013755061796501211), np.float64(0.01767397644450694), np.float64(0.046380404069146786), np.float64(0.04636537235528543), np.float64(0.06963462764471458), np.float64(0.024365372355285422), np.float64(0.04136537235528543)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  0.1 

learned probs for this beta: {6: np.float64(0.2082917451625922), 4: np.float64(0.23017726751722922), 8: np.float64(0.18964369922755436), 88: np.float64(0.09297182202315611), 21: np.float64(0.09297182202315611), 45: np.float64(0.09297182202315611), 0: np.float64(0.09297182202315611)}
err dic= {6: np.float64(0.012708254837407812), 4: np.float64(0.03017726751722921), 8: np.float64(0.05435630077244563), 88: np.float64(0.04497182202315611), 21: np.float64(0.0710281779768439), 45: np.float64(0.022971822023156105), 0: np.float64(0.03997182202315611)} 

err list= [np.float64(0.012708254837407812), np.float64(0.03017726751722921), np.float64(0.05435630077244563), np.float64(0.04497182202315611), np.float64(0.0710281779768439), np.float64(0.022971822023156105), np.float64(0.03997182202315611)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  0.25 

learned probs for this beta: {6: np.float64(0.2028670203187223), 4: np.float64(0.2619914842067512), 8: np.float64(0.16328435261681623), 88: np.float64(0.09296428571442755), 21: np.float64(0.09296428571442755), 45: np.float64(0.09296428571442755), 0: np.float64(0.09296428571442755)}
err dic= {6: np.float64(0.018132979681277694), 4: np.float64(0.06199148420675121), 8: np.float64(0.08071564738318376), 88: np.float64(0.04496428571442755), 21: np.float64(0.07103571428557245), 45: np.float64(0.022964285714427546), 0: np.float64(0.039964285714427554)} 

err list= [np.float64(0.018132979681277694), np.float64(0.06199148420675121), np.float64(0.08071564738318376), np.float64(0.04496428571442755), np.float64(0.07103571428557245), np.float64(0.022964285714427546), np.float64(0.039964285714427554)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  0.5 

learned probs for this beta: {6: np.float64(0.18619458285196203), 4: np.float64(0.3115615919046444), 8: np.float64(0.13038668238625092), 88: np.float64(0.09296428571428572), 21: np.float64(0.09296428571428572), 45: np.float64(0.09296428571428572), 0: np.float64(0.09296428571428572)}
err dic= {6: np.float64(0.034805417148037976), 4: np.float64(0.11156159190464437), 8: np.float64(0.11361331761374907), 88: np.float64(0.04496428571428572), 21: np.float64(0.07103571428571429), 45: np.float64(0.022964285714285715), 0: np.float64(0.03996428571428572)} 

err list= [np.float64(0.034805417148037976), np.float64(0.11156159190464437), np.float64(0.11361331761374907), np.float64(0.04496428571428572), np.float64(0.07103571428571429), np.float64(0.022964285714285715), np.float64(0.03996428571428572)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  0.75 

learned probs for this beta: {6: np.float64(0.16544864087664368), 4: np.float64(0.3518130873351027), 8: np.float64(0.11088112893111093), 88: np.float64(0.09296428571428572), 21: np.float64(0.09296428571428572), 45: np.float64(0.09296428571428572), 0: np.float64(0.09296428571428572)}
err dic= {6: np.float64(0.05555135912335632), 4: np.float64(0.15181308733510268), 8: np.float64(0.13311887106888906), 88: np.float64(0.04496428571428572), 21: np.float64(0.07103571428571429), 45: np.float64(0.022964285714285715), 0: np.float64(0.03996428571428572)} 

err list= [np.float64(0.05555135912335632), np.float64(0.15181308733510268), np.float64(0.13311887106888906), np.float64(0.04496428571428572), np.float64(0.07103571428571429), np.float64(0.022964285714285715), np.float64(0.03996428571428572)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  1 

learned probs for this beta: {6: np.float64(0.14576354513534284), 4: np.float64(0.3814904772487639), 8: np.float64(0.10088883475875049), 88: np.float64(0.09296428571428572), 21: np.float64(0.09296428571428572), 45: np.float64(0.09296428571428572), 0: np.float64(0.09296428571428572)}
err dic= {6: np.float64(0.07523645486465716), 4: np.float64(0.18149047724876388), 8: np.float64(0.1431111652412495), 88: np.float64(0.04496428571428572), 21: np.float64(0.07103571428571429), 45: np.float64(0.022964285714285715), 0: np.float64(0.03996428571428572)} 

err list= [np.float64(0.07523645486465716), np.float64(0.18149047724876388), np.float64(0.1431111652412495), np.float64(0.04496428571428572), np.float64(0.07103571428571429), np.float64(0.022964285714285715), np.float64(0.03996428571428572)]
results for assortment [6, 4, 8, 88, 21, 45] :

beta is  1.25 

learned probs for this beta: {6: np.float64(0.1296623240532316), 4: np.float64(0.4022009036605179), 8: np.float64(0.09627962942910756), 88: np.float64(0.09296428571428572), 21: np.float64(0.09296428571428572), 45: np.float64(0.09296428571428572), 0: np.float64(0.09296428571428572)}
err dic= {6: np.float64(0.09133767594676839), 4: np.float64(0.2022009036605179), 8: np.float64(0.14772037057089243), 88: np.float64(0.04496428571428572), 21: np.float64(0.07103571428571429), 45: np.float64(0.022964285714285715), 0: np.float64(0.03996428571428572)} 

err list= [np.float64(0.09133767594676839), np.float64(0.2022009036605179), np.float64(0.14772037057089243), np.float64(0.04496428571428572), np.float64(0.07103571428571429), np.float64(0.022964285714285715), np.float64(0.03996428571428572)]
results for assortment [6, 4, 8, 88, 21, 45] :

err MNL dic= {6: 0.221, 4: 0.2, 8: 0.244, 88: 0.048, 21: 0.164, 45: 0.07, 0: np.float64(0.3486177312968834)} 

err MNL list= [0.221, 0.2, 0.244, 0.048, 0.164, 0.07, np.float64(0.3486177312968834)]
sampled assortment [6, 4, 8, 15, 32, 31] number: 2
#  Learning probs for MM model, A = [6, 4, 8, 15, 32, 31]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 1, 11: 1, 14: 2, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 100, 14]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 8: 0, 9: 0, 10: 0, 15: 0, 100: 0} [2, 3, 6, 8, 9, 10, 15, 100]
#  Learning probs for MM model, A = [6, 4, 8, 15, 32, 31]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 1, 12: 3, 14: 2, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 14, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 6: 0, 7: 0, 100: 0} [2, 6, 7, 100]
empirical probabilities from test set: {6: 0.2, 4: 0.202, 8: 0.215, 15: 0.166, 32: 0.09, 31: 0.09, 0: 0.037}
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  0.025 

learned probs for this beta: {6: np.float64(0.33647165082435176), 4: np.float64(0.17290029914911326), 8: np.float64(0.16397768756397524), 15: np.float64(0.08166259061564057), 32: np.float64(0.08166259061564057), 31: np.float64(0.08166259061564057), 0: np.float64(0.08166259061564057)}
err dic= {6: np.float64(0.13647165082435175), 4: np.float64(0.029099700850886756), 8: np.float64(0.05102231243602476), 15: np.float64(0.08433740938435944), 32: np.float64(0.008337409384359423), 31: np.float64(0.008337409384359423), 0: np.float64(0.044662590615640575)} 

err list= [np.float64(0.13647165082435175), np.float64(0.029099700850886756), np.float64(0.05102231243602476), np.float64(0.08433740938435944), np.float64(0.008337409384359423), np.float64(0.008337409384359423), np.float64(0.044662590615640575)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  0.05 

learned probs for this beta: {6: np.float64(0.6637097228654811), 4: np.float64(0.14159651233417656), 8: np.float64(0.12154213182052281), 15: np.float64(0.018287908244955034), 32: np.float64(0.018287908244955034), 31: np.float64(0.018287908244955034), 0: np.float64(0.018287908244955034)}
err dic= {6: np.float64(0.4637097228654811), 4: np.float64(0.06040348766582346), 8: np.float64(0.09345786817947718), 15: np.float64(0.14771209175504496), 32: np.float64(0.07171209175504496), 31: np.float64(0.07171209175504496), 0: np.float64(0.018712091755044964)} 

err list= [np.float64(0.4637097228654811), np.float64(0.06040348766582346), np.float64(0.09345786817947718), np.float64(0.14771209175504496), np.float64(0.07171209175504496), np.float64(0.07171209175504496), np.float64(0.018712091755044964)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  0.1 

learned probs for this beta: {6: np.float64(0.765726492976029), 4: np.float64(0.13727147621498978), 8: np.float64(0.09673790792531492), 15: np.float64(6.6030720916669e-05), 32: np.float64(6.6030720916669e-05), 31: np.float64(6.6030720916669e-05), 0: np.float64(6.6030720916669e-05)}
err dic= {6: np.float64(0.5657264929760291), 4: np.float64(0.06472852378501023), 8: np.float64(0.11826209207468508), 15: np.float64(0.16593396927908333), 32: np.float64(0.08993396927908333), 31: np.float64(0.08993396927908333), 0: np.float64(0.03693396927908333)} 

err list= [np.float64(0.5657264929760291), np.float64(0.06472852378501023), np.float64(0.11826209207468508), np.float64(0.16593396927908333), np.float64(0.08993396927908333), np.float64(0.08993396927908333), np.float64(0.03693396927908333)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  0.25 

learned probs for this beta: {6: np.float64(0.7606527346003249), 4: np.float64(0.1690271984931507), 8: np.float64(0.07032006690321572), 15: np.float64(8.270567593427262e-13), 32: np.float64(8.270567593427262e-13), 31: np.float64(8.270567593427262e-13), 0: np.float64(8.270567593427262e-13)}
err dic= {6: np.float64(0.5606527346003249), 4: np.float64(0.03297280150684931), 8: np.float64(0.14467993309678429), 15: np.float64(0.16599999999917295), 32: np.float64(0.08999999999917294), 31: np.float64(0.08999999999917294), 0: np.float64(0.036999999999172944)} 

err list= [np.float64(0.5606527346003249), np.float64(0.03297280150684931), np.float64(0.14467993309678429), np.float64(0.16599999999917295), np.float64(0.08999999999917294), np.float64(0.08999999999917294), np.float64(0.036999999999172944)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  0.5 

learned probs for this beta: {6: np.float64(0.7439802971376763), 4: np.float64(0.21859730619035866), 8: np.float64(0.03742239667196521), 15: np.float64(6.209204412688091e-26), 32: np.float64(6.209204412688091e-26), 31: np.float64(6.209204412688091e-26), 0: np.float64(6.209204412688091e-26)}
err dic= {6: np.float64(0.5439802971376764), 4: np.float64(0.01659730619035865), 8: np.float64(0.1775776033280348), 15: np.float64(0.166), 32: np.float64(0.09), 31: np.float64(0.09), 0: np.float64(0.037)} 

err list= [np.float64(0.5439802971376764), np.float64(0.01659730619035865), np.float64(0.1775776033280348), np.float64(0.166), np.float64(0.09), np.float64(0.09), np.float64(0.037)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  0.75 

learned probs for this beta: {6: np.float64(0.7232343551623579), 4: np.float64(0.25884880162081697), 8: np.float64(0.017916843216825212), 15: np.float64(5.708988672754501e-39), 32: np.float64(5.708988672754501e-39), 31: np.float64(5.708988672754501e-39), 0: np.float64(5.708988672754501e-39)}
err dic= {6: np.float64(0.523234355162358), 4: np.float64(0.05684880162081696), 8: np.float64(0.19708315678317478), 15: np.float64(0.166), 32: np.float64(0.09), 31: np.float64(0.09), 0: np.float64(0.037)} 

err list= [np.float64(0.523234355162358), np.float64(0.05684880162081696), np.float64(0.19708315678317478), np.float64(0.166), np.float64(0.09), np.float64(0.09), np.float64(0.037)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  1 

learned probs for this beta: {6: np.float64(0.7035492594210571), 4: np.float64(0.28852619153447817), 8: np.float64(0.007924549044464761), 15: np.float64(6.6369655779966076e-52), 32: np.float64(6.6369655779966076e-52), 31: np.float64(6.6369655779966076e-52), 0: np.float64(6.6369655779966076e-52)}
err dic= {6: np.float64(0.5035492594210571), 4: np.float64(0.08652619153447816), 8: np.float64(0.20707545095553523), 15: np.float64(0.166), 32: np.float64(0.09), 31: np.float64(0.09), 0: np.float64(0.037)} 

err list= [np.float64(0.5035492594210571), np.float64(0.08652619153447816), np.float64(0.20707545095553523), np.float64(0.166), np.float64(0.09), np.float64(0.09), np.float64(0.037)]
results for assortment [6, 4, 8, 15, 32, 31] :

beta is  1.25 

learned probs for this beta: {6: np.float64(0.6874480383389459), 4: np.float64(0.3092366179462322), 8: np.float64(0.0033153437148218403), 15: np.float64(9.231406606855963e-65), 32: np.float64(9.231406606855963e-65), 31: np.float64(9.231406606855963e-65), 0: np.float64(9.231406606855963e-65)}
err dic= {6: np.float64(0.48744803833894584), 4: np.float64(0.10723661794623218), 8: np.float64(0.21168465628517816), 15: np.float64(0.166), 32: np.float64(0.09), 31: np.float64(0.09), 0: np.float64(0.037)} 

err list= [np.float64(0.48744803833894584), np.float64(0.10723661794623218), np.float64(0.21168465628517816), np.float64(0.166), np.float64(0.09), np.float64(0.09), np.float64(0.037)]
results for assortment [6, 4, 8, 15, 32, 31] :

err MNL dic= {6: 0.2, 4: 0.202, 8: 0.215, 15: 0.166, 32: 0.09, 31: 0.09, 0: np.float64(0.3578335523253277)} 

err MNL list= [0.2, 0.202, 0.215, 0.166, 0.09, 0.09, np.float64(0.3578335523253277)]
sampled assortment [2, 4, 5, 70, 36, 51] number: 3
#  Learning probs for MM model, A = [2, 4, 5, 70, 36, 51]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 14: 2, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10, 14]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 100: 0} [2, 3, 6, 7, 10, 100]
#  Learning probs for MM model, A = [2, 4, 5, 70, 36, 51]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 2, 11: 1, 12: 2, 14: 2, 100: 1} [1, 2, 3, 4, 5, 6, 8, 9, 11, 100, 7, 10, 12, 14]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 100: 0} [2, 3, 6, 7, 10, 100]
empirical probabilities from test set: {2: 0.258, 4: 0.252, 5: 0.223, 70: 0.056, 36: 0.091, 51: 0.086, 0: 0.034}
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.3825708491986475), 4: np.float64(0.1618517897630975), 5: np.float64(0.15938854084301413), 70: np.float64(0.0740472050488108), 36: np.float64(0.0740472050488108), 51: np.float64(0.0740472050488108), 0: np.float64(0.0740472050488108)}
err dic= {2: np.float64(0.12457084919864747), 4: np.float64(0.0901482102369025), 5: np.float64(0.06361145915698588), 70: np.float64(0.018047205048810792), 36: np.float64(0.016952794951189204), 51: np.float64(0.0119527949511892), 0: np.float64(0.04004720504881079)} 

err list= [np.float64(0.12457084919864747), np.float64(0.0901482102369025), np.float64(0.06361145915698588), np.float64(0.018047205048810792), np.float64(0.016952794951189204), np.float64(0.0119527949511892), np.float64(0.04004720504881079)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.6829158096254876), 4: np.float64(0.12830633273468506), 5: np.float64(0.12279056792309742), 70: np.float64(0.01649682242918276), 36: np.float64(0.01649682242918276), 51: np.float64(0.01649682242918276), 0: np.float64(0.01649682242918276)}
err dic= {2: np.float64(0.4249158096254876), 4: np.float64(0.12369366726531494), 5: np.float64(0.10020943207690258), 70: np.float64(0.03950317757081724), 36: np.float64(0.07450317757081723), 51: np.float64(0.06950317757081723), 0: np.float64(0.017503177570817242)} 

err list= [np.float64(0.4249158096254876), np.float64(0.12369366726531494), np.float64(0.10020943207690258), np.float64(0.03950317757081724), np.float64(0.07450317757081723), np.float64(0.06950317757081723), np.float64(0.017503177570817242)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.7846916849216099), 4: np.float64(0.1128927967426756), 5: np.float64(0.10215521331786687), 70: np.float64(6.507625446194237e-05), 36: np.float64(6.507625446194237e-05), 51: np.float64(6.507625446194237e-05), 0: np.float64(6.507625446194237e-05)}
err dic= {2: np.float64(0.5266916849216099), 4: np.float64(0.1391072032573244), 5: np.float64(0.12084478668213314), 70: np.float64(0.05593492374553806), 36: np.float64(0.09093492374553805), 51: np.float64(0.08593492374553804), 0: np.float64(0.03393492374553806)} 

err list= [np.float64(0.5266916849216099), np.float64(0.1391072032573244), np.float64(0.12084478668213314), np.float64(0.05593492374553806), np.float64(0.09093492374553805), np.float64(0.08593492374553804), np.float64(0.03393492374553806)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.812866035832654), 4: np.float64(0.10520231717074152), 5: np.float64(0.08193164699364439), 70: np.float64(7.400054404874377e-13), 36: np.float64(7.400054404874377e-13), 51: np.float64(7.400054404874377e-13), 0: np.float64(7.400054404874377e-13)}
err dic= {2: np.float64(0.554866035832654), 4: np.float64(0.14679768282925848), 5: np.float64(0.14106835300635562), 70: np.float64(0.055999999999259996), 36: np.float64(0.09099999999925999), 51: np.float64(0.08599999999925999), 0: np.float64(0.03399999999926)} 

err list= [np.float64(0.554866035832654), np.float64(0.14679768282925848), np.float64(0.14106835300635562), np.float64(0.055999999999259996), np.float64(0.09099999999925999), np.float64(0.08599999999925999), np.float64(0.03399999999926)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.8584996240604408), 4: np.float64(0.08807822937214914), 5: np.float64(0.053422146567410275), 70: np.float64(4.293436691236954e-26), 36: np.float64(4.293436691236954e-26), 51: np.float64(4.293436691236954e-26), 0: np.float64(4.293436691236954e-26)}
err dic= {2: np.float64(0.6004996240604408), 4: np.float64(0.16392177062785085), 5: np.float64(0.16957785343258974), 70: np.float64(0.056), 36: np.float64(0.091), 51: np.float64(0.086), 0: np.float64(0.034)} 

err list= [np.float64(0.6004996240604408), np.float64(0.16392177062785085), np.float64(0.16957785343258974), np.float64(0.056), np.float64(0.091), np.float64(0.086), np.float64(0.034)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.8987106297151037), 4: np.float64(0.06879358275039067), 5: np.float64(0.03249578753450578), 70: np.float64(2.5922643237443227e-39), 36: np.float64(2.5922643237443227e-39), 51: np.float64(2.5922643237443227e-39), 0: np.float64(2.5922643237443227e-39)}
err dic= {2: np.float64(0.6407106297151037), 4: np.float64(0.18320641724960934), 5: np.float64(0.19050421246549423), 70: np.float64(0.056), 36: np.float64(0.091), 51: np.float64(0.086), 0: np.float64(0.034)} 

err list= [np.float64(0.6407106297151037), np.float64(0.18320641724960934), np.float64(0.19050421246549423), np.float64(0.056), np.float64(0.091), np.float64(0.086), np.float64(0.034)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  1 

learned probs for this beta: {2: np.float64(0.9306733204611077), 4: np.float64(0.05068186380484058), 5: np.float64(0.0186448157340519), 70: np.float64(1.6739096823747787e-52), 36: np.float64(1.6739096823747787e-52), 51: np.float64(1.6739096823747787e-52), 0: np.float64(1.6739096823747787e-52)}
err dic= {2: np.float64(0.6726733204611077), 4: np.float64(0.20131813619515943), 5: np.float64(0.2043551842659481), 70: np.float64(0.056), 36: np.float64(0.091), 51: np.float64(0.086), 0: np.float64(0.034)} 

err list= [np.float64(0.6726733204611077), np.float64(0.20131813619515943), np.float64(0.2043551842659481), np.float64(0.056), np.float64(0.091), np.float64(0.086), np.float64(0.034)]
results for assortment [2, 4, 5, 70, 36, 51] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.954148305496983), 4: np.float64(0.03564051577181925), 5: np.float64(0.010211178731197475), 70: np.float64(1.1833861562850586e-65), 36: np.float64(1.1833861562850586e-65), 51: np.float64(1.1833861562850586e-65), 0: np.float64(1.1833861562850586e-65)}
err dic= {2: np.float64(0.696148305496983), 4: np.float64(0.21635948422818074), 5: np.float64(0.21278882126880252), 70: np.float64(0.056), 36: np.float64(0.091), 51: np.float64(0.086), 0: np.float64(0.034)} 

err list= [np.float64(0.696148305496983), np.float64(0.21635948422818074), np.float64(0.21278882126880252), np.float64(0.056), np.float64(0.091), np.float64(0.086), np.float64(0.034)]
results for assortment [2, 4, 5, 70, 36, 51] :

err MNL dic= {2: 0.258, 4: 0.252, 5: 0.223, 70: 0.056, 36: 0.091, 51: 0.086, 0: np.float64(0.37258520680589324)} 

err MNL list= [0.258, 0.252, 0.223, 0.056, 0.091, 0.086, np.float64(0.37258520680589324)]
sampled assortment [6, 7, 8, 48, 41, 21] number: 4
#  Learning probs for MM model, A = [6, 7, 8, 48, 41, 21]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 11: 0, 12: 0, 100: 0} [2, 3, 6, 7, 10, 11, 12, 100]
#  Learning probs for MM model, A = [6, 7, 8, 48, 41, 21]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 12: 2, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 5: 0, 6: 0, 7: 0, 8: 0, 12: 0, 100: 0} [2, 5, 6, 7, 8, 12, 100]
empirical probabilities from test set: {6: 0.24, 7: 0.183, 8: 0.241, 48: 0.074, 41: 0.08, 21: 0.151, 0: 0.031}
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  0.025 

learned probs for this beta: {6: np.float64(0.2849844869942415), 7: np.float64(0.2779481949397931), 8: np.float64(0.27108562955516363), 48: np.float64(0.04149542212770073), 41: np.float64(0.04149542212770073), 21: np.float64(0.04149542212770073), 0: np.float64(0.04149542212770073)}
err dic= {6: np.float64(0.04498448699424151), 7: np.float64(0.09494819493979312), 8: np.float64(0.03008562955516364), 48: np.float64(0.03250457787229927), 41: np.float64(0.03850457787229927), 21: np.float64(0.10950457787229927), 0: np.float64(0.01049542212770073)} 

err list= [np.float64(0.04498448699424151), np.float64(0.09494819493979312), np.float64(0.03008562955516364), np.float64(0.03250457787229927), np.float64(0.03850457787229927), np.float64(0.10950457787229927), np.float64(0.01049542212770073)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  0.05 

learned probs for this beta: {6: np.float64(0.34540860143322805), 7: np.float64(0.328562825158926), 8: np.float64(0.312538627088254), 48: np.float64(0.003372486579898226), 41: np.float64(0.003372486579898226), 21: np.float64(0.003372486579898226), 0: np.float64(0.003372486579898226)}
err dic= {6: np.float64(0.10540860143322806), 7: np.float64(0.145562825158926), 8: np.float64(0.07153862708825398), 48: np.float64(0.07062751342010178), 41: np.float64(0.07662751342010178), 21: np.float64(0.14762751342010177), 0: np.float64(0.027627513420101772)} 

err list= [np.float64(0.10540860143322806), np.float64(0.145562825158926), np.float64(0.07153862708825398), np.float64(0.07062751342010178), np.float64(0.07662751342010178), np.float64(0.14762751342010177), np.float64(0.027627513420101772)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  0.1 

learned probs for this beta: {6: np.float64(0.36714309619250274), 7: np.float64(0.33220481120855205), 8: np.float64(0.3005913436330698), 48: np.float64(1.5187241468916645e-05), 41: np.float64(1.5187241468916645e-05), 21: np.float64(1.5187241468916645e-05), 0: np.float64(1.5187241468916645e-05)}
err dic= {6: np.float64(0.12714309619250275), 7: np.float64(0.14920481120855206), 8: np.float64(0.05959134363306978), 48: np.float64(0.07398481275853108), 41: np.float64(0.07998481275853109), 21: np.float64(0.15098481275853107), 0: np.float64(0.030984812758531082)} 

err list= [np.float64(0.12714309619250275), np.float64(0.14920481120855206), np.float64(0.05959134363306978), np.float64(0.07398481275853108), np.float64(0.07998481275853109), np.float64(0.15098481275853107), np.float64(0.030984812758531082)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  0.25 

learned probs for this beta: {6: np.float64(0.4192289516092374), 7: np.float64(0.3264958357994783), 8: np.float64(0.25427521259018643), 48: np.float64(2.743534416446425e-13), 41: np.float64(2.743534416446425e-13), 21: np.float64(2.743534416446425e-13), 0: np.float64(2.743534416446425e-13)}
err dic= {6: np.float64(0.1792289516092374), 7: np.float64(0.14349583579947828), 8: np.float64(0.013275212590186436), 48: np.float64(0.07399999999972565), 41: np.float64(0.07999999999972565), 21: np.float64(0.15099999999972563), 0: np.float64(0.030999999999725646)} 

err list= [np.float64(0.1792289516092374), np.float64(0.14349583579947828), np.float64(0.013275212590186436), np.float64(0.07399999999972565), np.float64(0.07999999999972565), np.float64(0.15099999999972563), np.float64(0.030999999999725646)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  0.5 

learned probs for this beta: {6: np.float64(0.5064803910556541), 7: np.float64(0.3071958857184984), 8: np.float64(0.18632372322584762), 48: np.float64(4.503732969323052e-26), 41: np.float64(4.503732969323052e-26), 21: np.float64(4.503732969323052e-26), 0: np.float64(4.503732969323052e-26)}
err dic= {6: np.float64(0.26648039105565413), 7: np.float64(0.12419588571849838), 8: np.float64(0.05467627677415238), 48: np.float64(0.074), 41: np.float64(0.08), 21: np.float64(0.151), 0: np.float64(0.031)} 

err list= [np.float64(0.26648039105565413), np.float64(0.12419588571849838), np.float64(0.05467627677415238), np.float64(0.074), np.float64(0.08), np.float64(0.151), np.float64(0.031)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  0.75 

learned probs for this beta: {6: np.float64(0.5897976636568125), 7: np.float64(0.278600689196273), 8: np.float64(0.1316016471469143), 48: np.float64(9.329841946512302e-39), 41: np.float64(9.329841946512302e-39), 21: np.float64(9.329841946512302e-39), 0: np.float64(9.329841946512302e-39)}
err dic= {6: np.float64(0.34979766365681253), 7: np.float64(0.09560068919627301), 8: np.float64(0.10939835285308569), 48: np.float64(0.074), 41: np.float64(0.08), 21: np.float64(0.151), 0: np.float64(0.031)} 

err list= [np.float64(0.34979766365681253), np.float64(0.09560068919627301), np.float64(0.10939835285308569), np.float64(0.074), np.float64(0.08), np.float64(0.151), np.float64(0.031)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  1 

learned probs for this beta: {6: np.float64(0.665240955774822), 7: np.float64(0.24472847105479772), 8: np.float64(0.09003057317038049), 48: np.float64(2.1955406943842735e-51), 41: np.float64(2.1955406943842735e-51), 21: np.float64(2.1955406943842735e-51), 0: np.float64(2.1955406943842735e-51)}
err dic= {6: np.float64(0.425240955774822), 7: np.float64(0.06172847105479773), 8: np.float64(0.1509694268296195), 48: np.float64(0.074), 41: np.float64(0.08), 21: np.float64(0.151), 0: np.float64(0.031)} 

err list= [np.float64(0.425240955774822), np.float64(0.06172847105479773), np.float64(0.1509694268296195), np.float64(0.074), np.float64(0.08), np.float64(0.151), np.float64(0.031)]
results for assortment [6, 7, 8, 48, 41, 21] :

beta is  1.25 

learned probs for this beta: {6: np.float64(0.7306791292026888), 7: np.float64(0.20934307548219694), 8: np.float64(0.05997779531511428), 48: np.float64(5.5218018022239174e-64), 41: np.float64(5.5218018022239174e-64), 21: np.float64(5.5218018022239174e-64), 0: np.float64(5.5218018022239174e-64)}
err dic= {6: np.float64(0.49067912920268886), 7: np.float64(0.026343075482196943), 8: np.float64(0.18102220468488572), 48: np.float64(0.074), 41: np.float64(0.08), 21: np.float64(0.151), 0: np.float64(0.031)} 

err list= [np.float64(0.49067912920268886), np.float64(0.026343075482196943), np.float64(0.18102220468488572), np.float64(0.074), np.float64(0.08), np.float64(0.151), np.float64(0.031)]
results for assortment [6, 7, 8, 48, 41, 21] :

err MNL dic= {6: 0.24, 7: 0.183, 8: 0.241, 48: 0.074, 41: 0.08, 21: 0.151, 0: np.float64(0.36923372571443014)} 

err MNL list= [0.24, 0.183, 0.241, 0.074, 0.08, 0.151, np.float64(0.36923372571443014)]
sampled assortment [1, 3, 2, 70, 81, 56] number: 5
#  Learning probs for MM model, A = [1, 3, 2, 70, 81, 56]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 14: 2, 100: 1} [1, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10, 14]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {3: 0, 6: 0, 7: 0, 100: 0} [3, 6, 7, 100]
#  Learning probs for MM model, A = [1, 3, 2, 70, 81, 56]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 2, 8: 1, 9: 1, 10: 1, 11: 1, 12: 2, 100: 1} [1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 100, 7, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 100: 0} [2, 3, 6, 7, 10, 100]
empirical probabilities from test set: {1: 0.256, 3: 0.238, 2: 0.287, 70: 0.06, 81: 0.056, 56: 0.065, 0: 0.038}
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.14568486843814643), 3: np.float64(0.31625649705496955), 2: np.float64(0.3242625683945496), 70: np.float64(0.05344901652808455), 81: np.float64(0.05344901652808455), 56: np.float64(0.05344901652808455), 0: np.float64(0.05344901652808455)}
err dic= {1: np.float64(0.11031513156185357), 3: np.float64(0.07825649705496956), 2: np.float64(0.03726256839454961), 70: np.float64(0.0065509834719154475), 81: np.float64(0.002550983471915451), 56: np.float64(0.011550983471915452), 0: np.float64(0.015449016528084551)} 

err list= [np.float64(0.11031513156185357), np.float64(0.07825649705496956), np.float64(0.03726256839454961), np.float64(0.0065509834719154475), np.float64(0.002550983471915451), np.float64(0.011550983471915452), np.float64(0.015449016528084551)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.12387096267618193), 3: np.float64(0.41835313537996943), 2: np.float64(0.4398025593032477), 70: np.float64(0.004493335660150508), 81: np.float64(0.004493335660150508), 56: np.float64(0.004493335660150508), 0: np.float64(0.004493335660150508)}
err dic= {1: np.float64(0.1321290373238181), 3: np.float64(0.18035313537996944), 2: np.float64(0.1528025593032477), 70: np.float64(0.05550666433984949), 81: np.float64(0.05150666433984949), 56: np.float64(0.0605066643398495), 0: np.float64(0.03350666433984949)} 

err list= [np.float64(0.1321290373238181), np.float64(0.18035313537996944), np.float64(0.1528025593032477), np.float64(0.05550666433984949), np.float64(0.05150666433984949), np.float64(0.0605066643398495), np.float64(0.03350666433984949)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.1282315701452596), 3: np.float64(0.41408355455582657), 2: np.float64(0.4576331021484903), 70: np.float64(1.2943287605902155e-05), 81: np.float64(1.2943287605902155e-05), 56: np.float64(1.2943287605902155e-05), 0: np.float64(1.2943287605902155e-05)}
err dic= {1: np.float64(0.1277684298547404), 3: np.float64(0.17608355455582658), 2: np.float64(0.1706331021484903), 70: np.float64(0.0599870567123941), 81: np.float64(0.0559870567123941), 56: np.float64(0.0649870567123941), 0: np.float64(0.0379870567123941)} 

err list= [np.float64(0.1277684298547404), np.float64(0.17608355455582658), np.float64(0.1706331021484903), np.float64(0.0599870567123941), np.float64(0.0559870567123941), np.float64(0.0649870567123941), np.float64(0.0379870567123941)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.14641571134966302), 3: np.float64(0.3737192600455581), 2: np.float64(0.4798650286042321), 70: np.float64(1.366127987817959e-13), 81: np.float64(1.366127987817959e-13), 56: np.float64(1.366127987817959e-13), 0: np.float64(1.366127987817959e-13)}
err dic= {1: np.float64(0.10958428865033698), 3: np.float64(0.13571926004555812), 2: np.float64(0.1928650286042321), 70: np.float64(0.059999999999863385), 81: np.float64(0.05599999999986339), 56: np.float64(0.06499999999986339), 0: np.float64(0.037999999999863386)} 

err list= [np.float64(0.10958428865033698), np.float64(0.13571926004555812), np.float64(0.1928650286042321), np.float64(0.059999999999863385), np.float64(0.05599999999986339), np.float64(0.06499999999986339), np.float64(0.037999999999863386)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.17688827657618725), 3: np.float64(0.31075815055702044), 2: np.float64(0.5123535728667925), 70: np.float64(6.922139049793725e-27), 81: np.float64(6.922139049793725e-27), 56: np.float64(6.922139049793725e-27), 0: np.float64(6.922139049793725e-27)}
err dic= {1: np.float64(0.07911172342381276), 3: np.float64(0.07275815055702045), 2: np.float64(0.22535357286679253), 70: np.float64(0.06), 81: np.float64(0.056), 56: np.float64(0.065), 0: np.float64(0.038)} 

err list= [np.float64(0.07911172342381276), np.float64(0.07275815055702045), np.float64(0.22535357286679253), np.float64(0.06), np.float64(0.056), np.float64(0.065), np.float64(0.038)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.20598683403214177), 3: np.float64(0.2547363367776728), 2: np.float64(0.5392768291901855), 70: np.float64(3.779758621849972e-40), 81: np.float64(3.779758621849972e-40), 56: np.float64(3.779758621849972e-40), 0: np.float64(3.779758621849972e-40)}
err dic= {1: np.float64(0.050013165967858236), 3: np.float64(0.016736336777672833), 2: np.float64(0.2522768291901855), 70: np.float64(0.06), 81: np.float64(0.056), 56: np.float64(0.065), 0: np.float64(0.038)} 

err list= [np.float64(0.050013165967858236), np.float64(0.016736336777672833), np.float64(0.2522768291901855), np.float64(0.06), np.float64(0.056), np.float64(0.065), np.float64(0.038)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  1 

learned probs for this beta: {1: np.float64(0.23233540380435652), 3: np.float64(0.20645680763627974), 2: np.float64(0.5612077885593638), 70: np.float64(2.248296604250592e-53), 81: np.float64(2.248296604250592e-53), 56: np.float64(2.248296604250592e-53), 0: np.float64(2.248296604250592e-53)}
err dic= {1: np.float64(0.023664596195643484), 3: np.float64(0.031543192363720246), 2: np.float64(0.27420778855936384), 70: np.float64(0.06), 81: np.float64(0.056), 56: np.float64(0.065), 0: np.float64(0.038)} 

err list= [np.float64(0.023664596195643484), np.float64(0.031543192363720246), np.float64(0.27420778855936384), np.float64(0.06), np.float64(0.056), np.float64(0.065), np.float64(0.038)]
results for assortment [1, 3, 2, 70, 81, 56] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.255189685874039), 3: np.float64(0.1658693603543734), 2: np.float64(0.5789409537715876), 70: np.float64(1.442757849988478e-66), 81: np.float64(1.442757849988478e-66), 56: np.float64(1.442757849988478e-66), 0: np.float64(1.442757849988478e-66)}
err dic= {1: np.float64(0.0008103141259609981), 3: np.float64(0.07213063964562658), 2: np.float64(0.29194095377158763), 70: np.float64(0.06), 81: np.float64(0.056), 56: np.float64(0.065), 0: np.float64(0.038)} 

err list= [np.float64(0.0008103141259609981), np.float64(0.07213063964562658), np.float64(0.29194095377158763), np.float64(0.06), np.float64(0.056), np.float64(0.065), np.float64(0.038)]
results for assortment [1, 3, 2, 70, 81, 56] :

err MNL dic= {1: 0.256, 3: 0.238, 2: 0.287, 70: 0.06, 81: 0.056, 56: 0.065, 0: np.float64(0.3702885870845483)} 

err MNL list= [0.256, 0.238, 0.287, 0.06, 0.056, 0.065, np.float64(0.3702885870845483)]
sampled assortment [5, 8, 6, 17, 77, 56] number: 6
#  Learning probs for MM model, A = [5, 8, 6, 17, 77, 56]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 1, 12: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 7: 0, 8: 0, 9: 0, 100: 0} [2, 3, 7, 8, 9, 100]
#  Learning probs for MM model, A = [5, 8, 6, 17, 77, 56]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 1, 12: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 6: 0, 7: 0, 8: 0, 12: 0, 100: 0} [2, 6, 7, 8, 12, 100]
empirical probabilities from test set: {5: 0.229, 8: 0.252, 6: 0.238, 17: 0.148, 77: 0.048, 56: 0.038, 0: 0.047}
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  0.025 

learned probs for this beta: {5: np.float64(0.14578526303984526), 8: np.float64(0.3077065994019205), 6: np.float64(0.32188608428429866), 17: np.float64(0.056155513318484396), 77: np.float64(0.056155513318484396), 56: np.float64(0.056155513318484396), 0: np.float64(0.056155513318484396)}
err dic= {5: np.float64(0.08321473696015474), 8: np.float64(0.05570659940192052), 6: np.float64(0.08388608428429867), 17: np.float64(0.0918444866815156), 77: np.float64(0.008155513318484395), 56: np.float64(0.018155513318484397), 0: np.float64(0.009155513318484396)} 

err list= [np.float64(0.08321473696015474), np.float64(0.05570659940192052), np.float64(0.08388608428429867), np.float64(0.0918444866815156), np.float64(0.008155513318484395), np.float64(0.018155513318484397), np.float64(0.009155513318484396)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  0.05 

learned probs for this beta: {5: np.float64(0.1252769428184597), 8: np.float64(0.40929985539387254), 6: np.float64(0.44555836680217775), 17: np.float64(0.004966208746372713), 77: np.float64(0.004966208746372713), 56: np.float64(0.004966208746372713), 0: np.float64(0.004966208746372713)}
err dic= {5: np.float64(0.10372305718154032), 8: np.float64(0.15729985539387253), 6: np.float64(0.20755836680217776), 17: np.float64(0.14303379125362728), 77: np.float64(0.04303379125362729), 56: np.float64(0.033033791253627286), 0: np.float64(0.04203379125362729)} 

err list= [np.float64(0.10372305718154032), np.float64(0.15729985539387253), np.float64(0.20755836680217776), np.float64(0.14303379125362728), np.float64(0.04303379125362729), np.float64(0.033033791253627286), np.float64(0.04203379125362729)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  0.1 

learned probs for this beta: {5: np.float64(0.13111282312601705), 8: np.float64(0.3977861880935164), 6: np.float64(0.47103814826115276), 17: np.float64(1.5710129828500666e-05), 77: np.float64(1.5710129828500666e-05), 56: np.float64(1.5710129828500666e-05), 0: np.float64(1.5710129828500666e-05)}
err dic= {5: np.float64(0.09788717687398296), 8: np.float64(0.1457861880935164), 6: np.float64(0.23303814826115277), 17: np.float64(0.14798428987017148), 77: np.float64(0.047984289870171504), 56: np.float64(0.0379842898701715), 0: np.float64(0.0469842898701715)} 

err list= [np.float64(0.09788717687398296), np.float64(0.1457861880935164), np.float64(0.23303814826115277), np.float64(0.14798428987017148), np.float64(0.047984289870171504), np.float64(0.0379842898701715), np.float64(0.0469842898701715)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  0.25 

learned probs for this beta: {5: np.float64(0.15328968235366258), 8: np.float64(0.3350709052765596), 6: np.float64(0.5116394123687644), 17: np.float64(2.531956962378683e-13), 77: np.float64(2.531956962378683e-13), 56: np.float64(2.531956962378683e-13), 0: np.float64(2.531956962378683e-13)}
err dic= {5: np.float64(0.07571031764633743), 8: np.float64(0.08307090527655958), 6: np.float64(0.27363941236876443), 17: np.float64(0.1479999999997468), 77: np.float64(0.04799999999974681), 56: np.float64(0.037999999999746806), 0: np.float64(0.04699999999974681)} 

err list= [np.float64(0.07571031764633743), np.float64(0.08307090527655958), np.float64(0.27363941236876443), np.float64(0.1479999999997468), np.float64(0.04799999999974681), np.float64(0.037999999999746806), np.float64(0.04699999999974681)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  0.5 

learned probs for this beta: {5: np.float64(0.1885396903454042), 8: np.float64(0.24307866507674253), 6: np.float64(0.5683816445778533), 17: np.float64(3.252703236380216e-26), 77: np.float64(3.252703236380216e-26), 56: np.float64(3.252703236380216e-26), 0: np.float64(3.252703236380216e-26)}
err dic= {5: np.float64(0.04046030965459582), 8: np.float64(0.008921334923257473), 6: np.float64(0.33038164457785335), 17: np.float64(0.148), 77: np.float64(0.048), 56: np.float64(0.038), 0: np.float64(0.047)} 

err list= [np.float64(0.04046030965459582), np.float64(0.008921334923257473), np.float64(0.33038164457785335), np.float64(0.148), np.float64(0.048), np.float64(0.038), np.float64(0.047)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  0.75 

learned probs for this beta: {5: np.float64(0.21945292176369594), 8: np.float64(0.16993933883841414), 6: np.float64(0.6106077393978899), 17: np.float64(5.1827749895250324e-39), 77: np.float64(5.1827749895250324e-39), 56: np.float64(5.1827749895250324e-39), 0: np.float64(5.1827749895250324e-39)}
err dic= {5: np.float64(0.009547078236304074), 8: np.float64(0.08206066116158586), 6: np.float64(0.37260773939788994), 17: np.float64(0.148), 77: np.float64(0.048), 56: np.float64(0.038), 0: np.float64(0.047)} 

err list= [np.float64(0.009547078236304074), np.float64(0.08206066116158586), np.float64(0.37260773939788994), np.float64(0.148), np.float64(0.048), np.float64(0.038), np.float64(0.047)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  1 

learned probs for this beta: {5: np.float64(0.24513376575006013), 8: np.float64(0.11535477505719206), 6: np.float64(0.639511459192748), 17: np.float64(9.404902796218567e-52), 77: np.float64(9.404902796218567e-52), 56: np.float64(9.404902796218567e-52), 0: np.float64(9.404902796218567e-52)}
err dic= {5: np.float64(0.01613376575006012), 8: np.float64(0.13664522494280795), 6: np.float64(0.401511459192748), 17: np.float64(0.148), 77: np.float64(0.048), 56: np.float64(0.038), 0: np.float64(0.047)} 

err list= [np.float64(0.01613376575006012), np.float64(0.13664522494280795), np.float64(0.401511459192748), np.float64(0.148), np.float64(0.048), np.float64(0.038), np.float64(0.047)]
results for assortment [5, 8, 6, 17, 77, 56] :

beta is  1.25 

learned probs for this beta: {5: np.float64(0.2659257521566452), 8: np.float64(0.07650423587391302), 6: np.float64(0.6575700119694418), 17: np.float64(1.82289878533535e-64), 77: np.float64(1.82289878533535e-64), 56: np.float64(1.82289878533535e-64), 0: np.float64(1.82289878533535e-64)}
err dic= {5: np.float64(0.0369257521566452), 8: np.float64(0.17549576412608697), 6: np.float64(0.41957001196944177), 17: np.float64(0.148), 77: np.float64(0.048), 56: np.float64(0.038), 0: np.float64(0.047)} 

err list= [np.float64(0.0369257521566452), np.float64(0.17549576412608697), np.float64(0.41957001196944177), np.float64(0.148), np.float64(0.048), np.float64(0.038), np.float64(0.047)]
results for assortment [5, 8, 6, 17, 77, 56] :

err MNL dic= {5: 0.229, 8: 0.252, 6: 0.238, 17: 0.148, 77: 0.048, 56: 0.038, 0: np.float64(0.35495541325773006)} 

err MNL list= [0.229, 0.252, 0.238, 0.148, 0.048, 0.038, np.float64(0.35495541325773006)]
sampled assortment [8, 6, 3, 85, 22, 61] number: 7
#  Learning probs for MM model, A = [8, 6, 3, 85, 22, 61]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 1, 11: 1, 12: 2, 15: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 100, 12, 15]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 8: 0, 10: 0, 15: 0, 100: 0} [2, 3, 6, 7, 8, 10, 15, 100]
#  Learning probs for MM model, A = [8, 6, 3, 85, 22, 61]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 12: 2, 15: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10, 12, 15]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 6: 0, 7: 0, 8: 0, 10: 0, 12: 0, 100: 0} [2, 6, 7, 8, 10, 12, 100]
empirical probabilities from test set: {8: 0.241, 6: 0.234, 3: 0.217, 85: 0.051, 22: 0.151, 61: 0.062, 0: 0.044}
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  0.025 

learned probs for this beta: {8: np.float64(0.3133471932025074), 6: np.float64(0.3277261969287145), 3: np.float64(0.14606884335845227), 85: np.float64(0.053214441627581925), 22: np.float64(0.053214441627581925), 61: np.float64(0.053214441627581925), 0: np.float64(0.053214441627581925)}
err dic= {8: np.float64(0.07234719320250743), 6: np.float64(0.0937261969287145), 3: np.float64(0.07093115664154773), 85: np.float64(0.0022144416275819284), 22: np.float64(0.09778555837241806), 61: np.float64(0.008785558372418074), 0: np.float64(0.009214441627581928)} 

err list= [np.float64(0.07234719320250743), np.float64(0.0937261969287145), np.float64(0.07093115664154773), np.float64(0.0022144416275819284), np.float64(0.09778555837241806), np.float64(0.008785558372418074), np.float64(0.009214441627581928)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  0.05 

learned probs for this beta: {8: np.float64(0.4062988145524381), 6: np.float64(0.4422999806071837), 3: np.float64(0.13134523902326764), 85: np.float64(0.005013991454277925), 22: np.float64(0.005013991454277925), 61: np.float64(0.005013991454277925), 0: np.float64(0.005013991454277925)}
err dic= {8: np.float64(0.1652988145524381), 6: np.float64(0.20829998060718366), 3: np.float64(0.08565476097673236), 85: np.float64(0.045986008545722074), 22: np.float64(0.14598600854572208), 61: np.float64(0.056986008545722076), 0: np.float64(0.038986008545722074)} 

err list= [np.float64(0.1652988145524381), np.float64(0.20829998060718366), np.float64(0.08565476097673236), np.float64(0.045986008545722074), np.float64(0.14598600854572208), np.float64(0.056986008545722076), np.float64(0.038986008545722074)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  0.1 

learned probs for this beta: {8: np.float64(0.3921389637468048), 6: np.float64(0.4643923831630009), 3: np.float64(0.14340202850113357), 85: np.float64(1.6656147265233256e-05), 22: np.float64(1.6656147265233256e-05), 61: np.float64(1.6656147265233256e-05), 0: np.float64(1.6656147265233256e-05)}
err dic= {8: np.float64(0.1511389637468048), 6: np.float64(0.2303923831630009), 3: np.float64(0.07359797149886643), 85: np.float64(0.050983343852734765), 22: np.float64(0.15098334385273476), 61: np.float64(0.06198334385273477), 0: np.float64(0.043983343852734766)} 

err list= [np.float64(0.1511389637468048), np.float64(0.2303923831630009), np.float64(0.07359797149886643), np.float64(0.050983343852734765), np.float64(0.15098334385273476), np.float64(0.06198334385273477), np.float64(0.043983343852734766)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  0.25 

learned probs for this beta: {8: np.float64(0.32257916554163385), 6: np.float64(0.492671479797866), 3: np.float64(0.18474935465950862), 85: np.float64(2.4776725775901846e-13), 22: np.float64(2.4776725775901846e-13), 61: np.float64(2.4776725775901846e-13), 0: np.float64(2.4776725775901846e-13)}
err dic= {8: np.float64(0.08157916554163386), 6: np.float64(0.258671479797866), 3: np.float64(0.03225064534049138), 85: np.float64(0.05099999999975223), 22: np.float64(0.15099999999975222), 61: np.float64(0.06199999999975223), 0: np.float64(0.04399999999975223)} 

err list= [np.float64(0.08157916554163386), np.float64(0.258671479797866), np.float64(0.03225064534049138), np.float64(0.05099999999975223), np.float64(0.15099999999975222), np.float64(0.06199999999975223), np.float64(0.04399999999975223)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  0.5 

learned probs for this beta: {8: np.float64(0.22607995202433476), 6: np.float64(0.527846546557311), 3: np.float64(0.2460735014183546), 85: np.float64(2.4292036722215815e-26), 22: np.float64(2.4292036722215815e-26), 61: np.float64(2.4292036722215815e-26), 0: np.float64(2.4292036722215815e-26)}
err dic= {8: np.float64(0.014920047975665235), 6: np.float64(0.293846546557311), 3: np.float64(0.029073501418354603), 85: np.float64(0.051), 22: np.float64(0.151), 61: np.float64(0.062), 0: np.float64(0.044)} 

err list= [np.float64(0.014920047975665235), np.float64(0.293846546557311), np.float64(0.029073501418354603), np.float64(0.051), np.float64(0.151), np.float64(0.062), np.float64(0.044)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  0.75 

learned probs for this beta: {8: np.float64(0.1554096719814246), 6: np.float64(0.554699600978783), 3: np.float64(0.28989072703979235), 85: np.float64(2.6218798189063532e-39), 22: np.float64(2.6218798189063532e-39), 61: np.float64(2.6218798189063532e-39), 0: np.float64(2.6218798189063532e-39)}
err dic= {8: np.float64(0.08559032801857538), 6: np.float64(0.32069960097878303), 3: np.float64(0.07289072703979235), 85: np.float64(0.051), 22: np.float64(0.151), 61: np.float64(0.062), 0: np.float64(0.044)} 

err list= [np.float64(0.08559032801857538), np.float64(0.32069960097878303), np.float64(0.07289072703979235), np.float64(0.051), np.float64(0.151), np.float64(0.062), np.float64(0.044)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  1 

learned probs for this beta: {8: np.float64(0.1055529875856789), 6: np.float64(0.5775040914089609), 3: np.float64(0.3169429210053604), 85: np.float64(3.0473420282234562e-52), 22: np.float64(3.0473420282234562e-52), 61: np.float64(3.0473420282234562e-52), 0: np.float64(3.0473420282234562e-52)}
err dic= {8: np.float64(0.1354470124143211), 6: np.float64(0.3435040914089609), 3: np.float64(0.09994292100536042), 85: np.float64(0.051), 22: np.float64(0.151), 61: np.float64(0.062), 0: np.float64(0.044)} 

err list= [np.float64(0.1354470124143211), np.float64(0.3435040914089609), np.float64(0.09994292100536042), np.float64(0.051), np.float64(0.151), np.float64(0.062), np.float64(0.044)]
results for assortment [8, 6, 3, 85, 22, 61] :

beta is  1.25 

learned probs for this beta: {8: np.float64(0.07074371335005702), 6: np.float64(0.5969744623113794), 3: np.float64(0.3322818243385636), 85: np.float64(3.71034629238185e-65), 22: np.float64(3.71034629238185e-65), 61: np.float64(3.71034629238185e-65), 0: np.float64(3.71034629238185e-65)}
err dic= {8: np.float64(0.17025628664994297), 6: np.float64(0.3629744623113794), 3: np.float64(0.11528182433856363), 85: np.float64(0.051), 22: np.float64(0.151), 61: np.float64(0.062), 0: np.float64(0.044)} 

err list= [np.float64(0.17025628664994297), np.float64(0.3629744623113794), np.float64(0.11528182433856363), np.float64(0.051), np.float64(0.151), np.float64(0.062), np.float64(0.044)]
results for assortment [8, 6, 3, 85, 22, 61] :

err MNL dic= {8: 0.241, 6: 0.234, 3: 0.217, 85: 0.051, 22: 0.151, 61: 0.062, 0: np.float64(0.36008556163448063)} 

err MNL list= [0.241, 0.234, 0.217, 0.051, 0.151, 0.062, np.float64(0.36008556163448063)]
sampled assortment [1, 7, 5, 73, 43, 91] number: 8
#  Learning probs for MM model, A = [1, 7, 5, 73, 43, 91]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 10: 2, 11: 1, 12: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 10, 12]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 100: 0} [2, 3, 6, 7, 10, 100]
#  Learning probs for MM model, A = [1, 7, 5, 73, 43, 91]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 1, 12: 3, 17: 3, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100, 12, 17]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 8: 0, 10: 0, 100: 0} [2, 3, 6, 7, 8, 10, 100]
empirical probabilities from test set: {1: 0.274, 7: 0.216, 5: 0.252, 73: 0.064, 43: 0.098, 91: 0.058, 0: 0.038}
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  0.025 

learned probs for this beta: {1: np.float64(0.1692423522494953), 7: np.float64(0.3742469043410969), 5: np.float64(0.16057465043129165), 73: np.float64(0.07398402324452942), 43: np.float64(0.07398402324452942), 91: np.float64(0.07398402324452942), 0: np.float64(0.07398402324452942)}
err dic= {1: np.float64(0.10475764775050472), 7: np.float64(0.15824690434109692), 5: np.float64(0.09142534956870835), 73: np.float64(0.00998402324452942), 43: np.float64(0.024015976755470583), 91: np.float64(0.015984023244529418), 0: np.float64(0.03598402324452942)} 

err list= [np.float64(0.10475764775050472), np.float64(0.15824690434109692), np.float64(0.09142534956870835), np.float64(0.00998402324452942), np.float64(0.024015976755470583), np.float64(0.015984023244529418), np.float64(0.03598402324452942)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  0.05 

learned probs for this beta: {1: np.float64(0.1474993398360986), 7: np.float64(0.6525357333924607), 5: np.float64(0.12796675807426947), 73: np.float64(0.017999542174293014), 43: np.float64(0.017999542174293014), 91: np.float64(0.017999542174293014), 0: np.float64(0.017999542174293014)}
err dic= {1: np.float64(0.12650066016390143), 7: np.float64(0.43653573339246077), 5: np.float64(0.12403324192573054), 73: np.float64(0.046000457825706983), 43: np.float64(0.08000045782570699), 91: np.float64(0.04000045782570699), 0: np.float64(0.020000457825706985)} 

err list= [np.float64(0.12650066016390143), np.float64(0.43653573339246077), np.float64(0.12403324192573054), np.float64(0.046000457825706983), np.float64(0.08000045782570699), np.float64(0.04000045782570699), np.float64(0.020000457825706985)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  0.1 

learned probs for this beta: {1: np.float64(0.14971067799202878), 7: np.float64(0.7412492959852528), 5: np.float64(0.10869369197441821), 73: np.float64(8.658351207512382e-05), 43: np.float64(8.658351207512382e-05), 91: np.float64(8.658351207512382e-05), 0: np.float64(8.658351207512382e-05)}
err dic= {1: np.float64(0.12428932200797124), 7: np.float64(0.5252492959852528), 5: np.float64(0.1433063080255818), 73: np.float64(0.06391341648792488), 43: np.float64(0.09791341648792488), 91: np.float64(0.057913416487924876), 0: np.float64(0.03791341648792487)} 

err list= [np.float64(0.12428932200797124), np.float64(0.5252492959852528), np.float64(0.1433063080255818), np.float64(0.06391341648792488), np.float64(0.09791341648792488), np.float64(0.057913416487924876), np.float64(0.03791341648792487)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  0.25 

learned probs for this beta: {1: np.float64(0.20023207766256074), 7: np.float64(0.7087154358193472), 5: np.float64(0.09105248651212687), 73: np.float64(1.4912147557901185e-12), 43: np.float64(1.4912147557901185e-12), 91: np.float64(1.4912147557901185e-12), 0: np.float64(1.4912147557901185e-12)}
err dic= {1: np.float64(0.07376792233743928), 7: np.float64(0.4927154358193472), 5: np.float64(0.16094751348787312), 73: np.float64(0.06399999999850879), 43: np.float64(0.0979999999985088), 91: np.float64(0.057999999998508786), 0: np.float64(0.03799999999850878)} 

err list= [np.float64(0.07376792233743928), np.float64(0.4927154358193472), np.float64(0.16094751348787312), np.float64(0.06399999999850879), np.float64(0.0979999999985088), np.float64(0.057999999998508786), np.float64(0.03799999999850878)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  0.5 

learned probs for this beta: {1: np.float64(0.269978929574525), 7: np.float64(0.6731665477252026), 5: np.float64(0.05685452270027243), 73: np.float64(1.744048783565236e-25), 43: np.float64(1.744048783565236e-25), 91: np.float64(1.744048783565236e-25), 0: np.float64(1.744048783565236e-25)}
err dic= {1: np.float64(0.004021070425475004), 7: np.float64(0.4571665477252026), 5: np.float64(0.1951454772997276), 73: np.float64(0.064), 43: np.float64(0.098), 91: np.float64(0.058), 0: np.float64(0.038)} 

err list= [np.float64(0.004021070425475004), np.float64(0.4571665477252026), np.float64(0.1951454772997276), np.float64(0.064), np.float64(0.098), np.float64(0.058), np.float64(0.038)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  0.75 

learned probs for this beta: {1: np.float64(0.3122233702873858), 7: np.float64(0.6579077543307189), 5: np.float64(0.029868875381895373), 73: np.float64(2.0752714994035054e-38), 43: np.float64(2.0752714994035054e-38), 91: np.float64(2.0752714994035054e-38), 0: np.float64(2.0752714994035054e-38)}
err dic= {1: np.float64(0.03822337028738576), 7: np.float64(0.44190775433071894), 5: np.float64(0.22213112461810464), 73: np.float64(0.064), 43: np.float64(0.098), 91: np.float64(0.058), 0: np.float64(0.038)} 

err list= [np.float64(0.03822337028738576), np.float64(0.44190775433071894), np.float64(0.22213112461810464), np.float64(0.064), np.float64(0.098), np.float64(0.058), np.float64(0.038)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  1 

learned probs for this beta: {1: np.float64(0.3332719595698225), 7: np.float64(0.6527657745006972), 5: np.float64(0.01396226592948052), 73: np.float64(2.487004704372037e-51), 43: np.float64(2.487004704372037e-51), 91: np.float64(2.487004704372037e-51), 0: np.float64(2.487004704372037e-51)}
err dic= {1: np.float64(0.05927195956982245), 7: np.float64(0.4367657745006972), 5: np.float64(0.23803773407051948), 73: np.float64(0.064), 43: np.float64(0.098), 91: np.float64(0.058), 0: np.float64(0.038)} 

err list= [np.float64(0.05927195956982245), np.float64(0.4367657745006972), np.float64(0.23803773407051948), np.float64(0.064), np.float64(0.098), np.float64(0.058), np.float64(0.038)]
results for assortment [1, 7, 5, 73, 43, 91] :

beta is  1.25 

learned probs for this beta: {1: np.float64(0.342674438498841), 7: np.float64(0.6512748557609888), 5: np.float64(0.0060507057401702315), 73: np.float64(2.987853523654322e-64), 43: np.float64(2.987853523654322e-64), 91: np.float64(2.987853523654322e-64), 0: np.float64(2.987853523654322e-64)}
err dic= {1: np.float64(0.06867443849884097), 7: np.float64(0.4352748557609888), 5: np.float64(0.24594929425982978), 73: np.float64(0.064), 43: np.float64(0.098), 91: np.float64(0.058), 0: np.float64(0.038)} 

err list= [np.float64(0.06867443849884097), np.float64(0.4352748557609888), np.float64(0.24594929425982978), np.float64(0.064), np.float64(0.098), np.float64(0.058), np.float64(0.038)]
results for assortment [1, 7, 5, 73, 43, 91] :

err MNL dic= {1: 0.274, 7: 0.216, 5: 0.252, 73: 0.064, 43: 0.098, 91: 0.058, 0: np.float64(0.3702139593040004)} 

err MNL list= [0.274, 0.216, 0.252, 0.064, 0.098, 0.058, np.float64(0.3702139593040004)]
sampled assortment [2, 7, 9, 53, 71, 98] number: 9
#  Learning probs for MM model, A = [2, 7, 9, 53, 71, 98]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 11: 1, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 100]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 100: 0} [2, 3, 6, 7, 10, 100]
#  Learning probs for MM model, A = [2, 7, 9, 53, 71, 98]
#cluster  2 with weight 0.34925
Learned cluster center of cluster 2:  {1: 0, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1, 14: 2, 100: 1} [1, 2, 3, 4, 5, 6, 7, 8, 9, 100, 14]
#cluster  1 with weight 0.65075
Learned cluster center of cluster 1:  {2: 0, 3: 0, 6: 0, 7: 0, 10: 0, 13: 0, 100: 0} [2, 3, 6, 7, 10, 13, 100]
empirical probabilities from test set: {2: 0.266, 7: 0.224, 9: 0.251, 53: 0.073, 71: 0.069, 98: 0.065, 0: 0.052}
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  0.025 

learned probs for this beta: {2: np.float64(0.33964411229690794), 7: np.float64(0.3144792449913496), 9: np.float64(0.13273495737152094), 53: np.float64(0.05328542133505543), 71: np.float64(0.05328542133505543), 98: np.float64(0.05328542133505543), 0: np.float64(0.05328542133505543)}
err dic= {2: np.float64(0.07364411229690793), 7: np.float64(0.0904792449913496), 9: np.float64(0.11826504262847906), 53: np.float64(0.019714578664944568), 71: np.float64(0.01571457866494458), 98: np.float64(0.011714578664944575), 0: np.float64(0.0012854213350554297)} 

err list= [np.float64(0.07364411229690793), np.float64(0.0904792449913496), np.float64(0.11826504262847906), np.float64(0.019714578664944568), np.float64(0.01571457866494458), np.float64(0.011714578664944575), np.float64(0.0012854213350554297)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  0.05 

learned probs for this beta: {2: np.float64(0.4689032351965252), 7: np.float64(0.4076017134639657), 9: np.float64(0.10394372847596245), 53: np.float64(0.004887830715886684), 71: np.float64(0.004887830715886684), 98: np.float64(0.004887830715886684), 0: np.float64(0.004887830715886684)}
err dic= {2: np.float64(0.2029032351965252), 7: np.float64(0.18360171346396567), 9: np.float64(0.14705627152403755), 53: np.float64(0.06811216928411332), 71: np.float64(0.06411216928411333), 98: np.float64(0.060112169284113316), 0: np.float64(0.04711216928411331)} 

err list= [np.float64(0.2029032351965252), np.float64(0.18360171346396567), np.float64(0.14705627152403755), np.float64(0.06811216928411332), np.float64(0.06411216928411333), np.float64(0.060112169284113316), np.float64(0.04711216928411331)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  0.1 

learned probs for this beta: {2: np.float64(0.5190634252023714), 7: np.float64(0.39276711027663486), 9: np.float64(0.0881062345899951), 53: np.float64(1.5807482749762413e-05), 71: np.float64(1.5807482749762413e-05), 98: np.float64(1.5807482749762413e-05), 0: np.float64(1.5807482749762413e-05)}
err dic= {2: np.float64(0.25306342520237135), 7: np.float64(0.16876711027663485), 9: np.float64(0.1628937654100049), 53: np.float64(0.07298419251725023), 71: np.float64(0.06898419251725024), 98: np.float64(0.06498419251725024), 0: np.float64(0.051984192517250234)} 

err list= [np.float64(0.25306342520237135), np.float64(0.16876711027663485), np.float64(0.1628937654100049), np.float64(0.07298419251725023), np.float64(0.06898419251725024), np.float64(0.06498419251725024), np.float64(0.051984192517250234)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  0.25 

learned probs for this beta: {2: np.float64(0.6331407023028179), 7: np.float64(0.31482131110691747), 9: np.float64(0.05203798658937262), 53: np.float64(2.2290374372477743e-13), 71: np.float64(2.2290374372477743e-13), 98: np.float64(2.2290374372477743e-13), 0: np.float64(2.2290374372477743e-13)}
err dic= {2: np.float64(0.3671407023028179), 7: np.float64(0.09082131110691746), 9: np.float64(0.1989620134106274), 53: np.float64(0.07299999999977709), 71: np.float64(0.0689999999997771), 98: np.float64(0.0649999999997771), 0: np.float64(0.05199999999977709)} 

err list= [np.float64(0.3671407023028179), np.float64(0.09082131110691746), np.float64(0.1989620134106274), np.float64(0.07299999999977709), np.float64(0.0689999999997771), np.float64(0.0649999999997771), np.float64(0.05199999999977709)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  0.5 

learned probs for this beta: {2: np.float64(0.787313909624002), 7: np.float64(0.19598665886108896), 9: np.float64(0.01669943151490931), 53: np.float64(1.8848051843565644e-26), 71: np.float64(1.8848051843565644e-26), 98: np.float64(1.8848051843565644e-26), 0: np.float64(1.8848051843565644e-26)}
err dic= {2: np.float64(0.521313909624002), 7: np.float64(0.028013341138911046), 9: np.float64(0.23430056848509068), 53: np.float64(0.073), 71: np.float64(0.069), 98: np.float64(0.065), 0: np.float64(0.052)} 

err list= [np.float64(0.521313909624002), np.float64(0.028013341138911046), np.float64(0.23430056848509068), np.float64(0.073), np.float64(0.069), np.float64(0.065), np.float64(0.052)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  0.75 

learned probs for this beta: {2: np.float64(0.884252867514906), 7: np.float64(0.11150881177744143), 9: np.float64(0.004238320707652509), 53: np.float64(1.6348371203313125e-39), 71: np.float64(1.6348371203313125e-39), 98: np.float64(1.6348371203313125e-39), 0: np.float64(1.6348371203313125e-39)}
err dic= {2: np.float64(0.6182528675149059), 7: np.float64(0.11249118822255857), 9: np.float64(0.2467616792923475), 53: np.float64(0.073), 71: np.float64(0.069), 98: np.float64(0.065), 0: np.float64(0.052)} 

err list= [np.float64(0.6182528675149059), np.float64(0.11249118822255857), np.float64(0.2467616792923475), np.float64(0.073), np.float64(0.069), np.float64(0.065), np.float64(0.052)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  1 

learned probs for this beta: {2: np.float64(0.9388001887398035), 7: np.float64(0.06026650798980299), 9: np.float64(0.0009333032703937588), 53: np.float64(1.4506632630316817e-52), 71: np.float64(1.4506632630316817e-52), 98: np.float64(1.4506632630316817e-52), 0: np.float64(1.4506632630316817e-52)}
err dic= {2: np.float64(0.6728001887398035), 7: np.float64(0.16373349201019702), 9: np.float64(0.25006669672960624), 53: np.float64(0.073), 71: np.float64(0.069), 98: np.float64(0.065), 0: np.float64(0.052)} 

err list= [np.float64(0.6728001887398035), np.float64(0.16373349201019702), np.float64(0.25006669672960624), np.float64(0.073), np.float64(0.069), np.float64(0.065), np.float64(0.052)]
results for assortment [2, 7, 9, 53, 71, 98] :

beta is  1.25 

learned probs for this beta: {2: np.float64(0.968246588165597), 7: np.float64(0.031564310134262204), 9: np.float64(0.00018910170014075907), 53: np.float64(1.311225330317192e-65), 71: np.float64(1.311225330317192e-65), 98: np.float64(1.311225330317192e-65), 0: np.float64(1.311225330317192e-65)}
err dic= {2: np.float64(0.702246588165597), 7: np.float64(0.1924356898657378), 9: np.float64(0.25081089829985925), 53: np.float64(0.073), 71: np.float64(0.069), 98: np.float64(0.065), 0: np.float64(0.052)} 

err list= [np.float64(0.702246588165597), np.float64(0.1924356898657378), np.float64(0.25081089829985925), np.float64(0.073), np.float64(0.069), np.float64(0.065), np.float64(0.052)]
results for assortment [2, 7, 9, 53, 71, 98] :

err MNL dic= {2: 0.266, 7: 0.224, 9: 0.251, 53: 0.073, 71: 0.069, 98: 0.065, 0: np.float64(0.3568828751648219)} 

err MNL list= [0.266, 0.224, 0.251, 0.073, 0.069, 0.065, np.float64(0.3568828751648219)]
****final outcomes:*****
beta range: [0.025, 0.05, 0.1, 0.25, 0.5, 0.75, 1, 1.25]
 mean error for all betas:

mean_err= [0.04725965 0.07884482 0.09273755 0.10226473 0.11160115 0.12244157
 0.13241115 0.14093999]
mean_std= [0.         0.03158517 0.03242064 0.03256724 0.03460022 0.03981481
 0.04421668 0.04711595]
MNL: [0.18578344 0.18508825 0.18869051 0.19122646 0.19117625 0.19032694
 0.18685077 0.18801222 0.19031628 0.18641184]
 mean error for MNL:

mean_err_MNL= 0.1883882955304002
mean_std_MNL= 0.0021790369083781454
