在哪里寻求研究/出版方面的帮助?


11

我已经开发了一段时间的SAT算法,并且已经达到想要共享它的地步。我在计算机科学领域认识的人并不多,而且我不确定确切的方向。

我想知道有哪些资源可供正在考虑发布算法的人员使用。我还需要帮助来分析算法的运行时间和正确性。

我的主要问题是分析运行时。我需要对此进行详细分析的帮助。我相当确定该算法是正确的,但是如果有人也对此进行验证,将会很有帮助。

那么,有谁愿意分析我的算法?此外,什么样的资源可用于此类任务?


您是在谈论发布或检查您的想法吗?您所说的“资源”是什么意思?日记或检查方式?
拉斐尔

12
在我看来,如果发布是目标,那么您至少必须进行运行时分析,并假设算法是启发式的,并且可以“正确地”纠正算法。您还必须将算法与以前的工作进行比较-否则,发布是不可以的。实际上,我建议先这样做。
Suresh Venkat 2010年

我正在考虑发布,但现在我真的在寻求分析方面的帮助。我意识到该站点可能会帮助您解决某些特定问题,但我希望找到可以与愿意结识分析的人见面的地方。另外,关于其他算法,我没有很多背景知识,但是我想知道我的方法是否有些独特。
马特·格罗夫

Answers:


32

如果您的SAT算法是实用的,则应在其上运行SAT竞赛基准。如果您可以证明您的方法与现有的求解器相比具有竞争力,那么SAT求解社区将更加重视您的工作。您的求解器不必比每个求解器都快,也不必求解更多实例,但是它应该是一个认真的竞争对手。您不需要运行速度很快或功能强大的计算机即可运行基准测试;您可以简单地将运行时与MiniSATPicoSAT之类的免费SAT解算器之一进行比较。这些求解器还将使您看到答案应该是什么样子。

如果您正在研究使用新技术的实用求解器,而您的方法还没有竞争力,那么我仍然建议您尝试这些基准测试。他们将帮助您了解应解决的问题类型以及应实现的性能。您可能还需要阅读《满意度手册》中的某些关键章节,或最近的调查

  • Knot Pipatsrisawat和Adnan Darwiche,《现代子句学习的可满足性求解》,《自动推理杂志》, 44277–301页,2010年。(PDF

查看支持主要求解器的各种参数。如果您有尚未解决的新想法和最佳求解器,还需要解决这些问题,那么您需要向知道长期理论推理从而导致当前“最佳”问题的人解释这种方法的潜在优势。实践”设计决策。

如果您的贡献仅是理论上的,那么您需要了解该领域的许多论文,并在论文中解释为什么您的方法至少在某种程度上会更好。看看例如Amin Coja-Oghlan或Alan Frieze的最新作品,以了解最新技术并获得对重要论文的有用指导。




2

由于您现在想共享算法,因此我个人的建议如下:建立一个非常简单的网站。该网站应提供以下两点:

  1. 该算法的源代码。
  2. 简要描述您的方法的文档。您的方法有何不同?它背后的新想法是什么?该文档不需要是写得很完美的技术论文,也不需要包含任何正式的证明:PowerPoint演示文稿就足以“传达”您的想法的核心。请向我们解释为什么您认为您的算法与众不同。也许这是独一无二的,谁知道。


我认为创建网站不是一个好主意。因为很多人在“思考”时建立了网站,所以他们已经解决了大问题或发现了TOE。例如 dharwadker.org/tevet/isomorphism matpitka.blogspot.com定理:“对于每个未解决的问题,至少有一个人声称他解决了这个问题并建立了一个网站。” 坏主意-1 :(
Pratik Deoghare 2011年

@TheMachineCharmer:我不是那个意思。该网站只是让人们下载代码并阅读描述算法的文档的一种方式。我的意思不是说“庆祝”网站。相反,我指的是一个网站仅共享材料,而没有任何“胜利”的主张(与您在回答中说的类似,尽管您的说法有些“正式”)。
Giorgio Camerani 2011年

1
  1. 您可以将您的想法以标准的纸张格式写下。
  2. 将其发布在ArXiv上
  3. github上共享源代码。
  4. 花一些时间来学习运行时分析并在完成后更新论文。

例如,您可以写一份调查报告,最后建议您的解决方案是一种有希望的新方法。但是,如果没有正确性和运行时间分析的证明,没有多少人会认真对待它(但是有些人会这样做)。

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.