CN101641692A - 非线性动态搜索引擎 - Google Patents
非线性动态搜索引擎 Download PDFInfo
- Publication number
- CN101641692A CN101641692A CN200780044813A CN200780044813A CN101641692A CN 101641692 A CN101641692 A CN 101641692A CN 200780044813 A CN200780044813 A CN 200780044813A CN 200780044813 A CN200780044813 A CN 200780044813A CN 101641692 A CN101641692 A CN 101641692A
- Authority
- CN
- China
- Prior art keywords
- array
- search
- database
- search engine
- dynamic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 39
- 238000013507 mapping Methods 0.000 claims description 24
- 238000005312 nonlinear dynamic Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 description 31
- 230000008878 coupling Effects 0.000 description 8
- 238000010168 coupling process Methods 0.000 description 8
- 238000005859 coupling reaction Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000008672 reprogramming Effects 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001235 sensitizing effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
还提供了一种用于搜索数据库的动态搜索引擎。所述动态搜索引擎包括非线性动态元件的阵列。非线性动态元件信息项目处于限制固定点上每个元件的状态的形式并且对所述信息项目进行唯一编码。所述动态搜索引擎还包括用于对以预定顺序提供给阵列元件的电信号进行控制的控制器。一个所提供信号通过对于所搜索信息项目相对应的搜索关键词进行数量定义而增加所述阵列的每个元件的状态值。后续提供的信号通过基于预定中点对每个状态值执行非线性折叠来更新所述阵列的每个元件的状态值。
Description
关于联邦政府资助研发的声明
美国政府通过由海军研究办公室批准No.00014-00-0020而具有针对本发明的特定权益。
相关申请的交叉引用
本申请是于2006年12月5日提交的美国临时专利申请No.60/868622的继续申请并由此要求其权益,所述美国临时专利申请No.60/868622是于2005年12月15日在美国专利商标局提交的美国专利申请No.11/304125的部分继续申请并由此要求其权益,并且是于2003年10月7日在美国专利商标局提交且目前在2006年8月22日被公开为美国专利No.7096437的美国专利申请No.10/680271的继续申请,其全部内容均结合于此。
技术领域
本发明涉及信息处理领域,尤其涉及数据库搜索。
背景技术
许多信息处理过程的基本要素在于数据库搜索。典型的,数据库搜索需要对存储在电子介质中的数据库、信息元件集合进行系统检验。所述系统检验根据预定标准而被电子执行。数据库搜索最经常被进行以定位已知包含在所述数据库中的一个或多个数据项目,或者在不确定的情况下,确定特定数据实际上是否包含在所述数据库内。
典型的,传统数据库搜索涉及向处理器提供字母数字或字符串并寻找所提供的串和存储器中存储的相应数值之间的匹配。在至少可预见的未来,通过现有的信息处理技术对传统数据库搜索进行速度和效率的进一步改进似乎受到了限制。结果,已经提出了用于实现数据库搜索的日益重要的任务的其它系统和过程。
一种可选方法是使用量子计算机。然而,如果并非不可行,难以使用现有基于硅的处理设备来实施该方法。随后还需要可能使用以CMOS电路为代表的现有技术来提升数据库搜索的功效和效率的可选机制。更特别地,需要用于对包括随机排列和/或无序数据元件的数据库执行搜索的有效和高效机制。
发明内容
本发明提供了一种非线性动态搜索引擎。根据不同实施例,所述非线性动态搜索引擎能够确定信息项目是否包含于数据库之内。
本发明的一个实施例是一种搜索数据库的方法。所述方法可包括对非线性动态元件阵列上的多个信息项目进行编码。所述编码可使得所述阵列的每个元件具有对固定点上的每个元件的状态进行限制并对每个元件上的信息项目进行唯一编码的阈值或控制信号。此外,所述方法可包括通过对与所搜索信息项目相对应的搜索关键词进行数值定义来增加所述阵列的每个元件的状态值。所述方法进一步可包括通过在预定中点上对所述阵列的每个元件的每个状态值执行非线性折叠来更新所述阵列的每个元件的状态值。
本发明的另一实施例是一种用于搜索数据库的系统。所述系统可包括数据库,所述数据库包括非线性动态元件的阵列。可对所述阵列元件上的多个信息项目进行编码,以使得所述阵列的每个元件具有对固定点上的每个元件的状态进行限制并对信息项目进行唯一编码的阈值。所述系统进一步可包括控制器,所述控制器用于控制作为预定序列向所述数据库提供的电信号。信号可在所述控制器的控制之下进行提供以通过对与所搜索信息项目相对应的搜索关键词进行数量定义来增加所述阵列的每个元件的状态值。所述控制器可使得提供顺序信号,所述顺序信号通过基于预定中点上对每个状态值执行非线性折叠来更新所述阵列的每个元件的状态值。
附图说明
在附图中示出了目前的优选实施例。然而所要理解的是,本发明并不局限于说是的确切配置和手段。
图1是根据本发明一个实施例的用于执行动态数据库搜索的动态搜索引擎的示意图。
图2是根据本发明另一实施例的用于对信息项目进行编码的非线性动态元件的示意图。
图3A提供了根据本发明又另一实施例的搜索数据库的方法300的示例性步骤的流程图,而图3B是非线性动态搜索引擎的相应示意性表示。
图4A-C为根据本发明一个实施例的包括整数的信息项目的示例性数据库以及使用动态搜索引擎对所述数据库执行搜索所生产的相应结果的图形表示。
图5A-C为根据本发明一个实施例的包括整数的信息项目的示例性数据库以及使用动态搜索引擎对所述数据库执行搜索所生产的相应结果的图形表示。
图6A-D为根据本发明另一实施例的包括字符串的信息项目的示例性数据库以及使用动态搜索引擎对所述数据库执行搜索所生产的相应结果的图形表示。
图7是对包含程序已经特定字母的改变程序的数据库进行搜索,在改变程序数据库上,已经对字母“d”执行了(上部)搜索;已经对字母“o”执行了(中部)搜索;并且已经对字母“h”执行了(底部)搜索。
具体实施方式
根据一个实施例,本发明提供了一种动态搜索引擎,其利用了非线性动态元件的一个或多个阵列。根据该实施例,所述非线性动态元件对不同形式的信息进行稳定编码,所述信息包括信息项目的一个或多个集合。由所述非线性元件进行编码的信息项目的总体定义了无序数据库,其大小可以为任意大。汝这里所秒和数的,一旦进行这样的编码,就能够通过所述动态搜索引擎在非线性动态元件的阵列上执行单次全局操作来搜索所述无序数据库。
更具体地,这里还描述了所述动态搜索引擎实施一种机制,通过所述机制通过执行所述单次操作来标识包含与所搜索项目相匹配的信息的那些元件。在实施这里所描述的机制时,所述动态搜索引擎还指示对所搜索项目进行编码的非线性元件的数目。可无需对每个非线性动态元件独立进行检查来确定所述数目。因此,本发明的一个方面是一种单次全局操作的构造和实施方式,所述单次全局操作以一种方式在对所述数据库进行编码的非线性动态元件上执行以使得仅有对所搜索信息进行编码的非线性动态元件展现出所指定的、可方便测量的属性。
所述动态搜索引擎通常是非线性动态系统;也就是说,所述动态搜索引擎的无力实施例展现出非线性动态属性,并且因此在数学上以非线性动态系统方面为特征。这里所描述的动态搜索引擎主要关于实施一种基于任意单峰映射(诸如帐篷映射)的机制,其是形成将实际线条上的点映射到另一点的离散时间动态系统的迭代函数。单峰映射和帐篷映射的数学属性是已知的,并且其在这里仅作为用来清楚说明根据本发明的动态搜索引擎的更一般性的非线性动态属性的示例。然而,从这里所进行的描述将会显而易见的是,基于帐篷映射的机制仅是能够由所述动态搜索引擎实施的不同机制之一。通常,所述动态搜索引擎能够实施展现出非线性动态系统属性的任意机制。
图1是根据本发明实施例的用于执行数据库的非线性动态搜索的动态搜索引擎100的示意图。动态搜索引擎100图示性地包括与阵列104进行通信的控制器102,所述阵列104包括多个N非线性动态元件106。根据一个实施例,非线性动态元件106均可包括无序逻辑门电路,所述无序逻辑门电路具有于2005年12月15日在美国专利商标局提交的美国专利申请No.11/304125以及于2003年10月7日在美国专利商标局提交且目前在2006年8月22日被公开为美国专利No.7096437的美国专利申请No.10/680271中所描述的电路体系结构,所述参考文献的全部内容结合于此作为参考。
该专利申请进一步作为参考在其整体内容中结合了两个版本的相同文章:i)“Exploiting Nonlinear Dynamics to Search ofr the Existence of Matches in aDatabase”,A.Miliotis,S.Sinha和W.L.Ditto,Proceedings of the APCCAS 2006 IEEEAsia Pacific Conference on Circuits and Systems,新加坡,2006年12月7日;和ii)“Exploiting Nonlinear Dynamics to Store and Process Information”,AbrahamMiliotis,Sudeshna Sinha和William.L.Ditto,Int.J.of Bifurcation and Chaos(2008年出版),它们的全部内容均作为参考结合于此。
阵列104的非线性动态元件106对多个信息项目进行稳定编码,创建无序的数据库。所述多个信息项目在非线性动态元件106上进行编码以使得每个非线性动态元件具有限制固定点上的每个元件的状态并对信息项目进行唯一编码的阈值。
控制器102控制以预定顺序提供给阵列104的非线性动态元件106的电信号。如这里所使用的,单词控制器和/或阈值和/或阈值数值可实施为与模拟或数字信号相兼容。如以下所描述的,所应用的电信号可通过对与所搜索信息项目相对应的搜索关键词进行数量定义而增加阵列104的每个非线性动态元件106的状态值。如以下所描述的,随后应用的电信号能够通过基于预定中点对每个状态值执行非线性折叠来更新阵列104的每个非线性动态元件106的状态值。
在操作上,动态搜索引擎100通过由特定数量的搜索关键词对每个非线性动态元件106的状态值进行全局增加来执行数据库搜索,控制器102控制一个或多个电信号的量和/或计时,这改变了非线性动态元件106的状态值,所述一个或多个电信号诸如电压源(未明确示出)所提供的电压或电流源(也未明确示出)所提供的电流。具有最初应用的信号的每个非线性动态元件106的状态值所增加的量是使得仅具有所搜索项目的元件达到后续更新的预定最大状态值的量;也就是说,当每个非线性动态元件的状态值再次由控制器102增加特定量时,仅有具有所搜索信息项目的那些元件(如果有)达到最大状态值。
不失一般性,可在其中信息项目为包含在范围[1,Imax]内的正整数的数据库背景下对动态搜索引擎100的操作方面进行描述。图示为大小N的阵列104的非线性动态元件106的编码产生可由动态搜索引擎100进行搜索的无序数据库。根据本发明,对非线性动态元件106的阵列104内的相应信息集合进行编码,以使得元件的配置稳定并且与存储于其中的信息具有唯一的一对一对应性。
在阵列的非线性元件上使用阈值机制对信息进行编码。更特别地,所述编码过程如下:无论何时动态元件的指定状态变量的值超过指定临界阈值x*(即,当x>x*时),变量x被重新设置为x*。根据编码机制的阈值设置实际上作为控制机制来工作,并且在该阈值设置下,从无序动态系统获得了大范围的稳定规则的行为。典型的,能够在系统被限制在固定点的情况下使用阈值的宽窗口,也就是说这样的阈值设置下的每个非线性动态元件106的状态稳定在x*。在该所描述的实施例中说明性地使用这样的窗口来对稳定数据库进行编码。
数据库编码
如已经描述的,通过对阵列104的非线性动态元件106进行编码来创建可搜索的数据库。所述编码可基于展现出非线性动态系统属性的各种机制。如以上所提到的,一种示例性机制是基于单峰映射。以下立即描述了一种基于单峰映射(即,帐篷机制)的一个示例的编码机制,所述编码机制是这里所描述的本发明更一般方面的说明。
因此,根据本发明的一个实施例,非线性元件106根据在区间[0,1]上定义的无序帐篷映射说明性地进化:xn+1=2min(xn,1-xn)。每个元件具有将其限制在固定点上并对其所包含的信息项目进行唯一编码的阈值。关于所提到的映射,从0到2/3的阈值范围产生具有保持在x*的变量x的固定点。这能够从对于区间(0,2/3)中的所有x*,f(x*)>x*这一事实看出,将其应用于迭代,x*处的状态将一直超出x*,并且由此被重新设置为x*。
根据该实施例的编码机制,从区间(0,1/2)选择所述阈值。变量r被定义如下:
数值或量r确定分辨率。数值或量r进一步产生从编码数目z到阈值xz *的查找映射。所产生的映射根据以下关系将范围[1,Imax]内的正整数z连接到区间(0,1/2)的无理数xz *:
xz *=z·r (2)
以使得阈值包含在区间[r,1/2-r]中。从等式(1)能够看出,如果阈值设置为具有更大分辨率,也就是r更小,这每个元件能够对更大的数值范围进行编码。
然而,注意到精度并非是动态搜索引擎100的约束。可以选择数据的不同表示形式以便于给定的阈值设置精度相适应。因此,数据库由帐篷映射的阵列所构成,对它们的阈值进行设置以使其处于稳定的固定状态。所述机制由此对数据库中信息的每个项目进行可靠且鲁棒的编码。如以上所提到的,所述示例性数据库是无序的,并且根据阵列104的大小且可以为任意大。此外,其无需包含所有的可能项目,也就是说允许范围[1,Imax]内的一些数值可不必出现,而其它可频繁出现。
控制器102说明性地包括处理电路108,包括用于处理及其可读代码的专用硬线电话和/或基于逻辑的电路的处理电路108根据以上等式(1)计算变量r,并接着根据以上等式(2)对于各个正整数z∈[1,Imax]基于所计算的r来确定相应的阈值xz *。所述正整数z∈[1,Imax],用户输入可经由键盘(未示出)或各种其它数字或模拟电子输入设备之一提供给控制器102。
控制器102进一步说明性地包括诸如电压或电流源之类的信号源110,其向阵列104的每个非线性动态元件106应用电信号,以便响应于用户提供的输入对所述元件进行编码。特别地,信号源110所提供的电信号使得每个非线性动态元件对与其编码的数值z相对应的阈值xz *进行处理。
控制器102说明性地包括用于对动态搜索引擎100所生产的搜索结果进行处理的附加电路112。所述结果可被传送到显示屏(未示出)或其它电子变换器以便将电信号转换为用户能够直接感知的形式。
数据库搜索
通过对每个非线性动态元件106的状态值全局增加唯一对应于所搜索项目的量来执行对于特定项目的搜索,即添加搜索关键词Skey z的值。如已经描述的,可通过应用由控制102所控制的点信号来增加阵列104的非线性动态元件106的状态值。搜索关键词Skey z由以下等式定义:
其中z是针对其搜索数据库的数。特别地,Skey z被添加到每个非线性动态元件106。其结果是数据库元素能够扩展的区间从[r,1/2-r]到[r+Skey z,1/2-r+Skey z]变换,其中Skey z表示全局应用的变换。
应当进一步注意的是,以适于对数据库中的信息项目进行编码的方式对所要搜索的信息项目进行编码(非常可能是适合特定死锁的关键词),也就是说Skey z+xz *合计达1/2。这保证了仅有与所搜索的信息项目相匹配的项目的状态将变换为1/2。在后续更新上,可注意到1/2是将达到1.0数值的仅有状态值,所述1.0是动态搜索引擎100的最大状态值。因此,仅有匹配的项目在所执行的搜索操作之后将达到1.0。
点1/2的唯一特征在于其作为下一次更新时在区间[r+Skey z,1/2-r+Skey z]上进行的折叠的中点。这提供了全局监视操作以确认任意指定信息项目的存在。此外,通过由指定公差将全局确认级别的数值放宽至小于1.0的值,能够确定接近于所搜索数目的存在于数据库内的数目。
能够以不同方式来完成对属于阵列104的非线性动态元件106的状态值的检测。根据一个实施例,阵列104的每个元件能够利用例如由具有状态值1.00的元件触发的阈值响应触发检测器(未示出)。
然而,根据图2示意性图示的可选实施例,阵列104的每个非线性动态元件106包括根据已经描述的机制进行编码的数据库208元件以及独立的检测元件210。根据该实施例,检测元件210阈值耦合到数据库元件208,其中耦合仅在数据库元件处于1.00的预定阈值以内时才被激活;也就是说1.0±ε,其中例如ε∈[0.01,0.25]。一旦激活,检测元件210例如通过共用导线发送脉冲,所述脉冲通过指示整个数据库中的匹配数目来记录搜索结果。作为选择或除此之外,检测元件210的响应可被配置成利用唯一的一对一数值对其在阵列104中的位置进行编码。这样的编码允许所搜索信息项目在阵列104内的位置得以确定。因此,该附加步骤提供了从多个状态选择所需状态并将该位置映射到极值的一个位置的迅速确定。接着可通过诸如生成阈值激活脉冲之类的简单机制建立这样的极值以便进行迅速检测。
图3A提供了根据本发明又另一个实施例的搜索数据库的方法300的示例性步骤的流程图,而图3B为非线性动态搜索引擎的相应示意性表示。所述方法说明性地包括,在步骤302对非线性动态元件阵列上的多个信息项目进行编码。编码步骤302对所述阵列的每个元件进行编码以使得每个元件具有限制固定点上的每个元件的状态并对每个元件上的信息项目进行唯一编码的阈值。在步骤304,方法300说明性地包括通过对与所搜索信息项目相对应的搜索关键词进行数值定义来增加所述阵列的每个元件的状态值。在步骤306,方法300包括通过在预定中点上对所述阵列的每个元件的每个状态值执行非线性折叠来更新所述阵列的每个元件的状态值。
任选地,所述方法可包括通过在更新步骤之后是否至少一个元件具有最大状态值来确定所搜索项目是否在所述阵列的至少一个元件上被编码。所述方法说明性地在步骤308结束。
表示性示例
根据本发明的动态搜索引擎的操作方面可使用20个信息项目的数据库来得以证明,其中每个项目随机地从整数范围[1,19]进行选择。根据以上所描述的计算和确定,r=0.025且由阈值进行编码的每个数字均处于区间[0.025,0.475]内。随机选择信息项目及其在数据库中的位置。如图4A和5A所图示的,整数13在随机生成的数据库中仅存在一次,而所述数据库中没有整数6且整数10出现两次。
第一示例为搜索信息项目z=13。该搜索使得所有元素的状态变换 。作为变换结果,所编码的非线性动态元件的状态值位于区间[0.2,0.65]中。重要的是,仅有对整数13进行编码的非线性动态元件具有数值1/2。这表示在后续的无序更新中,仅有所匹配的元件将获得1.0的数值。对包括其数值大于或小于13的整数的信息项目进行编码的所有非线性动态元件的状态值被折叠回到小于1.0的数值。
由于搜索操作仅改变映射的状态,所以定义存储在每个映射中的实际数据的阈值保持不变并且能作为恢复原始数据库的机制。一旦恢复了数据库,就能够执行另一搜索。图5A-C和6A-D图示了对于分别为10和6的两个其它信息项目所进行的搜索。在第一种情况下,整数10出现两次并且明显两个匹配元素都达到了数值1.0。在对随机生成的数据库中不存在的整数6进行搜索的情况下,显然在搜索开始时中点1/2上将没有元件,并且即使对每个映射中的状态值进行折叠,也不会由元件获得数值1.0,如图6C所示。
进行区间[r+Skey z,1/2-r+Skey z]的折叠,以使得中点1/2两侧的区间彼此折叠。如图6C所图示的,在搜索整数6的情况下,对整数5和7进行编码的元件都被映射到状态值0.95。来自所搜索项目的该“等距离”信息项目的重叠提供了一种对由近似状态进行编码的项目集合进行监视或搜索的机制。这意味着如果数值1.0减少了预定量,其将使得能够检测到不精确的匹配。甚至可能在数据库中不存在目标项目时检测到存在与所需的搜索项目接近的项目。图6D图示了通过将数值1.0放宽到0.95检测到接近整数6的两个信息项目-整数5和7。
图7图示了根据本发明的另一示例性搜索,其中已经根据本发明基于以上所描述机制对英语字母表中的字母进行了编码。如图所示,包括“the quick brown foxjumps over a lazy dog”的短句被用作所编码的信息,其中由帐篷映射所表示的每个字母具有适当阈值。包括“the quick brown fox jumps over a lazy dog”的短句不包括字母“t”、“h”和“e”。
一旦对数据库进行了编码,就如图所示执行以下搜索:1)如图7A所示,仅存在一次的字母“d”;2)如图7B所示,出现多次的字母“o”;和3)如图7C所示,所改变的短句中不存在的字母“h”。
如已经描述的,根据本发明一个实施例的三种方法利用了在其中点1/2周围对帐篷映射的区域[1/3,2/3]进行折叠,并接着在映射的一次迭代之后被延长并转换到区域[2/3,1]的事实。结果,点1/2是仅有的被映射到1.0的点,其是所述映射的最大可能状态值。所述搜索操作使得以将(多个)匹配项目变换到中点1/2上的量对所述区间编码进行变换。接着,后续的动态更新将仅使得所述(多个)映射项目趋于数值1.0。
如该描述和表示性示例所证明的,本发明的一个方面是状态值的非线性演进,其导致了折叠。匹配项目的选择可完全基于该特征。无序,或特别地无序系统的属性,并非绝对必要。虽然,单峰映射的非线性越高,显然所允许的搜索操作的操作范围越大,但是也能够提高编码的分辨率。特别地,对于帐篷映射而言,能够示出最小的非线性对于以上所描述的搜索操作进行工作是必需的,所述操作在无需区域中执行。帐篷映射的另一特定特征在于其分段的线性,这允许简单地进行编码和搜索关键词的操作。
该机制的一个重要方面在于其采用了单个简单的全局变换操作,并且在任意阶段都没有引起对每个项目单独进行访问。所述机制还使用非线性折叠来选择匹配项目,并且该非线性操作为元件的自然动态演进。因此,由于利用了非线性动态处理器的固有处理能力,所以明显使得搜索所耗费的努力最小化。在机器层面,在计算由无序模块所构成的机器时,这可被认为是自然应用。所述机制还等同地作为特殊应用“搜索芯片”,其可被添加到传统电路上,并且特别可用于为了选择/搜索操作而重复采用的机器中。
在处理器的时间规模方面,所述搜索操作需要一个动态步骤,也就是处理器固有更新时间的一个单位。突出的首要一点在于在本发明所实现的机制中存在并行的范畴。这是由于选择处理通过一个全局变换而发生,这意味着至少原则上不存在大小为N的放大。此外,根据本发明的搜索不需要有序集合,进一步减少了操作时间。相对于传统搜索算法中大小为N的操作时间放大,这是可注意到的。典型地,传统搜索算法将需要O(log N)的过程步骤。此外,存在诸如融合分类之类的排序所需的时间,这由于O(log N)而以N放大。
关于信息处理能力,可注意到,本发明能够采用k状态编码,其中原则上k可以非常大。这在编码能力上提供了客观的增益。如以上的表示性示例所证明的,字母表的字母均由一个元件所编码;二进制编码将需要远多于此的硬件来完成同样任务。
本发明所实现的机制还提供了不同优势,其能够使得实际实施方式的技术不必与传统硅设备非常不同。也就是说,动态搜索芯片的物理设计可通过传统的CMOS电路来实现。在机器层面实施,该机制能够有效地执行无序数据库的搜索。
最后,关于本发明所实现机制的一般幅度,应当注意到非线性系统本质是充裕的,并且因此本发明的可选实施例包含从液体到电子到光学的许多不同物理系统。所述机制的物理实现方式包括非线性电路和光学设备,其具有自由的分布程度。而且,诸如单个电子隧道交汇点之类的具有固有分段线性映射的系统可被用来制造这样的搜索设备。这些观察强调了本发明概念的一般范围。实际上,其已经通过试验利用阻抗分路Josephson与电流偏移和rf设备的交汇的模型得以实施。因此,本发明用于选择特定或所需状态的非线性功能的一般实施方式能够在许多不同物理环境中找到其实施方式。
已经主要关于非线性映射(尤其是帐篷映射)的动态对本发明进行了描述,其被用来提供根据本发明的搜索方法。重要的是要注意到,利用自然演进的优势以及非线性映射的行为模式以将大多数处理步骤转换为自然处理来进行可使得该方法的实际计算管理费用最小化。本发明的其它应用包括利用高维度系统来提高单个元件的存储容量,一旦已经对其它计算任务执行了搜索就进行信息传送,以及所搜索项目的定位。
本发明可以以硬件、软件或软硬件的组合来实现。本发明可以在一个计算机系统中以集中方式来实现,或者以不同元件跨若干互连计算机系统进行分布的分布式方式来实现。任意类型的计算机系统或适于执行这里所描述的方法的其它装置都是适用的。软硬件的典型组合可以是通用计算机系统与计算机程序,当被加载和执行时,所述计算机程序控制所述计算机系统以使其执行这里所描述的方法。
本发明可实现为计算机程序产品,所述计算机程序产品包括使得能够执行这里所描述的方法的所有特征,并且当其加载到计算机系统中时能够执行这些方法。本文中的计算机程序意味着旨在使得具有信息处理能力的系统直接或在以下内容之一或二者之后执行特定功能的指令集合的任意语言、代码或符号的任意表达:a)转换为另一种语言、代码或符号;b)以不同素材形式进行再现。
本发明可以以其它形式来实现而不会背离其精神或基本属性。因此,由于指示了本发明的范围,所以应当参考以下权利要求而不是以上说明书。
Claims (15)
1.一种搜索数据库的方法,所述方法包括:
对非线性动态元件阵列上的多个信息项目进行编码以使得所述阵列的每个元件具有对固定点上的每个元件的状态进行限制并对每个元件上的信息项目进行唯一编码的阈值;
通过对与所搜索信息项目相对应的搜索关键词进行数值定义来增加所述阵列的每个元件的状态值;
通过在预定中点上对所述阵列的每个元件的每个状态值执行非线性折叠来更新所述阵列的每个元件的状态值。
2.如权利要求1所述的方法,进一步包括通过在更新步骤之后是否至少一个元件具有最大状态值来确定所搜索项目是否在所述阵列的至少一个元件上被编码。
3.如权利要求1所述的方法,其中所述阵列的每个元素根据预定的单峰映射进行进化。
4.如权利要求3所述的方法,其中所述单峰映射是由等式xn+1=2min(xn,1-xn)所定义的帐篷映射。
5.如权利要求1所述的方法,其中编码步骤包括确定所述阵列的每个元件的分辨率。
6.如权利要求5所述的方法,其中所确定的分辨率由等式 所定义,其中Imax为预定集合中所包含的最大正整数。
7.如权利要求6所述的方法,其中所述分辨率提供关于信息项目z到区间(1,1/2)上的无理数xz *的映射,所述映射由等式xz *=z·r所定义。
8.如权利要求1所述的方法,其中搜索关键词Skey z由等式 所定义,其中z是与所搜索信息项目相对应的数值,xz *为区间(1,1/2)上的无理数,并且 其中Imax为预定集合中所包含的最大正整数。
9.如权利要求1所述的方法,其中所述增加和更新步骤包括以预定顺序对非线性动态元素的所述阵列应用单独的电信号。
10.一种用于搜索数据库的动态搜索引擎,所述动态搜索引擎包括:
数据库,所述数据库包括非线性动态元件的阵列,可对所述阵列元件上的多个信息项目进行编码,以使得所述阵列的每个元件具有对固定点上的每个元件的状态进行限制并对信息项目进行唯一编码的阈值;
控制器,所述控制器用于控制作为预定序列向所述数据库提供的电信号,其中一个所提供信号可通过对与所搜索信息项目相对应的搜索关键词进行数量定义来增加所述阵列的每个元件的状态值,并且其中顺序提供的信号通过基于预定中点上对每个状态值执行非线性折叠来更新所述阵列的每个元件的状态值。
11.如权利要求10所述的动态搜索引擎,其中所述非线性动态元件根据预定的无序单峰映射进行进化。
12.如权利要求11所述的动态搜索引擎,其中所述阵列的每个元件根据预定的单峰映射进行进化。
13.如权利要求12所述的动态搜索引擎,其中所述单峰映射是由等式xn+1=2min(xn,1-xn)所定义的帐篷映射。
14.如权利要求10所述的动态搜索引擎,其中搜索关键词Skey z由等式 所定义,其中z是与所搜索信息项目相对应的数值,xz *为区间(1,1/2)上的无理数,并且 其中Imax为预定集合中所包含的最大正整数。
15.如权利要求10所述的动态搜索引擎,其中全局操作使得所述阵列中仅包含所搜索信息的动态元件响应于后续所提供的信号而达到最大数值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US86862206P | 2006-12-05 | 2006-12-05 | |
US60/868,622 | 2006-12-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101641692A true CN101641692A (zh) | 2010-02-03 |
Family
ID=40002816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780044813A Pending CN101641692A (zh) | 2006-12-05 | 2007-12-05 | 非线性动态搜索引擎 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8250055B2 (zh) |
EP (1) | EP2092446A4 (zh) |
CN (1) | CN101641692A (zh) |
WO (1) | WO2008140600A2 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8364675B1 (en) * | 2010-06-30 | 2013-01-29 | Google Inc | Recursive algorithm for in-place search for an n:th element in an unsorted array |
US10419019B2 (en) | 2015-11-13 | 2019-09-17 | Chaologix, Inc. | Data compression system |
US11263192B2 (en) * | 2019-11-18 | 2022-03-01 | International Business Machines Corporation | Hyper-folding information in a uniform interaction feed |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3473160A (en) | 1966-10-10 | 1969-10-14 | Stanford Research Inst | Electronically controlled microelectronic cellular logic array |
CA2001390C (en) * | 1988-12-19 | 1997-12-30 | Ming-Chien Shan | View composition in a data-base management system |
US5260610A (en) | 1991-09-03 | 1993-11-09 | Altera Corporation | Programmable logic element interconnections for programmable logic array integrated circuits |
USRE35977E (en) | 1992-05-08 | 1998-12-01 | Altera Corporation | Look up table implementation of fast carry arithmetic and exclusive-or operations |
US5291555A (en) | 1992-12-14 | 1994-03-01 | Massachusetts Institute Of Technology | Communication using synchronized chaotic systems |
KR0185754B1 (ko) | 1994-02-02 | 1999-05-15 | 정호선 | 맵핑회로와 이를 이용한 혼돈 신경망 |
JP3125644B2 (ja) | 1995-09-13 | 2001-01-22 | 松下電器産業株式会社 | 復調装置 |
US6025735A (en) | 1996-12-23 | 2000-02-15 | Motorola, Inc. | Programmable switch matrix and method of programming |
US6810037B1 (en) * | 1999-03-17 | 2004-10-26 | Broadcom Corporation | Apparatus and method for sorted table binary search acceleration |
US6694323B2 (en) * | 2002-04-25 | 2004-02-17 | Sybase, Inc. | System and methodology for providing compact B-Tree |
US20040036636A1 (en) | 2002-08-26 | 2004-02-26 | Rifeng Mai | Tone-free dithering methods for sigma-delta DAC |
US6732709B1 (en) * | 2002-12-06 | 2004-05-11 | Caterpillar Inc | Dynamic engine timing control |
US6876232B2 (en) | 2003-08-21 | 2005-04-05 | International Business Machines Corporation | Methods and arrangements for enhancing domino logic |
JP4174402B2 (ja) | 2003-09-26 | 2008-10-29 | 株式会社東芝 | 制御回路及びリコンフィギャラブル論理ブロック |
US7096437B2 (en) | 2003-10-07 | 2006-08-22 | University Of Florida Research Foundation, Inc. | Method and apparatus for a chaotic computing module using threshold reference signal implementation |
WO2005057358A2 (en) * | 2003-12-04 | 2005-06-23 | Perfect Market Technologies, Inc. | Search engine that dynamically generates search listings |
-
2007
- 2007-12-05 CN CN200780044813A patent/CN101641692A/zh active Pending
- 2007-12-05 EP EP07874343A patent/EP2092446A4/en not_active Ceased
- 2007-12-05 US US12/517,959 patent/US8250055B2/en active Active
- 2007-12-05 WO PCT/US2007/086499 patent/WO2008140600A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP2092446A2 (en) | 2009-08-26 |
WO2008140600A3 (en) | 2009-03-12 |
US20100318506A1 (en) | 2010-12-16 |
EP2092446A4 (en) | 2013-03-13 |
WO2008140600A2 (en) | 2008-11-20 |
US8250055B2 (en) | 2012-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kontopoulos et al. | A space efficient scheme for persistent graph representation | |
Westerbäck et al. | On the combinatorics of locally repairable codes via matroid theory | |
Grabowski | New tabulation and sparse dynamic programming based techniques for sequence similarity problems | |
Tian et al. | Dynamic analysis and robust control of a chaotic system with hidden attractor | |
CN102693268A (zh) | 特征变换装置、包含其的相似信息搜索装置、代码化参数生成方法及计算机程序 | |
Wiesner et al. | Information-theoretic lower bound on energy cost of stochastic computation | |
CN112000736B (zh) | 时空轨迹伴随分析方法、系统及电子设备和存储介质 | |
CN103236846A (zh) | 一种工业实时数据压缩方法及装置 | |
CN114900346B (zh) | 基于知识图谱的网络安全测试方法及系统 | |
CN101641692A (zh) | 非线性动态搜索引擎 | |
Akbari-Hasanjani et al. | New design of binary to ternary converter | |
US20100057809A1 (en) | Information storing/retrieving method and device for state transition table, and program | |
Seiffertt | Adaptive resonance theory in the time scales calculus | |
CN110245248B (zh) | 一种遥感影像关键字查询方法 | |
CN116070675A (zh) | 边坡神经网络模型选取方法、装置、设备及可读存储介质 | |
Goré | Cut-free sequent and tableau systems for propositional diodorean modal logics | |
US10747775B2 (en) | Data conversion device, search system, and method | |
US10419019B2 (en) | Data compression system | |
Ying et al. | Self-optimizing feature generation via categorical hashing representation and hierarchical reinforcement crossing | |
Zhang et al. | Qubrim: A CMOS compatible resistively-coupled Ising machine with quantized nodal interactions | |
Lipovski | A four megabit dynamic systolic associative memory chip | |
Li et al. | Stabilisation in distribution by delay feedback control for stochastic differential equations with Markovian switching and Lévy noise | |
KR102608683B1 (ko) | Knn을 이용한 자연 언어 처리 | |
Daniels et al. | Neural networks three ways: unlocking novel computing schemes using magnetic tunnel junction stochasticity | |
McElroy | A simple method of causal ordering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20100203 |