2018年1月26日金曜日

AIでバグを取る


Windows10になってから、その不安定さには辟易としている。アップデートも頻繁にあるが、勝手に再起動するのは何とかしてほしい。まあそれはともかくとして、実機での動作確認にRPAを使うというのは考えられることだが、それ以上にAIに働いてほしいものだと思う。

このバグ検知機構は、サーバではよく見られるようなリモート操作の仕掛けが使われる。即ち、一つのPCの中に二台のPCがあって、独立して動作する。そのうち一つは従来の意味でのPCであり、もう一つはそのPCを操作し、その様子を記録するだけのPCだ。自動テスト機ないしはRPAの一種と言ってもよいが、機能は若干違う。(従来で言う)テストデータの自動生成とも少し違う。

バグテスター(仮名)の役割は、OS(ないしはアプリ)のバグを発見することだ。このためにはユーザのあらゆる操作をシミュレーションしなければならない。自動テストにおけるテストデータは、操作と期待値がセットになっていたが、こちらは操作をランダムに行うため、期待値が存在しない。

ある操作をしたときにコンピュータがどう振舞うかを事前に計算することはできないので、強化学習の手法は使えないはずなのだが、実はそうでもないのだ。「同じようなソフトのバージョン違い」との比較、という手段が残されている。

バージョンが少ししか違わないなら、その差分については検出されるはずだし、そうでないところは同じ(差分がない)はずだ。これを用いて、いわゆるデグレードや、ランダム(に見える)エラーが検出できるはずだ。

また、教師付き学習としておき、エラーを出したときに人間が正否判定をしてやることで、例えばWindows7と10のように画面が大きく変わる場合でも、同様のことをすることができる。

何れにしても、こういった仕掛けを普通のPCにも入れておくことは色々と便利だ。それは結局RDPの変形なのだろうからリモートにも応用できるし、操作が重くなったり操作不能になったりしたときでも回復の道がある。

一つ残念なのは、このテストには膨大な工数が掛かることだ。このため分割・結合といった従来のテスト法と組み合わせたり、操作のランダムさ加減に一定の制限を掛けるなどして効率化をすることが必須で、そこには従来のテスト法と同じ苦労が発生する。

0 件のコメント:

コメントを投稿

注目の投稿:

ダイナミック租税とその指標

今の法律では、税率は一定の計算式で表されるが、そのパラメータは固定である。需要と供給のバランスによって商品の価格を変えるダイナミックプライシングというのがあるが、あれを租税にも適用してはどうかと考えてみた。 納税者の声をベースにして様々な租税や補助金を自動調節して、どこか一箇所...

人気の投稿: