在基于控制器域网的通信网络中检测信号的方法及其装置与流程

文档序号:24050144发布日期:2021-02-23 21:22阅读:169来源:国知局
在基于控制器域网的通信网络中检测信号的方法及其装置与流程
在基于控制器域网的通信网络中检测信号的方法及其装置
[0001]
相关申请的交叉引用
[0002]
本申请要求于2019年8月14日向韩国知识产权局(kipo)提交的申请号为10-2019-0099372的韩国专利申请的优先权,其整体内容通过引用合并于此。
技术领域
[0003]
本公开内容涉及用于在基于控制器域网(can,controller area network)的通信网络中检测信号的方法和装置,更具体地,涉及用于在基于can的车辆网络中通过使用门控循环单元-衰减(gru-d,gated recurrent unit-decay)神经网络来检测异常信号的方法和装置。


背景技术:

[0004]
机器学习是一种用于人工智能(ai)的技术,指的是根据由计算机基于数据而训练的参数来执行预测任务,诸如回归、分类和聚类。此外,深度学习是机器学习的一个领域,其向计算机传授人的思维方式,并且可以被定义为一组机器学习算法,该一组机器学习算法通过各种非线性变换技术的组合来尝试进行高级抽象(即,用于从大量的数据或者复杂的数据得到核心内容或者汇总功能的任务)。
[0005]
这种深度学习架构是基于人工神经网络(ann)设计的构思。人工神经网络是在对虚拟神经元建模之后模拟虚拟神经元以具有与人脑相同的学习能力的算法,并且主要用于模式识别。用在深度学习中的ann模型具有通过迭代线性拟合和非线性变换或激活而构造的结构。深度学习中使用的神经网络模型可以包括深度神经网络(dnn)、卷积神经网络(cnn)、循环神经网络(rnn)、受限玻尔兹曼机(rbm)、深度信念网络(dbn)、深度q网络等。
[0006]
随着近来车辆零部件的数字化,安装在车辆中的电子设备的数量和种类已显著增加。通常,可以遍及车辆各处使用电子设备,例如,动力传动控制系统(例如,引擎控制系统、自动变速器控制系统等)、车身控制系统(例如,车身电子装备控制系统、便利设备控制系统、灯控制系统等)、底盘控制系统(例如,转向设备控制系统、制动控制系统、悬挂控制系统等)、车辆网络(例如,控制器域网(can)、基于flexray的网络、基于媒体导向系统传输(most)的网络等)、多媒体系统(例如,导航装置系统、车联网系统、休闲娱乐系统等)等。
[0007]
这些系统中的每个中使用的电子装置经由车辆网络连接,该车辆网络支持电子装置的功能。例如,can可以支持高达1mbps的传输速率并且支持冲突消息的自动重传、基于循环冗余接口(crc)的错误检测等。
[0008]
另外,在基于can的车辆网络中,可以使用内插(interpolation)对接收到的车辆网络的信号进行预处理。然而,如果使用内插对接收到的信号进行预处理,则车辆网络的性能可能基于根据内插的分辨率(resolution)而劣化。


技术实现要素:

[0009]
因此,本公开内容的示例性实施方式涉及提供用于在基于can的通信网络中通过
使用gru-d神经网络来检测异常信号的方法和装置。
[0010]
为了实现本公开内容的目的,一种通信网络中的通信节点的操作方法可以包括:从多个can通信节点接收can信号;通过基于前向采样时刻(forward sampling time)而对接收到的can信号执行前向预处理来生成前向输入数据;根据前向采样时刻而生成前向时间间隔数据和针对前向输入数据的前向掩蔽数据;通过基于后向采样时刻而对can信号执行后向预处理来生成后向输入数据;根据后向采样时刻而生成后向时间间隔数据和针对后向输入数据的后向掩蔽数据;以及通过将前向输入数据、前向掩蔽数据、前向时间间隔数据、后向输入数据、后向掩蔽数据和后向时间间隔数据输入到门控循环单元-衰减(gru-d)神经网络中来检测can信号之中的异常信号。
[0011]
生成前向输入数据的步骤可以包括:基于前向采样时刻来获得前向接收窗口;在基于时间轴线的前向方向上将前向接收窗口扩展到存在接收到的can信号的采样时刻;在基于时间轴线的后向方向上将前向接收窗口扩展到存在接收到的can信号的采样时刻;以及基于扩展的前向接收窗口来生成前向输入数据,所述前向输入数据为指示can信号的类型的矩阵。
[0012]
前向掩蔽数据可以是当在相应的采样时刻处存在数据时具有值1而在相应的采样时刻处不存在数据时具有值0的矩阵。
[0013]
可以基于在前向采样时刻之间的差值来生成前向时间间隔数据。
[0014]
生成后向输入数据的步骤可以包括:基于后向采样时刻来获得后向接收窗口;在基于时间轴线的后向方向上将后向接收窗口扩展到存在接收到的can信号的采样时刻;在基于时间轴线的前向方向上将后向接收窗口扩展到存在接收到的can信号的采样时刻;以及基于扩展的后向接收窗口生成来后向输入数据,所述后向输入数据为指示can信号的类型的矩阵。
[0015]
可以基于在后向采样时刻之间的差值来生成后向时间间隔数据。
[0016]
gru-d神经网络可以包括gru-d编码器和gru-d解码器,所述gru-d编码器包括多个gru-d层,并且所述gru-d解码器具有与gru-d编码器对称的结构。
[0017]
检测异常信号的步骤可以包括:通过gru-d编码器基于后向输入数据、后向掩蔽数据和前向时间间隔数据来输出第二隐藏矩阵和编码器数据;通过gru-d解码器基于第二隐藏矩阵、编码器数据、后向掩蔽数据和后向时间间隔数据来输出估计数据;以及通过将前向输入数据与估计数据进行比较来检测can信号之中的异常信号。
[0018]
为了实现本公开内容的目的,一种通信网络中的通信节点可以包括处理器和储存可由处理器运行的至少一个指令的存储器,其中当由处理器运行时,至少一个指令使处理器:从多个can通信节点接收can信号;通过基于前向采样时刻而对接收到的can信号执行前向预处理来生成前向输入数据;根据前向采样时刻而生成前向时间间隔数据和针对前向输入数据的前向掩蔽数据;通过基于后向采样时刻而对can信号执行后向预处理来生成后向输入数据;根据后向采样时刻而生成后向时间间隔数据和针对后向输入数据的后向掩蔽数据;以及通过将前向输入数据、前向掩蔽数据、前向时间间隔数据、后向输入数据、后向掩蔽数据和后向时间间隔数据输入到门控循环单元-衰减(gru-d)神经网络中来检测can信号之中的异常信号。
[0019]
在生成前向输入数据的步骤中,至少一个指令还可以使处理器:基于前向采样时
刻来获得前向接收窗口;在基于时间轴线的前向方向上将前向接收窗口扩展到存在接收到的can信号的采样时刻;在基于时间轴线的后向方向上将前向接收窗口扩展到存在接收到的can信号的采样时刻;以及基于扩展的前向接收窗口来生成前向输入数据,所述前向输入数据为指示can信号的类型的矩阵。
[0020]
前向掩蔽数据可以是当在相应的采样时刻处存在数据时具有值1而在相应的采样时刻处不存在数据时具有值0的矩阵。
[0021]
可以基于在前向采样时刻之间的差值来生成前向时间间隔数据。
[0022]
在生成后向输入数据的步骤中,至少一个指令还可以使处理器:基于后向采样时刻来获得后向接收窗口;在基于时间轴线的后向方向上将后向接收窗口扩展到存在接收到的can信号的采样时刻;在基于时间轴线的前向方向上将后向接收窗口扩展到存在接收到的can信号的采样时刻;以及基于扩展的后向接收窗口来生成后向输入数据,所述后向输入数据为指示can信号的类型的矩阵。
[0023]
gru-d神经网络可以包括gru-d编码器和gru-d解码器,所述gru-d编码器包括多个gru-d层,并且所述gru-d解码器具有与gru-d编码器对称的结构。
[0024]
在检测异常信号的步骤中,至少一个指令还可以使处理器:通过gru-d编码器基于后向输入数据、后向掩蔽数据和前向时间间隔数据来输出第二隐藏矩阵和编码器数据;通过gru-d解码器基于第二隐藏矩阵、编码器数据、后向掩蔽数据和后向时间间隔数据来输出估计数据;以及通过将前向输入数据与估计数据进行比较来检测can信号之中的异常信号。
[0025]
根据本公开内容的示例性实施方式,通过在基于can的通信网络中在不使用内插的情况下对接收到的信号执行预处理,即使在接收到的信号的分辨率增大时,通信网络的性能也不会劣化,并且预处理可以与接收到的信号的特性无关地执行。因此,可以提高接收到的信号的检测性能。此外,通过在基于can的通信网络中使用gru_d神经网络来检测异常信号,可以提高检测异常信号的速度和精度。因此,可以提高通信网络的性能。
附图说明
[0026]
通过参照附图详细描述本公开内容的实施方式,本公开内容的实施方式将变得明显,在附图中:
[0027]
图1是示出车辆网络的网络拓扑的第一示例性实施方式的框图;
[0028]
图2是示出构成车辆网络的通信节点的示例性实施方式的框图;
[0029]
图3是示出用于在车辆网络中检测异常信号的方法的第一示例性实施方式的流程图;
[0030]
图4是示出用于在车辆网络中执行前向(forward)预处理的方法的第一示例性实施方式的流程图;
[0031]
图5是示出在车辆网络中获得前向接收窗口的方法的第一示例性实施方式的概念图;
[0032]
图6是示出在车辆网络中扩展前向接收窗口的方法的第一示例性实施方式的概念图;
[0033]
图7是示出用于在车辆网络中执行后向(backward)预处理的方法的第一示例性实施方式的流程图;
[0034]
图8是示出在车辆网络中获得后向接收窗口的方法的第一示例性实施方式的概念图;
[0035]
图9是示出在车辆网络中扩展后向接收窗口的方法的第一示例性实施方式的概念图;
[0036]
图10是示出车辆网络中的gru-d神经网络的第一示例性实施方式的框图;
[0037]
图11是示出车辆网络中的gru-d编码器的第一示例性实施方式的框图;
[0038]
图12是示出车辆网络中的gru-d解码器的第一示例性实施方式的概念图;以及
[0039]
图13是示出gru-d层的第一示例性实施方式的概念图。
具体实施方式
[0040]
本文中公开了本公开内容的实施方式。然而,本文中公开的具体结构和功能描述仅是代表性的,用于描述本公开内容的实施方式的目的,然而,本公开内容的实施方式可以以许多替选形式实施,而不应被解释为限于本文中所阐述的本公开的实施方式。
[0041]
因此,尽管本公开内容易于进行各种修改和替选形式,但是其具体实施方式在附图中以示例的方式被示出并且将在本文中被详细描述。然而,还将理解,并非旨在将本公开内容限于所公开的具体形式,而是相反,本公开内容要覆盖落在本公开内容的精神和范围内的所有修改方案、等效方案和替选方案。在附图的描述通篇中相同的附图标记表示相同的元件。
[0042]
将理解,尽管本文中可以使用术语“第一”、“第二”等描述各种元件,但是这些元件不应受这些术语的限制。这些术语仅用于使一个元件区别于另一元件。例如,在不偏离本公开内容的范围的情况下,第一元件可以被称为第二元件,并且相似地,第二元件可以被称为第一元件。如本文中所使用的,术语“和/或”包括一个或更多个的相关联列出项中的任意组合和全部组合。
[0043]
将理解,当元件被称为“连接”或“耦接”到另一元件时,其可以直接连接或耦接到该另一元件,或者可以存在居间元件。相反,当元件被称为“直接连接”或“直接耦接”到另一元件时,不存在居间元件。用于描述元件之间的关系的其他术语应以相同的方式进行解读(即,“在

之间”相对于“直接在

之间”、“相邻”相对于“直接相邻”等)。
[0044]
本文中所使用的术语仅用于描述具体实施方式的目的,并非旨在限制本公开内容。如本文中所使用的,除非上下文明确地另有所指,否则单数形式“一”、“一个”和“该”旨在还包括复数形式。还将理解,在本文中使用时,术语“包括”、“包括有”和/或“包含”、“包含有”指明所陈述的特征、整体、步骤、操作、元件和/或部件的存在,但是并未排除一个或更多个其他特征、整体、步骤、操作、元件、部件和/或它们的组的存在或添加。
[0045]
除非另有限定,否则本文中所使用的所有术语(包括技术术语和科学术语)具有与本公开内容所属领域的普通技术人员所共同理解的含义相同的含义。还将理解,诸如在通用词典中定义的术语应被解释为具有与它们在相关领域的背景下的含义相一致的含义,并且不应在理想化的或者过于正式的意义上进行解读,除非在本文中明确如此定义。
[0046]
在下文中,将参照附图更详细地描述本公开内容的实施方式。为了在描述本公开内容时便于总体理解,附图中相同的部件用相同的附图标记表示,并且将省略其重复描述。
[0047]
图1是示出车辆网络的网络拓扑的第一示例性实施方式的框图。
[0048]
参照图1,车辆网络可以包括多个端节点(end node)111至113和控制器120。此外,构成车辆网络的通信节点(即,端节点111至113和控制器120)可以连接成星形拓扑、总线拓扑、环形拓扑、树状拓扑、网状拓扑等。此外,构成车辆网络的每个通信节点可以支持can协议、flexray协议、most协议、lin协议、以太网协议等。根据本公开内容的示例性实施方式可以应用于上述网络拓扑,并且被应用根据本公开内容的示例性实施方式的网络拓扑不限于此并且可以以各种方式配置。
[0049]
另外,图1的多个端节点111至113和控制器120可以配置如下。
[0050]
图2是示出构成车辆网络的通信节点的示例性实施方式的框图。
[0051]
参照图2,通信节点200可以包括至少一个处理器210、存储器220和连接到用于执行通信的网络的收发器230。此外,通信节点200还可以包括输入接口设备240、输出接口设备250、储存器件260等。在通信节点200中所包括的每个部件可以在通过总线270连接时彼此通信。
[0052]
然而,在通信节点200中所包括的每个部件可以通过单独的接口或者中心在处理器210上的单独的总线而非公共总线270连接。例如,处理器210可以通过专用接口连接到存储器220、收发器230、输入接口设备240、输出接口设备250和储存器件260中的至少一个。
[0053]
处理器210可以运行储存在存储器220和储存器件260中的至少一个中的程序。处理器210可以指的是中央处理单元(cpu)、图形处理单元(gpu)或者其上执行根据本公开内容的实施方式的方法的专用处理器。存储器220和储存器件260中的每个可以由易失性储存介质和非易失性储存介质中的至少一个构成。例如,存储器220可以包括只读存储器(rom)和随机存取存储器(ram)中的至少一个。
[0054]
再次参照图1,车辆网络中的多个端节点111至113可以通过总线线路彼此连接。也就是说,在多个端节点111至113之间的通信可以通过总线线路执行。此外,多个端节点111至113可以通过总线线路与控制器120通信。多个端节点111至113中的每个可以在每个采样时刻处向控制器120传送信号。
[0055]
端节点111至113中的每个可以是控制车辆中所包括的各种设备的电子控制单元(ecu)。例如,端节点111至113可以是构成信息娱乐设备(例如,显示设备、导航设备、环视监控设备)等的ecu。
[0056]
控制器120可以通过总线线路从多个端节点111至113接收信号。控制器120可以在各个采样时刻处接收由多个端节点111至113传送的信号。控制器120可以检测从多个端节点111至113接收到的信号之中的异常信号。
[0057]
图3是示出用于在车辆网络中检测异常信号的方法的第一示例性实施方式的流程图。
[0058]
图3的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。参照图3,控制器(例如,图1的控制器120)可以基于从端节点(例如,图1的端节点111至113)接收到的信号来执行前向预处理(s310)。
[0059]
图4是示出用于在车辆网络中执行前向预处理的方法的第一示例性实施方式的流程图。
[0060]
图4的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。参照图4,控制器(例如,图1的控制器120)可以基于从端节点(例如,图1的端节点111
至113)接收到的信号以及信号的采样时刻来获得前向接收窗口(s410)。
[0061]
控制器可以以预设周期执行采样。也就是说,控制器可以在控制器执行采样的时刻之中检测从端节点接收到信号的采样时刻。
[0062]
控制器可以基于端节点的can id和从端节点接收到信号的采样时刻来对接收到的信号进行分类(sort)。控制器可以生成前向曲线图,在该前向曲线图中端节点的can id位于竖直轴线中,而从端节点接收到信号的采样时刻位于水平轴线中。在前向曲线图中,从端节点接收到的信号可以按时间顺序被分类。控制器可以通过从所生成的曲线图获得预定区间的曲线来获得前向接收窗口。
[0063]
图5是示出在车辆网络中获得前向接收窗口的方法的第一示例性实施方式的概念图。
[0064]
图5的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。在图5中,can id a可以是图1的第一端节点111的can id,can id b可以是第二端节点112的can id,并且can id c可以是第三端节点113的can id。
[0065]
参照图5,控制器可以在一个或更多个采样时刻从端节点接收信号。控制器可以在时刻t0[sec]、t0+1.9[sec]和t0+2.7[sec]处从第一端节点接收信号。控制器可以在时刻t0+1.0[sec]、t0+1.6[sec]和t0+2.5[sec]处从第二端节点接收信号。
[0066]
控制器可以生成前向曲线图,该前向曲线图具有在水平轴线中的采样时刻(即,t0[sec]、t0+1.0[sec]、t0+1.6[sec]、t0+1.9[sec]、t0+2.5[sec]和t0+2.7[sec])和在竖直轴线中的端节点的can id(即,can id a、can id b和can id c)。在前向曲线图中,由控制器从端节点接收到的信号可以按照接收时刻的顺序排列。控制器可以获得作为所生成的前向曲线图的一部分的从t0[sec]到t0+2.7[sec]的区间的前向曲线图,作为前向接收窗口。
[0067]
再次参照图4,控制器可以基于时间轴线扩展前向接收窗口(s420)。控制器可以通过将前向接收窗口的水平轴线向两侧扩展来扩展前向接收窗口。也就是说,控制器可以将前向接收窗口向两侧扩展以便于检测从所有端节点(例如,图1的端节点111至113)接收到信号的时刻。
[0068]
图6是示出在车辆网络中扩展前向接收窗口的方法的第一示例性实施方式的概念图。
[0069]
图6的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。此外,图6的前向接收窗口可以与图5的前向接收窗口相同。
[0070]
参照图6,控制器可以在作为接收窗口的起始时刻的t0[sec]之前获得从第二端节点和第三端节点接收到信号的采样时刻。控制器可以在作为接收窗口的结束时刻的t0+2.7[sec]之后获得从第二端节点和第三端节点接收到信号的采样时刻。
[0071]
控制器可以将在步骤s410中获得的前向接收窗口的水平轴线向两侧扩展。也就是说,控制器可以将在步骤s410中获得的前向接收窗口从t0[sec]向左侧(即,时刻减小的方向)扩展并且将前向接收窗口从t0+2.7[sec]向右侧(即,时刻增大的方向)扩展。
[0072]
控制器可以将前向接收窗口向左扩展直到从剩余的端节点接收到信号的时刻(例如,从第二端节点接收到信号的时刻t
0-0.6[set])。控制器可以将前向接收窗口向右扩展直到从剩余的端节点接收到信号的时刻(例如,从第三端节点接收到信号的时刻t0+3.7[sec])。
[0073]
再次参照图4,控制器可以基于在步骤s420中扩展的前向接收窗口(参见图6)来生成前向输入数据(s430)。控制器可以通过将在步骤s420中扩展的前向接收窗口表示为如下面的等式1中所示的一个矩阵来生成前向输入数据。
[0074]
[等式1]
[0075][0076]
在等式1中,x
0,0
、x
0,3
、x
0,5
、x
1,0
、x
1,3
和x
1,5
可以表示在t0[sec]、t0+1.9[sec]和t0+2.7[sec]处从第一端节点接收到的信号。x
2,-2
、x
2,1
、x
2,2
、x
2,4
、x
2,6
、x
3,-2
、x
3,1
、x
3,2
、x
3,4
和x
3,6
可以表示在t
0-0.6[sec]、t0+1.0[sec]、t0+1.6[sec]、t0+2.5[sec]和t0+3.2[sec]处从第二端节点接收到的信号。x
4,-1
、x
4,7
、x
5,-1
和x
5,7
可以表示在t
0-0.5[sec]和t0+3.7[sec]处从第三端节点接收到的信号。
[0077]
控制器可以基于在步骤s430中生成的前向输入数据来生成前向掩蔽数据和前向时间间隔数据(s440)。
[0078]
掩蔽数据可以是指示特定端节点是否在特定采样时刻处接收到信号的矩阵。控制器可以生成前向掩蔽数据,其是当在相应的采样时刻处接收到信号时具有值1而在相应的采样时刻处没有接收到信号时具有值0的矩阵。这里,采样时刻可以是从端节点111至113中的至少一个接收到信号的时刻。例如,控制器可以基于根据等式1所生成的前向输入数据来生成诸如下面的等式2的掩蔽数据。
[0079]
[等式2]
[0080][0081]
控制器可以生成指示在从端节点接收到信号的采样时刻之间的差值的前向采样矩阵。前向采样矩阵可以是指示在扩展前向接收窗口中在最早的信号接收时刻和剩余的信号接收时刻之间的时刻差值的矩阵。例如,可以基于图5的扩展前向接收窗口来生成诸如下面的等式3的前向采样矩阵。
[0082]
[等式3]
[0083]
[0084]
在等式3中,前向采样矩阵的每个分量可以表示在从端节点接收到信号的时刻之中在最早的采样时刻t
0-0.6[sec]和剩余的信号接收时刻的每个之间的差值。控制器可以基于前向采样矩阵和前向掩蔽数据来生成前向时间间隔数据。控制器可以基于下面的等式4来生成具有矩阵形式的前向时间间隔数据。
[0085]
[等式4]
[0086][0087]
在等式4中,δ
k,t
可以是前向时间间隔数据的第k行和第t列的分量。s
t
可以是前向采样矩阵的第t分量,δ
k,t-1
可以是前向时间间隔数据的第k行和第(t-1)列的分量,min(t)可以是扩展前向接收窗口的采样时刻中的最早的时刻,并且m
k,z
可以是前向掩蔽数据的第k行和第t列的分量。
[0088]
例如,可以基于通过等式2生成的前向掩蔽数据和通过等式3生成的前向采样矩阵来生成如下面的等式5中所示的前向时间间隔数据。
[0089]
[等式5]
[0090][0091]
再次参照图3,控制器可以基于从端节点接收到的信号执行后向预处理(s320)。
[0092]
图7是示出用于在车辆网络中执行后向预处理的方法的第一示例性实施方式的流程图。
[0093]
图7的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。参照图7,控制器(例如,图1的控制器120)可以基于从端节点(例如,图1的端节点111至113)接收到的信号以及信号的采样时刻来获得后向接收窗口(s710)。
[0094]
控制器可以按预设周期执行采样。也就是说,控制器可以在控制器执行采样的时刻之中检测从端节点接收到信号的采样时刻。控制器可以按照信号的接收时刻的相反顺序而基于端节点的can id和信号的接收时刻来对接收到的信号进行分类。
[0095]
控制器可以生成后向曲线图,在该后向曲线图中端节点的can id在竖直轴线中并且在后向采样时刻之中的从端节点接收到信号的时刻在水平轴线中。这里,后向采样时刻可以是通过将每个控制器的采样时刻乘以值-1获得的采样时刻。
[0096]
控制器可以生成后向曲线图,在该后向曲线图中端节点的can id位于竖直轴线中并且在后向采样时刻之中的从端节点接收到信号的接收时间位于水平轴线中。这里,后向采样时刻可以是通过将控制器的各个采样时刻乘以值-1获得的采样时刻。
[0097]
图8是示出在车辆网络中获得后向接收窗口的方法的第一示例性实施方式的概念
图。
[0098]
图8的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。在图8中,can id a可以是图1的第一端节点111的can id,can id b可以是第二端节点112的can id,并且can id c可以是第三端节点113的can id。
[0099]
参照图8,控制器可以获得在后向采样时刻之中的从端节点接收到信号的时刻。控制器可以通过将接收到信号的时刻乘以值-1来获得后向采样时刻之中的接收到信号的时刻。
[0100]
控制器可以在一个或更多个采样时刻处从端节点接收信号。控制器可以在时刻t0[sec]、t0+1.9[sec]和t0+2.7[sec]处从第一端节点接收信号。控制器可以在时刻t0+1.0[sec]、t0+1.6[sec]和t0+2.5[sec]处从第二端节点接收信号。
[0101]
可以通过将接收到信号的时刻(即,t0[sec]、t0+1.0[sec]、t0+1.6[sec]、t0+1.9[sec]、t0+2.5[sec]和t0+2.7[sec])乘以值-1而在后向采样时刻之中获得从端节点接收到信号的时刻(即,-t0[sec]、-t
0-1.0[sec]、-t
0-1.6[sec]、-t
0-1.9[sec]、-t
0-2.5[sec]和-t
0-2.7[sec])。控制器可以生成后向曲线图,在该后向曲线图中所获得的后向信号接收时刻在水平轴线中并且端节点的can id(即,can id a、can id b和can id c)在竖直轴线中。
[0102]
在后向曲线图中,控制器从端节点接收到的信号接收时刻可以按照相反的顺序被分类。控制器可以获得所生成的前向曲线图的从-t
0-2.7[sec]到-t0[sec]的区间的后向曲线图,作为后向接收窗口。
[0103]
再次参照图7,控制器可以基于时间轴线扩展后向接收窗口(s720)。控制器可以通过将后向接收窗口的水平轴线向两侧扩展来扩展后向接收窗口。也就是说,为了从所有端节点(例如,图1的端节点111至113)接收信号,控制器可以将后向接收窗口向两侧扩展。
[0104]
图9是示出在车辆网络中扩展后向接收窗口的方法的第一示例性实施方式的概念图。
[0105]
图9的端节点和控制器可以被配置成与图1的端节点111至113和控制器120相同或相似。此外,图8的后向接收窗口可以与图7的后向接收窗口相同。
[0106]
参照图8,控制器可以基于后向采样时刻而在作为后向接收窗口的起始时刻的-t
0-2.7[sec]之前获得从第二端节点和第三端节点接收到信号的后向采样时刻。控制器可以在作为后向接收窗口的结束时刻的-t0[sec]之后获得从第二端节点和第三端节点接收到信号的后向采样时刻。
[0107]
控制器可以将在步骤s710中获得的后向接收窗口的水平轴线向两侧扩展。也就是说,控制器可以将在步骤s710中获得的后向接收窗口从-t
0-2.7[sec]向左侧(即,时刻减小的方向)扩展并且将后向接收窗口从-t0[sec]向右侧(即,时刻增大的方向)扩展。
[0108]
控制器可以将后向接收窗口向左扩展直到在-t0[sec]之前从剩余的端节点接收到信号的后向采样时刻(例如,从第三端节点接收到信号的后向采样时刻-t
0-3.7[sec])。控制器可以将后向接收窗口向右扩展直到在-t0[sec]之后从剩余的端节点接收到信号的采样时刻(例如,从第二端节点接收到信号的后向采样时刻-t0+0.6[sec])。
[0109]
再次参照图7,控制器可以基于在步骤s720中扩展的后向接收窗口来生成后向输入数据(s730)。控制器可以通过将在步骤s720中扩展的后向接收窗口表示为如下面的等式7中所示的一个矩阵来生成后向输入数据。
[0110]
[等式7]
[0111][0112]
和可以表示在后向采样时刻之中的-t
0-2.7[sec]、-t
0-1.9[sec]和-t0[sec]处从第一端节点接收到的信号。和可以表示在后向采样时刻之中的-t
0-3.2[sec]、-t
0-2.5[sec]、-t
0-1.6[sec]、-t
0-1.0[sec]和-t0+0.6[sec]处从第二端节点接收到的信号。和可以表示在后向采样时刻之中的-t
0-3.7[sec]和-t0+0.5[sec]处从第三端节点接收到的信号。
[0113]
控制器可以基于在步骤s730中生成的后向输入数据来生成后向掩蔽数据和后向时间间隔数据(s740)。
[0114]
控制器可以生成后向掩蔽数据,其是当在相应的后向采样时刻处接收到信号时具有值1而在相应的后向采样时刻处没有接收到信号时具有值0的矩阵。这里,后向采样时刻可以是从端节点111至113中的至少一个接收到信号的时刻。例如,控制器可以基于根据等式7生成的后向输入数据来生成诸如下面的等式8的后向掩蔽数据。
[0115]
[等式8]
[0116][0117]
控制器可以生成指示在端节点的后向采样时刻之间的差值的后向采样矩阵。后向采样矩阵可以是指示在扩展后向接收窗口中在最早的后向采样时刻和剩余的后向采样时刻之间的时间差值的矩阵。例如,可以基于图8的扩展后向接收窗口来生成诸如下面的等式9的后向采样矩阵。
[0118]
[等式9]
[0119][0120]
在等式9中,后向采样矩阵的每个分量可以表示在端节点的后向采样时刻之中的最早的时刻-t
0-3.7[sec]和剩余的采样时刻的每个之间的差值。控制器可以基于后向采样
1102可以基于来生成第一层隐藏矩阵
[0134]
gru-d层#(n-1)1103可以从gru-d层#(n-2)接收第(n-2)层隐藏矩阵gru-d层#(n-1)1103可以基于来生成第一隐藏矩阵
[0135]
此外,gru-d层#(n-1)1103可以将所生成的第一隐藏矩阵传送到fc层1104。fc层1104可以从gru-d层#(n-1)1103接收第一隐藏矩阵fc层1104可以基于来生成编码器数据z
t+1

[0136]
另外,图10的的gru-d解码器可以如下配置。
[0137]
参照图12,gru-d解码器可以包括多个gru-d层1201至1203以及fc层1204。
[0138]
作为多个gru-d层之中的最下层的gru-d层#0 1201可以接收后向输入数据的一列后向掩蔽数据的一列和后向时间间隔数据的一列作为输入信号。
[0139]
作为多个gru-d层之中的最下层的gru-d层#0 1201可以接收后向输入数据的一列掩蔽数据的一列和后向时间间隔数据的一列作为输入信号。
[0140]
gru-d层#0 1201可以基于所接收的和来生成第0层后向隐藏矩阵gru-d层#0 1201可以将所生成的传送到gru-d层#1 1202。gru-d层#1 1202可以从gru-d层#0 1201接收第0层隐藏矩阵gru-d层#1 1202可以基于来生成第一层后向隐藏矩阵
[0141]
gru-d层#(n-1)1203可以从gru-d层#(n-2)接收第(n-2)后向隐藏矩阵gru-d层#(n-1)1203可以基于来生成第一后向隐藏矩阵
[0142]
此外,gru-d层#(n-1)1203可以将所生成的第一后向隐藏矩阵传送到fc层1204。fc层1204可以从gru-d层#(n-1)1203接收第一后向隐藏矩阵fc层1204可以基于来生成估计数据
[0143]
另外,每个gru-d层1101至1103和1201至1203可以如下配置。
[0144]
图13是示出gru-d层的第一示例性实施方式的概念图。
[0145]
图13描述了gru-d编码器的层,但是这也可以应用于gru-d解码器的层。
[0146]
参照图13,gru-d层可以包括重置门r、更新门y和掩蔽门g。重置门r可以判断如何将新输入与先前的存储合并。更新门y可以确定反映了多少先前的存储。重置门r可以基于下面的等式12获得重置参数。
[0147]
[等式12]
[0148][0149]
在等式12中,r
t
可以是重置参数,σ可以意指sigmoid函数,w
r
可以意指针对的权重,u
r
可以意指针对的权重,v
r
可以意指针对m
t
的权重,并且b
r
可以意指偏置向量。可以基于下面的等式13来计算
[0150]
[等式13]
[0151][0152]
在等式13中,可以是第k输入数据的过去平均值,并且γ
k,t
可以是γ
t
的第k值。可以基于下面的等式14来计算γ
t

[0153]
[等式14]
[0154]
γ
t
=exp(-max(0,w
γ
δ
t
+b
γ
))
[0155]
在等式14中,w
γ
可以是针对δ
t
的权重,并且b
r
可以意指偏置向量。
[0156]
另外,更新门y可以使用下面的等式15获得更新参数y。
[0157]
[等式15]
[0158][0159]
在等式15中,w
y
可以是针对的权重,u
y
可以是针对的权重,v
y
可以是针对m
t
的权重,并且b
r
可以意指偏置向量。
[0160]
[等式16]
[0161][0162]
另外,gru-d层可以根据下面的等式17计算新的隐藏向量h
t

[0163]
[等式17]
[0164][0165]
再次参照图10,gru-d编码器1001可以接收前向输入数据、前向掩蔽数据和前向时间间隔数据。
[0166]
gru-d编码器1001可以基于前向输入数据的第一列分量(例如,图4中的等式1的x-2
列分量)、前向掩蔽数据的第一列分量(例如,图4中的等式2的m-2
列分量)以及前向时间间隔数据的第一列分量(例如,图4中的等式5的δ-2
列分量)生成编码器数据z-1
和第一隐藏矩阵这里,gru-d编码器1001的fc层(例如,图11的fc层1104)可以生成z-1
,并且gru-d编码器1001的最后gru-d层(例如,图11的最后层1103)可以生成第一隐藏矩阵
[0167]
gru-d解码器1002可以接收后向输入数据、后向掩蔽数据和后向时间间隔数据。再者,gru-d解码器1002可以从gru-d编码器1001接收第n隐藏矩阵
[0168]
gru-d解码器1002可以基于后向输入数据的第一列分量(例如,图7中的等式7的列分量)、后向掩蔽数据的第一列分量(例如,图7中的等式8的列分量)以及后向时间间隔数据的第一列分量(例如,图7中的等式11的列分量)来生成gru-d编码器1001的前向输入数据的估计数据。
[0169]
当gru-d编码器1001的输入数据是x7时,gru-d解码器1002可以生成作为估计数据。此外,gru-d解码器1002可以基于后向输入数据、后向掩蔽数据、后向时间间隔数据和第n隐藏矩阵来生成第一后向隐藏矩阵
[0170]
gru-d解码器1002可以基于后向输入数据的第二列分量(例如,图7中的等式7的列分量)、后向掩蔽数据的第二列分量(例如,图7中的等式8的列分量)以及后向时间
间隔数据的第二列分量(例如,图7中的等式11的列分量)来生成估计数据。当gru-d编码器1001的前向输入数据是x6时,gru-d解码器1002可以生成作为估计数据。
[0171]
gru-d解码器1002可以基于后向输入数据、后向掩蔽数据、后向时间间隔数据和第一后向隐藏矩阵来生成第二后向隐藏矩阵此外,gru-d解码器1002可以基于后向输入数据的最后列分量(例如,图7中的等式7的列分量)、后向掩蔽数据的最后列分量(例如,图7中的等式8的列分量)、后向时间间隔数据的最后列分量(例如,图7中的等式11的列分量)以及第(n-1)后向隐藏矩阵来生成估计数据。当gru-d编码器1001的前向输入数据是x-2
时,gru-d解码器1002可以生成作为估计数据。
[0172]
gru-d神经网络可以通过将前向输入数据与从gru-d解码器1002输出的估计数据进行比较来检测所接收到的信号之中的异常信号。另外,控制器可以基于下面的等式18来计算指示输入数据与估计数据之间的差异的均方差(mse)。
[0173]
[等式18]
[0174][0175]
这里,m
t
可以是前向掩蔽数据,x
t
可以是前向输入数据,并且可以是由解码器1002计算的估计数据。此外,t可以指示编码器和解码器的迭代次数。另外,x
t
和可以是相同的列分量。
[0176]
控制器可以基于x
t
和计算mse的大小。mse的大小可以在x
t
和之间的大小差异大时具有大的值,而mse的大小可以在大小差异小时具有小的值。
[0177]
控制器可以基于mse的大小来检测异常信号。当mse大于或等于预设值时,控制器可以确定输入信号是异常信号。当mse小于预设值时,控制器可以确定输入信号是正常信号。控制器可以通过根据等式18而调整gru-d层(例如,图13的gru-d层)的参数来使mse最小化。控制器可以使用诸如rmsprop算法和adam算法的算法来调整参数。rmsprop算法和adam算法对于本领域技术人员是已知的,并且因此在本公开内容中省略了其描述。
[0178]
本公开内容的示例性实施方式可被实现为可由多种计算机运行并且记录在计算机可读介质上的程序指令。计算机可读介质可以包括程序指令、数据文件、数据结构或者它们的组合。记录在计算机可读介质上的程序指令可被专门设计和配置用于本公开内容,或者可以是计算机软件领域的技术人员公知的和可获得的。
[0179]
计算机可读介质的示例可以包括硬件设备,诸如rom、ram和快闪存储器,其可被专门配置成储存和运行程序指令。程序指令的示例包括由例如编译器制作的机器代码以及由计算机使用解释器运行的高级语言代码。以上示例性硬件设备可以被配置成作为至少一个软件模块工作以便于执行本公开内容的实施方式,反之亦然。
[0180]
尽管已详细描述了本公开内容的示例性实施方式及其优点,但是应理解,在不偏离本公开内容的范围的情况下可以在本文中进行各种修改、替换和变更。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1