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情報圧縮に基づく統一的プロセスとしてのソフトウェア工学は、コンパイル、インタプリタ、検証の別個処理を不要とするか。
  • RQ2SPシステムを介して自然言語入力が直接ソフトウェアの生成と実行に使用できる範囲はどの程度か。
  • RQ3関数、条件分岐などの従来のプログラミング構造を廃止しながらも、計算の表現力を維持する方法は何か。
  • RQ4SPシステムが多様な知識タイプを表現できる能力が、すべてのソフトウェアとデータ形式の普遍的基盤として機能できるか。
  • RQ5プログラムとデータを単一のSPパターンベースの表現に統合することで、バージョン管理と技術的負債にどのような影響が生じるか。

主な発見

  • SPシステムは、SPパターンという単一の統一的メカニズムにより、あらゆる種類の知識と計算を表現でき、ソフトウェアとデータの普遍的基盤を提供する。
  • 関数、条件分岐、パラメータといった従来のプログラミング構造は、すべてSPパターンとして再表現可能であり、手続き的実行を必要としない同等性を示している。
  • SPマシン上でSPパターンを直接処理することで、コンパイルとインタプリタの必要性が排除され、システムの複雑性が低減される。
  • 検証と検査の必要性が著しく低減または排除される。正しさはSPシステムの情報圧縮原理から自然に生じる。
  • プログラムとデータベースの違いが消失し、両者ともSPパターンの集合として表現されるため、データ管理とバージョン管理が簡素化される。
  • プログラミング言語とデータファイル形式の数を1つに削減する可能性があり、技術的負債と開発のオーバーヘッドが大幅に低減される。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。