Non-Intelligent and Intelligent Force Control for Robotic Applications: A Review