One of the most critical issues in wireless ad hoc networks is represented by the significant differences in term of processing and energy power between the different nodes, inducing a load imbalance between the overloaded and idle nodes. Thus, making good exploitation of the powerful nodes capacity by the overloaded nodes if a fraction of their load will be shared with other nodes is a must in ad hoc networks. In this paper, we present a new load balancing algorithm which is based on the grouping of nodes in a set of clusters and to maintain a certain balance within each cluster. The objective of our work is double. On one hand it aims at minimizing total tasks execution time and on the other at extending the overloaded nodes lifetime indu...