His research focuses on the development of methods to integrate prior knowledge in Machine Learning algorithms, with application on Predictive Maintenance. During his past research, he has worked on how to solve combinatorial optimization problems and Constrained Satisfaction Problems integrating traditional methods with Deep Learning. He has also applied Deep Reinforcement Learning algorithms to solve NP-hard combinatorial optimization problems.