RPAはどのようにして、人間の代わりにPCでの作業を行ってくれるのでしょうか。今回はロボットの動作について、少し技術的な観点からお話しします。
人間の代わりに働いてくれるソフトウェアロボット「RPA」。前回はRPAの特長と限界についてお話ししましたが、そもそも、RPAはどのようにPCでの作業を代行してくれるのでしょうか。今回はこうした疑問について、技術的な観点から少し具体的なお話をします。
ぜひ、皆さんも自身の仕事を思い浮かべながらお読みいただければと思いますが、今回紹介するのはあくまで一例であり、RPAソフトウェアといってもいろいろなツールがあります。特定のソフトウェアについて紹介したものではないことに留意してください。
この記事で紹介する例は、最も登場頻度が高いであろう「UI操作の自動化」です。UI(ユーザーインタフェース)とは、マウスでクリックしたり、キーボードで文字を打ち込んだりといった、人がPCを操作するための道具を指します。
「PCを操作する道具ってそれだけじゃないの?」と思われた方、実はもう1つ、重要なインタフェースがあります。それは「ディスプレイ」です。仮に目をつぶってPCを操作しようとしても、どこをクリックすべきか、文字や数字を入力するセルやフォームはどこにあるのか分からないでしょう。
UI操作の自動化でもここが重要です。「クリックしたい場所」「文字を入力する場所」をいかにミスなく正確に選べるかが、ソフトウェアの性能を決めるといっても過言ではありません。場所を指定する方法にもいくつかのアプローチがあり、代表的なものは以下の3つです。
座標による指定方法は、例えばスクリーンの左上を2次元座標の(0,0)として、右に何ピクセル、下に何ピクセルと指定する方法です。スクリーン全体ではなく、特定アプリケーションのウィンドウ枠の場合もあります。
シンプルな指定方法で処理も高速ですが、画面の解像度やアプリケーションの表示位置、そしてレイアウトが少しでも変わると、正しく座標を指定できなくなるため、個人的に、私はほとんどこの方法を使うことはありません。
画像認識を使う方法は、ある画像をロボットに覚えさせ、それと同じ画像がスクリーン上にあれば捕捉するというものです。よくあるのは、「クリック」や「検索」「申請」といったボタンを認識させるケースでしょう。
認識の精度も向上してきており、解像度やアスペクト比が変わって、ボタンの大きさや形状が多少変わったとしても、間違えずに指定できるものも増えてきましたが、これも個人的にはベストな方法だとは思っていません。
Copyright © ITmedia, Inc. All Rights Reserved.