利用数据库优化技术快速查找CAD特征(中文3300字,英文2400字)
摘要
自动特征识别帮助下游流程如工程分析和制造规划。 并不是所有的特征都可以事先定义;一种声明性方法允许工程师指定的新特征,而无需设计算法来找到它们。 幼稚的声明翻译会导致执行算法时间复杂度高。 数据库查询也以声明方式表达;优化查询计划来有效执行数据库查询方面有大量文献。 我们之前工作研究将这种技术应用于特征识别,使用试验台连接数据库系统(SQLite)和CAD建模器(CADfix)。 特征声明被翻译成SQL查询,然后被执行。
当前论文扩展这种方法,使用PostgreSQL数据库,并提供了一些新见解:(1)查询优化工作在这两个数据库完全不同,(2)注意,一个查询翻译方法可以适用于两个数据库的设计,(3)当发现各种简单的共同特征,用实际工业模型中可接受的次数可以实现相对于模型尺寸的线性时间性能。 进一步结果还显示(1)惰性求值可以用来降低CAD建模器的工作,和(2)预估时间来计算各种几何操作可以进一步促进查询计划。 实验结果已经给出,来验证我们的主要结论。
关键字:特征识别; 数据库查询计划; 声明性特征
Automatic feature recognition aids downstream processes such as engineering analysis and manufac-turing planning. Not all features can be defined in advance; a declarative approach allows engineers to specify new features without having to design algorithms to find them. Naive translation of declarations leads to executable algorithms with high time complexity. Database queries are also expressed declar-atively; there is a large literature on optimizing query plans for efficient execution of database queries. Our earlier work investigated applying such technology to feature recognition, using a testbed interfac-ing a database system (SQLite) to a CAD modeler (CADfix). Feature declarations were translated into SQL queries which are then executed.
The current paper extends this approach, using the PostgreSQL database, and provides several new insights: (i) query optimization works quite differently in these two databases, (ii) with care, an approach to query translation can be devised that works well for both databases, and (iii) when finding various simple common features, linear time performance can be achieved with respect to model size, with acceptable times for real industrial models. Further results also show how (i) lazy evaluation can be used to reduce the work performed by the CAD modeler, and (ii) estimating the time taken to compute various geometric operations can further improve the query plan. Experimental results are presented to validate our main conclusions. |