## 1 Introduction  
Clustering as a task in statistics, pattern detection, data mining, and machine learning is considered to be very important [1; 2; 3; 4; 5]. Its purpose is to assign a set of data points to several groups. Data points placed in a group must be very similar to each other, while they need to be very different from other data points located in other groups. Consequently, the purpose of clustering is to group a set of objects in such a way that objects in the same group (called a cluster) are more similar (in some sense) to each other than to those in other groups (clusters) and have the maximum difference with other objects within the other clusters [6]. It is often assumed in the definition of clustering that each data object must belong to a minimum of one cluster (i.e., the clustering of all data must be done rather than part of it) and a maximum of one cluster (i.e., clusters must be non-overlapping). Each group is known as a cluster and the whole process of finding a set of clusters is known as clustering process. All clusters together are called a clustering result or abbreviately a clustering. A clustering algorithm is defined as an algorithm that takes a set of data objects and returns a clustering. Various categorizations have been proposed for various clustering algorithms, including hierarchical approaches, flat approaches, density-based approaches, network-based approaches, partially-based approaches, and graph-based approaches [7]. In consensus-based learning as one of the most important research topics in data mining, pattern recognition, machine learning, and artificial intelligence, we train several simple (often weak) learners to learn how to solve a single problem. In this learning method, instead of learning the data directly by a strong learner (which is usually slow), they try to learn a set of weak learners (which are usually fast) and combine their results with an agreement function mechanism (like a voting) [8]. In supervised learning, the evaluation of each simple learner is straightforward because of the existence of labels for data objects. But, it is not true in non-supervised learning, and consequently it is very difficult to find a solution without the use of side information to assess the weaknesses and strengths of a clustering result (or algorithm) on a dataset. Now, there are several methods for ensemble clustering to improve the strength and quality of clustering task. Each clustering in the ensemble clustering is considered to be a basic learner. This study tries to solve all of the aforementioned sub-problems by defining valid local clusters. In fact, this study calls data around a cluster center in the clustering of kmedoids as valid local data clusters. In order to generate diverse clustering, a duplicate strategy of producing weak clustering results (i.e., using kmedoids clustering algorithm as base clustering algorithm) is used on non-appeared data in previously valid local clusters. Then, an intra-cluster similarity criterion is used to measure the similarity between the valid local clusters. By forming a weighted graph whose vertices are valid local clusters, the next step of the proposed algorithm of this study is done. The weight of an edge in the mentioned graph is the degree of similarity between the two valid local clusters sharing the edge. In the next step of the algorithm, minimizing the graph cut for partitioning this graph is applied to a number (which is predetermined) of the final cluster. In the final step, the output of these clusters and the average credibility and the agreement of the final agreement clusters are maximized. It should be noted that any other base clusters can also be used as base clusters (for example, the fuzzy c-means algorithm (FCM) can be used). Also, other conventional consensus function methods can also be used as an agreement function for combining the basic clustering results. The second section of this study addresses literature. The proposed method is presented in the third section.