  The goal of the Internet of Things (IoT) is to transform any thing around us,
such as a trash can or a street light, into a smart thing. A smart thing has
the ability of sensing, processing, communicating and/or actuating. In order to
achieve the goal of a smart IoT application, such as minimizing waste
transportation costs or reducing energy consumption, the smart things in the
application scenario must cooperate with each other without a centralized
control. Inspired by known approaches to design swarm of cooperative and
autonomous robots, we modeled our smart things based on the embodied cognition
concept. Each smart thing is a physical agent with a body composed of a
microcontroller, sensors and actuators, and a brain that is represented by an
artificial neural network. This type of agent is commonly called an embodied
agent. The behavior of these embodied agents is autonomously configured through
an evolutionary algorithm that is triggered according to the application
performance. To illustrate, we have designed three homogeneous prototypes for
smart street lights based on an evolved network. This application has shown
that the proposed approach results in a feasible way of modeling decentralized
smart things with self-developed and cooperative capabilities.
