魔幻空间:教而不研则浅,研而不教则空。分享 http://blog.sciencenet.cn/u/njumagic 个人网页:http://cs.nju.edu.cn/szx/

博文

非受限人机交互概念与技术

已有 7144 次阅读 2009-2-9 00:37 |个人分类:学术动向|系统分类:科普集锦|关键词:学者| 视觉, 非受限, 人机交互, 草图, 非受限, 人机交互, 草图

随着计算机越来越深入日常生活,我们用一种与以前相比,更加非受限的方式与它们进行交互。以采用最新的微波炉烹调食物为例,它们察觉到食物熟了才停止加热,而不用预先设定需要多少时间。现代照相机也是非受限的,因为我们可以直接拿起它们取景和拍摄;相机可以自行调焦并计算所需的曝光度,而不需要用户拥有拍摄速度、光圈设置等摄影技术的正规知识。通过采用笔写输入、手势和草图,Apple Newton个人数字助理(PDA)和KidPix儿童绘画包等产品在与目标用户的交互层上也是非受限的。还有很多例子表明了这种持续的远离命令驱动的计算机交互,而朝向协作的系统的趋势。在这些系统中,用户指明高层意图和约束条件,由计算机来处理低层操作并支持用户构成新的意图。
这些非受限的例子变得越来越普遍,并且也有了某些方面的研究,例如在协作设计中采用草图(Scrivener&Clark,1994 [71])等。本论文遵循了这样的研究思路:致力于解决怎样将非受限想法注入计算机界面的设计和计算机系统的内部操作,采用何种内部表示结构较为合适和这些系统潜在的优缺点等问题。该方法专注于解决的问题是,虽然有一些进行中的研究因在输入和输出中使用草图而著名,但仍趋向于依赖一个粗浅的前端草图界面,并采用基于传统的软件工程意识形态来设计其潜在的内部表示。
众所周知,自从达芬奇时代开始,草图就是一种使得思维自由运转的有效助手。然而,对如何在外部(externally)(作为输入和输出的媒介)和内部(internally)(用来存储和操作其上非受限表示的潜在的内部表示)有效地使用草图的分析却非常少。一个5岁的孩子画的“阳光下的小屋”。这可以被几乎所有拥有相同文化背景的成人识别,也同样可以被5岁以上的儿童识别。很多不同领域的研究,例如识别和视觉,都致力于解答最常见的“为何将这幅图像识别成一间房子?”的问题。本文则关心怎样将表示的基本元素(它的“要点(gist)”)有效地应用到计算机界面设计和其潜在的软件和表示结构中的问题。
本论文的出发点是提出一个与特定类型的非受限界面有粘着力的结构,来使研究和结论更加细致,也用来描述分析和构造这样一个非受限界面系统的方法学。本论文不试图解决一般非受限界面中更广泛的问题,但却专注于一种类型的非受限界面——以图形草图输入和输出的形式实现非受限的基于个人计算机的系统。
本论文研究特定类型的非受限界面将如何促进非受限或者更加随意的用户和计算机之间的交互模式。更多地,在这种非受限界面中采用的内部表示有时可以提供一种有用的数据表示的结构,它关注意图的本质或表示状态而不是更受限的参数集合。
我们来考虑一下“受限”和“非受限”在字典中的定义。简明牛津字典把“受限(formal)”定义成“根据规则、惯例或礼节来使用、实行或保持(used or done or held in accordance with rules, conventions or ceremony)”,“精确的或对称的(precise or symmetrical)”,“巡例的,没有灵魂的形式(perfunctory, having the form without the spirit)”和“关心(外部)形式或表现,尤其是与内容或本质不同的(of or concerned with (outward) form or appearance, esp. as distinct from content or matter)”。对于“非受限(informal)”,字典给出的解释是“缺少礼节和仪式(without ceremony or formality)”和“日常的,正常的(everyday,normal)”。通过这些定义,我们可以把“非受限界面”认为是“违背传统规则的,不要求精确的,并以某种方式捕捉用户试图表达的本质”。
我们注意到有必要考虑一下人类构思的过程,因为意图是依赖于上下文(context dependent)的。在一篇上下文中有意义的内容在另一个上下文环境中可能是不相关的,或者有不同的意义。例如,一个非受限吊桥设计师软件包可能嵌入与非受限的花园设计程序中有不同含义的结构、约束条件和附件等成分。所以,不存在统一、全面的非受限界面系统,而只有适用于不同领域的不同系统。同样在一种特定的非受限界面系统中,也要一直关注上下文信息,系统的目标和要求的细致程度。
计算和界面中的非受限
“非受限”本身是一个范围很大,有时还很含糊不清的词。这一节将论述本文致力于解决的非受限类型。
在不同的系统中,放松受限的约束条件限制是一个很有趣的题目。这意味着不同类型受限系统将具有不同的内容。例如,通过公式化数据结构的体系结构,一个系统很可能是“受限”的。或者,通过严格的操作,它在用户看来可能是“受限”的。一个坚持按照惯例使用的系统也会被用户认为是“受限”的。
通过放松受限条件进而增加非受限程度的方法,并不能在所有的系统中起作用。例如,究竟什么意味着“非受限”的数据结构是不清楚的。然而根据本文,非受限可以被应用到计算机系统的输入和输出交互中去。传统的输入系统是受限的,用户被限制在可选择的交互中。物理上,键盘(带有有限数量的按键组合)和鼠标是GUI(图形用户界面)窗口系统等基本的表示界面中仅有的物理界面。
本论文关注于用户界面设计中非受限的应用——在传统的图形显示上进行类似草图的输入和输出。这里,草图(sketchiness)是非受限的应用。采用草图的输入输出是非受限的,它是人们熟悉和方便的交互方式,并易于适应自然的、有创造性的处理。有时,用户通过非受限并熟悉的草图与计算机交互要比采用受限并传统的鼠标、键盘和显示器更加悠闲。草图用在本文也是非受限的,因为草图主旨的潜在表示(或要点)允许输入数据和输出表示的不精确性。这种看起来肤浅的前端用户界面对系统采用的内部表示和终端用户的操作方式及感知都展示了有趣的结果。例如,想象一下某人被同事询问如何找到开会办公室的情景。如果两个人在同一个房间,这种交互的一个可能的方式是,一个人用一张纸为另一个人绘制一个粗略的地图。这个地图将以自由手绘的方式显示重要马路上的基本元素、交叉点、拐弯处等等。如果情景中两个人的距离很远,这种解决方式就变得很困难,我们需要利用计算机(例如采用基于文本的电子邮件系统)来实现这种交流。完成这个任务的其它方式可能是(a)在纸上绘制草图并传真它,(b)在纸上绘制草图,用文档扫描仪把图像扫描到计算机,把图形二进制图像(例如,一个jpeg文件)作为电子邮件的附件,发送给同事,(c)采用Visio(Microsoft 2000)等绘图包,用鼠标、菜单选择等传统工具创建一个电子地图的图像,并电子邮件传送这个文件等等。
现在有两点与完成该任务的第一种方式——例如在纸上草绘地图,而其本质上是非受限的——有关。一是交互的实际模式——熟悉的笔录纸现,它具有不精确的手绘线条。绘制的多好都是无关紧要的,只要它能表达基本的意图(要点)。根据本文,这就是非受限界面中第二个基本的元素——内在的要点或表示的意图。同样地,只要表示的基本意图是相同的,我们并不在乎粗糙的项目中确切地输入了什么信息。所以马路的直线被画的多么精确并不重要。他们可以被不同的人,以不同的方式绘画,而仍然在总体地图的上下文中保留同样的意图或要点。
非受限和非受限界面的定义
在本文中,“非受限”意味着用户与计算机交互方式的放松和计算机保持其内部状态和数据表示的方式的放松。换句话说,用户一般通过使用鼠标、键盘和显示器来与传统的桌面计算机进行交互。与计算机和其上运行的软件程序的交互存在着受限的交互次序。例如,用户需要完成特定序列的操作来创建word文档,输入文本并将其打印等等。类似地,为了建立一个指示怎样到达某特定位置(可能是某人的办公室)的地图,通常要完成一些受限的步骤来运行适当的软件包,用鼠标和菜单选择等输入线条和其它绘制的对象。完成任务的更加非受限的方式可能是,用户可以用铁笔无约束地直接在计算机上绘制草图,或者通过手势来使用计算机的操作等等。
在本论文中,“非受限界面”意味着可以适应在输入协议和输出表示中的不精确的界面。更多地,非受限界面会使用与状态或数据意图的本质更有关联的内在数据表示、状态等等。例如,考虑创建地图的例子。受限的方法和界面会导致受限的数据结构,或者说,对象结构的地图显示。非受限的方法和界面会导致一个抽象的地图表示,它包括所有必需和有关的数据,但在重构时不一定会产生相同的地图。然而,同一个人以同一种方式草绘的两幅地图不太可能是确切相同的位图图像,但对这个人却表达了确切相同的事物,所以再造的图像依旧表达了确切(exactly)相同的认知信息。
注意到虽然界面本身是非受限并无拘束的,它采用的内部表示的实际结构(structures)可以是受限的。那就是说,界面和内在表示的对象是非受限的,因为它们有非受限的认知解释(例如“要点”)。然而,用来表示这些非受限对象的数据结构本身却是受限的。例如,在编程术语中,它们可能是用C++对象,或框架,或一些其它受限的数据表示方法构造的。
关键概念
在用户界面设计和交互中使用“非受限”这个词时,我们指的是能适应(tolerant)用户输入(用户有选择动作的灵活性)并展现输出的可变性(variability)的界面。在非受限的交互中,输入事件(例如菜单选择)和抽象机中的状态改变之间存在一个多对一的映射,而在抽象机状态和输出表示之间存在一个一对多的映射。例如,多个简单手绘直线地图的实例映射到一个抽象表示,本文称作非受限直线(informal straight line),而一个表示可以依次再生出多个再造的粗糙(例如看起来像手绘的)直线的实例。
本文的目标是提出一个定义用户和计算机之间认知的非受限交互的框架。交互(interaction)意味着用户和计算机之间的处理流,它依次由交互的外部和内部表示所定义。外部表示(external representations)指的是计算机屏幕上显示的图像(作为用户输入或显示给用户)等。内部表示(internal representations)指的是计算机存储信息的方式,这些信息描述了被操作、显示或传送等形式的对象。考虑一个下拉菜单系统;这里用户被限制在有限的可选功能集中,其中每个功能都映射到一个状态,而每个状态被界面显示成一个或有限数量的表示选择。相反的,非受限界面会将一个可能的无数个不同的输入事件映射到抽象机的一个状态,而这个状态是交互的要点(gist)。要点(gist)将在下一节中进一步论述,指的是状态意图本质的表示。抽象机的每个状态可以在界面中以多种形式表示,这由内部表示的约束条件和输出设备的限制所控制。
所以,本文研究了将非受限的概念应用到用户界面和内在表示及操作结构中的想法。如果只是应用到用户界面的前端,这种非受限在某些程度上可以构造得粗略一些,但这个概念也能够用于更深的表示层。
术语的深层定义—适应性、可变性和要点
在用户界面设计中非受限的背后有三个关键概念——输入的适应性(tolerance),输出的可变性(variability)和表示的要点(gist)——与系统的输入状态、输出状态和内部状态等三个阶段相对应。适应性(tolerance)指的是允许不同的输入功能映射到同一个内部表示状态。可变性(variability)指的是一个内部表示状态能被映射到输出机制的许多方式,却不表示具有不同的意义。
要点(gist)指的是状态意图本质的表示。那就是说,在不具有适应性和可变性属性时,对一个状态最简单和最高层次的抽象。例如,一条粗糙的手绘直线的要点就是一条直线(straight line)的概念(concept)。这很难识别和度量,但通过一些方法可以做到这一点。例如,与判断它的输入和输出状态(可能是不同的)一样,确定表示状态意图的本质仍然是相同的。更多的(在给定上下文中),许多对象有不同的视觉表现,但却被人类判定具有相同的意义,非受限界面系统将把它们映射到一个内部表示状态上。类似的,这个内部表示状态将被依次映射到视觉上不同(像草图一样)的输出,而被人类判定具有相同的意义。
例如,想象人们在纸上手绘的一条粗略的直线。如果人们被要求画许多粗略直线的实例(可能在分开的纸上),如果细微分析起来,它们中任何两个都不可能精确相同。然而,对于创建它们的人而言,每条粗略直线都有一个确切相同的意义——条直线。所以在这个例子中,输入表示的要点就是直线。输入的适应性指的是并不关心输入表示的确切方式——所有相似的粗略直线都表示直线。所以,输出的可变性没有显著的影响——表示的本质要点已经被成功传达。同样,适应性和可变性的特性并不影响要点。虽然一些粗略的直线可能被描述成“曲线”或“斜线”,去掉相关的图像特性的任何元素(例如波动)将只剩下图像要点的最基本的元素,例如直线。
所以,通过输入适应性的应用,在非受限界面中有多种(有限的)方式将表示状态输入到计算机系统中,且认为所有的方式都具有相同的表示。类似的,通过输出可变性的应用,也存在多种(有限的)表示计算机状态的方式,并且也认为所有的方式都具有相同的表示。
在内部,也存在多种(可能是有限的)表示状态要点的方式,但对每个要点,每种实现只能采用一个内部表示。那就是说,存在很多可能的非受限界面形式,但在每个特定的实现中只能使用一个。
表示等价的层次
根据本文,表示等价(representational equivalence)有三个层次:
1)  两个表示是真等价(truly equivalent)的,如果它们之间没有可度量的差异。
2)  两个表示是认知等价(cognitively equivalent)的,如果它们之间存在物理差异,但用户看起来却是相同的。
3)  两个表示是认知非受限等价(CI-equivalent)的,如果它们之间有用户能够察觉的物理差异,但它们对用户来讲仍具有相同的意义。
考虑图2中绘制的小屋草图的例子。
如果这两个草图是彼此的精确象素位图复制,例如通过复印或剪切和粘贴操作,那么它们是真等价的。
如果小屋草图的两个稍微不同的版本,被一个用户在不同时间观察并认为是相同的,则它们是认知等价的。在这种情况下,用户并没有意识到两个版本之间实际上微小的差异——用户看来它们是相同的。
用户在同一时间(甚至在不同时间)同时观察小屋草图的两个稍微不同的版本,如果用户认为它们表达了所有的意图并在特定的上下文中企图表达相同的原始图像(或要点),则它们是认知非受限等价的。在这种情况下,用户意识到两幅图像是有略微差别的,但认为这在特定的上下文中并不重要(在认知的意义上)——它们具有相同的意义。
非受限界面和交互的一个例子
作为例子,假设我们有一个用户界面,它构造在基于笔式交互的草图、手势输入和类似的在显示器或液晶板上的草图输出的基础之上。这项应用可以是一个视频白色书写板系统,在因特网TCP/IP连接的两端各接有一个这样的单元。这样的两个设备可以相隔几英里,甚至远在地球两端。
假设一端的用户想传达对工作中新桥梁设计的一个粗糙想法。一个简单的视频白色书写板系统将允许用户用铁笔在触摸敏感的面板上输入桥梁的象素位图的图形表示,并将它传送给远方用户。
这种系统可以采用传统的识别和对象系统,将草图分解成一些本身已识别形状的集合。稍后,将把它们传达给远方用户,并以能够提供原始图像相似显示的方式重构。
同样也可以设计一个非受限的视频白色书写板系统。用户草图输入最初的设计,非受限的系统将把粗略的草图分解成低层对象的本质上非受限的部件,例如直线和长方形等。如果适用的话,系统将把这些部件构造成高层的结构,例如箱形梁、支撑和支柱等等。
这里,在对象系统(本文指受限的系统)的草图识别和提出的非受限系统之间有一个差别。根据文献,受限系统按传统的线条处理对象识别。类似地,非受限系统以某种方式处理对象识别,但具有其基本构造的输入适应性与输出的多样性(可能是故意的),并按照基本的表示将草图对象分解成它们的要点。
所以虽然一个或一些不同的用户可能输入略微不同的象素位图,但系统将把每个输入草图都映射到相同的桥梁类的相同内部表示。这有一个输入适应性(tolerance)的例子。例如,一些用户输入了许多不同类型桥梁的草图。这些桥梁可能被识别并分解成它们基本的类型,例如吊桥或可开闭的吊桥等等。所以如果一些用户创作了吊桥的草图,系统将把它们都分解成基本的类型,或它们的要点。作为另一个例子,如果一幅在旧金山海湾地区的金门大桥的草图被表示成箱形梁的类型却是不怎么好的。另一方面,很少有人知道金门大桥的跨度与其支撑塔高度的确切比值。虽然实际的尺寸可能是不精确的,但仍可能创作许多令大多数人信服的桥梁的显示。
那么沿着电线传输的将是内部表示(线段、框和支柱等等)的记号(token)、它们的关系和非受限的本质表示,而不是象素坐标流。这是一个表示的要点(gist)的例子
这些记号将在远方用户的屏幕上依次被重构。
在这一点上,可以选择怎样正确地将表示映射到输出图像(可变性variability)上。这可以采用“受限的”表示法,类似于采用直线、完美曲线等的工程绘图。然而,创作者却不会认为这与输入信息是认知非受限等价的,因为它表示了不同的意义。例如,一幅工程绘图可能被理解成是3米长的箱形梁,而创作者的用意确实未定义长度的箱形梁。
正如本文中描述的,输出的可变性是非受限界面操作中一个至关紧要的部分,因为这种可变性增强了表示的预期意义。如果命令输出机器(可能是一个计算机程序)重新绘制图像,那么每个实例都将会有(故意地)微小的差别。然而,每个细小差别的图像却仍然传达了相同的要点(当然是在正确工作的系统中),并且用户被呈现多种表示后将能够将表示的要点从非主要的特征中区分出来。
所以计算机系统应该以它本身粗糙的类似草图的显示来描述表示,或者采用基于它自己的内部描绘引擎算法,或者模仿用户自身的风格。以这种方式,在存在输出可变性(variability)的交流机制中,要点将保持一致的映射函数。
非受限界面成功的度量
注意到有效的非受限界面系统中基本的原则是,被传递图像的结果要点或意图与原始显示的要点在认知上是无法区分的。那就是说,图像是认知非受限等价的(CI-equivalent)。例如,一张粗略的小屋草图在重构时可能会显示原始设计中所有的内在关键特性(crucial characteristics),例如门和窗的个数和烟囱的大致位置等等。注意到这是依赖于上下文的。显示给釉工的粗略的小屋草图可能在窗户设计和玻璃板上描述得更加细致。而显示给建筑师的草图应该更加关注房屋类型(可能是斜屋顶)的总体基本元素和烟囱的数量等等。
本文提出了非受限界面中度量认知非受限等价(CI-equivalence)的两种方式:a)用户评价分析和b)反馈循环
用户评价分析
在用户评价分析中,可以建立一个由许多人组成的中心组,在适当的控制下对他们显示原始的和重构的图像。如果大多数人认为图像是认知非受限等价的,则它是一个成功的图像非受限表示集合。该定义也是自由和非受限的,这次认知非受限等价度的度量是“用户满意”的程度。注意要考虑两个独立的参数:非受限程度(level of informality)和认知非受限等价(CI-equivalence)。并注意如何应用边界条件。如果非受限度(degree of informality)是0(例如一个受限系统),也就是说在图像和重构的结果图像之间没有任何差异,那么认知非受限等价的用户等级应是最大的,因为结构图像与原始图像是精确相同的。另一方面,如果非受限度非常高以至于认知非受限等价等级是0的话,那么所有的表示都将扭曲到难以令用户信服它们是同样的图像。
用户满意程度随着非受限度的增长而改变。然而,在本文定义的非受限界面系统中,我们提出在非受限度非零的情况下,用户满意也可以达到最大值。因为只要图像是认知非受限等价的(虽然在显示的物理感觉上并非实际相等的),对用户来讲要点就没有丢失。
然而在某点上,随着非受限度的增长,结果图像的变形程度也随之增长——所以,用户满意将下降或者完全不合格。
反馈循环
在反馈循环系统中,结果输出的图像再次被反馈到非受限界面系统作为新的输入,因而重新进行循环。
根据定义,具有认知非受限等价的系统将会创建一个与其输入意义等价的状态,这个状态作为输入反馈后也会产生一个等价的输出。在这种认知非受限等价系统中,转换函数实际上是一个恒等函数I,所以无论循环多少次,图像总能够被识别。
在输出图像中当然可能(并确实)存在可变性,因为这是非受限界面的定义。但这是非受限界面系统中的一个关键部分;尽管输出图像不同,但它却表示了系统的状态。实际上,输出中故意的可变性正是这种非受限界面中一个重要的方面。例如,在计算机图形显示器上输出一个小屋草图的许多图像实例,它们可能都有细微不同的象素位图或向量跟踪。但非受限界面在保留所表示的要点方面的成功是,它们对所有的目的和意图都表示了相同的概念——例如,一种特定风格的房子与其基本属性的集合。在这种情况下,基本属性可能是窗户个数、烟囱个数和走廊是否有柱子等等。所以对不同的用户需要有不同的认知非受限等价界面——就是说这种系统是依赖于领域和上下文的。
再次注意一下到这种非受限表示是依赖于领域和上下文的。例如,对同一栋房子,房地产经纪人、建筑师和小孩子可能会创建截然不同的草图显示。同样,同一栋房子的草图也会依赖于它是否是用来卖房子、设计房子和用来画卡通图画等不同功用而不同。
所以对回送测试(loopback test)来讲,非受限界面系统成功的度量是通过或者不合格。一个成功的非受限界面系统将总会是一个认知非受限等价的恒等函数,并且可以无限期地循环下去。在一些循环中的失败意味着非受限界面不是一个认知非受限等价的恒等函数,并且要点在输入时无法恢复。
做到非受限了吗?一些系统已经展示了非受限界面的一些特性。例如,在环球网站中使用的超文本标记语言(HTML)的结构允许了输出的可变性——决定如何准确地放置文本和图像,以及如何显示按钮等控件的任务由网页浏览器(例如NCSA Mosaic,Netscape Navigator或者Microsoft Explorer等)设计者负责。
相对较新的Java编程语言也具有非受限的元素。它的平台无关性(independence)实际上导致了它表示风格的平台依赖性(dependent),如同HTML一样,也就是对输出的解释和可变性开放。平台无关性和在虚拟机(Java VM)上的执行导致了执行者对一些操作模式的解释的变动,例如按钮或编辑框等精确的功能小部件。
      那么,为何需要非受限界面?在日常使用中,“非受限”这个词暗示缺少精确性,和放松社会及语言的习惯。在本文内容中,使用非受限是为了表示大致的想法和交互。非受限的优点包括可以表达模糊或者部分理解的想法,也能够发掘概念的本质而无需受其最终格式的约束。草图提供了一个可以构造思维的框架。非受限界面与人机交互中的草图相似,为了给用户提供更加宽松的环境,它放松了当前用户界面中传统输入/输出的约束条件。
非受限图
考虑电子数据表的情况。请求显示数据元素之间的关系图可能导致一个虽然在图形上满意,但却过于复杂和拥挤的视觉图画,而且也无法给出重要的数据关系的基本元素。通过非受限草图来显示输出,只给出信息的重要要点,用户被告知来源于深层潜在关系的关键信息,但却不被所显示信息的复杂本性分散精力。所以信息的要点可能是在功能不同的方式上潜在的趋势。但是所显示图表中故意的粗糙(输出可变性)将意味着用户不可能读入过多的细节,或者说两条线交叉的精确点。
某种特定类型的非受限界面系统的潜在优点可以以多种方式显示。例如,在适当的上下文中,非受限的类似草图的输入输出方法(例如用户在板上用笔输入信息,而计算机在屏幕上产生类似草图的图形输出)可以使用户容易与计算机交流要求和信息,也使计算机表达了正确的细节程度。这可能就是通过展现给用户过多的信息而却无法给出信息的本质要点的情况。
赞成或反对:非受限vs一致性(uniformity)和稳定性(stability)我们并没有声称非受限的应用对设计用户界面和它们内在表示来讲,总会是最好方式。当然存在一些非受限(或它的一个方面,可能是输出的可变性)不受欢迎的情况。例如,在上面设计桥梁的例子中,桥梁被构造以后所有的用户都会希望,它是从细致的绘图和通过严格测试和分析的设计图中构造起来的。
另一方面,正如1.4.3小节中所描述的,在设计桥梁的例子的早期阶段,能够自由快速地进行他们未完的设计,对设计者来讲将是更有用的。而追踪他们喜好的构造却给出了对环境或领域的限制和约束。
把非受限应用到界面设计和版面设计中,从用户和商业考虑的角度有时还会有一些缺点。从用户的角度来看,为了构造并保持一个程序功能的智力模型(Norman,1986 [58]),程序的内部结构需要一定程度的一致性和稳定性。
 研究非受限界面的方法学——总括
本文采用了一种启发式的方法来研究在界面设计中应用非受限的一些概念和范围。开始时可能认为只能在高层的界面层本身的设计中应用非受限。然而,把类似的技术应用到低层的内部表示层也会有一些好处。
最初要考虑的问题是如何产生看似逼真的草图对象,例如基本的粗糙直线段(“RSL”)。采用不同软件算法的试验给出了以不同方式表示令人信服的线段的有效性等等;成功的度量标准是人眼看起来一条结果线段有多“像人类”画的。通过改变算法的相关参数,有时还会去掉表面上无关或冲突的参数,能够创建或多或少令人信服的线段。该处理最终导致了非受限直线段的表面上成功、有用的表示结构,并且此结构具有适合其它非受限对象的表示的潜质。
例如,我们发现利用抖动(shakiness)和循环(period)等非受限维(informal demensions)是有用(即结果是一条有效逼真的粗糙直线段)的。却证明了和谐(harmony)等其它属性的用处很少。这些非受限维将在3.4小节中细致描述。
可以将这些原始对象的多个实例组合成为更加复杂的对象;例如,多条直线段是正方形、长方形、三角形或栅格等更为复杂的结构的基础。这需要约束条件(constraints),特别是连接(attachment)等额外的参数(Leler,1988 [39])。在本文中连接是约束条件的一种简单形式,例如一条非受限粗糙直线段的某一端受约束限制,而与另一条粗糙直线段的一端(或者可能是更加说明的“中点”等非受限约束条件,而其可能不是确切的中点)相连。作为一个例子,在图4(1)中线段B与线段A的中点(或者以非受限的角度,在大约是中点的地方相连)相连,角度(大约)是直角。所以,在(2)中如果线段A旋转到某个位置,必须满足(虽然存在约束条件的传播)线段B仍然在A的中点结束,并(大约)以直角连接。应用约束条件免去了对受限对象直接应用操作的需要——例如,不需要对线段B应用旋转操作。
采用该方法学,可以建立一些知识来了解如何以有效的方式创建非受限对象表示,并识别非受限认知维形式的参数集,而非受限认知维可以作为表示的基础。在适当的地方使用这一点,我们可以建立一个体系结构,用来表示这种非受限表示的结构,进而提供在用户界面设计中实现这种类型的非受限的基础。
非受限具有多种特性,本文只探讨了其中的一种——即输入适应性和输出可变性,这在“人类”草图似的具有非受限表示的内在结构的输入和输出形式的应用中举例说明。“非受限”的其它构想也是可能的。例如,有些人可能认为“类似人类的”、“多样式的”、“有延展性的”和“不经训练可用的”系统是非受限的。把条件的应用限制在计算机界面并不是我们的意图。然而,承认本文以非常特殊的方式使用“非受限界面”这个术语是很重要的。
虽然我们并没有声称引入非受限是设计界面必需的较好的方式,或者要求界面全部按非受限的方法重新架构,我们声称传统的(更加“受限”)界面系统和它们内在的受限表示有时缺少其功能操作的模式。这些不足有的可以通过在界面、交互模式和整个“用户经验”中应用非受限的概念来解决和补救。
考虑自从有广泛使用的计算机系统的概念以来,用户界面设计的历史。早期的具有“无声终端”的大型计算机,仅仅只允许用户和计算机通过慢速的“打字”(TTY)键盘和监视器进行交流。后来引进了原始的图形显示。从开始的类似牵牛星的机器,发展到现在普遍的IBM PC机以及它的兼容机,在全球引入了具有快速增长的本地处理能力的桌面“个人计算机”时,图形显示仍然流行。
在这些系统中,用户被高度限制在交互流中。输入和输出是非常受限的:用户只有一种输入法,一个键盘。用户也被限制如何与计算机交流,例如不得不使用不可思议的命令(例如Unix中的“ls -al”或“rd”)集,而必须精确地遵循它们的语法以防止交流故障(Banahan & Rutter,1982 [2])。
类似地,对用户的输出也被紧密地限制:不只在物理介质(文本字符和位图的由任意等数量行和列组成的任意长方形栅格)上,因为其电动机械的设计原则,而非人文因素的约束,也在命令语言输出的语法上。用户要继续不得不使他或她的操作方式(modus operandi)适应计算机。当然,“面向人类”的表示不一定要与“非受限”表示相同,但表示中的非受限是的得到面向人类输出的一种方式,并且如果使用正确,可能是非常有效的。
在最初Xerox’s PARC的Star开发小组的工作原理稍后被产品开发在Apple的Lisa和Macintosh计算机和微软的Windows操作系统中采用之后,图形用户界面(GUIs)的出现已经取得了进步。然而,从非受限界面的角度并没有多少改变;输出也无疑是更加形象化的形式。尽管代表性地,采用传统键盘进行的输入通过鼠标增加了一个另外的维。但是进一步调查起来,用户仍被有限的命令(“下拉”菜单系统)集所限制,并且不得不接受表示系统所提供的一切。界面是传统操作系统结构上的一个外表;在微软Windows的情况中更是如此,因为它是一个在16位真实模式的操作系统上按前十年的设计构建的被保护的模式图形环境。
改变的前期发展
Sketchpad(Shtherland,1963 [77])和ThingLab(Borning,1979 [6])对本文有一定影响。它们都是允许用户输入的高度表达和控制的图形界面系统,并具有强大的内部操作引擎。它们展示了图形界面、面向对象的设计和开发、以及采用约束的概念的发展道路。本文中它们都展现了一定的输入适应性和较少的输出可变性。但是它们在支持本文采用草图作为输入机制的中心主题上是有帮助的,并且将此扩展到故意保持类似草图形式的输出。这导致了对内部表示结构的需求的分析,在宽松地基于Sketchpad和ThingLab(在它们约束和对象的使用中)的同时,通过实现增加认知维(cognitive dimensions)和原型(prototypes)等非受限类型的需求,加强它们的构造。
Ivan Sutherland(同前)在MIT的林肯实验室的TX-2计算机上开发了世界上第一个真正的图形用户界面,Sketchpad。这个基本工作为大多数现代的人机界面提供了基础。他的系统基于光笔、一排开关和CRT显示,是第一个交互性的计算机图形界面。有趣的是,尽管名义上带有“草图”,Sketchpad本身很大程度上并不是“草图的”。虽然采用手持光笔来输入,系统却被设计成可以产生带有完美线条和拐角的高度精确的绘图。它在采用集合对象的约束条件的方面上同样领先。
Alan Borning的ThingLab(同前)是一个用面向对象程序语言Smalltalk开发的基于约束的模拟系统。ThingLab是一个受到Sketchpad严重影响的图形系统,被设计成允许用户在对象之间设立操作和约束,并模拟简单的物理实验。ThingLab没有嵌入任何特定领域的知识,但却提供了创建应用的工具和机制。
 非受限界面和人机交互——传统的文献
人机交互学科已经从认知和计算机科学、心理学、生物工程学以及其它研究和开发领域中很好地建立起来。这个多学科的科目的学习范围很广,吸引了生活工作中所有行业的研究者、操作者和用户。它的基本概念现在已被很好地理解和证明,并且存在很多的人机交互原理(例如Preece,Rogers,Sharp,Benyon,Holland & Carey,1994 [64])的刊物。Preece等人在书中讨论了现今人机交互的“传统”方面:认知框架、感知和表示、智力模型、界面比喻、输入、输出、交互风格以及设计方法和技术。他们(同前)陈述了“……人机交互是关于设计可以支持人们有结果并安全地开展他们的活动的计算机系统……”的观点。他们指出Donald Norman(Norman,1988 [59])识别了两个帮助保证好的人机交互的关键原则:可见度(visibility)(控制需要是可见的,并且具较好地映射到它们的效果)和提供(affordance)(控制应该建议,例如提供它们的功能)。
Preece等人(同前)强调了七、八十年代大西洋两岸研究方法的分歧。他们指出美国的先驱更多地关心计算机如何丰富生活,使得它们更加简单,并帮助创造和问题解决。而同时欧洲的研究者却在构造可用性(usability)等人机交互的理论以及操作标准和评价度量的开发。
他们(同前)定义了对人机交互有贡献的学科清单:(a)计算机科学,(b)认知心理学,(c)社会和组织心理学,(d)人类工程学和人文因素,(e)人工智能,(f)语言学,(g)哲学,(h)社会学,(i)人类学,和(j)工程和设计。他们继续强调了这样的事实,即图形表示(graphical representation)是界面中传达信息时采用的主要方法,并且在与设备和系统交互时,智力模型(mental models)对人们很重要。对此已经开展了一些研究(例如Rogers等人,1992 [68]),并且一般的假设是人们确实使用某种类型的模型,但那通常是不完全和模糊的。这对人机交互中的非受限接口来讲是一个很重要的问题,其中输入适应性(tolerance of input)和输出可变性(variability of output)可能被故意用来试验与系统的用户(可能是模糊的)智力模型更加相符。概念模型对非受限界面来讲也很重要。设计模型、用户模型和系统镜像(Norman,1986 [58])是概念模型的经典体系结构。这里,为了避免引入与用户意图不符的意义,非受限界面系统中系统镜像的内部表示结构是故意“非受限”的。
Preece等人(同前)也讨论了输入设备,传统的是键盘和鼠标。他们接着讨论了笔输入设备,但只存在于手写识别和手势识别的上下文中。本文描述的非受限界面在初级阶段采用笔输入:正如一支普通的表达草图输入的铁笔。输出设备是输入/输出平衡的另一半。他们(同前)讨论了在人机交互中使用的传统输出设备:图形用户界面(GUIs)、声音、虚拟显示和多媒体。非受限界面(正如本文所描述的)采用传统的图形输出,但形式却被设计来避免传达所表示的对象中没有的信息。
作者(同前)讨论了交互风格,例如命令登陆(command entry)、菜单和导航系统(menus and navigation systems)、自然语言对话框(natural language dialogue)和直接操作(direct manipulation)。本文提出的非受限界面没有假设新的、独特的交互风格:仍采用传统的(只要是菜单)交互风格,虽然也有机会使用直接操作。
其它的工作,例如Carroll(1991 [10])和Thimbleby(1990 [78])也陈述了人机交互的基本原理:输入(input)、输出(output)的基本循环以及内部的模型(models)和表示(representations)。
图形人机界面的人文因素已被Maguire(1985 [43])分析过。设计者可以利用一大群的输入输出设备和设施。在本文中,这个主题与非受限界面有关,正如利用类似的输入技术一样,尤其是笔绘(inking)。本文讨论了绘制的技术:1. 点测绘(point plotting)(通过指明起点和终点绘制直线段);2. 多边形填充(polygon filling)(提供指明内部的所有点来填充一个闭合多边形);3. 擦除(erasure);4. 自动测绘(autoplotting)和笔绘(inking)(象笔一样留下“电子墨水”的痕迹;手绘草图能够以此种方式完成);5. 橡皮带弯曲(rubber-banding)(自动从起点到终点拉伸直线段);6. 网格断裂(grid snap)(将所有输入连接到背景网格上最近的点,从而使得创建精确的绘图更加简单);7. 符号和图表库(libraries of symbols and figures)。
有趣的是,Preece等人(同前)包含了对受限和非受限组(formal versus informal groups)的论述。“越来越多的人相信非受限的、自发的交流,如果不比受限的交流重要的话,与受限的交流同等重要……”。然而在这里,非受限的这种用途并不是直接相关的。本文中“非受限”草图的使用涉及到交流中采用的表示,而不是交流协议。作者(同前)也考虑到在想象设计中使用草图(sketching)。他们(同前)声称“草图技术对开发所有的设计想法是有益的”,并建议采用视觉自由讨论(Verplank,1989 [79])来开发不同的设计。很明显,这强调了纸笔作为一种产生设计的快速方式的价值。然而,这种处理中贯穿的思想可能是规范的一般层次,并且系统不应该强迫用户指明非他们本义的意义,在这个意义上,它是与本文相关的。非受限界面对这个问题提供了一种方法。
Dix等人(Dix,Finlay,Abowd & Beale,1993 [16])论述了多感觉系统、语音、手写和手势识别以及动画等新兴技术。他们对手写识别的介绍主要集中在笔式系统中的字符识别。但是他们接下来声称“如果我们要从乱涂乱画中设计一个组织者,我们可以决定丢掉键盘……我们能考虑其它所有的方式来与系统进行交互……我们可以决定使用绘图来告诉系统做什么……不同的输入设备……提出了许多不同的界面设计和交互的不同可能性”。对这里开发的非受限界面,例如主要基于采用草图作为输入和输出的界面系统,这是一个促进因素。也就是说,此界面将有广泛的应用。
传统的人机交互设计框架
例如采用交互工作(interaction tasks)、心理方面(psychological aspects)、设计(design)和评价(evaluation)的阶段(Preece & Keller,1990 [64])。
草图识别的使用是计算机图形交互技术领域中研究的主题。例如,Foley等人(Foley,Wallace & Chan,1984 [21])描述了一个机制,使用草图识别系统来决定用鼠标、写字板或者以类似草图方式的光笔等设备输入的命令。
图5说明了用这种方式,可以在草图中绘制手势(gestures)来提供命令和控制计算机系统的一种方法。奇怪的是,他们(同前)采用受限的图表(例如直线)来说明他们的草图手势,而不是草图手势的真实例子。这里与本文相关的是采用交互的一种非受限方式——草图——作为提供计算机系统输入的一种方式。
在研究者们调查用户之间非受限交流和交互的其它形式的本性的文献中,存在着许多实例,虽然它们与本文并不是直接相关的。这在本文上下文中是感兴趣的,因为它帮助建立了一个可以放置所提出研究的框架。
Fish,Kraut和Root(1992 [18])对视频作为一种非受限交流的技术进行了评价。他们声称“组织中的协作以非受限的交流而旺盛,因为非受限交流是频繁的、交互的和有表现力的……”。作者的重心是他们的音频/视频技术系统,CRUISER。他们推断“桌面视频会议的某种形式在对地理上分布的组织者保留非受限交流渠道来讲,是有用的”。
Hollan和Stonetta(1992 [32])也认识到了非受限交互的需要。他们声称在研究者之间随着距离的增长,协作的可能性会减少。他们接着声称产生的原因是“因为需要大量的非受限交互来创建和保留工作关系”。
在Xerox Palo Alto研究中心的研究者们(Elrod等人,1992 [17])开发了一种叫做Liveboard的交互视频白色书写板系统。该系统给基于铁笔的组交互提供了一个计算机支持的白色书写板系统。用户可以交互、控制并按照惯例地注释(用草图和手写)显示的计算机图形。一个活板应用Tivoli稍后被用于检查非受限工作组会议(Pederson等人,1993 [61])。这在Moran等人(1998 [53])的论文中被进一步探究。该文中作者利用了使用自由形式的电子白色书写板比喻来使用户能够用笔式涂写和编辑进行交互的思想。
Hewlett-Packard的Btistol研究实验室的研究者们(Whittaker、Frohlich & Daly-Jones,1994 [80])在工作场所研究了非受限交流。这时他们意味着它是“……简洁的、未计划的并频繁的”,支持许多不同的功能:工作相关任务的执行、小组活动的共同任命、办公室文化的传播和小组建设等社会功能。作者研究了例如视频和音频系统、“glance”系统和漫游会话等(通常是远程的)非受限交流的方法。然而,他们并没有将草图(可能在白色书写板或餐巾上)作为非受限交流的一种方式来研究。他们以一个关于非受限交流的 “绝对简短(brevity)”的想法结束。他们声称这可能是因为,在受限交流的情况下,如果参与者不确定他们可以经常见面的话,他们可能将多个问题精简在一次交互中。然而,在非受限交流的情况下,熟悉的交互者知道未来的会话是可以保证的。
Zhao研究了基于手势的图表编辑(Zhao,1993 [82]),对手绘草图图表的识别给出了一些看法。其它大部分方法或者使用手势识别,或者使用视觉语言分析器,而该作者提出了手势识别的一个递增范例和为模式识别和图表分析的一种共同操作的交流。他(同前)确定了需要低层识别器(LLR)和高层识别器(HLR)——LLR工作在单笔划层次,而HLR将这些基本符号集合转换成编辑命令。这在本文中是很重要的,因为它稍后帮助为非受限界面系统展示一个框架。
非受限界面和计算机视觉
本文并不想包括形状识别的经典题目和来自计算机视觉(Marr,1982 [44]和Marill,1989 [45])的线条绘制的说明。计算机视觉更加关注与从摄制的或其它位图图像中识别线条、形状和关系(例如后面(behind)、前面(in front of))有关联的问题。在本文描述的非受限界面系统类型中,这些场景通常以一种不同的方式发生。在计算机视觉中,场景作为既成事实(fait accompli)出现在识别引擎中,代表的是视频照相机的输出或扫描的设置图像。接下来的问题就是从线条、曲线、阴影等的潜在暗示中(Leclerc & Fischler,1992 [38])抽取内嵌的数据(二维或者三维)。另一方面,本文提出的非受限界面理论更多地关注用户输入的类似草图的数据的分析(实时的或者输入后的),它的内部表示和潜在的解释,以及相应的向用户传达适当非受限程度的类似草图输出的实现。然而,计算机视觉得文献确实提供了有用的与非受限界面系统相关的算法和表示的概念,例如直线的最佳拟合方案(Pao,Li & Jayakumar,1992 [60]和Chattopadhyay & Das,1991 [11]),和形状识别(Marr,1982 [44])。
非受限界面相对计算机视觉有一个优点:接受用户的线条绘制数据的输入机制能够实时地接受(并可能处理)数据,这导致了可推导的相关的额外数据。例如,一个房屋(house)等对象的线条绘制将以一种特定的顺序进行:首先可能是房屋的长方形身体的外部线条,然后是窗子和门,接着是屋顶,最后是烟囱。这些时序数据可以帮助解决模糊的图像。Necker立方体侧面的组成线条也将以一种特定顺序绘制,这可(可论证地)被用来说明想要的结果图像。Reisberg(1987 [66])在他的文章“具体化思想的外部表示和优点”中探究了这一点,其中他指出将思想具体化的重要性,例如“……脑中图像的内容通过草图……”。
Negroponte(1971 & 1973 [55])将草图识别定义成“用户意图(他本身可能没有意识到)和他的图形清晰度之间错配的逐步解决。在设计的上下文中,因不断改变由用户观察他们自己的图形陈述而产生的意图,意义和意义的图形表述之间匹配的收敛变得复杂。”。他的HUNCH程序是采用来自草图的推论使得以最终设计结束的早期尝试之一。
注意到文本描述的非受限界面系统面临着计算机视觉的很多问题。其中某些问题的可能是很难处理的。例如,可能永远无法开发出能够以精确否配用户意图的方式解释图形输入的系统。
Citrin和Gross(1996 [12])描述了一种图表识别的技术,利用了低层和高层的部件。作者详述了一种采用PDA和桌面计算机进行笔式输入和图表识别的方法。PDA进行低层的形状识别,而桌面计算机负责高层识别。这个体系结构与Zhao(1993 [82])使用的相类似,也与本文描述的非受限界面的实现所采用的体系结构类似。
Straforini等人(1992 [76])声称,“三维结构的复原和从电视图像中观察到的对象的识别属于计算机视觉的主要目标……”。他们描述了一个系统,其中低层视觉模块从真实图像重获线条绘制,而高层推理模块进一步处理图像。Marill(1989 [45])分析了人类视觉系统如何产生二维图像的三维解释的问题。也存在其它的形状识别技术,例如采用直线Hough变换(Pao,Li & Jayakumar,1990 [60])。Hough变换是一种众所周知的用来在二进制图像中检测参数曲线的方法。
 一些表示的框架
本文在第三章提出了非受限界面的结构。然而这里将先概括一下表示结构背后的关键概念。
所提出的表示中基本的是原始原型(primitive prototype)和相关联的特定参数(specific parameters)的概念。作为一个例子,我们考虑一条手绘的粗糙直线。这种情况下,表示的要点是一条简单的直线(straight line)。表示的原始原型是抽象的没有粗细的完美几何直线,它的轨迹根据特定的最佳拟合算法得到。相关的参数是一个特定的能够进一步充分描述实际线条的属性的集合,包括线条阴影的度量和它的颜色等等。这种观点出自两个主要的原始资料:来自知识表示理论(Knowledge Representation theroy)的框架(frames)(Minsky,1975 [50])的概念,和认知维(Cognitive Dimensions)(Green,1989 [22])形式的参数。
        框架的概念结构很适合原型/参数的构造。框架是表示关于有限领域的知识的结构,基本上由一个固定的原型(prototype)和许多相关的被填充物(fillers)占据的插槽(slots)构成。框架已被用于许多人工智能的问题领域,例如为识别的一类问题表示知识(Kuipers,1975 [36])。框架也在编程语言中也有一些用途,Apple Newton PDA就是一个带有基于框架的开发环境编程语言的计算机。框架对面向对象的结构和编程技术的开发也是有帮助的,这在本文的软件执行中使用得很多。
认知维(Cognitive Dimensions)
Green提出了“认知维”的概念,把它作为一个在认知上更精确地描述相关界面性质的描述词汇,而不是一个计算上的术语。他引入了粘滞度(viscosity)(表示对变化的抵抗力如何的一种度量)和过早提交(premature commitment)(交互过程中用户是否过早地固定于一种选择的一种度量)等概念,并在一系列论文(Green,1990 [23],1991a [24]和1991b [25])中探究了这些概念。
这种认知维为提出附联的(认知的)属性的概念提供了基础。一般而言,认知维描述了信息结构的方面,所以界面的这些方面能够以同样的用物理维(例如重量和长度)描述对象的方式来描述。根据Wood(1992),Green最初提出认知维作为形容不同计算机编程语言的概念的集合。然而,认知维的概念将它很好地引入到描述界面中来。
        在非受限界面中坚持使用认知维:本文吸收了认知维的概念,并稍后假借阴影(shakiness)、粗细(thickness)和循环(period)等非受限认知维(informal cognitive dimensions)将其用作原型(以框架的风格)插槽填充物的基础。这些非受限认知维并不是Green原始风格和意义的认知维,因为它们本性不同并必要地具有不同的风格。然而,Green使用认知维对本文采用相似的非受限的对等物是一个促进因素。
一些软件工具
在继续分析对形成本文基础有影响的开发的一些思路之前,回顾一些背景工具和可用来帮助构造表示结构并帮助开发示范软件的技术是有指导意义的。
虽然2.4.1中概括的框架结构(Minsky,1975 [50])为内部表示提供了一个吸引人的基础,却只有少量可用的软件开发工具使用该概念。某种程度上,框架已经引申成了更加一般化的面向对象分析和设计(object-oriented analysis and design)(Booch,1994 [4])的概念,正如本文采用C++(Borland,1992 [5])的一些软件实现中所用到的。本文的其它软件采用经典的‘C’编程语言(Kernighan & Ritchie,1978 [35])开发。
注意采用了“人工智能”编程语言,Prolog(Clocksin & Mellish,1981 [13]),来开发一些核心的“智能引擎”软件(Amzi,1995 [1])。Prolog很适合本文后面4.4.6中描述的软件执行的识别引擎所遇到的问题。这里,面临的问题是从低层原语(例如粗糙直线)得到高层构造(“三角形”、“正方形”和“房屋”等)。数据以原型(线条)和其附联属性(长度、起点等)的形式提供给智能引擎。Prolog的反向跟踪和剪切正适用于这类问题——得到连接(attachment)(实际是约束条件)的中间层构造,并从中得到原始几何对象(例如,一个三角形有三条线A、B和C,并且A与B,B与C,C与A相连)的高层构造。
约束条件和约束编程语言
在第三章中将看到,非受限界面内部表示的部分结构依赖于显式或隐式地使用约束条件(constraints)(例如Borning & Duisberg,1986 [7])。例如,如果四条线以正方形的形状绘制,则它们被每条线的终点连接着下一条线的事实约束。
图6给出了由本文实现的一个软件程序(叫做“i-Fax”)产生的一个类似草图的方形的例子。它的内部表示由四条粗糙直线的非受限对象组成,结构上被每条线与另一条相连(attachment)所限制。
在本文描述的非受限界面系统中利用了两种类型的约束条件:全局的(global)和结构的(structural)。全局约束条件是贯穿对象终生的统一应用于对象的非受限认知维,例如阴影、循环、粗细、长度和方向。该系统采用了一个结构的约束条件,连接(attachment)。其它的系统可能利用了其它的结构约束条件,例如上方(above)、右方(to_the_right_of)等等。
约束条件是强有力的,因为如果要旋转这个方形,可以有很多种完成方法。例如,矩阵操作可以应用于表示屏幕显示的象素位图阵列。然而,如果采用了约束条件,则只需要将一条线转换到新的位置——根据连接其余的必须跟着配合(实际上,连接是本文开发的软件主要利用的约束条件)。
约束条件对本文描述的界面构造中的非受限类型来讲,是一个重要的概念。因为很自然地,可以将它作为一种有用的关系来约束原始的图形元素(粗糙直线等)。
该概念更早用于Ivan Sutherland的基于约束的图形交互系统Sketchpad的开创性工作(Sutherland,1963 [77]),以及后来被Borning & Duisberg(1986 [7])扩展的Alan Borning的ThingLab(Borning,1979 [6])和其它的Stefik(1981 [75])等等。在约束系统领域还有持续的工作,例如DeltaBlue算法(Sannella,Maloney,Freeman-Benson & Borning,1992 [69])中的多方式(与单方式相对)约束,基于约束的数据流(Kass,1992 [34]),以及CONSAT,一个为满足约束的系统(Gusgen,1989 [30])。
草图的能力
同时,人们越来越意识到在相关学科中图表和草图(sketching)的能力与用处。Lansdown(1985 [37])指出计算机图形学设计者们趋向于在“可信的自然主义”更适合的时候,以摄制现实主义为目标。Bundy(1977 [9])论证了在机械领域需要图表来描述问题,例如从斜坡滑下的一个小块(“过山车”问题)是否会达到另一边的顶端,还是循环下去。他的解决方法是像符号描述一样,从图表描述问题的方面,将它转给机械领域中的一般的问题解决者。
正如Cohn,Randell & Cui(1993 [14])在他们关于定性空间关系的工作中说道,基于领域的空间逻辑的存在论者的开发才刚刚开始变成一项认真的研究活动。他们描述他们的工作是为定性推理改进一个系统,这基于系统和对象的图表中元素间的关系,例如内部INSIDE、外部OUTSIDE、刚好外部JUST_OUTSIDE等等。虽然他们的例子基于推理上合理绘制的图表,很有趣的是注意到粗糙草图在多数情况下也可以表达相同的目的。
有越来越多的图表使用和理解方面的研究,包括一般的和例如图(graphs)等特殊的情况。Preece(1983 [63])和Lohse(1991 [41])等研究者们已经分析了图理解背后的问题。正如Lohse叙述的,尽管在信息系统的设计中图形学越来越重要,对人类如何感知和处理图形信息还只有部分的理解。他指出图感知和理解的认知模型的研究如何能够被用于非受限主义,以及图的粗糙草图表示如何能够本质上像信息的非受限显示一样有趣。非受限界面的一个关键概念是的计算机输出的恒定性的放松,所以它对学习人类如何感知和处理图形信息的意义是有启迪作用的,虽然这不是本文的重心。然而,图的理解是一些本文描述的非受限界面系统的类型的元素未来应用的一个例子。Lohse描述了一个计算机程序UCIE(理解认知信息工程),它对潜在的人类采用的感觉和认知过程建模,将图中信息解码,并考虑从柱形图、线性图和表格分析的结果。他的机械论的方法是首先决定能够解码信息的视觉定象的逻辑顺序,接着计算(从短期记忆已知的观察、阅读时间等等)这将持续多久。
Lewis、Mateas、Palmiter & Lynch(1996 [40])给出了一个例子说明如果使用在适当的上下文中,类似草图的图的潜在能力。他们的论文展示了一个使用种族图解数据在产品开发环境中驱动设计的过程。他们的部分过程包括从分析会议中收集数据。有趣的是,他们在论文中通过使用图7中类似草图的图,说明了观察的数据分析会议的时间结构。正如作者(同前)陈述的,“(图)并不想指明精确的时间结构,但却提供了在这种会议中一个‘典型的’分析循环的例子”。所以作者并不试图通过受限的、完美绘制的图的方式,表示他们想从读者得到的信息。相反的,他们选择通过更加粗略的、粗糙绘制并非受限的图的方式,传达他们想要表达的东西的粗糙的印象。以这种方式,读者能够领会到他们观点的大致要点的一点感想。然而,读者也应该意识到读入太多图的精确元素是不适当的。例如,把线条数据窜改或推断到一个很高的精确程度可能是不适当的。
有大量的关于计算机采用铁笔输入的工作。例如,国家物理实验室(NPL)说明在他们的电子论文工程(Brocklehurst)中需要用到草图输入和后来的分析。其中,用户可以在平坦的面板显示上书写,手绘符号、图画、字符和草稿被解释,并且在屏幕上显示“意图”的结果。NPL的电子论文提出了非受限界面的一个主要特性:输入适应性(tolerance)。用户能够以草图和手势的方式输入数据,软件为后来的输出做“规整化”。例如,用户可能输入一张图的两根粗糙的轴,并在他们的终点进行注释。这将被软件整理并显示为两条完美的直线轴,并带有中间的注释标记符号。接着,用户就能够输入数据点,和所选择的“正确”类型的曲线(例如线性的、二次的或其它)。程序将计算并绘制曲线。
还有图形、图表使用和理解的持续研究的其它例子,例如计算机视觉和计算机图形学交集的分析(Montalvo,1985 [51]),还有定性视觉特性的获取和确认(Montalvo,1990 [52])。在该文中,一个“知识观察仪”的软件程序像框架(frames)一样表示图形对象、特性和关系。在计算机图形学屏幕上作为原型(prototype)表示的特性(properties),可被“逐步联合以形成更复杂的特性和对象”。每个用框架表示的特性,本身都有一个插槽(slot)和一个发生器(generator)、识别器(recogniser)和回音(echo)功能。所以如图8,例如SIDEDNESS的特性,三角形将用值3填充插槽。这与本文第三章描述的非受限界面的构造是相关的,因为它是一个内部表示结构的例子,基于框架风格的原型(prototype)及其相关的插槽(slots)的填充物(fillers)。
用图表帮助思考和视觉编程语言的出现,是传统领域内图形学的使用和能力的持续主题。Green和Blackwell(1996 [26])引证了这背后的一些原因,例如人们发现处理具体的(例如视觉表示)比抽象的更容易的事实,视觉充分利用了人类认知(形状比文字更易处理),以及视觉编程使得语义关系更明确(以图画的形式)。用图表帮助思考的主题与本文描述的非受限界面相关,因为图表与非受限的、随便的、草图显示有关。
对艺术、草图和计算机的合成有巨大指导意义的另一幅图是Harold Cohen(McCorduck,1990 [46])。虽然Cohen依照训练和职业是一个熟练的艺术家,并且不知道关于计算机的任何知识(计算机在刚刚起步的阶段),事实上他还是摈弃了他已建立的职业并从事通过计算机创建艺术的远见。他的计算机程序AARON,“现在仅有的能自治产生艺术作品的程序”(Sharples,Hogg,Hutchison,Torrance & Young,1989 [74]),能够创建类似草图的艺术场景的绘制。
图9显示了由AARON创建的一幅图画。从计算机科学的角度,在建筑的意义上AARON构建得不是很好。总体上AARON确实考虑了创建原始的艺术作品,多数人认为其在美学上是满意的,并且很难与人类创建的相区分。另一方面依照职业或训练,Cohen不是一个计算机软件工程师(可能永远也不能这样说),在AARON开发的早期阶段,计算机程序非常的混乱。后来的开发把AARON放到了更加结构化和面向框架的基础上。
AARON的论述与本文是相关的,因为它是一个用内部表示结构来描绘类似人类的图形输出的例子。它也是一个使用输出可变性的例子,因为AARON有些不可预知地产生了相同主题的相似但不相同的图片。所以,场景的总体要点是相同的(例如一组人站在树丛中),虽然精确的细节可能不同。
在艺术和设计中,已经做了大量的工作来分析草图背后的原理。Fish和Sctivener(1990 [19])声称“达芬奇提倡使用凌乱的不确定来设计作品,因为他相信草图促进了视觉创作”。同样地,根据Fish和Sctivener,“……草图是不完善的视觉结构,增强了智力想象的发明和问题解决的用途……”,并且Negroponte(1977 [56])注意到“草图识别是一个比喻一样的事实。对那些以妄想、不一致和模糊不清而著名的设计领域的兴趣就是一个例证。虽然这些图形是令算法讨厌的,它们确实设计的精髓”。虽然作者以一种有些不同的方式谈论草图,对本文这仍是一个促进因素。本文描述的非受限界面内在具有类似草图的本质。在计算机支持的联合操作工作和协同设计领域还有进一步的工作。Scrivener和Clark(1994 [71])主张草图完全不是“……时代错误的……一种实行过的技术并可能被基于计算机的图像技术取代”。事实上它仍然是一项必须的功能,因为“……草图的特性支持并帮助了设计的早期阶段中采用的视觉推理,草图活动也同样有这个功能”。
这些作者和其他人(Scrivener、Harris、Clarke、Rockoff & Smyth,1993 [73]和Scrivener、Clarke、S.、Clarke、A.、Connolly、Palmen、Smyth & Schappo,1994 [72])一起,进一步讨论了通过采用交互的实时草图功能,支持分散的工作组设计成果的情况。在该系统中,分布的很远(甚至可能分布在不同的洲和不同的时区)设计者们将采用共享的用电话线连接的计算机“草图板”系统。
在Utrecht艺术学校,Barfield、van Burgsteden、Lanfermeijer、Mulder、Ossewold、Rijken 和Wegner(1994)在一篇关于交互设计的文章中,描述了一些草图图符的例子。如图10和图11中说明的,在该文中更多地使用草图来代替受限的图表和表格。一旦选择了受限的方法,使用这种表示的非受限模式是一个持续的趋势。这可能部分与技术有关(例如能够将草图与文字处理文档相结合的情况),部分与作者(这种情况下显然是一群艺术学校的设计者)的传达满意风格的特定印象的愿望有关。
在Colorado大学的建筑和规划学院,Citrin和Gross(1996 [12])采用一个前端的个人数字助理(PDA)手持计算机(Apple Newton)和一个伙伴的后端计算机(Apple Mackintosh),研究了分布式数字草图书籍的概念。后端计算机以处理能力更高和存储更大的形式对PDA提供支持。这里需要的是,例如,帮助领域内电信服务工程师。作者说明,代表性地工人抵达站点来修理单元,只需面对令人糊涂的电线的混乱状态:工人最初的任务是对混乱做一个草图图表来试图分清每根电线的作用。作者的PDA系统允许工人输入这些草图图表,首先经过一遍识别尝试,然后上传到后端传统的计算机上以进一步处理。以这种方式,没有浪费(因为下一次出动工程师仍同样需要得到另一副草图)早期的、非常有用的草图,而是为后续的下载做了一些存储、编辑或者改动。
如图12所示,系统的后端是他们(同前)的Electronic Cocktail Napkin工程(Gross & Do,1996a [28])。该文中,作者主张:“在所有的设计领域(从软件到潜水艇),图表和草图在概念、格式化阶段起了很重要的作用。我们想要支持这种绘制和草图,就像在信封背面或鸡尾酒餐巾纸上绘画一样。它快速而粗糙,但它允许你快速地探究和说明基本的选择”。
在更进一步的论文(Gross & Do,1996b [29])中,作者主张“概念和创作性设计的界面应该支持识别和解释图画。它们应该捕捉用户意图的模糊性、不明确和不精确……手绘图画可以提供这些信息并且它是设计的自然的输入方式……”。
非受限界面的能力
Mundie和Shultis(1991 [54])考虑了计算机系统的发展。虽然提出并分析了“非受限主义”和“非受限”的概念的很多方面,它对人机交互和用户界面设计的潜在应用还没有正确的评价。例如,Reeker(1991 [65])在他的论文界面中的非受限主义(Informalism in Interfaces)中,研究了自适应界面的一些例子,并分析了视觉知识的表示等概念,还把认知的表示结构投影导计算的表示上。
Fisher(1991 [20])分析了“什么是非受限主义”的问题,并得到了许多结论。他从物质世界和抽象世界的本质上确定了受限方法的缺点,因为它们假设了限定的描述,通常需要完整性、一致性和精确性,并且不足以描述和分析物质世界。Fisher总结到非受限系统必须包含并开发受限的方法,它们必须是有内涵(intensional)和不完善(incomplete)的,它们必须能够处理不一致性(inconsistency),它们必须是非轴对称(nonaxiomatic)和原型的(prototypical),并是不精确(imprecise)的。
Meyer和Crumpton(Meyer,1996 [47]和Meyer & Crumpton,1996 [48])将非受限应用到用户界面设计和体系结构中。作者(同前)陈述到“研究者和开发者们发现了在创作过程中类似草图的表示的需要和重要性”。然而,在WIMP界面的受限性中,他们认识到这些应用通常展示用户的粗糙草图的问题。这产生了两种竞争的外表视觉不一致的问题:“计算机产生的界面的‘外表’不能反应笔输入的‘感觉’……(后者)是可变的、动态的、个人的非受限的,但计算机产生的图形看起来是线性的、静态的和受限的”。
他们的非受限界面的实现,EtchaPad(Meyer & Crumpton,1996 [48]),是非常有趣的。因为小零件和窗口的形状看起来的感觉是粗糙的,就好像人类手绘的草图一样。图13给出了EtchaPad的界面风格的例子。
EtchaPad显示了本文支持的非受限界面的两种关键特性,输入适应性(tolerance)和输出可变性(vatiability)。然而,虽然看起来前端图形显示利用了非受限界面的比喻,后端(内部)表示却是传统的,特别是没有关注表示的认知要点(gist)的概念。
在第三章中,将细致地描述开发的非受限界面软件。任何以粗糙的类似草图的外观表示输出的软件系统,都需要算法来产生这些草图的线条,本文实现中采用的这些算法将在后面描述。通过实验开发这些算法经过了一段时间,后来还要进行调整来得到更加自然和熟悉的外观。作为比较,Meyer和Crumpton(1996 [48])描述了他们试验的许多方法来试图得到绘制非受限的粗糙线条的满意结果。其中他们觉得最好的是采用由Perlin在纽约大学多媒体研究实验室独立开发的随机噪音函数(stochastic noise function)算法。图14给出了他们非受限的线条和小零件的例子。
Meyer和Crumpton的方法是给用户界面一个自然、熟悉的草图外观,对此Perlin噪音函数提供了一个很好的解决办法。然而该文的目的部分是研究使用非受限界面固有的内在的认知过程。为此,3.6中详述的原型/维模型(PDM)比其它的例如Perlin噪音函数等方法更适合。
Davis等人(1998 [15])研究了采用3Com PalmPilot等PDA使用户能够自然地进行基于电子墨水的协作笔记。作者(同前)描述了一个简单、“非受限”(用他们自己的话)的系统,它允许用户在会议中进行手写记录,并稍后将其他用户的记录搜集起来创建一个共享信息的知识库。
Heiner等人(1999 [31])创建了一个混合的系统(“纸质PDA”),它是传统的基于纸的组织器和一个完全的电子PDA的交叉。这很有趣也与本文相关,因为作者(同前)研究了将纸质最好的特性与PDA最好的特性联合在一起。他们认识到“纸是一种不固定的、自然的并易于使用的媒体……”,而“与电子媒体相比仍有局限……”。他们采用自然、非受限的草图手写界面作为输入,这稍后被转换成电子形式以做进一步的处理。
Schilit等人(1998 [70])探究了“活动阅读(active reading)”(阅读文本时自由地手写下划线、强调和评论)的主题。他们的系统采用一个大型PDA类型的带有液晶显示的写字板,用户可以在其上显示文本并采用铁笔进行注解。这是采用非受限的、直觉的方式与计算机系统进行交互,并提供类似草图的输入方式的另一个例子。同样采用这种自然、熟悉的输入机制,潜在地计算机系统进一步监视用户的自由格式的墨水注解,并通过他们发现用户关心的东西。例如,系统能够搜索与注释文本相关的材料,并在空白处显示它的链接。
正如Long等人(2000)指出的,笔式用户界面越来越受欢迎。这种界面的一个重要和满意的特征是采用手势(用笔引发的命令)来控制程序。作者(同前)以创建一个帮助设计容易学习的集合的工具为目的,分析了手势集合的设计。根据本文手势是有趣的,因为它们是用来命令和控制非受限、草图显示的例子。
最后,Igarashi等人(1991 [33])像本文描述的一样研究了非受限界面的一个潜在的应用——三维自由设计的草图界面。在他们的论文中,他们描述了为“快速设计已喂饱的动物和其它圆形对象等自由模型”的草图界面的设计。用户交互地绘制二维自由(草图)笔划来说明对象的轮廓。内在的系统自动地构造一个基于笔划的三维多边形表面模型。他们的程序“为快速构造近似的模型而设计,而不是为了精确模型的精心编辑……”。这种方法也是本文关心的,因为他们(同前)采用了非受限的、基于草图的界面来允许用户方便、快速地输入设计的想法,并使用内在的受限工具和方法(例如多边形网格表示)来产生一个最终的模型。
小结
本文综述了很多领域内的文献——计算机科学、认知科学、心理学、生物工程学、计算机视觉和艺术设计。计算机系统中的非受限,和尤其是用户界面设计的概念是相对较新的。然而计算机系统和界面中的非受限却出现得越来越多。“非受限性(informality)”和“非受限(informal)”的术语在不同的上下文中有不同的意义。本文主要关心通过采用输入适应性、输出可变性和潜在表示的要点,非受限性在用户界面设计和计算机系统中的应用。这些概念在不同范围的文献中出现,并具有不同的外观,正如本章所证明的。
本章进一步为界面系统编制了一个目录,从早期的Unix等受限的界面系统,到最新的研究论文中基于草图的用户界面和应用。正如本文描述的,这一章注意到计算机视觉致力于处理与非受限界面面对的截然不同的问题。然而,也注意到可以从计算机视觉和图形学领域的传统研究文献中得到很多东西,远到一些本文描述的构建非受限界面的工具和方法学。其它众所周知的构造,例如框架(frames)和对象(objects)以及基于Green认知维(cognitive dimensions)风格的属性,还有基于约束的系统(constraint-based systems)为本文描述的非受限界面的对象表示提供了适当的基础。
总体上,本文对文献的调查发现了一个用户界面和计算机系统设计中的非受限的不同风格随着时间发展的趋势。本文尤其关心的是在用户界面设计中采用类似草图的输入和输出,以及采用相关的受限方法学来构建这样的非受限界面系统。本文描述的非受限界面系统的许多元素都被多方面的文献接触到,所以本文的目标是把将若干关键的分散的元素以全新的方式聚集起来(例如输入适应性、输出可变性和表示的要点)。
(梁爽编译)


聊聊“海龟”
https://m.sciencenet.cn/blog-39479-213669.html

上一篇:从信息检索到信息交互
下一篇:关于“学术造假根源”的肤浅看法

0

发表评论 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-25 06:54

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部