Questions tagged «ai.artificial-intel»

关于人工智能的理论问题

3
#P = FP的后果
#P = FP的后果是什么? 我对实践和理论上的结果都很感兴趣。 从实践的角度来看,我对人工智能的后果特别感兴趣。 指向论文或书籍的指针非常受欢迎。 请不要说#P = FP意味着P = NP,我已经知道了。另外,请不要说“如果算法在时间运行,不会有实际的后果,其中是宇宙中的电子数”Ω(nα)Ω(nα)\Omega(n^{\alpha})αα\alpha:让我假设,如果存在一个针对#P完全问题的确定性多项式时间算法,其运行时间为“ clement”(例如)。O(n2)O(n2)O(n^2)

1
查找两个多项式之间的距离(表示为树)
一位从事基因编程工作的同事问了我以下问题。我首先尝试基于贪婪方法来解决它,但经过第二次思考,我找到了贪婪算法的反例。因此,我认为在这里值得一提。 考虑由它们的表达式树表示的两个多项式。例如,x3−2x+1x3−2x+1x^3-2x+1和x2+4x2+4x^2 + 4说明如下: 规则: 每个节点可以是变量名(x,y,z,…x,y,z,…x, y, z, \ldots),数字或运算符(+,-,×)。 树的有序遍历将导致有效的多项式。 操作节点的度数为2。其他节点的度数为0。所有节点的度数为1(除了root,其度数为0)。 在树的节点N上,如下定义基本操作: xxx××\times 基本操作可以在N之上构建一个表达式树(请参见下面的示例)。 类型1的基本操作的成本为1。类型2的成本等于新建的表达式树中{+,-,×}操作的数量。 类型2的示例:由于在节点N顶部构建的表达式树使用两个操作(-和×),因此以下基本操作的成本为2。 令T1和T2是代表多项式的两个表达式树。定义T1和T2 的距离如下:将T1转换为T2的基本操作的最低成本。请注意,我们不需要转换后的树具有与T2相同的结构。我们只希望它计算与T2相同的多项式。(有关示例,请参见注释。) 问题:给定T1和T2,提出了一种计算距离的算法。 示例1:假设T1和T2是本文开头所示的两棵树。要将右树转换为左树,可以在×的顶部构建成本为3的树,然后将4更改为1(总成本为4)。 x4x4x^4x4+4x3+6x2+4x+1x4+4x3+6x2+4x+1x^4+4x^3+6x^2+4x+1xxx(x+1)4(x+1)4(x+1)^4xxx4x34x34x^36x26x26x^24x4x4x

5
在人工智能研究中,“先进的数学”在何种程度上需要/有用?
我目前正在学习数学。但是,我不希望将来成为专业的数学家。我正在考虑将我的数学知识应用于人工智能研究。但是,我不确定我应该学习多少门数学课程。(以及我应该学习哪些CS理论课程。) 从Quora,我了解到线性代数,统计和凸优化这两个主题与机器学习最相关(请参阅此问题)。有人提到,学习线性代数,概率/需要统计,微积分,基本算法和逻辑来研究人工智能(见这个问题)。 在我们大学的数学学士学位的前1.5年中,我可以了解所有这些主题。 不过,我想知道,是否有一些甚至是研究生水平的数学学科都对学习人工智能有用或什至是需要的。ODE,PDE,拓扑,测度理论,线性分析,傅里叶分析和流形分析又如何呢? 这表明,一些比较先进的数学是人工智能的研究有用的一本书是模式论真实世界的信号的随机分析由大卫·芒福德和Agnes Desolneux(见本页)。它包括有关马尔可夫链,分段高斯模型,吉布斯场,流形,李群和李代数及其在模式论中的应用的章节。本书对人工智能研究有多大作用?

5
是否可以测试可计算数字是有理数还是整数?
是否可以通过算法测试可计算数是有理数还是整数?换句话说,将有可能为图书馆实现可计算数提供的功能isInteger还是isRational? 我猜测这是不可能的,并且这在某种程度上与以下事实有关:无法测试两个数字是否相等,但是我看不出如何证明这一点。 编辑:可计算的数字xxx由函数给出,该函数fx(ϵ)fx(ϵ)f_x(\epsilon)可以返回精度为ϵ的的有理近似值:| x − f x(ϵ )| ≤ ε,对于任何ε > 0。鉴于这样的功能,就是可以测试,如果X ∈ Q或X ∈ ž?xxxϵϵ\epsilon|x−fx(ϵ)|≤ϵ|x−fx(ϵ)|≤ϵ|x - f_x(\epsilon)| \leq \epsilonϵ>0ϵ>0\epsilon > 0x∈Qx∈Qx \in \mathrm{Q}x∈Zx∈Zx \in \mathrm{Z}
18 computability  computing-over-reals  lambda-calculus  graph-theory  co.combinatorics  cc.complexity-theory  reference-request  graph-theory  proofs  np-complete  cc.complexity-theory  machine-learning  boolean-functions  combinatory-logic  boolean-formulas  reference-request  approximation-algorithms  optimization  cc.complexity-theory  co.combinatorics  permutations  cc.complexity-theory  cc.complexity-theory  ai.artificial-intel  p-vs-np  relativization  co.combinatorics  permutations  ds.algorithms  algebra  automata-theory  dfa  lo.logic  temporal-logic  linear-temporal-logic  circuit-complexity  lower-bounds  permanent  arithmetic-circuits  determinant  dc.parallel-comp  asymptotics  ds.algorithms  graph-theory  planar-graphs  physics  max-flow  max-flow-min-cut  fl.formal-languages  automata-theory  finite-model-theory  dfa  language-design  soft-question  machine-learning  linear-algebra  db.databases  arithmetic-circuits  ds.algorithms  machine-learning  ds.data-structures  tree  soft-question  security  project-topic  approximation-algorithms  linear-programming  primal-dual  reference-request  graph-theory  graph-algorithms  cr.crypto-security  quantum-computing  gr.group-theory  graph-theory  time-complexity  lower-bounds  matrices  sorting  asymptotics  approximation-algorithms  linear-algebra  matrices  max-cut  graph-theory  graph-algorithms  time-complexity  circuit-complexity  regular-language  graph-algorithms  approximation-algorithms  set-cover  clique  graph-theory  graph-algorithms  approximation-algorithms  clustering  partition-problem  time-complexity  turing-machines  term-rewriting-systems  cc.complexity-theory  time-complexity  nondeterminism 

4
关于自己的源代码的程序推理
这个问题的灵感来自以下(模糊的)问题:拥有可以推理并修改其源代码的AI的编程语言/逻辑基础是什么? 这一点都不严格,因此这是我尝试从中提取一个具体的问题。我对两件事感兴趣: (A)可以将自己的程序表示和操纵为数据类型程序(例如,AST)的编程语言P。(如果需要,可以将类型为Program的对象转换为String,即该语言的有效程序的文本。这与编译器的操作相反。) (B)一种推理语言P程序的功能的方法。我正在考虑以下两个层次: 另一种语言Q(具有定理证明功能)可对P程序的功能进行建模。它应该能够表达和证明诸如“运行程序p的结果为foo”之类的语句。 推理程序p:Program 用语言P本身做什么的一种方式。(因此,我们将P = Q视为上述值。) 在何种程度上实施了类似的措施,或者在这个方向上取得了什么进展?实际的障碍是什么?根据问题的初衷,使问题形式化的最佳方法是什么? * 正如答案所显示的(谢谢!),(A)和(B1)可以分别完成,尽管似乎将它们一起执行更多是研究问题。 这是我对这个问题的一些初步想法(警告:相当模糊)。另请参阅我对Martin Berger答案的评论。 我对编程语言建模相同的编程语言感兴趣,而不是对一种更简单的编程语言(因此上面的P = Q)感兴趣。这将是程序能够“了解其自身源代码”的“概念证明”。相依类型的编程语言可以保证其功能的输出,但这不算是“关心自己的源代码”,而不仅仅是“ Hello world!”。会被视为一种会自动打印出裸露的字符串的语言中的quine-需要某种引用/自引用。这里的类似物具有表示Program的数据类型。 这似乎是一个相当大的项目-语言越简单,表达其中的所有内容就越困难;语言越复杂,就需要进行更多的建模工作。 按照递归定理的精神,程序可以“获取”其自己的源代码并对其进行修改(即,输出其自身的修改版本)。(B2)然后告诉我们该程序应该能够对修改后的程序表示保证(这应该能够递归,即它应该能够对将来的所有修改内容进行表达?)。


2
高效的通用问题解决器?
定义一个“问题”是一个算法接受的自然数,并返回0或1返回1的至少一个上Ñ ∈ Ñ。任何这样的n称为A的“解决方案”一个AA1个11n∈Nn∈Nn \in \mathbb{N}nnnAAA 将“通用问题求解器”定义为接受问题并返回其解决方案之一的算法例如,U可以通过遍历所有自然数并在其上运行其输入直到获得1个结果(它只必须暂停有效输入)而起作用。UUUUUU111 我对探索通用问题解决程序的性能界限感兴趣 给定一个通用问题解决者,给A一个问题,表示t (U ,A )U接受输入A产生输出所花费的时间UUUAAAt(U,A)t(U,A)t(U, A)UUUAAA 当对于任何通用问题求解器V,我们都有一个通用问题求解器称为“有效”UUUVVV t(U,A)&lt;t(V,A)+tVt(U,A)&lt;t(V,A)+tVt(U, A) < t(V, A) + t_V 这里取决于V,但不取决于AtVtVt_VVVVAAA 是否存在有效的通用问题解决者? 编辑:我意识到可以将“问题”和“通用问题解决器”的定义更改为稍微更优雅且本质上等效的东西。“问题”是一种没有输入返回0或1(会暂停)的算法。“通用问题求解器”是一种接受问题并返回其结果的算法。它或多或少是通用图灵机 可以将旧定义简化为新定义,因为给一个旧意义上的问题,我们就可以构造B一个新意义上的问题,只需将平凡的旧感通用问题求解器应用于A(上面所述的求解器) )AAABBBAAA 新定义可以简化为旧定义,因为给一个新意义上的问题,我们可以构造A一个旧意义上的问题,它只计算B并将输入与结果进行比较BBBAAABBB 一个新感觉的通用问题求解器的简单例子是一个仅运行其输入的算法


3
MCTS / UCT的应用
MCTS / UCT是一种游戏树搜索方法,它使用强盗算法来选择有前途的节点进行探索。游戏将随机进行至完成,并且会更深入地探索导致更多胜利的节点。强盗算法在探索具有较高获胜率的节点与探索未知节点之间保持了平衡(并且以纯形式不一定使用启发式评估函数)。基于这种通用技术的程序在计算机Go中取得了惊人的效果。 是否将强盗驱动的蒙特卡洛搜索应用于其他任何搜索问题?例如,这对于近似MAX-SAT,BKP或其他组合优化问题的解决方案是否有用?问题的任何特定特征(结构/统计/等)是否暗示了强盗式方法是否有效? 由于解空间的性质,是否存在任何已知的确定性问题可以完全抵御强盗方法?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.