variables. Instead of traditional calculus-based gradient, the algorithm utilizes