经过多年的学习,我仍然无法理解什么是人工智能。算法构成人工智能的要求是什么?你能提供构成人工智能的伪代码示例吗?
你能提供一些构成人工智能的伪代码示例吗?
人工智能不是一个简单的术语。有不同的类型,从最简单的基于规则的 AI 到黑盒 AI,如此复杂以至于人类无法准确理解他们在做什么。
没有伪代码如果在程序中使用会自动构成人工智能。不是那么黑白分明。但我可以举个例子:
这是一个基于规则的国际象棋人工智能,如果它落后太远,它就会放弃,如果它领先得足够远,它就会积极下棋。
if player.score - my.score > 10:
forfeit
elif my.score - player.score > 10:
agressive = True
for each piece of my.pieces:
for each square of board.squares:
if noThreats(square) and agressive is True:
move(piece, square)
return
这被认为是“人工智能”,因为它假装智能——似乎对国际象棋有真正的理解,同时简单地遵循一套规则,使其成为“人工智能”。
这是另一个更复杂的 AI:
decisionNet = NeuralNetwork(64 inputs, 2 outputs)
choice = decisionNet(board.squares) // Returns a chess square with one of my pieces and desitnation
move(choice)
这使用了一个神经网络来做出决定,这可能已经在一堆示例游戏上进行了训练,也可以针对自身进行训练。由于这个“训练阶段”,人类无法在不付出大量努力的情况下准确地理解网络在做什么,因此它甚至给了对国际象棋的更令人信服的理解。但如果我们愿意,我们仍然可以理解这个网络的细微差别,并表明它不具备智能,它再次只是假装它。
我应该提一下,几乎任何具有if语句的代码都可以被视为 AI。我提供的示例更容易被理解为理解一个非常复杂的概念(国际象棋),而不是验证用户登录。它们都有相同的基本原理,只是表面上看起来比另一个复杂。
从哲学上讲,我自己的研究使我将人工智能理解为任何做出决定的人工制品。这是因为“智能”的词源强烈暗示“在备选方案之间进行选择”,这些含义一直追溯到原始印欧语系。
(智力程度或“强度”只是效用的衡量标准,通常与其他决策机制相比,或者“环境中的适应性”,其中环境是任何行动空间。)
因此,自动化(人工智能)智能最基本的形式是:
if [some condition]
then [some action]
值得注意的是,在通俗意义上,与人类能力相匹配或超过人类能力的狭隘人工智能直到最近才出现,当时我们有足够的处理和内存来从统计决策算法中获得足够的效用。但Nimatron可能构成了现代计算环境中第一个功能强大的窄人工智能,而第一个自动化智能是简单的陷阱和圈套,几乎只要我们使用工具,它们就一直伴随着我们。
我将把它留给其他人来分解所有各种形式的现代人工智能。