  Internet of Things (IoT) are increasingly being adopted into practical
applications such as security systems, smart infrastructure, traffic
management, weather systems, among others. While the scale of these
applications is enormous, device capabilities, particularly in terms of battery
life and energy efficiency are limited. Despite research being done to
ameliorate these shortcomings, wireless IoT networks still cannot guarantee
satisfactory network lifetimes and prolonged sensing coverage. Moreover,
proposed schemes in literature are convoluted and cannot be easily implemented
in real-world scenarios. This necessitates the development of a simple yet
energy efficient routing scheme for wireless IoT sensor networks. This paper
models the energy constraint problem of devices in IoT applications as an
optimization problem. To conserve the energy of device nodes, the routing
protocol first aggregates devices into clusters based on a number of different
features such as distance from base station, data/message length and data
sensed from the environment in the current epoch. Then, a cluster head is
elected for each cluster and a directed acyclic graph (DAG) is generated with
all the cluster heads as nodes. Edges represent communication intent from
transmitter to receiver and the edge weights are computed using a formulated
equation. The minimum cost path to the base station is computed to allow for
efficient real-time routing. Sleep scheduling is also optionally used to
further boost network energy efficiency. The proposed routing protocol has been
simulated and outperforms existing routing protocols in terms of metrics such
as number of active nodes, energy dynamics and network coverage.
