研究紹介

研究テーマの例

安全なIoTデバイスを開発するための自動バグ発見・自動修正技術

スマート家電等,インターネットに接続されたIoTデバイスがどんどん普及してきています.IoTデバイスを開発するメーカーはバグが存在しないように,十分に検証を行ってからリリースします.しかし,IoTデバイスが複数のユーザーや他のデバイスを識別しつつ,ユーザーやデバイスに合わせた複雑な動作をするため,バグを発見・修正することは容易ではありません.安全なIoTデバイスを実現するためには,コンピュータが自動的にバグを発見したり,自動的にバグを修正したりしてくれたら便利だと思いませんか?本研究室では,このような自動バグ発見・自動修正技術の実現に向けた研究を行っています.

このテーマは、JST さきがけ 社会変革に向けたICT基盤強化領域第1期採択課題(直接費総額4000万程度)です.

2022年3月に,情報処理学会の各研究会から推薦された選りすぐりの若手研究者が登壇し,最先端の研究を発表するIPSJ-ONEで本テーマについて吉田が講演しました.講演動画はこちら

プログラム解析技術

社会インフラを支えるソフトウェアの規模はどんどん大きくなってきており,ソフトウェア開発者がプログラム全体を把握することが難しくなってきています.そこで本研究室では,コンピューターを使ってプログラムを自動的に解析し,プログラムを理解しようとするソフトウェア開発者を支援する技術の研究をしています.

プログラミング教育×適応学習

学習者ひとりひとりの理解度や苦手分野に応じた学習コンテンツを,各々へ自動で提供する学習形態を適応学習と呼びます.本研究では特に,プログラミング教育における適応学習を目指し,プログラミング教育の自動化と最適化に注目しています.学習者のソースコードを分析して躓きや試行錯誤を検出したり,生体情報やコミュニケーション活動を組み合わせて学習者の理解度を推測など行っています.
 また、オンラインジャッジシステムやScratch,Stack Overflowなど,既存のプログラミングに関わるコミュティの分析も行っています.分析を行うことで,各ユーザに最適な問題の推薦や,ユーザ間の関係性の可視化,CT習熟度の予測などを目指しています.
 本テーマは科学研究費助成事業 若手研究として採択されています(20K14101、24K20905).
研究テーマ例:プログラミング初学者の試行錯誤の検出,視線情報を用いたプログラミング中の躓きの分析,機械学習を用いた自学自習課題の自動推薦,自動プログラム修正を利用したヒント作成など