




AさんはBさんと打ち合わせをしたいのですが、Cさんとも打ち合わせが必要です。同様に、BさんはCさんともDさんとも打ち合わせをし、CさんはDさんと打ち合わせをしなければなりません。では、この4人が全ての打ち合わせを終了し、早く帰宅するためには、どのようにスケジュールを組めばよいでしょうか?ただし、(A-B)(A-C)(B-C)(B-D)(C-D)各ペアの打ち合わせはちょうど1時間かかるものとします。

こうしたスケジューリング問題を考えるときに登場するのが、点集合と辺集合で定義される「グラフ」です。下の図のように、4人を点v1〜4に対応させます。すると、先ほどの打ち合わせのペアは、グラフの各辺に対応させられることが分かりますね。

次に登場するのが、辺彩色という問題です。グラフの各辺に色を割当てていくのですが、右の図のように、点を共有している辺には異なる色を割当てるようにします。そして、各辺の色をスケジュールの時間に対応させ、1時間目に赤の(A-B)と(C-D)の打ち合わせを行い、2時間目に青の(A-C)と(B-D)の打ち合わせ、3時間目に緑の(B-C)の打ち合わせを行えば、全員が早く帰宅できます。

このようなグラフの辺彩色を用いることで、100人、1000人のスケジュールでも組むことができるのです。彩色問題には、この他にも点彩色や全彩色などがあり、これらは並列計算機のタスクスケジュール、時間割作成、講義の教室割当てなど様々な問題に応用されています。
西関研究室では、情報セキュリティの問題も扱っています。ネットワーク上で暗号を使って情報をやりとりするためには、送信者と受信者が秘密の鍵を共有する必要がありますが、その鍵が他人に漏れては困りますよね。私が研究しているのは、安全な鍵の共有方法です。それを考案できれば実社会で使われる可能性もあるので、やりがいを感じますね。将来の夢は、みんなが利用している通信環境に必要不可欠なものをつくることです。

アルゴリズムとは、問題解決の手続きを与えるもので、計算機ソフトウェアばかりでなくハードウェアにとっても重要な要素であり、コンピュータサイエンスの中心的な研究テーマとなっている。その中でも、グラフ理論などの離散数学(非連続的なものを扱う数学)を用いてモデル化できるような問題を解くためのアルゴリズムを離散アルゴリズムと言う。
グラフ理論で扱うグラフは、棒グラフや円グラフ、折れ線グラフといったものではなく、点の集合とそれらを結ぶ辺の集合で定義される。西関研究室では、上で紹介しているようなグラフの点と辺の関係を保ったまま、さまざまな用途に応じて違った形に変えていく。こうして変形したグラフは、VLSI(超大規模集積回路)チップの配置や機器の小型化などに応用できる。