理解は頭の中で起きる現象であり、直接調べる手段はありません。しかし人は「自分が物事をどのように理解したか」を言葉で説明することはできるので、その言葉を手がかりにして理解のモデルをつくることができます。ただし、もともと言葉として理解しているわけではなく、無意識のうちにさまざまな知識を使っているため、すべてを説明することはできません。
研究では、まず簡単なアルゴリズムを理解して、自分がどのように理解したかを記述。どのような知識をどのように用いているかということまで詳しく説明していきます。さらに研究室での議論を通して、より正確な言葉に直すとともに、無意識に用いている知識を明らかにする。これを繰り返し、具体的なアルゴリズムごとに理解のモデルをつくっていきます。
自分がどのように理解しているか、正確に言葉で説明することは簡単ではありませんが、自分の力でより正確にしていくことができます。また、理解の仕方は人それぞれ異なるため、すべての学生の言葉が研究の役に立ちます。学生一人ひとりの素直な考えを研究に活かせ、研究の過程で気づいたことや研究成果をすぐに共有することができます。
21世紀のコンピュータサイエンスにおける最大の課題の一つは、コンピュータサイエンスの教育にあります。例えば、近年では世界中で義務教育のレベルからCSアンプラグド(コンピュータを用いないコンピュータサイエンスの教育)が試みられています。この中で、アルゴリズムが重要な一部として含まれており、本研究は、その理論的な裏付けや改良に役立つと考えられます。
これまで、よく友人たちと一緒に勉強をしましたが、そのとき、同じことでも人によって、理解の仕方が異なること場合があるのが不思議でした。また塾講師をしたときには、わかりやすくしようと絵や図を多く使ったプリントを用意したのに、生徒からも同僚からも不評。では、わかりやすい授業・教材をつくるには、どうすべきなのか?浅野研では、その疑問や迷いを解決するために「理解の仕組み」を理論的に研究し、自分以外の人が「理解しやすく記憶に残りやすい」教え方を追い求めています。
コンピュータのプログラムにおける計算の手順。コンピュータサイエンスの古典的な研究テーマの一つで、多数のアルゴリズムが開発され、さまざまなプログラムの中に組み込まれている。
アルゴリズムの理解とは、正しく実行できるように記憶すること。しかし、実行する操作が、アルゴリズムの目標を達成するためにどのような意味があるのかわかっていなければ、理解したことにはならない。
アルゴリズムには、達成すべき目標と、それを達成するための具体的な操作の列が与えられている。達成すべき目標(トップ)から、具体的な操作(ボトム)まで、トップダウンの形で記憶していく。