Skip to main content
QUICK REVIEW

[论文解读] Software engineering and the SP Theory of Intelligence

J. Gerard Wolff|arXiv (Cornell University)|Aug 18, 2017
Computability, Logic, AI Algorithms参考文献 20被引用 10
一句话总结

本文提出了一种基于SP智能理论的新型软件工程范式,通过SP模式的信息压缩统一框架,取代传统的编程、编译和数据格式。通过将所有计算视为基于模式的压缩,该方法实现了自动编程,消除了代码与数据之间的区别,减少了技术债务、验证需求,以及编程语言和文件类型的多样化。

ABSTRACT

This paper describes a novel approach to software engineering derived from the "SP Theory of Intelligence" and its realisation in the "SP Computer Model". Despite superficial appearances, it is shown that many of the key ideas in software engineering have counterparts in the structure and workings of the SP system. Potential benefits of this new approach to software engineering include: the automation or semi-automation of software development, with support for programming of the SP system where necessary; allowing programmers to concentrate on 'world-oriented' parallelism, without worries about parallelism to speed up processing; support for the long-term goal of programming the SP system via written or spoken natural language; reducing or eliminating the distinction between 'design' and 'implementation'; reducing or eliminating operations like compiling or interpretation; reducing or eliminating the need for verification of software; reducing the need for validation of software; no formal distinction between program and database; the potential for substantial reductions in the number of types of data file and the number of computer languages; benefits for version control; and reducing technical debt.

研究动机与目标

  • 解决现代软件工程中因编程语言、数据格式和开发流程过度多样化而引发的日益增长的复杂性与低效性问题。
  • 通过单一、压缩性的框架统一软件开发,消除设计与实现之间的非自然分离。
  • 通过一种自然、类人类的计算模型,减少或消除对编译、解释、验证和确认的需求。
  • 通过SP计算机模型实现自然语言编程和长期的软件开发自动化。
  • 通过统一程序与数据表示,最小化技术债务并提升软件可维护性。

提出的方法

  • 将所有软件和数据表示为SP模式——一种结构化、压缩性的模式,用于编码知识与计算。
  • 利用SP系统的多重对齐原理,通过信息压缩实现推理、学习与计算。
  • 用基于SP模式的单一通用语言取代传统编程语言,支持自然语言输入进行软件开发。
  • 通过SP机器(SP系统的一种工业级实现)直接执行SP模式,取代编译与解释。
  • 通过将程序与数据库均视为SP模式的集合,实现程序与数据库的统一,消除对独立数据模型的需求。
  • 利用SP系统在建模人类认知、感知与学习方面的已验证多功能性,支持可扩展、通用的软件工程。

实验结果

研究问题

  • RQ1软件工程能否被重新构想为一种基于信息压缩的统一过程,从而无需单独的编译、解释与验证?
  • RQ2在多大程度上可以使用自然语言输入,通过SP系统直接生成并执行软件?
  • RQ3如何在保留计算表达能力的前提下,消除传统编程结构(如函数、条件语句)?
  • RQ4SP系统表示多样化知识类型的能力,能否作为所有软件与数据格式的通用基础?
  • RQ5将程序与数据统一为基于SP模式的单一表示,对版本控制与技术债务有何影响?

主要发现

  • SP系统可通过单一、统一的SP模式机制表示所有类型的知识与计算,为软件与数据提供通用基础。
  • 传统编程结构(如函数、条件语句、参数)可重新表达为SP模式,证明其等价性,且无需过程式执行。
  • 通过在SP机器上直接处理SP模式,该方法消除了编译与解释的需求,降低了系统复杂性。
  • 软件的验证与确认可显著减少或完全消除,因为正确性自然源于SP系统的压缩性原理。
  • 程序与数据库之间的区别消失,因为两者均表示为SP模式的集合,从而简化了数据管理与版本控制。
  • 存在将编程语言与数据文件类型减少至单一通用格式的潜力,从而大幅降低技术债务与开发开销。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。