A novel non-disjoint partitioning algorithm for inter-cluster communication in wireless sensor networks