core AI algorithms