1、电影故事的可编程性白浩然(北京大学艺术学院,北京 海淀 100871)摘要 电影故事的可编程性,是互动电影中间层次理论研究的起点,也是运用计算思维实现电影艺术与计算科学间范式衔接的关键。电影故事编程的主体对象是作为中间层级的故事层,矩阵式网状叙事结构是最具可行性的模型;叙事目的在于呈现“可能世界”,互动电影成为一种包含各种“子态”的“总态”,一个生产表征的引擎;方法基础基于模块化与逻辑化,须借由面向对象的编程思维、因果机制以及贝叶斯定理等跨学科方法,完成从主观、定性、先验向客观、定量、可验证与调优的转置。关 键 词 互动电影;编程;计算思维;可能世界互动电影并非全新的概念,其实验性作品早在 2
2、0 世纪 60 年代就已经出现。1961 年威廉卡尔斯的猎尸者中,观众被允许通过纸质投票决定故事结局;而在 1967 年拉杜兹辛西拉的自动电影(又名一个男人和他的房子)中,观众则通过红绿按钮进行选择。这些早期的互动作品初探了为电影增添“交互”维度的可能性,通过授予观众“选择”权从而导向差异化情节路径和多元化故事结局,但效果却并不理想 不仅观众选择的便利性差、观影流畅性不佳,更重要的在于少数服从多数的决策方式背离了个人化体验的初衷以及难以承载复杂的结构 因而被迈克尔奈马克称为“互动的幻觉”。从根本上来说,对于数字交互之前的技术样态而言,这种局限性是必然存在的。数字交互技术的运用从根本上突破了长期
3、制约互动电影发展的技术瓶颈。近些年来,随着网络化、智能化、便捷化的数字计算系统和演示系统的发展与普及,互动电影的浪潮再度兴起,2018年 Netflix 推出黑镜:潘达斯奈基被视作其开端。国内互联网公司紧随其后纷纷布局互动影视领域,并将 2019 年视为“中国互动剧元年”。然而,互动电影的发展似乎在当下又再一次陷入困局 互动电影不仅没有通过数字交互实现拓展电影叙事方式与挖掘电影叙事潜力的初衷,反而与电子游戏发生了身份模糊,丧失了媒介独立性。互动电影依旧是“计算机运算神话的假想魔兽,一个我们能够想象但却有待捕获的天马行空的独角兽”1。人们开始悲观地质疑,电影是否真的需要“交互”维度?同作为数字交
4、互系统,互动电影与电子游戏究竟有何本体性差异?造成当下互动电影发展困境的已不再是技术瓶颈,而是理论瓶颈,更确切来说是中间层次理论研究的缺失。当下的大多数相关研究,或是主要从传统叙事学出发延伸至数字时代的跨媒介叙事学,站在宏观层面对互动电影的叙事特征与美学特质进行形而上的分析,但并未进一步依照计算机科学范式对互动电影叙事系统进行更具可操作性的描绘;或是集中关注技术发展前沿,对互动电影实现“交互”的技术样态进行展望,却往往忽视互动电影“表达”的目的。因此,互动电影亟须建构中间层次理论,以衔接互动电影的叙事构想与数字交互的技术样态,为前者提供具有可操作性的认识论与方法论基础,为后者架构交互界038
5、2023 年第 13 期面背后的运行主体。本文将探讨“电影故事的可编程性”作为中间层次理论研究工作的起点:当互动电影以“程序化”样态承载于计算系统中,并力图凭借后者的“计算”与“交互”天赋拓展电影的“表达”潜力时,我们首先必须明确电影故事编程“是什么”“为什么”及“怎么样”的问题,更具体来说,即电影故事编程的主体对象究竟是什么?通过编程实现的超越传统电影的叙事目的是什么?最基础的方法论有哪些?一、故事层是电影故事编程的主体对象并非所有问题都可“计算”,“可计算性理论”作为计算机科学的理论基础之一,解答了“什么可以计算,什么不可以计算”的问题。而对于电影故事而言,本文跳过数学论证,将其具有的可编
6、程性视为不言自明的:从现象上来看,互动电影已然以“程序”的技术样态承载于计算系统中;从跨媒介理论上来看,互动电影在跨媒介叙事版图中的亲缘性叙事模式为“模拟式”“自生式”与“参与式”,其实现基础依赖于数字系统的“交互性”克劳福德、劳尔瑞安等学者视其为数字系统最重要的内在属性。因此,电影故事可编程性的研究重点,并不在于对是否可编程给出答案,而是探寻如何基于计算机科学的概念与方法,挖掘并归纳出电影故事架构的“可编程”特质,实现科学与艺术间的范式衔接。(一)计算思维:从“编程”到“可编程性”狭义上的“编程”是计算机科学领域的概念,即编定程序的中文简称。人们将复杂的问题拆分成一个个有序的步骤,并通过编程
7、语言将解决问题的思路及方法告知计算机,使其凭借快速且精准的计算能力、庞大且稳定的数据储存能力以及互联互通的能力,依照人的指令去处理问题并获得结果。而从广义上来看,编程并不局限于计算机,人们通过对任何具有逻辑计算力的体系进行运算方式的规定,并使其按照该运算方式运行并得到结果,都可以被视为“编程”。因此,广义的编程便是设计具备逻辑流动作用的一种“可控体系”。故而,编程的核心是一种解决问题的思维方法。这种思维的元素在计算机发明前便模糊地存在于人类解决问题的过程之中,而电子计算机的诞生则使其明确化并快速发展。20 世纪五六十年代,这种思维方式通常被称为“算法思维”;70 年代,麻省理工教授西蒙派珀特提
8、出了“程序思维”;直至 2006 年,卡耐基梅隆大学计算机系主任周以真教授在美国计算机权威杂志 Communi-cation of the ACM 上发表了 Computational Thinking一文,第一次明确、系统地对“计算思维”进行了界定与论述,即“计算思维涉及运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为。计算思维涵盖了反映计算机科学之广泛性的一系列思维活动”2。此后,周以真教授本人及国内外众多学者多次修正了“计算思维”的概念,越发注重其作为人类本身的思维方式,而非计算机科学的具体技术。不妨引用美国计算机协会前主席邓宁的表述:“计算思维是人们参与制订问题解决方案,并
9、将解决方案表示为可由信息处理代理有效执行的计算步骤和算法的思维过程。”3吉姆克里斯蒂安也言:“编程思维,计算机思维,电脑科学,不管你听到的是哪个术语,这些术语并不只是指数字、符号或者代码,最重要的是如何创造性地解决问题计算机只是你可以使用的一种工具。”4“计算思维”具有丰富的内涵与外延,其本身便是数学思维与工程思维的融合,并且分支也在不断地扩充。在实践中,我们可以站在“过程”的角度将其简化。未来算法将“计算思维”分为“分解问题”(拆解复杂问题,直到复杂问题成为可重复的简单问题)、“抽象”(把生活中的问题抽象化,用约定俗成的算法来解)、“算法”(算法是流程化的、可调用的、逻辑清晰的)以及“模式识
10、别”(可重复性带来的规模效应)。5计算思维与大学计算机基础则更精练地概括为“合理抽象”与“高效算法”。6据此,我们可以将电影故事的“可编程性”宏观概括为:概念化的电影故事可以通过合理的“抽象”拆分为一系列步骤或单元,并进一步通过设计“算法”形成逻辑体系,从而最终可以被计算系统“自动化”处理。(二)编程对象:作为中间层级的故事层电影故事的编程实现,需要从电影叙事要素的抽象化开始,进而依照严格的逻辑设计合理的数据结构及算法。然而,电影故事本身是一个抽象的概念,本文更是将其视为一个广义的、宽泛039的指代的集合,包含传统意义上作为事件序列的动态的故事,同时也纳入了静态的故事要素乃至作为容器的故事世界
11、。因此,本文将广义的电影故事划分为三个纵向层级,其中作为中间层级的故事层是电影故事编程的主要对象,因而也是抽象化与算法化的主体。玛丽-劳尔瑞安视故事为一种认知建构,认为在传统和互动叙事中,文本架构由故事层和话语层共同组成。我们沿用这两个概念,将话语层视为电影故事元素的有序排列,而将故事层视为静态的全部故事元素的集合。所谓全部,意指“虚拟态”也被纳入故事层的范畴中。“虚拟态,即本可以发生的或仍有待发生的事件,也在生活和叙事决策中起重要作用。”797对话语层而言,故事层是产生话语层的底层结构;对故事层而言,话语层是其中的一条路径,是引擎生产的一个表征。在文本架构的两个层级之下,还存在一个重要性经常
12、被忽视的层级,本文称之为文化层。罗伯特麦基在故事中强调:“故事必须遵守其自身内在的或然性法则。因此,作家的事件选择仅仅局限于他所创造的世界内的可能性和或然性。”8他认为,一切陈词滥调的根源是作者不了解他的故事的世界。文化层,即电影故事所处的深层背景,而之所以谓之“文化”而非“背景”,主要目的在于与社会学的概念及范式进行有效衔接,进而借鉴其定量方法或阐释方法。对故事层而言,文化层提供了“图式”和“资源”,为故事层所包含的元素及元素间连接提供底层逻辑,麦基比喻为“必须严格遵守的合同”;而对文化层而言,故事层是显性的效用与案例。为了易于理解文化层作为底层逻辑的重要性,我们可以列举诸多案例,即两个事件
13、在一种文化中具有明确的因果性,但在另一种文化中却并不成立。例如,人物的某种行为在一种文化中被视为友好的信号并将获得正性反馈,但在另一种文化中则或许具有冒犯的意味。在明晰了话语层、故事层及文化层的基本概念及相互关系之后,我们便可以进一步地将传统电影的作者创作与观众观看、互动电影的架构师设计与受众参与,描述为三层间的动态流动过程。在传统电影的创作中,作者基于确定的文化层、构想故事层(“虚拟态”被构思但不被呈现),最终呈现具有固定序列的话语层;而观众则接收话语层、反思故事层(在哈姆雷特式的问题面前,角色如果做出不同选择可能会如何),最终洞悉文化层 跨越时空的距离,对彼时彼处的社会文化背景产生认知经验
14、。而在互动电影中,架构师基于文化层来设计故事层,并将构建出的故事层以程序的样态承载于计算系统中,而将话语层的生成权让渡;受众则通过人机交互界面与故事层互动,在参与过程中生成话语层,并可以反复进行这个过程,最终洞察故事层及其背后的文化层。由此可见,故事层是互动电影“多元作者”自上而下的设计和自下而上的输入的交汇层面,是电影故事编程的主体对象。(三)故事层模型:矩阵式网状叙事结构对于互动电影架构而言,根茎式结构(图 1)曾一度被认为是一种理想的模型。这种结构的形态类似于植物根系,从起点开始在每一个节点处分叉,形成极为丰富的故事路径。然而进一步深入分析,我们会发现根茎式结构存在本质上的缺陷。北京大学
15、邱章红教授在超越叙事:论网络互动剧的新模式叙事 一文中曾指出过这个问题。他认为:“故事彻底丧失了方向,在任何时间段上的任何一个节点都只是给某个新故事开了个头而已,情节模块之间过去、现在和未来都不会产生任何关联,即便设计几条折返线路也无济于事。”9进而,他提出真正具有应用前景的应该是矩阵式网状叙事结构(图 2),这种结构具有“多点多线”的空间特征,“不仅拥有丰富的选择以满足观众的高度参与感,还能将一切置于超语境的控制之下,保持电影艺术的独立性和完整性”。我们可以从算法结构的角度直观地解释上述二者的差异。算法最基本的三种结构是顺序结构、选择结构和循环结构。对于根茎式结构而言,其包含了三者中的顺序结
16、构和选择结构,却无法构成循环结构;同时,不同路径间模块的复用性差。而对于矩阵式网状结构而言,则可以包含全部的三种算法结构并进行灵活嵌套,模块也拥有被高度复用的可能性。在这里,本文将基于程序设计的基本原理,从空间效率的角度再次验证矩阵式网状结构相比于根茎式结构的合理性与可行性。在程序设计的评价原则中,程序是否能够正确运行并生成结果只040 2023 年第 13 期是最基本的方面;同时,程序的效率也是评价系统的重要维度。程序的效率可以分为时间效率和空间效率两个方面。对于互动电影故事层设计而言,空间效率更加关键,因其直接关系着素材数据的规模大小和相应的制片成本。理想的互动电影故事层设计,必然是最大化路径规模的同时实现最小化的节点规模。通过“大 O 表示法”来进行粗略估计(不考虑返回),根茎式叙事结构的路径规模可以表示为 O(2n-1),而节点规模为 O(2n);矩阵式网状结构的路径规模则是 O(an-1),节点规模为 O(an)。由此可知,当 a 大于或等于 2,且 n较大时,矩阵式网状结构相比于根茎式结构而言具有更高的空间效率。综上所述,无论是从互动叙事的角度来看,还是从空间效率的评估来看