- HOME
- 「理論」と「実務」の二刀流を極める! 【 数理システム社員インタビュー】
2020年4月に数理システムに入社して、数理計画部の研究員として活躍する藤井さん。これまでの経歴から、数理システムでの働きがいや、今後のビジョンについて詳しくお話していただきました。
のびのびと育った数学少年
まず藤井さんの学生時代についてお聞きしたいと思います。子どもの頃から数学が好きだったのでしょうか?
藤井:私はのどかな田舎町で、のびのびとした少年時代を過ごしました。小学生の頃は友達と缶蹴りなどをして遊んでいました。意外かもしれませんが、中学と高校では柔道一筋でした。
そして高校時代は、主要教科の中では数学が最も得意だったのですが、まだ自分が数学の道に進むことになるとは思っていなかったですね。本格的に数学をやろうと考えるようになったのは大学に入ってからのことでした。
大学時代に、どのような数学との出会いがあったのでしょうか?
藤井:私の入学した九州大学の伊都キャンパスは、自然が豊かで本当に広くのびのびとした場所でした。そのようなのびのびとした環境が、学問への開かれた好奇心を育んでくれるのかもしれませんね。興味さえあれば、他の学科の講義なども受講できる環境でした。
私は工学部電気情報工学科に所属していて、そこではじめて情報科学に触れました。もともとは電気回路などを学ぶつもりでいたのですが、グラフ理論やアルゴリズムなどの授業が面白くて、数学寄りの話題に心惹かれるようになっていきました。
いつの間にか数学にどっぷり浸かっていたのですね。
藤井:そうだと思います。柔道もそうだったのですが、最初は何気なく触れていた数学が、いつの間にか、長く追求していくものになっていました。
解ける問題と解けない問題
大学院では、数学の理論について、研究をされていたのですね。
藤井:はい。学部生活を通して、次のような興味を抱くようになっていました。それは、この世界の問題のうち、計算機によって「解ける問題」と「解けない問題」の境界はどこにあるのだろう、ということでした [注]。その興味を追求していくために、大学院では離散数学を専攻しました。
[注]:この興味は、P ≠ NP 問題と呼ばれる、理論計算機科学と現代数学上の未解決問題の中でも最も重要な問題とも関連するものです。
解けない問題とは、どのようなものでしょうか?
藤井:「解けない問題」という言い方をしたのですが、理論上は、無限の計算時間と無限の計算機リソースがあれば解くことができる問題です。たとえば、トラックに積んだ荷物を最短ルートでお客様に届けていく問題 [注] などがあります。これは巡回セールスマン問題と呼ばれるものです。
お客様の人数が増えていくと、計算機の手に負えなくなっていきます。簡単に試算してみましょう。この巡回セールスマン問題の解法としては、お客様に荷物を届ける順序をしらみつぶしにすべて調べることが考えられます。このとき、$N$ 人のお客様がいるとして、$N!$ 通りの順序が考えられます。$N!$ は、$N$ が大きくなると爆発的に大きくなります。$N = 30$ とすると......
$30! = 265252859812191058636308480000000 \simeq 2.7 \times 10^{32}$
計算機といえども、1 秒間で処理できる計算は $10^9$ 回程度です。そうすると、$10^{23}$ 秒くらいかかるわけですね。到底計算機に太刀打ちできる計算量ではありません。
[注]:巡回セールスマン問題は、解けない問題の中でも特に難しいことを表す「NP 困難」というクラスに属する問題です。
現実世界の多くの問題が解けないとなると、どうしたらよいのでしょうか?
藤井:実は、解けない問題といっても、厳密な最適解を求めることが困難だと言っているに過ぎません。厳密な最適解を求めるのではなく、できるだけ良い解を見つけることが私たちの目標となります。
実際のところ、実務で厳密な最適解が必要とされる場面はそれほど多くはありません。むしろ、どうしてこのような解が算出されたのかを説明しやすいような、人間的な解を得ることの方が重要なことも多くあります。
私たち数理システムの提供する最適化ソルバー Nuorium Optimizer も、厳密な最適解を求めることが困難な場合に、できるだけ良い解を求める解法も搭載しています。
解ける問題と解けない問題の違いは、どこにあるのでしょうか?
藤井:解ける問題は、なんらかの良い構造を持っていることが多いですね。たとえば、凸性があるから解けるとか、木のような構造があるから解けるといった具合です。私の大学院時代の研究は、離散的な凸性に関するものでした。離散凸解析という、日本人研究者 (室田一雄教授) が生み出した、世界的にもホットなテーマがあります。解ける問題がなぜ解けるのかを説明できるような、広大なフレームワークを提供するものです。
一方、解けない問題は、そのような良い構造を持っていないと考えられます。現実世界の実務的な問題のほとんどは、数学的に綺麗だとは言えない制約も多く、解けない問題になることが多いですね。
数理システムに入社して
その後、数理システムに入社を決めたのは、どのような考えがあったのでしょうか?
藤井:さまざまな思いがありました。1 つには、理論の研究に専念したいと考えていても、生活はどうしても不安定なものになりがちです。一度しっかり職を得て、両親を安心させたいという思いもありました。
そしてもう 1 つは、「解けない問題」というものを知るためには、一度社会に出て、実際の世の中に転がっている問題に触れた方がよいということです。私は数理システムに入社してから、生産計画問題・配送計画問題・シフトスケジューリング問題など、世の中で必要とされているさまざまな実務の問題に取り組んできました。そんな中で、理論だけでなく、実務の方も楽しいと思うようになっていきました。
理論と実務の二刀流になったということですね。具体的にはどのような実務の問題に取り組まれたのでしょうか?
藤井:大きく分けて 3 種類あります。「配送計画問題」と「シフトスケジューリング問題」と「生産計画問題」です。配送計画問題は、先ほど紹介した巡回セールスマン問題に類するものです。ただし、荷物をどのトラックに積めるかも最適化したり、お客様の希望時間帯に届ける必要があったりなど、より複雑な問題を扱っています。
シフトスケジューリング問題は、従業員の希望や能力を考慮しながら、最適なシフト割り当てをする問題ですね。数理システムでは古くから取り組んでいて、長年のノウハウが蓄積されていますね。
最後に、生産計画問題は、工場での生産ラインを最適化する問題です。お客様から、個別の工場の事情をお聞きして、個別の事情に応じた数理モデルを組み立てるところが難しかったですね。
実務の問題に触れていく中で、何か感じるものはありましたか?
藤井:そうですね。私は、最初は理論を深めるために実務に触れるというスタンスでした。しかしながら、実務でお客様の課題を解決していくことを通して、世の中で実際に使われるものを作ることの嬉しさを知っていきました。
同時に、実務ならではの難しさも経験しました。現場の声に寄り添うためには、複雑な制約条件を加味したモデルが必要なケースがありました。保守性などのことを考えると、できるだけシンプルなモデルにしたいのですが、やはり現場で使えるものにする必要があるので、シンプルさを犠牲にしなければならない時もあります。そのバランスを上手に調整するのが難しいです。
そんな難しさを乗り越えて、現場で実際に自分たちの作ったものが動いているのを見たときは、とても達成感がありましたね。
今後のビジョン
藤井さんが今度数理システムで目指していきたいことを教えてください
藤井:やっぱり、最初の話に戻りますが、解ける問題と解けない問題の境界について、解像度を高めていきたいです。まだ漠然としたアイデアしかないのですが、今後も「理論」と「実務」の両方に触れていくことで、境界のイメージが少しでも掴めていくるのではないかと考えています。そのため、今も数理システムで実務に従事しながら、OR 学会なども参加して、大学院時代の理論研究グループとの交流も深めています。
そして、やはり「理論」と「実務」のギャップを埋めていきたいですね。たとえば、何かしら理論の方で知られている結果を用いると、実務的にも良い結果が高速に求められるなど。逆に、実務の方からこのような問題が解けたら面白いとインスピレーションを得て、理論の方でも何か証明できたりしないかなど。このように、「理論」と「実務」の両方と関われる立場だからこそ、できることをしていきたいです。
「理論」と「実務」の両方に触れ続けられることは、数理システムの大きな魅力ですね。他に数理システムのいいところは何がありますか?
藤井:そうですね。OR 学会などにも参加しやすいですし、勉強会なども盛んに行われています。大学の研究室のような雰囲気がありますね。数理システムは、自由な空気があって、のびのびとしています。お客様との打ち合わせの時間以外は好きなように業務を進めることができます。その分責任はありますので、適度なプレッシャーを感じていられることが居心地よく感じています。
最後に、これから数理システムに入社されるかもしれない方にメッセージをお願いします!
藤井:「理論」と「実務」との間にギャップがあることは確かです。私は最初は綺麗な「理論」の方に触れていましたので、「実務」の方には綺麗さがないなどの先入観はありました。しかし、実務に取り組んでいく中で、お客様とお話していく中で、実務にしかない面白さもありました。お客様の中で実際に使われるものを作ることができると、達成感や嬉しさがあります。
自分の関わったものが実際に使われることが嬉しいという人は、理論畑の人の中にも結構いると思うのです。そうした方には、ぜひ「理論」と「実務」のギャップを埋めていくことを一緒に楽しんで行けたらよいと思います。
NTTデータ数理システムに入社し、数理計画部で数理最適化を活用する業務のかたわらで、Qiitaなどでアルゴリズム・競技プログラミングなどの解説記事を執筆し人気を集める。
現在は顧問となり、数理工学・コンピュータ科学のエバンジェリスト活動・執筆活動で活躍。
drken - Qiita