特集1 主役登場
アルゴリズムの力で高信頼なネットワークをめざす
中村 健吾
NTTコミュニケーション科学基礎研究所
准特別研究員
アルゴリズムの研究では、計算機を用いて問題を解くときの効率的な手順を開発することが1つの目標です。年々大きな処理能力を持つスーパーコンピュータが次々と登場していますが、アルゴリズム研究の重要性は今も昔も変わっていません。例えば、従来の数億倍高速に問題を解けるアルゴリズムを開発すれば、スーパーコンピュータを用いても年単位の時間がかかると見積もられて実質的に不可能だった計算が、手元のPC利用であっても数分で終わるということが起こります。これは決して極端な例ではなく、私の研究グループでも実際に起こっていることです。
私が所属する研究グループでは、「組合せ爆発」を起こす問題を高速に解くための基礎研究を多く行っています。元のアイテムの集合に対し、その組合せの種類数は一般に指数関数的に多くなり、少しアイテムが増えただけでも種類数が膨大な数になることから、「組合せ爆発」と呼ばれます。例えば、道路網におけるある地点から別の地点までの経路の本数は、道路網の規模(すなわち道路の本数や交差点の数)と比べて指数関数的に多くなります。より具体的には、札幌のような碁盤の目状に道路が走る町で、ある隅から反対側の隅まで同じ交差点を通らずに行く方法は、縦横たった8ブロック分の区画を考えただけでも3200京通り以上考えられます。
私が最近取り組んでいる課題の1つである、通信ネットワークがどれほど障害に対して頑健かを解析するネットワーク信頼性解析の問題では、ある条件を満たすリンクの組合せの数を数えたり、もしくは条件を満たすリンクの組合せの中から最適なものを選ぶものがありますが、膨大な数の組合せがあるため多くの問題はそのままでは計算時間的に困難になってしまいます。そこで、条件を満たす組合せの集合をうまく圧縮して保持し、後の計算に圧縮したままのかたちで活用することで計算量を減らすという手法が取られます。この手法はときに指数関数的な圧縮を可能とします。これによってアルゴリズムを高速化し、通信や道路ネットワークの厳密解析、言い換えれば全く誤差のない解析を実用的な規模のネットワークで行うことをめざしています。
私は高校生のころに「競技プログラミング」に触れ、問題に対する効率的な解法を考えプログラムに落とし込むということを行ってきました。一方で、現在の研究でも効率的なアルゴリズムを考え出し、それをプログラムとして実装して実際のデータで効率性を実証する、ということを行っていて、実は高校生のころにやっていた経験を活かして研究をしているのではないかと思うことがよくあります。幸いなことに、NTTにはネットワークに関する問題意識を持つ方が多くおり、そこに私の営みがうまくマッチしたことで、これまでいくつかの研究成果を生み出すことができました。
IOWN(Innovative Optical and Wireless Network)に代表される将来のネットワークでは、非常に高い信頼性、言い換えれば非常に低い確率でしか通信の断絶が起こらないことが要求されます。このような状況では、信頼性などの指標を近似的に計算すると誤差が求められる水準を上回ってしまい解析できません。よって、信頼性などの指標の厳密評価や解析が重要となります。しかし、これらの厳密評価の多くは計算時間的に困難な問題であることが知られています。そのような中で、私はこれまで厳密評価の計算時間を実用的に大幅に改善することに成功してきました。今後もアルゴリズムの力で実用上の計算時間の改善に貢献できればと考えています。