A divide and conquer based development of gray wolf optimizer and its application in data replication problem in distributed systems