It is predicted that the coming decade will witness an upsurge of devices, mobile phones, sensors and actuators communicating over the Internet to enrich human lifestyle. The network design will have to ensure energy efficiency, speed and reliability for Internet of Things to be sustainable in long run. Routing of data, is one aspect which largely governs the quality of service in wireless networks. The IETF ROLL working group proposed the IPv6 Routing protocol for Low power Lossy Networks (RPL) as de-facto routing standard keeping in mind the sustainability of constrained IoT networks. The standard RPL is designed to select best route based on single parameter like hop count. The standard was kept open for researchers to experiment and augment it further. The main aim of this work is to improve the performance of RPL protocol by considering multiple metrics during selection of best route. Four routing parameters namely, hop count, delay, residual energy and link quality are chosen as criteria for deciding the best route. The K-Nearest Neighbor machine learning technique is proposed for multi criteria decision making. The K-NN computes the quality score for each candidate neighbor node and the one with highest score is selected as the most suitable parent in route towards the sink node This novel version, RPL-ML is tested in the COOJA simulator of Contiki OS. Deep dive analysis of RPL-ML by varying data rates and network density reveals that it lowers energy consumption by 18%, improves PDR by 3%, lowers delay by 20% and reduces the control overhead by 48% as compared to standard RPL implementations.