销售配额的分配方法、计算机可读存储介质以及终端设备与流程

文档序号:26786637发布日期:2021-09-28 20:54阅读:171来源:国知局
销售配额的分配方法、计算机可读存储介质以及终端设备与流程

1.本发明涉及销售配额的分配方法、计算机可读存储介质以及终端设备。


背景技术:

2.许多制造企业的供货计划偏向于不同地区的实际销售量,导致部分地区产品的高储存量超过产品,而其他地区的产品缺乏利润低。他们需要一个适当的供应配额,以使管理部门为特定地区、时间跨度、销售团队或客户设定一个有时限的供应目标。
3.专利文献1提供了一种销售区域的分配方法。该方法包括:建立随机森林模型进行训练;根据训练后的随机森林模型预测每个销售区域的潜在客户数量,并根据预测的每个销售区域的潜在客户数量,分配每个销售人员的销售区域。通过上述方法,可以合理地分配每个销售区域。
4.现有技术文献
5.专利文献1:cn109409923a


技术实现要素:

6.【发明要解决的技术问题】
7.在专利文献1所公开的技术中,未能解决在产品价格不同、产品总销售量确定和有限的情况下,不同地区的分配问题。
8.本发明的目的在于提供一种销售配额的分配方法,在总销售量有限的情况下,针对各分配类别进行最优的销售配额的分配,用以得到最大的销售额或者销售利润。
9.【解决问题的技术手段】
10.为了达成上述的目的,本发明的方案1所记载的发明中,在产品的总销售量一定的情况下进行销售配额的分配,所述销售配额的分配方法包括如下步骤:第一步骤,设定所述总销售量以及进行所述销售配额的分配的分配期间;第二步骤,设定以所述销售配额及对应价格为变量的分配目标函数;第三步骤,输入所述分配期间内的各个分配类别下的价格-销售量组合序列;第四步骤,基于在所述第三步骤输入的数据,利用优化模型进行设定的所述总销售量下的所述销售配额的计算,计算得出所述分配期间内各个所述分配类别下的所述销售配额及所述对应价格,使得所述销售配额的分配满足所述分配目标函数的函数值最大。
11.根据上述分配方法,在总销售量有限的情况下,针对各分配类别进行最优的销售配额的分配,满足设定的分配目标函数的函数值最大。
12.方案2所记载的发明中,所述分配类别表示产品型号、销售单位时间以及销售地区的组合,所述产品型号以及所述销售地区都为一个以上,所述销售单位时间被设定为在所述分配期间以内,所述分配类别的数量为所述产品型号的数量、所述销售单位时间的数量以及所述销售地区的数量的乘积。
13.根据上述分配方法,能够针对各分配类别进行最优的销售配额的分配。
14.方案3所记载的发明中,所述第三步骤输入的数据基于规定的历史期间内的历史销售数据预测而得,所述历史销售数据是各个所述分配类别下的实际价格及实际销售量。
15.根据上述分配方法,能够准确地得到各个分配类别下的多种价格及对应的销售量组合。
16.方案4所记载的发明中,所述第三步骤还包括如下子步骤:子步骤一,输入规定的所述历史期间内的所述历史销售数据;子步骤二,根据所述历史销售数据,建立价格-销售量预测模型;子步骤三,针对每个所述分配类别分别输入价格序列;子步骤四,利用所述价格-销售量预测模型,针对每个所述分配类别分别获得所述价格-销售量组合序列。
17.根据上述分配方法,能够准确地得到各个分配类别下的多种价格及对应的销售量组合。
18.方案5所记载的发明中,所述价格序列在所述历史销售数据中最小实际价格和最大实际价格之间设定。
19.根据上述分配方法,能够准确地得到产品的定价。
20.方案6所记载的发明中,所述分配目标函数的函数值为销售额或者销售利润。
21.根据上述分配方法,在总销售量有限的情况下,通过针对各分配类别进行最优的销售配额的分配,能够得到最大的销售额或者销售利润。
22.方案7所记载的发明中,在所述第四步骤中,利用遗传算法进行设定的所述总销售量下的所述销售配额的计算,具体包括如下子步骤:子步骤一,针对所述分配期间内的各个分配类别依次赋值一个价格-销售量组合,形成一条个体,所述个体的长度为所述分配类别的数量,所述个体中各个分配类别下的销售量的总和为所述总销售量;子步骤二,随机生成多条所述个体而构成种群;子步骤三,对所述种群中的每条个体进行个体适应度值计算,所述个体适应度值越大则所述分配目标函数的函数值也越大;子步骤四,在所述种群中选择规定数量的所述个体适应度值较佳的个体,作为选择后种群;子步骤五,对所述选择后种群中的所述个体进行交叉操作和变异操作形成进化后种群;子步骤六,对所述进化后种群重复进行子步骤三~子步骤五的迭代;子步骤七,在满足预设的迭代次数或者所述个体适应度值的最大值在规定的迭代次数内不发生改变的情况下,得到所述个体适应度值为最大值的所述个体作为最优个体。
23.根据上述分配方法,能够针对各分配类别进行最优的销售配额的分配,用以得到最大的销售额或者销售利润。
24.【发明的效果】
25.通过本发明的销售配额的分配方法,能够在总销售量有限的情况下,针对各分配类别进行最优的销售配额的分配,得到最大的销售额或者销售利润。
附图说明
26.图1是示出本发明的销售配额的分配方法的主要过程的流程图。
27.图2是示出基于历史销售数据预测获得价格-销售量组合序列的过程的流程图。
28.图3是示出利用遗传算法进行销售配额的计算的过程的流程图。
具体实施方式
29.以下,参照附图对本发明的具体实施方式进行说明。
30.图1是示出本发明的销售配额的分配方法的主要过程的流程图。如图1所示,本发明主要包括如下步骤:第一步骤,设定总销售量以及进行销售配额的分配的分配期间(步骤s1);第二步骤,设定以销售配额及对应价格为变量的分配目标函数(步骤s2);第三步骤,输入分配期间内的各个分配类别下的价格-销售量组合序列(步骤s3);第四步骤,基于在第三步骤输入的数据,利用优化模型进行设定的总销售量下的销售配额的计算,计算得出分配期间内各个分配类别下的销售配额及对应价格,使得销售配额的分配满足分配目标函数的函数值最大(步骤s4)。
31.本发明中作为限定条件产品的总销售量是有限的,总销售量可以根据销售计划、产能等限定条件进行设定。分配期间是既定的总销售量的计划销售期间,例如,可以是未来的一年、一个季度、一个月等。分配目标函数对应于销售配额的分配目标,可以以最大销售额为分配目标,也可以以最大销售利润为分配目标。无论是最大销售额还是最大销售利润都与产品的价格和销售量相关,因此,需要进行最优的销售配额的分配并精确定价。
32.分配类别是各种情况的组合,例如可以表示产品型号、销售单位时间以及销售地区的组合。产品型号以及销售地区都为一个以上,如果产品型号为一种则表示不需要对产品型号进行分配,如果销售地区为一个则表示不需要按地区进行分配。销售单位时间可以设定,销售单位时间的数量是分配期间与销售单位时间的商,在销售单位时间与分配期间的长度相同的情况下,表示不需要按时间进行分配。在不区分产品型号、销售单位时间、分配地区的情形时,表示不需要分配,可以根据总销售量来反求产品的售价。分配类别不限于上述三种情况的组合,可以根据实际需要增加更多情况的组合。
33.接下来结合具体实施例对销售配额的分配方法的各个步骤进行详细说明。下文中有时将产品型号、销售单位时间、分配地区分别简称为型号、时间、地区。
34.第一步骤及第二步骤
35.假定分配期间是未来的一年、销售单位时间为一个月,对接下来12个月份、两种型号、三个地区进行产品的销售配额的分配。以最大销售额为分配目标,则分配目标函数根据【数式1】来表示。
36.【数式1】
37.s=∑s
k,m,a
=∑v
k,m,a
·
p
k,m,a
38.其中,型号用代码k1、k2表示,实际数据为0、1;时间用代码m1、m2、

、m12表示,实际数据为1、2、

、12;地区用代码a1、a2、a3表示,实际数据为,0、1、2;价格用代码p表示,实际数据为具体价格值;销售量用代码v表示;销售额用代码s表示。
39.第三步骤
40.输入接下来12个月份的、两种型号的、三个地区的、多种价格情形下的销售量。其销售量可以使用过去一年12个月的销售量;也可以使用过去一年12个月的销售量乘以某个系数而得;也可以使用预测模型预测而得。具体的输入数据的实例如表1所示。
41.表1
42.型号时间地区价格销售量k1m1a1p1v1
k1m1a1p2v2k1m1a1p3v3
……………
43.如表1所示,在每个分配类别下即每一型号、每个月份、每一地区都有多个价格构成的价格序列,每个价格都对应了一个销售量。即、输入各个分配类别下的价格-销售量组合序列。
44.图2是示出基于历史销售数据预测获得价格-销售量组合序列的过程的流程图。接下来,结合图2对通过预测模型来得到输入数据的具体实施例进行说明。
45.子步骤一
46.输入规定的历史期间内的历史销售数据(步骤s31)。历史销售数据是各个分配类别下的实际价格及实际销售量。假定有2种型号、3个地区。利用其按周、按天或者按实际销售单的原始的历史销售数据,则归并到对应的月份中:
47.月销售量=按周、按天或者按实际销售单的销售量的和;
48.月销售金额=按周、按天或者按实际销售单的销售金额的和;
49.实际价格=月销售金额/月销售量。
50.归并后,每一型号、每个月份、每一地区只有一个价格,且对应了一个销售量。则如表2所示,在一年的数据中,对应有共有2*12*3=72个价格,对应了72个销售量。
51.表2
52.型号时间地区价格销售量k1m1a1p1v1k1

a1p2v2k1m12a1p3v3k1
…………
k1m1a3
……
k1

a3
……
k1m12a3
……
k2m1a1
……
k2

a1
……
k2m12a1
……
k2
…………
k2m1a3
……
k2

a3
……
k2m12a3p72v72
53.表2表示使用过去一年的历史销售数据,如果使用一年半或二年的数据,则数据行数也相应增加。
54.子步骤二
55.根据历史销售数据,建立价格-销售量预测模型(步骤s32)。设定机器学习模型为线性回归,如【数式2】所示:
56.【数式2】
57.v=f(k
l
,m
b
,a
j
,p
i
)=c0+c1·
k
l
+c2·
m
b
+c3·
a
j
+c4·
p
i
58.其中,机器学习模型不限于线性回归,还能够使用多层感知器神经网络(mlp)、xgboost算法、指数回归等算法。
59.利用表2中的数据,训练线性回归模型,得到相应的预测模型及对应的参数。预测时还能考虑相对于上一月份、或上一年份的同一月份情况,如【数式3】所示:
60.【数式3】
61.v
t+1
=f(k
l
,m
b
,a
j
,p
i
,v
t
)=c0+c1·
k
l
+c2·
m
b
+c3·
a
j
+c4·
p
i
+c5·
v
t
62.子步骤三
63.针对每个分配类别分别输入价格序列(步骤s33)。获取各地区的历史销售数据中的最小实际价格和最大实际价格,假定为150、250,以某一数字为步长,假定为5,生成一个价格序列:150、155、160、

、250。优选以小的数字作为步长,例如为1、0.5、0.1等,生成更多的价格-销售量组合序列,使得分配更加精细。
64.子步骤四
65.假定分配期间是未来的一年,利用在子步骤二中训练得到的预测模型,针对每一型号、每个月份、每一地区得出下一年的销售量的预测值(步骤s34)。如此,如表3所示,计算得到每一型号、每个月份、每一地区的每个价格情形下的销售量,即每一型号、每个月份、每一地区的价格-销售量组合序列。
66.表3
67.价格销售量1502522155300516027351653324170288717525391802361
68.185234819023381952647200181020517142107342157912202292251677230592235553240585245410
250460
69.第四步骤
70.利用遗传算法进行设定的总销售量下的销售配额的计算。计算得出在下一年内,每一型号、每个月份、每一地区的销售量及对应的价格,使得销售配额的分配满足分配目标函数的函数值最大。将下一年内12个月的,每一型号、每个月份、每一地区的价格及对应的销售量进行遗传编码,在所有价格-销售量组合序列基础上进行遗传进化操作。遗传算法包含个体编码、个体种群初始化、以及多次迭代的遗传进化。每一次遗传进化操作包含一次个体适应度值的计算、一次选择操作、一次交叉操作、一次变异操作。进化次数可预先设定,或者根据迭代前后最优个体的适应度值持续不再发生改变。
71.图3是示出利用遗传算法进行销售配额的计算的过程的流程图。下面结合图3根据具体的实施例对利用遗传算法进行销售配额的计算的过程进行详细说明。
72.子步骤一
73.针对分配期间内的各个分配类别依次赋值一个价格-销售量组合,形成一条个体(步骤s41)。
74.对下一年内12个月的,每一型号、每个月份、每一地区分配的价格-销售量组合进行遗传编码。其中,每一个遗传编码,称为一个个体,即将下一年内12个月的,每一型号、每个月份、每一地区,都赋值了一个价格-销售量组合,即每个个体对应于一种分配结果,个体的长度为分配类别的数量。表4示出一条个体的实例,为了表述方便,表4所示的个体及后述的遗传进化的实例中的个体中都仅显示了销售量。
75.表4
76.v
k1,m1,a1
v
k1,m1,a2

v
k1,m2,a1
v
k1,m2,a2

v
k2,m1,a1
v
k2,m1,a1

10001200

11001300

13001200

77.为了满足总销售量的限定条件,在初始化时,从个体任意位置开始赋值,然后随机选择位置依次赋值销售量,该销售量为输入的价格-销售量组合序列的销售量值。在依次赋值过程中,判断已分配的累计销售量是否等于大于总销售量的限定阈值,如果将要等于大于限定阈值,则分配至总销售量为限定阈值,个体中尚未分配的位置上,全部赋值为0,因此,个体中各个分配类别下的销售量的总和为总销售量。
78.子步骤二
79.随机生成多条个体而构成种群(步骤s42)。所有价格-销售量序列对应的个体集合,称为种群。初始时,根据个体编码规则,对每一型号、每个月份、每一地区任意选择销售量组合构成个体,随机生成若干个个体,以此初始化个体种群。
80.子步骤三
81.对种群中的每条个体进行个体适应度值(fitness)计算(步骤s43)。其中,一个个体适应度值的计算,即利用下一年内12个月的,每一型号、每个月份、每一地区的价格及对应的销售量,计算总销售额s。其中,个体适应度值越大,表示个体越佳,即个体对应的销售额值越大。
82.【数式4】
83.fitness=s=∑s
k,m,a
=∑v
k,m,a
·
p
k,m,a
84.其中k、m、a分别表示所有的型号、所有月份、所有地区。
85.子步骤四和子步骤五
86.在种群中选择规定数量的个体适应度值较佳的个体(表示对应的总销售额排位靠前),作为选择后种群,进入下一代进化(交叉、变异)(步骤s45)。上述规定数量可以固定,也可以按照进化代数递增,即每进化一代,种群中个体数量以一定比例增加。对选择后种群中的个体进行交叉操作和变异操作形成进化后种群(步骤s46、步骤s47)。
87.首先对交叉操作进行说明。在种群中的所有个体,任意两两两个个体,根据交叉概率进行交叉操作。两个个体间,根据交叉概率调整个体数值,数值调整方式如下:
88.【数式5】
89.v3=v1q
c
+(1-q
c
)v290.v4=v2q
c
+(1-q
c
)v1。
91.例如,在个体种群中根据规定的交叉概率q
c
=0.3,对表5所示的个体#1和个体#2的销售量序列数值v1、v2进行交叉操作,得到表6所示的个体#3和个体#4。
92.表5
93.个体#1:1300150016001800

1200140018001700个体#2:1300160018001400

1300140017001800
94.表6
95.个体#3:1300157017401520
…ꢀ
1270140017301770个体#4:1300153016601680
…ꢀ
1230140017701730
96.接下来对变异操作进行说明。在种群中的所有个体,针对任意两个以上的个体,根据变异概率进行变异操作,数值调整方式如下:
97.【数式6】
98.v2=v1(1-q
m
)。
99.例如,在个体种群中根据规定的变异概率q
m
=0.01,随机选择若干个位置,对表7所示的个体#1的销售量序列数值v1进行变异操作,得到表8所示的个体#2。
100.表7
101.个体#1:1300150016001800

1200140018001700
102.表8
103.个体#2:1300150015801820

1200140018001700
104.本发明的交叉操作和变异操作都是针对销售量的值进行数值改变,在销售量的数值改变之后访问在第三步骤中输入的价格-销售量组合序列,得到对应的价格。而且,进行交叉操作和变异操作之后,个体中销售量的总和保持不变,仍为总销售量。
105.子步骤六和子步骤七
106.迭代地进行选择、交叉、变异和适应度计算等进化操作。其中,进化次数可预先设定,或者根据迭代前后最优个体的适应度值持续不再发生改变(步骤s44)。由此得到的最大的适应度值即最优个体。最优个体解码后即最优的对每一型号、每个月份、每一地区的销售量分配方式。
107.在上述遗传算法方法中,交叉概率和变异概率能够进行自适应调整,下面作为实例提供一种交叉和变异概率自适应调整方法,交叉概率q
c
和变异概率q
m
进行自适应调整的
方式如下:
108.【数式7】
[0109][0110]
【数式8】
[0111][0112]
其中,自适应调整规则,在上一次进化的概率基础上,根据前两次进化的概率变化率、个体适应度值与个体适应度均值的差异、以及个体适应度均值与个体适应度最大值间的差异进行调整。
[0113]
根据适应度值进行调整,在遗传算法进化初期,当多数个体较劣(适应度值较小)时,以较大的交叉和变异概率,尽可能使个体进行交叉和变异,使得种群多样化,在较大的空间内搜索优化解;随着多数个体变得更优(适应度值较大)时,遗传算法进化也趋向最优,自适应调整公式使得交叉变异概率相应变小,尽可能保留较优个体的结构特征。
[0114]
本技术实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实施如本技术实施例所述的销售配额的分配方法。
[0115]
相应地,本技术实施例还公开了一种终端设备,包括:存储器,其存储有计算机程序;处理器,其连接至存储器,并且配置为执行计算机程序,计算机程序被处理器执行以实施如本技术实施例所述的销售配额的分配方法。所述电子设备可以为服务器、pc机、移动终端、个人数字助理、平板电脑等。
[0116]
以上对本技术实施例提供的一种销售配额的分配方法、计算机可读存储介质以及终端设备进行了详细介绍,本文中应用了具体实施例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1