A-level 计算机科学/AQA/试卷 1/计算理论/抽象和自动化
抽象是指过滤掉 - 忽略 - 我们不需要的模式特征,以便集中关注我们需要的特征。它也是过滤掉特定细节的过程。通过这种方式,我们创建了一个我们想要解决的问题的表示(想法)。在计算思维中,当我们分解问题时,我们会寻找构成复杂问题的小问题的模式。哪些是特定细节或特征呢?
在模式识别中,我们研究了必须绘制一系列猫的问题。
我们注意到所有猫都有一些共同的特征,这些特征是所有猫共有的,例如眼睛、尾巴、毛发、喜欢鱼以及发出喵喵叫的声音的能力。此外,每只猫都有其特定的特征,例如黑色的毛发、长尾巴、绿色的眼睛、喜欢三文鱼,以及大声的喵喵叫。这些细节被称为特定特征。
为了绘制一只基本的猫,我们需要知道它有尾巴、毛发和眼睛。这些特征是相关的。我们不需要知道猫发出什么声音,也不需要知道它是否喜欢鱼。这些特征是不相关的,可以过滤掉。我们需要知道猫有尾巴、毛发和眼睛,但我们不需要知道它们的尺寸和颜色。这些特定特征可以过滤掉。
从我们拥有的通用特征(尾巴、毛发、眼睛)出发,我们可以建立一个猫的基本想法,即猫的基本外观。一旦我们知道了猫的样子,我们就可以描述如何绘制一只基本的猫。为什么抽象很重要?抽象使我们能够创建一个关于问题是什么以及如何解决问题的概括性想法。这个过程指示我们删除所有特定细节以及任何不能帮助我们解决问题的模式。这有助于我们形成对问题的想法。这个想法被称为“模型”。
如果我们不抽象,我们可能会得到我们试图解决的错误问题的解决方案。以我们的猫为例,如果我们不抽象,我们可能会认为所有猫都有一条长尾巴和短毛。通过抽象,我们知道尽管猫有尾巴和毛发,但并非所有尾巴都是长的,也并非所有毛发都是短的。在这种情况下,抽象帮助我们形成了一个更清晰的猫模型。
抽象是收集我们需要的通用特征,并过滤掉我们不需要的细节和特征。模型是我们试图解决问题的概括性想法。
例如,一个模型猫将是任何猫。而不是一只具有长尾巴和短毛的特定猫 - 模型代表所有猫。从我们对猫的模型中,我们可以学习任何猫的样子,利用所有猫共有的模式。
类似地,在烘焙蛋糕时,一个模型蛋糕将不会是一个特定的蛋糕,比如海绵蛋糕或水果蛋糕。相反,这个模型将代表所有蛋糕。从这个模型中,我们可以学习如何烘焙任何蛋糕,使用适用于所有蛋糕的模式。
一旦我们有了问题的模型,我们就可以设计一个算法来解决它。