プログラムで「閃く」は作れないと 思います。 将棋のAI等は蓄積されたデータから 傾向を見出だし、 無限に存在するパターンから1つを選択する。 という作業をやっている感じで。