“本课程的目标是为您的技术未来做好准备。”

它仍然要出版2章...
建模-III
我将继续上一章中给出的一般方向,但是这次我将集中讨论旧的表达形式:“垃圾进-垃圾出”,通常缩写为GIGO(垃圾进,垃圾出)。 这个想法是,如果在输入上放置不正确的收集数据和错误定义的表达式,那么输出将只能得到不正确的结果。 也隐含了相反的假设:从准确的输入数据的可用性中,可以获得正确的结果。 我将证明这两个假设都是错误的。
通常,建模基于求解微分方程,因此对于初学者,我们将考虑形式一阶的最简单微分方程
如您所记得,方向场是在xy平面的每个点上构造的线,其角系数由微分方程式给出(图20.I)。 例如,一个微分方程的方向场如图20.II所示。
图20对于每个同心圆,
使得线的斜率始终相同,并取决于k的值。 这种曲线称为
等高线 。
现在,让我们看一下另一个微分方程的方向场(图20.III)。 在左侧,我们看到了一个分散的方向场,这意味着初始值的微小变化或小的计算误差将导致路径中间值的较大差异。 在右侧,我们看到方向场正在收敛。 这意味着,路径中间的差异越大,右端的值差异就越小。 这个简单的示例显示了小错误如何变大,大错误变小,此外,小错误如何变大然后又变小。 因此,解的精度取决于计算解的特定间隔。 没有绝对的一般准确性。
图20.II图20.III这些注意事项是为功能而构建的
这是微分方程的解
您可能已经想到了一个“管道”,该管道首先扩展,然后围绕等式的“真实,精确解”变窄。 对于两次测量,这种表示是完美的,但是当我有n个这样的微分方程组时-在前面提到的海军的拦截导弹问题中为28-那么围绕方程真解的这些“管道”似乎并不是它们看起来的样子乍一看。 由二维的四个圆组成的图形导致第九章中描述的十维空间的n维悖论。 这只是上一章中描述的稳定和不稳定建模问题的另一种观点。 这次我将给出与微分方程有关的具体示例。
我们如何数值求解微分方程? 从通常的一阶微分方程开始,我们绘制了一个方向场。 我们的任务是让给定的初始值计算出我们感兴趣的下一个兴趣点的值。 如果我们采用微分方程给出的直线的局部斜率系数,并沿切线向前走一小步,那么我们只会引入一个很小的误差(图20.IV)。
使用这个新点,我们将移至下一个点,但是如图所示,由于我们使用上一步的斜率系数,而不是当前间隔的真实斜率系数,因此我们逐渐偏离真实曲线。 为了避免这种影响,我们“预测”某个值,然后使用它来估计此时的角度系数(使用微分方程式),然后使用该间隔两个边界处的角度系数的平均值作为该间隔的角度系数。
然后,使用此平均斜率,我们将其更进一步,这一次使用“校正”公式。 如果使用“预测”和“校正”公式获得的值足够接近,则我们假定计算足够准确,否则必须减小步长。 如果值之间的差异太小,则必须增加步长。 因此,传统的预测器-校正器方案具有用于检查每个步骤中的错误的内置机制,但是在特定步骤中的此错误绝不是而且在任何意义上都是常见的累积错误! 绝对清楚的是,累积的误差取决于方向场是收敛还是发散。
图20.IV图20.V我们在预测步骤和校正步骤中都使用了简单的直线。 使用较高次数的多项式可以得出更准确的结果; 通常使用四分之一多项式(通过Adams-Bashfort方法,Milne方法,Hamming方法等对微分方程进行求解)。 因此,我们必须在前几个点使用函数及其导数的值来预测下一个点的函数值,然后在微分方程中使用该值的替换值并近似新的角度系数值。 使用角度系数的新值和先前值以及所需函数的值,我们校正获得的值。 是时候注意到校正器不过是一个数字递归滤波器,其中输入值为导数,输出值为所需函数的值。
先前讨论的稳定性和其他概念仍然很重要。 如前所述,存在用于微分方程的预测解的附加反馈回路,该反馈回路又用于计算调整后的角度系数。 这两个值都用于求解微分方程,递归数字滤波器只是公式,仅此而已。 但是,它们不是传递特性,因为它们是数字滤波器理论中通常考虑的特性。 在这种情况下,仅进行微分方程值的计算。 在这种情况下,方法之间的差异非常明显:在数字滤波器中,信号被线性处理,而在求解微分方程时,存在非线性,这是通过计算函数导数的值引入的。 这与数字滤波器不同。
如果您求解n个微分方程组,那么您要处理的是n个分量的向量。 您预测每个分量的下一个值,评估n个导数中的每一个,调整每个预测值,然后在此步骤中接受计算结果,如果局部误差太大,则拒绝该结果。 您倾向于将小错误视为围绕真实计算路径的“管道”。 再一次,我敦促您记住高维空间中四个圆圈的悖论。 乍一看,这些“管道”可能看起来并不像它们。
现在让我指出两种方法之间的显着差异:计算方法和数字滤波器理论。 在普通的教科书中,仅描述了通过多项式近似函数的计算数学方法。 递归滤波器在评估公式中使用频率! 这导致了巨大的差异!
为了看到差异,让我们想象一下我们正在开发一个人类在火星上着陆的模拟器。 经典方法着重于着陆轨迹的形状,并对局部区域使用多项式逼近。 随着我们逐步从一个区间移到另一个区间,最终的路径将在加速中具有断点。 对于频率方法,我们将集中精力获取正确的频率,并根据实际情况确定位置。 在理想情况下,两个轨迹将是相同的,但实际上它们可能会显着不同。
我应该使用哪一次远足? 您考虑得越多,您就越会倾向于相信模拟器中的飞行员想对着陆模块的行为有一个“感觉”,并且看来模拟器的频率响应应该被飞行员“感觉”良好。 如果位置稍有不同,则反馈回路将在着陆过程中补偿该偏差,但是如果在实际飞行中控件的“感觉”会有所不同,则飞行员将担心模拟器中没有的新“感觉”。 在我看来,模拟器应该尽可能地使飞行员为真实的感觉做好准备(当然,我们不能长时间在火星上模拟低重力),以使他们在现实中遇到自己遇到的情况时感到舒适在模拟器中反复遇到。 las,我们对飞行员的“感受”知之甚少。 飞行员是仅从傅立叶展开中感测实际频率,还是从复杂的衰落拉普拉斯频率中感测(或者我们应该使用小波?)。 不同的飞行员有同感吗? 关于这些基本设计条件,我们需要比现在知道的更多。
上述情况是解决问题的数学方法和工程方法之间的标准矛盾。 这些方法在求解微分方程时有不同的目标(就像在许多其他问题中一样),因此它们导致不同的结果。 如果您进行建模,您会发现实际上存在着非常重要的隐藏细微差别,但是关于哪些数学家一无所知,并且将以各种方式否认忽略它们的后果。 让我们看一下我粗略估计的两条路径(图20.IV)。 上面的曲线更准确地描述了位置,但是与真实世界相比,折弯给出了完全不同的“感觉”,第二条曲线在位置上的错误更多,但在“感觉”方面具有更高的准确性。 我再次清楚地说明了为什么我相信对问题的主题领域有深刻理解的人也应该了解解决问题的数学方法,而不是依靠传统的解决方法。
现在,我想讲另一个关于耐克导弹防御系统测试初期的故事。 当时,在White Sands进行了现场测试,也称为“现场电话测试”。 这些是试射,其中火箭必须遵循预定的轨迹并在最后一刻爆炸,以使爆炸的所有能量都不会超出特定区域并造成更大的损害,这比将火箭的各个部分轻度掉落在地面上更为可取,据说应该造成更少的伤害。 测试的目的是获得与飞行高度和速度有关的升力和阻力的真实测量值,以调试和改进设计。
当我遇到从测试中回来的朋友时,他在贝尔实验室的走廊里徘徊,看上去很痛苦。 怎么了 因为六个预定发射中的前两个在飞行中途失败,而且没人知道原因。 无法获得进一步设计阶段所需的数据,这意味着整个项目都存在严重问题。 我说过,如果他可以为我提供描述飞行的微分方程,那么我可以让这个女孩解决它们(在1940年代后期使用大型计算机并不容易)。 大约一周后,他们提供了七个一阶微分方程,女孩准备开始。 但是,在飞行中出现问题之前的最初条件是什么? (在那时,我们没有足够的计算能力来快速计算整个飞行路线。)他们不知道! 发生故障之前,遥测数据是无法理解的。 我并不感到惊讶,也没有打扰我。 因此,我们使用了高度,飞行速度,攻角等的估计值。 -每个描述飞行路径的变量的一个初始条件。 换句话说,我在入口处有垃圾。 但是更早之前,我意识到我们模拟的现场测试的本质是,制导系统会自动纠正与建议轨迹的微小偏差! 我正在处理非常融合的方向领域。
我们发现火箭在横轴和竖轴上都是稳定的,但是当其中一个稳定时,过多的能量会导致沿另一轴的振荡。 因此,不仅有沿横轴和纵轴的振荡,而且由于火箭绕纵轴的旋转,在它们之间也存在能量增加的周期性传递。 一旦证明了轨迹的一小部分的计算曲线,每个人都立即意识到没有考虑交叉稳定,每个人都知道如何解决这个问题。 因此,我们得到了一个解决方案,该解决方案还使我们可以读取测试期间获得的损坏的遥测数据,并阐明能量传输的时间段-实际上,可以为计算提供正确的微分方程。 我做了一点工作,除了确保那个装有台式计算器的女孩能诚实地计算出所有东西。 因此,在5月,优点在于理解(1)我们可以模拟发生的情况(现在这是调查事故的常规方法,但是后来又是一种创新),并且(2)方向场收敛,因此可能无法准确指定初始条件。
我告诉您这个故事是为了表明GIGO原则并不总是有效。 在洛斯阿拉莫斯的一次早期炸弹模拟中,我也遇到了类似的故事。 渐渐地,我逐渐了解到,我们为状态方程建立的计算是基于相当不准确的数据。 状态方程关系到物质的压力和密度(还有温度),但在此示例中将省略它。 高压实验室的数据,地震研究得出的近似值,恒星核心密度和无限大压力的渐近理论在非常大的方格纸上以点表示(图20.VII)。 然后,使用图案绘制连接分散点的曲线。 然后,基于这些曲线,我们建立了函数值表,精度为小数点后3位。 这意味着我们只假设小数点后第四位为0或5。 我们使用此数据来建立表格,直到小数点后第五位和第六位。 基于这些表,我们进行了进一步的计算。 就像我已经提到的那样,当时我是一种计算器,我的工作是计数物理学家,从而使物理学家摆脱这一职业,以使他们能够开展工作。
图20.VII战争结束后,我在洛斯阿拉莫斯(Los Alamos)呆了半年,之所以这样做,是因为我想了解如此不准确的数据如何导致最终设计的如此精确的模拟。 我考虑了很长时间,找到了答案。 在计算的中间,我们使用了有限的二阶差分。 一次差异显示了每个壳体一侧的力的值,而两侧相邻的壳体的差异给出了合力,该力使壳体运动。 我们被迫使用薄壳,因此我们将数字彼此相减非常接近,因此我们需要在小数点后使用许多数字。 进一步的研究表明,当“物体”爆炸时,壳体沿曲线向上移动,有时可能会部分向后移,因此状态方程中的任何局部误差都接近平均值。 获得状态方程的曲率非常重要,并且正如已经指出的那样,它平均应该准确。 因此,输入中有垃圾,但输出结果比以往更准确!
这三个示例显示了前面隐式提到的内容-如果问题中使用的变量存在反馈回路,则不必确切知道它们的值。 基于此,G.S。Black关于如何在放大器中建立反馈环路的杰出想法(图20.VIII):只要增益非常高,仅一个电阻的电阻就必须精确匹配,其他所有部件都可以精度较低。 对于图20.VIII所示的电路,我们得到以下表达式:
图20.VIII如您所见,几乎所有的测量不确定度都集中在标称值为1/10的一个电阻中,而传输系数可能不准确。因此,布莱克的反馈回路使我们能够从不准确的零件中制造出准确的东西。现在您明白了为什么我不能为您提供适合所有场合的优雅配方。它应取决于对特定数量执行的计算。不正确的值会通过补偿误差的反馈回路,还是误差会在没有反馈保护的情况下进入系统外部?如果没有为变量提供反馈,那么获取它们的精确值至关重要。因此,意识到这一事实会影响系统的设计!精心设计的系统可防止您不得不使用大量精密组件。但是,这种设计原理目前仍被误解,需要仔细研究。而且,重点并不是优秀的设计师不能凭直觉理解这一点,要在您研究的设计方法中运用这些原理根本不是那么容易。头脑仍然需要我们开发的所有自动化设计工具。最好的头脑将能够将这些原理整合到所研究的设计方法中,以使其他人“开箱即用”地使用它们。现在让我们转向另一个例子和原则,它使我能够解决一个重要问题。给我一个微分方程立即注意到,无穷大条件的值确实是微分方程的右手边等于零,图20.IX。但是让我们看一下稳定性问题。如果在某个足够远的点x处的y值变得足够大,则sinh(y)的值将变得更大,二阶导数假定为大正值,并且曲线朝正无穷大方向发展。同样,如果y太小,则曲线朝向负无穷大。无论是从左向右移动还是从右向左移动,都没有关系。以前,当我遇到方向不同的领域时,我使用了一个显而易见的技巧:我在相反的方向进行集成并获得了精确的解决方案。但是在这种情况下,我们好像就在沙丘的山顶上,而且一旦两条腿都在同一坡度上,我们就会崩溃。图20.IX我尝试使用幂级数展开,非幂级数展开近似原始曲线,但是问题并没有消失,尤其是对于较大的k值。我和我的朋友都无法提供任何适当的解决方案。然后我去问问题主管,首先开始挑战无穷大的边界条件,但是事实证明,这种条件与在分子层中测得的距离有关,那时,实际上被实现的任何晶体管几乎都有无限多个层。然后我开始对等式提出质疑,他们再次赢得了争论,我不得不回到办公室继续思考。这是与当时正在开发的晶体管的设计和理解有关的一项重要任务。我一直认为,如果任务很重要并且正确提出,那么我可以找到解决方案。因此,我别无选择;这是一个荣誉问题。经过几天的思考,我才意识到不稳定是合适方法的关键。我使用当时的微分分析器在很小的时间间隔上建立了微分方程的解,如果解变大,则意味着我选择了太大的角度系数值,如果击落了,那么我也选择了很小的价值。因此,我走了很小的一步,沿着沙丘的山顶行走,一旦决定从一侧撤出,我就知道需要做些什么才能回到山顶。正如您所看到的,当您需要在困难的条件下为重要任务找到解决方案时,职业自豪感是一个很好的帮助。拒绝解决这个问题,提到它无法解决的事实是多么容易,错误地提出或找到其他借口,但我仍然相信重要且正确提出的任务可以使您获得新的有用信息。我使用计算方法解决了许多与空间电荷有关的问题,这些问题具有与两个方向的不稳定性相关的相似复杂性。在向您介绍以下故事之前,我想提醒您一下Rorschach测试,该测试在我年轻时就很流行。将一滴墨水施加到一张纸上,然后将其对折,然后再次展开时,会获得形状相当随机的对称印迹。这些污点的序列显示给被要求告诉他们所见内容的对象。他们的答案用于分析其性格的“特征”。显然,答案是他们想象力的虚构,因为该点实质上具有随机形状。就像看着天空中的云彩并讨论它们的样子一样。您在讨论的只是想象力的结果,不是现实的结果,在某种程度上,这会为您带来新的事物,而不是关于云的事物。我建议不再使用墨水染色方法。现在让我们继续讲故事本身。有一次,我的贝拉实验室的心理学家朋友制造了一辆汽车,里面有12个开关和两个灯泡-红色和绿色。设置开关,按下按钮,然后红色或绿色指示灯亮起。在第一个主题进行了20次尝试之后,他提出了一种有关如何点亮绿色灯泡的理论。该理论被传递给下一位受害者,之后她还进行了20次尝试,提出了有关如何点亮绿色灯泡的理论。等等广告无限。实验的目的是研究理论的发展。但是我的朋友以自己的风格行事,将灯泡连接到随机的信号源!一旦他向我抱怨说,没有一个实验参与者(而且所有人都是贝尔实验室的高级研究人员)都说没有规律。我立即建议他们都不是统计学或信息理论的专家-正是这两种类型的专家都熟悉随机事件。测试表明我是对的!这是您受教育的不幸结果。您曾经热爱地研究过一种理论被另一种理论所取代,但是您还没有研究过如何抛弃美好的理论并接受机会。这正是所需要的:准备承认刚刚读过的理论不合适,并且数据中没有规律性,纯属偶然!我必须更详细地说明这一点。统计人员不断问自己:“我的意思是实际发生的是什么,还是随机噪声?”他们开发了特殊的测试方法来回答这个问题。他们的答案不是肯定的“是”或“否”,而是具有一定置信度的“是”或“否”。 90%的置信度阈值意味着,在所有其他假设均正确的情况下,通常在10次尝试中,您只会被误解一次。在这种情况下,有两件事之一:您发现了不是的东西(第一类错误),或者错过了要寻找的内容(第二类错误)。要获得95%的置信度,还需要更多数据,并且数据收集目前可能非常昂贵。收集其他数据还需要花费更多时间,并且决策被推迟-这是不想对自己的决策负责的人的最爱。他们将告诉您“需要更多信息”。我绝对认真地肯定,所执行的大多数模拟仅是Rorschach测试。我将引用杰伊·佛瑞斯特(Jay Forrester)的一位杰出的控制理论从业者:“从系统的行为来看,产生了一些疑问,需要对最初的假设进行回顾。从处理有关零件的初始假设和观察到的整体行为的过程中,我们提高了对系统结构和动力学的理解。这本书是作者完成几次重新学习的结果。”外行如何将其与罗夏测验区分开?他是否只是因为想看到某事物而发现了某物,还是发现了现实的新面?不幸的是,建模经常包含一些调整,使您可以“仅查看所需内容”。这是阻力最小的路径,这就是为什么古典科学涉及大量预防措施的原因,而在我们这个时代,这些预防措施通常被简单地忽略。您是否认为自己足够谨慎,不能妄想?让我们看一下著名的双盲研究,这是医学界的一种普遍做法。最初,医生发现患者以为自己正在服用新药时注意到了改善,而对照组的患者知道自己没有服用新药并没有感觉到改善。此后,医生将各组随机分组,并开始给一些患者服用安慰剂,以免误导医生。但是令他们感到恐惧的是,医生发现知道谁在服用药物而不是谁在服用药物的医生,也发现那些期望的人有所改善,而那些没有期望的人却没有改善。作为最后的手段,医生开始普遍采用双盲研究方法-在收集所有数据之前,医生和患者都不知道谁在服用新药,谁不服用新药。实验结束时,统计人员打开密封的信封并进行分析。寻求诚实的医生发现自己不是。您是否在进行仿真方面做得更好,可以信赖?您确定您没有找到自己急于找到的东西吗?自我欺骗很普遍。您是否在进行仿真方面做得更好,可以信赖?您确定您没有找到自己急于找到的东西吗?自我欺骗很普遍。您是否在进行仿真方面做得更好,可以信赖?您确定您没有找到自己急于找到的东西吗?自我欺骗很普遍。我从第19章开始提问,为什么每个人都应该相信模拟已经完成?现在这个问题对您来说变得更加明显。除非您采取比平常更多的预防措施,否则回答这个问题并不容易。还请记住,在高科技的未来中,您很有可能代表模拟的客户方,并且根据其结果,您必须做出决策。除了建模之外,没有其他方法可以得到问题“如果...会怎样?”的答案。在第18章中,我探讨了应该做出的决定,并且如果组织不会无休止地反复无常地进行漂移,那么不要一直拖延时间-我假设您将是必须做出决定的人之一。必须进行建模才能回答“如果...会怎样?”这个问题,但是同时也充满了陷阱,其结果不应仅仅因为大量的人力和硬件资源被用于在示波器上获得漂亮的彩色打印件或曲线而受到信任。如果您是做出最终决定的人,则所有责任都由您承担。导致责任模糊的合议决定很少是一种好习惯-它们通常是一种平庸的折衷方案,缺乏任何可能途径的优点。经验告诉我,果断的上司要比轻率的上司好得多。在这种情况下,您可以确切地知道自己的位置,并可以继续进行需要完成的工作。« … ?» , , , .
..., — magisterludi2016@yandex.ru, —
«The Dream Machine: » )