I think LEACH-C is a good choice, since LEACH protocol suffers from several problems, one of them is non-uniform clustering. Hence, better clusters may be produced using centrally controlled algorithm like LEACH Centralized .
Although the advantages of "LEACH" routing protocol that it reduce the energy consumption for the nodes , it has some of disadvantages such as :
- it focus significantly on the cluster head rather than cluster member this will deal sometimes with the failure cluster head problem
- the selection of the cluster head is randomly which does not take take energy consumption of different nodes within the cluster
-it does not work well with the application that require large area coverage along with muti-hop inter cluster communication.
"LEACH-C" is used to improve "LEACH" protocol : the number of the cluster heads in each round is equals to a predetermined optimal value, while in "LEACH" protocol the number of the cluster heads varies from round to another because of the lack of global coordination between different nodes in the network.
According to this comparison , I decide that using Kmeans algorithm for "LEACH-C" rather than the "LEACH" itself