滞后是什么意思,它如何应用于计算机科学或编程?

15

我在看一些代码时,看到了一个关于「滞后」的超出上下文的注释。我想我已经弄清楚了代码的作用,所以我的问题并不涉及具体内容。我只是不明白这个术语是什么意思,以及它在编程中如何应用。我搜索了一些数学定义,但希望能获得更多信息。从我所了解的来看,滞后与根据过去发生在X上的事情预测或假定X的给定状态有关系吗?


2
首先,包括您找到的定义。了解您已经阅读过哪些定义会有所帮助。我们不想重复内容。 - S.Lott
6个回答

28
滞后是指一种系统的行为(输出)不仅取决于其在时间 t 的输入,还取决于其过去的行为,所遵循的路径

一个著名的表现出滞后特性的设备是恒温器。想象一下一个恒温器,在70°F时会开启和关闭加热器。当温度在70°F左右波动时,恒温器将不断地开启和关闭加热器。通常,恒温器都具有滞后特性:它将在69°F时开启加热器,但在71°F时关闭加热器。这样可以避免不断的切换。

编辑:请参阅维基百科的文章


16

恒温器示例:

heatPointLow = 8°C
heatPointHeight = 10°C
heater = off

while(true){
    if(temperature < heatPointLow)
        heater = on
    if(temperature > heatPointHeight)   
        heater = off
}

如果只有一个点,系统就会在该单个点周围振荡。 在高低点之间,它取决于加热器的最后一个值是否打开或关闭。


谢谢,用代码阅读起来更好、更快、更有趣。X) - Josep Alsina

2

谷歌是我的朋友:

该原理通常指任何系统基于先前状态的变化行为。因此,您可以使用状态机图或图表来模拟滞后现象。

在用户界面设计中,它指的是使用户界面落后于用户输入事件或其他事件的做法。点击按钮可能不会立即显示详细窗口;相反,会启动一个动画,逐渐改变用户界面。

我认为 Windows 7 任务栏中的那些“设备驱动程序已配置”气泡表现出了滞后现象:气泡出现响应操作系统的完成事件,并开始逐渐消失。如果用户的鼠标悬停在上面,将重置计时器,给用户时间单击气泡以获取有关事件的详细信息;即使此后鼠标事件在气泡区域之外,它也会延迟淡出动画。


1

在实际的集成层中,好的答案非常重要。带有滞后效应的集成层本身就是一个子系统。显然,理想情况下没有滞后效应(Moore机器);但通常每个系统的状态机存在不匹配,这只能通过使用带有滞后效应的翻译器来解决。例如,Microsoft Dynamics/Great Plains Field Service模块将状态记录在其SVC00210 Service Master Audit Trail表中。每个呼叫都处于某个SRVSTAT状态。当集成像ClickSoftware的服务优化调度程序时,需要处理其状态。CS的状态由自定义实现确定。例如,打开,路线中,现场,未完成,已取消,已完成。此外,它还有一个带有待处理部件的未完成状态,尽管这是作为未完成状态内的子状态机实现的。因此,必须将GP中的转换映射到CS中。不幸的是,GP允许(对于呼叫的屏幕输入进行记录)从一种状态转换到自身的转换;因此,该转换事件不能仅用于触发GP中的状态更改。因此,新的触发事件是GP状态转换以及由一些逻辑定义的过去事件集上的元状态的组合。正如您所看到的,滞后效应很快将问题从简单变成了复杂。从计算机科学的角度来看,理想情况是Moore机器,但实际情况是Mealy机器。我更喜欢将其视为带有错误的Mealy面粉!我认为可以从任何Mealy机器生成Moore机器,只是Moore机器会有更多的状态。参见:Mealy v/s. Moore


1
它在工程中也被广泛使用。例如,在视频游戏中,如果有逻辑导致频繁切换但结果不佳,您可以将滞后效应添加到问题中,并使对象在一段时间内确定一个方向,这可以避免抽搐问题。类似于电子学中使用的施密特触发器-避免不断切换而不将系统推入新状态,而是使系统在一个状态下振动并无法摆脱。这是一个非常简单且有用的概念。

在YouTube上搜索“berserk hysteresis”以获取示例。如果没有滞后效应,游戏中的机器人会只是抽搐而几乎不移动(当有很多活动时)。


1

以下是维基百科文章第一句话的简明概述:

滞后效应是系统状态取决于其历史的依赖性。


TS;NM

Hysteresis As Life文章中,对滞后效应的概念表达了一个有趣的观点:

不可避免地,所有滞后效应的真实用途都与此形状或图形相关-它看起来像这样: A Typical Hysteresis Curve 如果我们将x轴命名为“时间”和y轴命名为“事件”,那么我们可以诗意而非科学地说,所有生命都是完全相同的。随着时间的推移,每个人都会经历事件。虽然这些事件是独特的,但它们仍然落在“所有人类经验”的有限范围内。 A Hysteresis Labeled 最终,个体死亡。因此,出生和死亡的事实是确定的,但其间的事件取决于个体-在一定程度上。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接