MicroAIの協調による開発レスの可能性について

2017.06.19

代表取締役社長 山本 智明

いつもご愛読頂き、誠にありがとうございます。

ここ最近、AIについての内容を記載しています。 もう飽きたかもしれませんが、今回も引き続き書かせてください。
今回のテーマは開発レスについてです。 と言っても、開発レスとAIと何の関係あるの?と思われているかもしれません。
その話をするには理由があるので、なぜこの話題になったかを少しお話します。
私はシステム開発に長く関わってきました。そこで、システム開発が必要ない時代が早く来ないかといつも思っています。 長らくコンピュータの世界ではハードウェアの処理能力が飛躍的に向上してきました。
しかし進化が遅いのが、ソフトウェア言語を使って開発するという事です。

過去、いろいろな企業から高度な開発ツールが提供されてきました。stockfoto_34004371_XS.jpg
 しかし、決定打となるものが無いように思われます。確かに20年前よりは言語そのものの進化、高機能ライブラリの充実、パッケージの進化などで開発の生産性は上がっているように思います。
しかしながら、ハードウェアの進化には程遠く、便利になったとは思いますが、根本的にはまだまだ労働集約的です。
 また、ソフトウェア開発はある意味特殊であり、生産性の個人差も驚くほど大きなものです。 また、要件定義の曖昧さ、成果物の共有の難しさもあります。 例えば、生産管理のシステム構築でもいいですが、生産管理システムと一言でいっても、要件定義に10人同時参加して頂きヒアリングしたとしても10人の最終イメージを出し合ったら、似て非なるものが出てくると思います。また、それを作るときに生産性が違う人をチーム編成した場合、この見積もりも難しくなります。

とすると、ゴールイメージの共有が難しく、工数・期間予想も難しいとなると、計画通りに終わらせる事は、不確定要素の掛け算になるのでとても難しいと感じていただけると思います。

さて、今回はシステム構築についての中身は主題ではないので、このポイントは深堀せず、AIとの協調を考えてみたいと思います。 まず、AIの中でも、ニューラルネットワークの良いところは単一のアルゴリズムでいろいろ活用できるというメリットです。このポイントは当たり前のように感じるかもしれませんが、個人的にはここが一番期待できる部分です。 

画像認識でも、文字判定でも数値予想でも同じように扱える(※実際は微妙に特性がありますが)のは魅力的です。stockfoto_50338716_XS.jpg

例えば、検査装置で良品判定などを行わせる場合に、個別にシステムを開発する必要がないという事です。
確かに今は、検査装置のAI処理一つをとっても、ムラや滲み、ホコリやゴミの判別など難しい部分もあるので、すべての生産品の検査を精度高く網羅的に行わせることが難しいかもしれません。 
しかしながら確実に一歩を踏み出した感はあります。

製造業でも少量多品種生産の市場ニーズがあり、それに対応する為に自動検査装置を毎回開発するようでは到底コストを吸収することはできません。汎用性というのはこのコスト問題を解決する可能性を秘めています。 一般的な工程をすべて行わせるというのは難しいとしても、ソフトウェアのサブルーチン的にMicroAIが協調動作をする事で結果を発揮できるのではと考えています。

一般的な作業工程、この場合は特にラインの工程とは限りませんが、何かの作業があった場合、AI処理が有効なところまで作業を細分化していき、そのマイクロ工程をMicroAIで実行させるという事ができれば面白いのではないかと思っています。

そうすることで、大きなAIではなく小さいAIを大量に使うという事で、全体の作業のAI化が進むのではと思っています。

今の作業をすべてAIでとなると、まだまだ処理能力、複雑性の問題、精度が足りない等の課題があるかもしれませんが、会社の作業すべてを細分化し、AI処理に置き換え可能なところを利用していくと全体効率が上がるのではという事です。 汎用的な小さいAIの場合、今の汎用CPUのようにいろんなところに部分的に使われていき、その結果、単体のコストも劇的に下がると思われます。 MicroAIはシンプルで、プログラムは同じですから開発は必要なく、開発の変わりにマイクロ工程の教育を行うという作業に変わります。 教育コストとプログラム作成コストの比較となるかもしれませんが、装置は再利用可能であり、またユーザー側で教育でき、いちいち外部企業へ依頼も必要ないとすれば、時間とコストは必ず減少すると思われます。stockfoto_72898195_XS.jpg

当然弊社のような企業は仕事が減りますが、世の中は効率化していくので良いことです。
これは、現在のクラウドコンピューティング環境の並列分散処理化に似ています。 現在だと実現するにはもう少し技術の進化が必要かもしれませんが、次世代高速通信の流れもあり、クラウドコンピューティング環境も整ってくれば、近い将来実現されるように感じます。

いつかソフトウェア業界も小さい工程に分解して、口頭で指示だけすれば、画面を勝手に作ってくれるとか、データモデルを自動で構築するとか、処理ロジックを自動構築してくれれば、前述の複雑性と個人能力のばらつきなどが吸収されていきソフトウェア業界も労働集約から開放されるのではと期待しています。 

さて、皆さんはどのように考えますか?