Skip to content

Baselines

Popov Ilya edited this page Apr 27, 2021 · 24 revisions

1 - "Человеческий" бейслайн

То, как себя по факту вела торговая сеть. Рассчитывается исходя их входных данных. В них есть все, что необходимо для расчёта reward

Простой reward: только sales и service_level

store_id  product_id first_appeared      last_appeared    sum_reward
4600      101300     2016-01-01          2019-11-03       -542.359324
4600      404500     2016-01-04          2019-11-29       -8016.040286
4600      490400     2016-01-01          2019-11-03       -2122.690708
4600      555800     2016-01-02          2019-12-30       -4008.100715
4600      559800     2016-01-01          2019-11-03       -6715.792029
4600      560100     2016-01-01          2019-11-03       -4082.942220
4600      564900     2016-01-01          2019-11-29       -1833.871995
4600      571300     2016-01-01          2019-11-03       -274.683561
4600      582700     2016-01-01          2019-11-29       -18770.515919
4600      582800     2016-01-11          2019-11-29       -593.059779
4600      587400     2016-01-01          2019-11-03       -6378.459096
4600      589400     2016-01-10          2019-11-29       -493.293697
4600      589700     2016-01-01          2019-11-03       -630.751787
4600      615200     2016-01-01          2019-11-03       -393.061079
4600      616400     2016-01-01          2019-11-29       -1762.563353
4600      617400     2016-01-01          2019-11-03       -17106.756939
4600      625700     2016-01-01          2019-11-03       -635.457440
4600      631500     2016-01-01          2019-11-03       -2344.969461
4600      706600     2016-01-01          2019-11-03       -551.665367
4600      720500     2016-01-01          2019-11-03       -328.838856
4600      744200     2016-01-01          2019-11-03       -357.991553
4600      808700     2016-01-01          2019-11-03       -392.714100
4600      819800     2016-01-01          2019-11-03       -3626.583389
4600      835000     2016-01-01          2019-11-03       -894.137102
4600      886100     2016-01-01          2019-11-03       -345.209227
4600     1453400     2016-01-01          2019-11-03       -247.660362
4600     1518900     2016-01-03          2019-11-29       -420.892138
4600     1617800     2016-01-01          2019-11-03       -733.381417
4600     1843100     2016-01-01          2019-11-03       -217.090968
4600     3539700     2016-01-01          2019-11-03       -1371.492528
4600     3540400     2016-01-01          2019-11-03       -310.605588
4600     4043300     2016-01-01          2019-11-03       -6963.641326
4600     4095600     2016-01-01          2019-11-03       -2423.199766
4600     4212800     2016-01-01          2019-11-03       -4040.277566
4600     4285500     2016-01-01          2019-11-03       -1224.655621
4600     6783400     2016-01-01          2019-11-03       -3753.993556
4600     7562300     2016-01-01          2019-11-03       -2181.488358
4600     9339400     2016-01-01          2019-11-03       -678.051332
4600    11637400     2016-01-01          2019-11-03       -5193.646524
4600    12906800     2016-01-01          2019-11-03       -2001.665367

Усложенный reward: order восстановлен из разницы стоков и продаж, demand в недефицитные дни известен, в остальных случаях используется восстановленный спрос

store_id  product_id first_appeared    last_appeared    sum_reward
4600      101300     2016-01-01        2019-11-03       -543.059324
4600      404500     2016-01-04        2019-11-29       -8016.940286
4600      490400     2016-01-01        2019-11-03       -2123.190708
4600      555800     2016-01-02        2019-12-30       -4009.700715
4600      559800     2016-01-01        2019-11-03       -6725.692029
4600      560100     2016-01-01        2019-11-03       -4083.842220
4600      564900     2016-01-01        2019-11-29       -1834.271995
4600      571300     2016-01-01        2019-11-03       -274.783561
4600      582700     2016-01-01        2019-11-29       -18774.565919
4600      582800     2016-01-11        2019-11-29       -594.659779
4600      587400     2016-01-01        2019-11-03       -6380.609096
4600      589400     2016-01-10        2019-11-29       -493.793697
4600      589700     2016-01-01        2019-11-03       -631.251787
4600      615200     2016-01-01        2019-11-03       -393.361079
4600      616400     2016-01-01        2019-11-29       -1763.063353
4600      617400     2016-01-01        2019-11-03       -17108.256939
4600      625700     2016-01-01        2019-11-03       -636.157440
4600      631500     2016-01-01        2019-11-03       -2348.269461
4600      706600     2016-01-01        2019-11-03       -552.915367
4600      720500     2016-01-01        2019-11-03       -329.638856
4600      744200     2016-01-01        2019-11-03       -358.191553
4600      808700     2016-01-01        2019-11-03       -394.464100
4600      819800     2016-01-01        2019-11-03       -3626.933389
4600      835000     2016-01-01        2019-11-03       -896.037102
4600      886100     2016-01-01        2019-11-03       -345.609227
4600     1453400     2016-01-01        2019-11-03       -248.060362
4600     1518900     2016-01-03        2019-11-29       -422.142138
4600     1617800     2016-01-01        2019-11-03       -733.531417
4600     1843100     2016-01-01        2019-11-03       -217.490968
4600     3539700     2016-01-01        2019-11-03       -1371.742528
4600     3540400     2016-01-01        2019-11-03       -310.655588
4600     4043300     2016-01-01        2019-11-03       -6967.441326
4600     4095600     2016-01-01        2019-11-03       -2423.529766
4600     4212800     2016-01-01        2019-11-03       -4044.027566
4600     4285500     2016-01-01        2019-11-03       -1227.005621
4600     6783400     2016-01-01        2019-11-03       -3754.243556
4600     7562300     2016-01-01        2019-11-03       -2182.188358
4600     9339400     2016-01-01        2019-11-03       -679.551332
4600    11637400     2016-01-01        2019-11-03       -5194.796524
4600    12906800     2016-01-01        2019-11-03       -2002.465367

2 - Constant Stock Policy

Политика постоянного стока. Политика вида (s-1, S), где 1 ≤ S ≤ max_reward

Усложенный reward:

STORE	ITEM		MAX REWARD		BEST POLICY
4600	555800		88.38414554905695	(0, 1)
4600	616400		384.0474658869497	(2, 3)
4600	564900		818.2911630929109	(4, 5)
4600	582700		941.6778752436567	(2, 3)
4600	404500		-71.51731643924724	(0, 1)
4600	589400		-44.39333983105929	(0, 1)
4600	582800		90.23050682260364	(1, 2)
4600	1518900		28.762215724493927	(0, 1)
4600	835000		300.6066276803223	(2, 3)
4600	587400		503.61965811966		(4, 5)
4600	617400		30.659314954052043	(0, 1)
4600	819800		-1102.4551546796592	(0, 1)
4600	1843100		-97.48281351527203	(0, 1)
4600	631500		9700.94197530838	(13, 14)
4600	7562300		-521.3895231551586	(0, 1)
4600	11637400	-377.16515719498165	(0, 1)
4600	3539700		-314.78801169590673	(0, 1)
4600	3540400		-138.84879792073076	(0, 1)
4600	12906800	-705.4825211176026	(0, 1)
4600	4095600		-40.965141113654	(0, 1)
4600	886100		-82.28252111761104	(0, 1)
4600	4212800		71.17086052490174	(0, 1)
4600	706600		373.02212475634536	(2, 3)
4600	9339400		-33.579824561404564	(0, 1)
4600	589700		39.22858999349977	(0, 1)
4600	625700		35.317186484729746	(0, 1)
4600	560100		-311.67390663267935	(0, 1)
4600	559800		18213.455824296325	(21, 22)
4600	490400		-690.036842105258	(0, 1)
4600	1617800		-348.56526965562176	(0, 1)
4600	744200		-122.5568875893466	(0, 1)
4600	720500		-12.800064977257826	(0, 1)
4600	4285500		1259.9867771280606	(4, 5)
4600	615200		-40.787491877842875	(0, 1)
4600	1453400		-138.39684772491972	(0, 1)
4600	4043300		5263.726315789529	(10, 11)
4600	571300		-126.10571799870335	(0, 1)
4600	808700		-3.209649122806869	(0, 1)
4600	101300		33.266601689408866	(0, 1)
4600	6783400		-570.5036617971293	(0, 1)

Вычислительное время: 6:06:57

Усложненный reward + batch_zise:

STORE	ITEM		MAX REWARD		BEST POLICY
4600	555800		90.57940220922569	(0, 1)
4600	616400		295.5964587394433	(2, 3)
4600	564900		788.0551981806327	(4, 5)
4600	582700		925.2694931773798	(2, 3)
4600	404500		-72.33953866146948	(0, 1)
4600	589400		-111.56270305393285	(0, 1)
4600	582800		90.28050682260351	(1, 2)
4600	1518900		0.5899935022739073	(0, 1)
4600	835000		287.9832358674561	(2, 3)
4600	587400		-961.7305250305259	(0, 1)
4600	617400		26.31645781119489	(0, 1)
4600	819800		-1107.5023244909808	(0, 1)
4600	1843100		-352.251656920069	(0, 1)
4600	631500		9646.719525665721	(13, 14)
4600	7562300		-917.7094106827826	(0, 1)
4600	11637400	-393.4865022242228	(0, 1)
4600	3539700		-310.49327485380127	(0, 1)
4600	3540400		-139.821020142953	(0, 1)
4600	12906800	-695.3158544509364	(0, 1)
4600	4095600		-49.63122298499883	(0, 1)
4600	886100		-81.11029889538877	(0, 1)
4600	4212800		63.454435404128866	(0, 1)
4600	706600		377.01101364523436	(2, 3)
4600	9339400		-35.83538011695996	(0, 1)
4600	589700		34.93882391162873	(0, 1)
4600	625700		40.42829759584011	(0, 1)
4600	560100		-314.91025391113345	(0, 1)
4600	559800		14208.263272064201	(20, 21)
4600	490400		-692.1201754385912	(0, 1)
4600	1617800		-345.70211176088486	(0, 1)
4600	744200		-124.39577647823555	(0, 1)
4600	720500		-8.761176088368895	(0, 1)
4600	4285500		1103.016406757615	(4, 5)
4600	615200		-41.759714100065175	(0, 1)
4600	1453400		-138.34684772491983	(0, 1)
4600	4043300		5061.532196231491	(9, 10)
4600	571300		-122.01682910981437	(0, 1)
4600	808700		1.0292397660821582	(0, 1)
4600	101300		-14.319070825210723	(0, 1)
4600	6783400		-847.3638453334221	(0, 1)

Вычислительное время: 3:31:29

Усложненный reward + batch size + mply qty:

STORE	ITEM		MAX REWARD		BEST POLICY
4600	555800		-8.554775828459658	(1, 2)
4600	616400		105.1671215074707	(1, 2)
4600	564900		255.50519818063373	(1, 2)
4600	582700		-3335.822514619875	(8, 9)
4600	404500		-475.2214749837519	(1, 2)
4600	589400		-216.31130604288836	(1, 2)
4600	1518900		-117.53382066276826	(1, 2)
4600	582800		-989.8464912280725	(8, 9)
4600	835000		119.56565951916373	(1, 2)
4600	587400		-908.7927960927979	(1, 2)
4600	617400		-178.43352362387486	(1, 2)
4600	819800		-2269.9832653341527	(1, 2)
4600	1843100		-615.8988628979909	(2, 3)
4600	631500		1061.4329759584189	(4, 5)
4600	7562300		-1551.291443959371	(1, 2)
4600	11637400	-917.5496351277181	(1, 2)
4600	3539700		-687.4517543859666	(1, 2)
4600	3540400		-296.0125730994212	(1, 2)
4600	12906800	-1501.935282651054	(1, 2)
4600	4095600		-392.45741051501517	(1, 2)
4600	886100		-219.1533463287901	(1, 2)
4600	4212800		-83.55736361838743	(1, 2)
4600	706600		159.21653671214597	(1, 2)
4600	9339400		-132.1667316439284	(1, 2)
4600	589700		-53.79311241065583	(1, 2)
4600	625700		-34.79282001299489	(1, 2)
4600	560100		-862.955293147409	(1, 2)
4600	559800		-4693.027148231344	(50, 51)
4600	490400		-1492.842690058461	(1, 2)
4600	1617800		-737.1811241065656	(1, 2)
4600	744200		-278.6693307342482	(1, 2)
4600	720500		-131.86007147498663	(1, 2)
4600	4285500		305.16156595191484	(1, 2)
4600	615200		-165.71387264457823	(1, 2)
4600	1453400		-323.05305217498864	(1, 2)
4600	4043300		733.0502923976607	(2, 3)
4600	571300		-277.68196881092217	(1, 2)
4600	808700		-110.42521117609084	(1, 2)
4600	101300		-103.23908382066347	(1, 2)
4600	6783400		-1310.0094975073093	(1, 2)

Вычислительное время: 3:25:33

STORE ID PRODUCT ID BUSINESS BASELINE MIN BATCH SIZE MAX BATCH SIZE MIN MLPY QTY MAX MLPY QTY 1 - max reward 1 - best policy 2 - max reward 2 - best policy 3 - max reward 3 - best policy
4600 555800 -4009.70 1 2 1 1 88.38 (0, 1) 90.58 (0, 1) -8.55 (1, 2)
4600 616400 -1763.06 2 3 1 1 384.05 (2, 3) 295.60 (2, 3) 105.17 (1, 2)
4600 564900 -1834.27 1 4 1 1 818.29 (4, 5) 788.06 (4, 5) 255.51 (1, 2)
4600 582700 -18774.57 1 2 1 8 941.68 (2, 3) 925.27 (2, 3) -3335.82 (8, 9)
4600 404500 -8016.94 1 2 1 1 -71.52 (0, 1) -72.34 (0, 1) -475.22 (1, 2)
4600 589400 -493.79 1 2 1 1 -44.39 (0, 1) -111.56 (0, 1) -216.31 (1, 2)
4600 582800 -594.66 1 2 1 8 90.23 (1, 2) 90.28 (1, 2) -989.85 (8, 9)
4600 1518900 -422.14 1 2 1 1 28.76 (0, 1) 0.59 (0, 1) -117.53 (1, 2)
4600 835000 -896.04 1 2 1 1 300.61 (2, 3) 287.98 (2, 3) 122.87 (1, 2)
4600 587400 -6380.61 1 30 1 1 503.62 (4, 5) -961.73 (0, 1) -908.79 (1, 2)
4600 617400 -17108.26 1 1 1 1 30.66 (0, 1) 26.32 (0, 1) -178.43 (1, 2)
4600 819800 -3626.93 1 1 1 1 -1102.46 (0, 1) -1107.50 (0, 1) -2269.98 (1, 2)
4600 1843100 -217.49 1 5 1 2 -97.48 (0, 1) -352.25 (0, 1) -615.90 (2, 3)
4600 631500 -2348.27 1 2 1 3 9700.94 (13, 14) 9646.72 (13, 14) 1048.18 (4, 5)
4600 7562300 -2182.19 1 2 1 1 -521.39 (0, 1) -917.71 (0, 1) -1551.29 (1, 2)
4600 11637400 -5194.80 1 2 1 1 -377.17 (0, 1) -393.49 (0, 1) -917.55 (1, 2)
4600 3539700 -1371.74 1 1 1 1 -314.79 (0, 1) -310.49 (0, 1) -687.45 (1, 2)
4600 3540400 -310.66 1 1 1 1 -138.85 (0, 1) -139.82 (0, 1) -296.01 (1, 2)
4600 12906800 -2002.47 1 1 1 1 -705.48 (0, 1) -695.32 (0, 1) -1501.94 (1, 2)
4600 4095600 -2423.53 1 2 1 1 -40.97 (0, 1) -49.63 (0, 1) -392.46 (1, 2)
4600 886100 -345.61 1 1 1 1 -82.28 (0, 1) -81.11 (0, 1) -219.15 (1, 2)
4600 4212800 -4044.03 1 2 1 1 71.17 (0, 1) 63.45 (0, 1) -83.57 (1, 2)
4600 706600 -552.92 1 3 1 1 373.02 (2, 3) 377.01 (2, 3) 159.22 (1, 2)
4600 9339400 -679.55 1 2 1 1 -33.58 (0, 1) -35.84 (0, 1) -132.17 (1, 2)
4600 589700 -631.25 1 2 1 1 39.23 (0, 1) 34.94 (0, 1) -53.79 (1, 2)
4600 625700 -636.16 1 1 1 1 35.32 (0, 1) 40.43 (0, 1) -34.79 (1, 2)
4600 560100 -4083.84 1 5 1 1 -311.67 (0, 1) -314.91 (0, 1) -862.96 (1, 2)
4600 559800 -6725.69 1 30 1 50 18213.46 (21, 22) 14208.26 (20, 21) -4693.03 (50, 51)
4600 490400 -2123.19 1 2 1 1 -690.04 (0, 1) -692.12 (0, 1) -1492.84 (1, 2)
4600 1617800 -733.53 1 1 1 1 -348.57 (0, 1) -345.70 (0, 1) -737.18 (1, 2)
4600 744200 -358.19 1 2 1 1 -12.81 (0, 1) -124.40 (0, 1) -278.67 (1, 2)
4600 720500 -329.64 1 1 1 1 -12.80 (0, 1) -8.76 (0, 1) -131.86 (1, 2)
4600 4285500 -1227.01 2 2 1 1 1259.99 (4, 5) 1103.02 (4, 5) 305.16 (1, 2)
4600 615200 -393.36 1 1 1 1 -40.79 (0, 1) -41.76 (0, 1) -165.71 (1, 2)
4600 1453400 -248.06 1 1 1 1 -138.40 (0, 1) -138.35 (0, 1) -323.05 (1, 2)
4600 4043300 -6967.44 1 2 1 1 5263.73 (10, 11) 5061.53 (9, 10) 733.05 (2, 3)
4600 571300 -274.78 1 1 1 1 -126.11 (0, 1) -122.02 (0, 1) -277.68 (1, 2)
4600 808700 -394.46 1 1 1 1 -3.21 (0, 1) 1.03 (0, 1) -110.43 (1, 2)
4600 101300 -543.06 1 2 1 1 33.27 (0, 1) -14.32 (0, 1) -103.24 (1, 2)
4600 6783400 -3754.24 1 2 1 1 -570.50 (0, 1) -847.36 (0, 1) -1310.01 (1, 2)

3 - Constant Policy

Постоянная политика. Выбирается одна политика, и после она применяется на всем протяжении. Политика вида (s, S), где 0 ≤ s < S ≤ max_reward

Усложненный reward:

STORE	ITEM		MAX REWARD		BEST POLICY
4600	555800		111.67582846003685	(0, 2)
4600	616400		459.3025341130752	(0, 4)
4600	564900		996.9492527615959	(0, 7)
4600	582700		744.6870695256702	(0, 3)
4600	404500		-73.8006497725806	(0, 1)
4600	589400		-45.51556205328155	(0, 1)
4600	582800		106.25484080570979	(0, 2)
4600	1518900		28.662215724493894	(0, 1)
4600	835000		363.34727095518144	(0, 4)
4600	587400		822.2626373626547	(0, 6)
4600	617400		28.63788638262346	(0, 1)
4600	819800		-1094.6343999626772	(0, 1)
4600	1843100		-97.332813515272	(0, 1)
4600	631500		88653.01023394467	(11, 15)
4600	7562300		-521.4895231551585	(0, 1)
4600	11637400	-382.94592642575094	(0, 1)
4600	3539700		-313.40643274853824	(0, 1)
4600	3540400		-136.75435347628627	(0, 1)
4600	12906800	-701.2158544509361	(0, 1)
4600	4095600		-40.615141113654005	(0, 1)
4600	886100		-81.06029889538867	(0, 1)
4600	4212800		77.14284120123025	(0, 1)
4600	706600		439.22270955167517	(0, 4)
4600	9339400		-34.60204678362679	(0, 1)
4600	589700		38.20636777127772	(0, 1)
4600	625700		36.35536062377977	(0, 2)
4600	560100		-315.9777527865255	(0, 1)
4600	559800		202136.8398972128	(19, 20)
4600	490400		-685.8201754385915	(0, 1)
4600	1617800		-338.59421702404256	(0, 1)
4600	744200		-119.49022092267988	(0, 1)
4600	720500		-9.8333983105912	(0, 1)
4600	4285500		1625.5442495127868	(0, 8)
4600	615200		-42.78193632228739	(0, 1)
4600	1453400		-138.34684772491985	(0, 1)
4600	4043300		31502.693209867317	(7, 13)
4600	571300		-125.0834957764811	(0, 1)
4600	808700		-4.904093567251403	(0, 1)
4600	101300		33.46660168940881	(0, 1)
4600	6783400		-570.6036617971293	(0, 1)

Вычислительное время: 13:17:47

4 - SMART

Простая жадная решалка, которая подбирает оптимальную политику на всем протяжении.

5 - Эврестический метод

TBD

6 - Сравнение

Важно: в расчетах использовалась функция расчета награды _dummy_apply_reward_calculation_v2

sales - r * order - k * (demand - sales) - stock * ( (1 - service_level) / (service_level) )

STORE ID PRODUCT ID 1 - reward 2 - max reward 2 - best policy 3 - max reward 3 - best policy 4 - max reward 4 - best policy 5 - max reward 5 - best policy
4600 555800 -4009.70 88.38 (0, 1) 111.68 (0, 2)
4600 616400 -1763.06 384.05 (2, 3) 459.30 (0, 4)
4600 564900 -1834.27 818.29 (4, 5) 996.95 (0, 7)
4600 582700 -18774.57 941.68 (2, 3) 744.69 (0, 3)
4600 404500 -8016.94 -71.52 (0, 1) -73.80 (0, 1)
4600 589400 -493.79 -44.39 (0, 1) -45.52 (0, 1)
4600 582800 -594.66 90.23 (1, 2) 106.25 (0, 2)
4600 1518900 -422.14 28.76 (0, 1) 28.66 (0, 1)
4600 835000 -896.04 300.61 (2, 3) 363.35 (0, 4)
4600 587400 -6380.61 503.62 (4, 5) 822.26 (0, 6)
4600 617400 -17108.26 30.66 (0, 1) 28.64 (0, 1)
4600 819800 -3626.93 -1102.46 (0, 1) -1094.63 (0, 1)
4600 1843100 -217.49 -97.48 (0, 1) -97.33 (0, 1)
4600 631500 -2348.27 9700.94 (13, 14) 88653.01 (11, 15)
4600 7562300 -2182.19 -521.39 (0, 1) -521.49 (0, 1)
4600 11637400 -5194.80 -377.17 (0, 1) -382.95 (0, 1)
4600 3539700 -1371.74 -314.79 (0, 1) -313.41 (0, 1)
4600 3540400 -310.66 -138.85 (0, 1) -136.75 (0, 1)
4600 12906800 -2002.47 -705.48 (0, 1) -701.22 (0, 1)
4600 4095600 -2423.53 -40.97 (0, 1) -40.62 (0, 1)
4600 886100 -345.61 -82.28 (0, 1) -81.06 (0, 1)
4600 4212800 -4044.03 71.17 (0, 1) 77.14 (0, 1)
4600 706600 -552.92 373.02 (2, 3) 439.22 (0, 4)
4600 9339400 -679.55 -33.58 (0, 1) -34.60 (0, 1)
4600 589700 -631.25 39.23 (0, 1) 38.21 (0, 1)
4600 625700 -636.16 35.32 (0, 1) 36.36 (0, 2)
4600 560100 -4083.84 -311.67 (0, 1) -315.98 (0, 1)
4600 559800 -6725.69 18213.46 (21, 22) 202136.84 (18, 20)
4600 490400 -2123.19 -690.04 (0, 1) -685.82 (0, 1)
4600 1617800 -733.53 -348.57 (0, 1) -338.59 (0, 1)
4600 744200 -358.19 -122.56 (0, 1) -119.49 (0, 1)
4600 720500 -329.64 -12.80 (0, 1) -9.83 (0, 1)
4600 4285500 -1227.01 1259.97 (4, 5) 1625.54 (0, 8)
4600 615200 -393.36 -40.79 (0, 1) -42.78 (0, 1)
4600 1453400 -248.06 -138.40 (0, 1) -138.35 (0, 1)
4600 4043300 -6967.44 5263.73 (10, 11) 31502.69 (7, 13)
4600 571300 -274.78 -126.11 (0, 1) -125.08 (0, 1)
4600 808700 -394.46 -3.21 (0, 1) -4.90 (0, 1)
4600 101300 -543.06 33.27 (0, 1) 33.47 (0, 1)
4600 6783400 -3754.24 -570.50 (0, 1) -570.60 (0, 1)

Clone this wiki locally