支持计算的基于约束的配置制造技术

技术编号:12466645 阅读:59 留言:0更新日期:2015-12-09 16:34
基于约束的配置器接收用数字值表达的配置属性。使用该数字值执行计算且基于该计算的结果来评估约束。基于所评估的约束来自动显示输出。

【技术实现步骤摘要】
【国外来华专利技术】【专利说明】支持计算的基于约束的配置背景对于配置器(configurator)或配置系统,当前存在许多不同用途。例如,产品配置系统允许用户配置用户正购买的产品。作为一个具体示例,如果用户正在购买计算机,该用户可上线并使用产品配置器来按照该用户恰好希望的方式来配置该计算机,以使得该用户的个人配置的计算机被发货。—般而言,存在两种类型的可以使用的配置系统。第一种是基于规则的配置系统。在这种系统中,利用一组规则来实现配置。基于用户输入,规则的一部分被匹配,且规则执行。然而,已经发现基于规则的配置系统在许多领域中是有缺点的。例如,基于规则的系统尝试具有覆盖每个具体用户输入的规则。可能非常难以创作综合性的规则集合,且这种系统是非常脆弱的。如果一规则未被匹配,则基于规则的系统可能遇到问题。从而,通常需要大的规则集。一个示例可能有助于解说基于规则的配置系统和基于约束的系统之间的差异。在大多数情况下,规则将按照If-Then-Else (如果-那么-否则)的形式来表达。例如,假定想要确保两个颜色变量具有相同颜色。在基于规则的配置系统中,这一般可被建模如下:If (ColorDoor ! = Blank)(如果(颜色门!=空))Then (则)ColorFrame = ColorDoor (颜色框=颜色门)If (ColorFrame ! = Blank)(如果(颜色框!=空))Then (则)ColorDoor = ColorFrame (颜色门=颜色框)由于约束编程的声明性质,所述相同可用一个约束来实现ColorDoor = ColorFrame (颜色门=颜色框)因此,存在从基于规则的配置系统朝向基于约束的配置系统的一次移动离开。基于约束的配置系统利用约束满足问题求解器或实现配置器中的组合式约束的另一种类型的约束求解器。使用计算机配置系统的以上示例,如果用户尝试配置计算机,它可能是:计算机制造商不提供同时具有光学驱动器和额外的硬盘驱动器的计算机。在该情况下,配置器或配置系统实现不允许用户将这两种选项均选择的约束。在另一示例中,如果用户正尝试订购某种型号的电视,则该型号可能仅以特定尺寸制造。因此,实现了仅允许用户选择具有可用尺寸之一的给定型号的电视的约束。然而,许多基于约束的配置系统不支持使用十进制值表达的属性。类似地,许多基于约束的配置系统不执行用十进制或浮点表达式的数值计算。—些基于约束的配置系统不执行数值计算。然而,为了这样做,它们需要分开的用户输入。例如,如果基于约束的配置系统正在执行包括值A乘以值B的计算,需要该用户将A和B两个值均输入并且随后致动分开的用户输入机制以便使计算结果被显示。提供以上讨论仅用作一般的背景信息,并不旨在帮助确定所要求保护的主题的范围。概述基于约束的配置器接收用数字值表达的配置属性。使用该数字值执行计算且基于该计算的结果来对约束求值。基于被求值的约束来自动显示输出。提供该概述以便以简化形式介绍概念的选集,所述概念在以下详细描述中被进一步描述。该概述不旨在标识所要求保护的主题的关键特征或基本特征,也不旨在被用来帮助确定所要求保护的主题的范围。所要求保护的主题不限于解决在背景中提及的任何或所有缺点的实现。附图简述图1是基于约束的配置系统的一个实施例的框图。图2是示出图1所示的系统的总体操作的一个实施例的流程图。图3A-3J是示例性用户界面显示。图4-6示出基于约束的配置系统的不同实现。图7是其中基于约束的配置系统可被部署的各种架构的框图。图8-12不出了多个不同移动设备。图13是一个说明性计算环境的框图。详细描述图1是一个说明性的基于约束的配置系统100的框图。系统100被示为生成具有供用户106使用的用户输入机制104的用户界面显示102。在图1中示出的实施例中,系统100包括配置器组件108、约束满足问题(CSP)求解器组件110以及求值引擎112。CSP求解器组件110被示出为访问一组约束111。求值引擎112说明性地耦合到可调用库组件114和数学函数求值器组件116。系统100还说明性地包括处理器118和数据存储120。图1还示出了,在一个实施例中,系统100包括用户界面组件122。配置器组件108使用用户界面组件122来生成用户界面显示102。用户界面显示102具有允许用户106配置要被配置的项的用户输入机制104。在关于图1讨论的实施例中,基于约束的配置系统100将被部署为允许用户106配置产品的产品配置系统。当然,此环境仅是作为示例来描述的,且也可使用各种其他环境。以下描述这些的示例。处理器118说明性地是具有相关联的存储器和时序电路(未分开示出)的计算机处理器。其说明性地为系统100的功能部件,并且由系统100中的各种组件和引擎激活,并且促进所述各种组件和引擎的功能性。数据存储120解说性地存储可由处理器118用于促进系统100中的组件和引擎的功能性的数据和其他指令。当然,数据存储120也可存储其他数据。还应当注意,尽管存储120被示出为作为系统100的一部分的单个数据存储,然而该存储也可以是多个不同数据存储。此外,该数据存储可以位于系统100本地或在系统100远程(并能由系统100访问),或一些数据存储可位于本地而一些数据存储可位于远程。还要注意,在系统100中已经示出了各种组件和引擎。然而,那些组件和引擎可被组合为执行该功能性的更少的组件或引擎,或者它们可以被分为更多组件和引擎,这些组件和引擎中的每一个执行该功能性的一子集。本文构想了所有这些体系结构。在详细描述系统100的操作之前,将给出概览以增强理解。用户106使用显示器102上的用户输入机制104来提供用户输入以配置产品。用户输入机制104可包括各种用户输入机制中的任何机制,诸如按钮、链接、下拉菜单、复选框、网格、或其他用户可致动的输入机制。它们还可以按各种不同方式来致动。例如,在用户界面显示102被显示在触敏显示屏上的情况下,用户106可使用他或她的手指、指示笔或另一设备来致动用户输入机制104。类似地,用户输入机制104可以是在显示设备上显示的软键盘、硬件键盘、指点和点击设备,诸如鼠标或轨迹球,且其中基于约束的配置系统100被提供有语音识别组件,用户106可使用话音命令来激活用户输入机制104。而且,用户输入机制104可使用拇指垫(thumb pad)、键盘、或各种其他项来致动。当用户106已提供了用户输入时,配置器108使用约束满足问题(CSP)求解器组件110来求解用于配置产品的组合式约束。尽管本讨论通过描述具有CSP求解器的系统来进行,然而可使用任何约束求解器。例如,可使用满足性求解器(SAT求解器)或另一约束求解器。CSP求解器只是出于示例的目的而描述的。作为示例,如果用户正在订购来自销售商的电视机,则情况可以是:来自该销售商的特定尺寸的电视仅有银色和黑色,而没有白色。因此,CSP求解器组件110接收用户输入并应用和求解约束111。当然,要注意,约束111可被存储在存储120中或约束111可被分开存储或约束111可在系统100外部并由系统100访问等。配置器组件108使用求值引擎112来对数学公式求值或调用用于求值的方法。数学或逻辑公式是采用一个或多个变量作为输入并预期一个或多个变量本文档来自技高网...

【技术保护点】
一种基于约束的配置系统,包括:配置器组件,所述配置器组件生成用户界面显示,所述用户界面显示具有用于接收数字用户输入的用户输入机制;求值引擎,所述求值引擎从所述配置器组件接收所述数字用户输入并基于所述数字用户输入对数学公式自动求值以得到数字结果并将所述数字结果返回给所述配置器组件,所述配置器组件基于所述数字结果自动显示输出值;以及计算机处理器,所述计算机处理器是所述系统的功能部件且由所述配置器组件和所述求值引擎激活,且促进对所述数学函数的求值。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:L·尼斯特德D·康拉德
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1