Inductive Logic Programming Using a MaxSAT Solver

帰納論理プログラミング(ILP)[1]とは述語論理に 基づく帰納学習の一手法である.複雑なデータを直 接扱い学習を行ことが可能であり,化学物質の毒性 予測や自然言語処理,ウェブマイニングなど,非常 に多岐にわたる応用が行われている. 一方,MaxSAT[6]とは充足可能性判定(SAT)で全て の節を満たさない場合にできるだけ多くの節を満た すように SATを拡張したものである.また,近年 SAT ソルバや MaxSAT ソルバが高速化され,様々な探索 が必要な問題を SAT問題に変換し,求解することで, 多くの成果を上げている[5,6].本研究では,帰納論 理プログラミングの問題を MaxSAT 問題に変換し, MaxSAT ソルバで解く手法を提案する.すでに SAT ソルバ―を用いた帰納論理プログラミングは提案さ れている[4].本研究の手法は,先の手法とは異なり, 扱う帰納論理プログラミングは制限があり,より限 定されているが,さまざまな現実の問題に応用され ている Progol[2]やAleph[3]の探索手法に基づいてい る.また,ILP の問題を MaxSAT 符号化する際に容 量が膨大にならないための前処理を行っている.

[1]  Stephen Muggleton,et al.  Inverse entailment and progol , 1995, New Generation Computing.

[2]  Hui Zhang,et al.  Using MaxSAT to Correct Errors in AES Key Schedule Images , 2013, 2013 IEEE 25th International Conference on Tools with Artificial Intelligence.

[3]  Miyuki Koshimura,et al.  QMaxSAT: A Partial Max-SAT Solver , 2012, J. Satisf. Boolean Model. Comput..

[4]  Vítor Santos Costa,et al.  Inductive Logic Programming , 2013, Lecture Notes in Computer Science.