本发明涉及数据编码。更具体地,本发明涉及一种乳制品生产用交互系统及方法。
背景技术:
1、乳制品生产涉及原料质量检验、原料消毒杀菌、消毒杀菌检测、原料配制、生产工艺控制、加工制造等多个节点,只有这些节点之间紧密协同,才能确保生产出的乳制品的产品质量。
2、为了保证各节点之间的协同作用的效率,需要提高各节点之间的交互效率;各节点之间的交互效率取决于交互数据的处理效率和传输效率,其中传输效率取决于交互数据的数据量,为了提高传输效率,需要对各节点之间的交互数据进行压缩。
3、lzw算法是一种常规的无损压缩算法,利用待编码序列中已经出现过的字符串构建字典,当字符串再次出现时,利用字典中的该字符串对应的索引,来对该字符串进行编码,通过较短的索引来表示较长的字符串,以此实现压缩。
4、但是通过常规的lzw算法对待编码序列进行编码和解码时,只能按照待编码序列中字符出现的顺序依次进行编码和解码,编码效率和解码效率低,即待编码序列的处理效率低。
5、因此,通过常规的lzw算法对各节点之间的交互数据进行压缩,虽然提高了传输效率,但是影响处理效率,进而影响各节点之间的交互效率。
技术实现思路
1、为解决上述一个或多个技术问题,本发明在如下的多个方面中提供方案。
2、在第一方面中,本发明提供了一种乳制品生产用交互方法,包括:
3、获取乳制品生产过程中各节点之间的交互数据序列;
4、根据交互数据序列中出现的所有字符构建字典;
5、初始时,将所述交互数据序列作为待编码序列;根据字典通过第一编码方式对待编码序列进行编码,包括判断待编码序列中的间隔字符组合在所述字典中是否存在:
6、若所述待编码序列的间隔字符组合在所述字典中不存在,则确定所述待编码序列的待编码字符串和待加入字符串,根据字典对所述待编码字符串进行编码,将编码后的待编码字符串从所述待编码序列中删除,通过所述待加入字符串对所述字典进行更新;根据更新后的字典通过所述第一编码方式对删除待编码字符串后的待编码序列进行编码,直到所述待编码序列的间隔字符组合在所述字典中存在时停止;
7、若所述待编码序列的间隔字符组合在所述字典中存在,则将所述待编码序列的间隔字符组合作为所述待编码序列的待编码字符串,根据字典对所述待编码序列的待编码字符串进行编码并标记,将编码后的待编码字符串从所述待编码序列中删除;将删除待编码字符串后的待编码序列划分为两个待编码序列,通过所述第一编码方式对所述两个待编码序列同时进行编码;
8、其中,所述间隔字符组合是指所述待编码序列的第1个字符以及与第1个字符的间隔等于间隔长度的字符组成的字符组合;
9、将每个待编码序列的所有待编码字符串的编码结果,组成待编码序列的编码结果序列,将所有待编码序列的编码结果序列组成交互数据序列的编码结果;
10、将乳制品生产过程中上一个节点的交互数据序列的编码结果,传输至下一个节点,对所述上一个节点的交互数据序列的编码结果进行解码,根据解码出的交互数据序列对下一个节点的运行参数进行调整,实现乳制品生产过程的交互。
11、在一个实施例中,确定所述待编码序列的待编码字符串和待加入字符串,包括:
12、判断待编码序列中的前2个字符组成的字符串在字典中是否存在;
13、若字符串在字典中存在,则继续判断待编码序列中的前3个字符组成的字符串在字典中是否存在;
14、若字符串在字典中存在,则继续判断待编码序列中的前4个字符组成的字符串在字典中是否存在;
15、直到字符串在字典中不存在时停止迭代,此时将待编码序列中的前i-1个字符组成的字符串,作为待编码序列的待编码字符串;将待编码序列中的前i个字符组成的字符串,作为待编码序列的待加入字符串;i表示字符的数量,i为[2,n]范围内的整数,n表示待编码序列中所有字符的数量。
16、在一个实施例中,所述将删除待编码字符串后的待编码序列划分为两个待编码序列,包括:
17、将删除待编码字符串后的待编码序列中前c个字符组成的序列,作为一个待编码序列;
18、将删除待编码字符串后的待编码序列中第c+1个字符到最后一个字符组成的序列,作为另一个待编码序列;
19、其中,c表示间隔长度。
20、在一个实施例中,所述间隔长度的获取方法,包括:
21、将预设范围内的任意一个整数作为目标长度,在交互数据序列中确定目标长度对应的所有第一字符组合;
22、确定目标长度对应的所有第一字符组合中的所有可编码字符组合;
23、将所述所有可编码字符组合的数量,作为目标长度的优选度;
24、将优选度最大的目标长度,记为间隔长度。
25、在一个实施例中,所述确定目标长度对应的所有第一字符组合,包括:
26、将所述交互数据序列中的第j个字符以及与第j个字符的间隔等于目标长度的字符组成的字符组合,作为目标长度对应的第一字符组合;
27、其中,j表示字符的序号,j取遍[1,l]范围内的所有整数,l表示交互数据序列的长度。
28、在一个实施例中,所述确定目标长度对应的所有第一字符组合中的所有可编码字符组合,包括:
29、对于任意一个第一字符组合,如果在该第一字符组合出现之前,存在与该第一字符组合相同的邻接字符组合,则将该第一字符组合记为可编码字符组合;
30、所述邻接字符组合是指交互数据序列中的第j个字符以及与第j个字符的间隔等于0的字符组成的字符组合;
31、其中,j表示字符的序号,j取遍[1,l]范围内的所有整数,l表示交互数据序列的长度。
32、在一个实施例中,所述字符的间隔是指两个字符的序号的差值的绝对值减1。
33、在一个实施例中,所述根据字典对所述待编码字符串进行编码是指将待编码字符串在字典中对应的索引,作为待编码字符串的编码结果。
34、在一个实施例中,所述标记是指在间隔字符组合的编码结果前面添加预设标识符。
35、第二方面,本发明提供一种乳制品生产用交互系统,采用如下的技术方案:
36、一种乳制品生产用交互系统,包括:处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现上述一种乳制品生产用交互方法。
37、通过采用上述技术方案,将上述的一种乳制品生产用交互方法生成计算机程序,并存储于存储器中,以被处理器加载并执行,从而根据存储器及处理器制作终端设备,方便使用。
38、本发明的有益效果在于:本发明将交互数据序列作为待编码序列,在通过第一编码方式对待编码序列进行编码的过程中,将待编码序列的第1个字符以及与第1个字符的间隔等于间隔长度的字符组成的字符组合作为待编码序列的间隔字符组合,判断待编码序列中的间隔字符组合在字典中是否存在,当待编码序列的间隔字符组合在字典中存在时,则将待编码序列的间隔字符组合作为待编码序列的待编码字符串,根据字典对待编码字符串进行编码,将删除待编码字符串后的待编码序列划分为两个待编码序列,通过第一编码方式对两个待编码序列同时进行编码;相较于常规的lzw算法只能按照待编码序列中字符出现的顺序依次进行编码,本发明通过将较长的待编码序列划分为多个较短的待编码序列,并同时对多个较短的待编码序列进行编码,提高了编码效率,进而提高了待编码序列的处理效率和传输效率,使得各节点之间的交互效率增高,保证了各节点之间的协同作用的效率,从而确保了生产出的乳制品的产品质量。