예제 #1
0
 def cluster(self,K):
   A = self.adjacency_matrix()
   c = cluster.kcluster(A,K)
   centers,self.Group_ids = c.cluster()
   max_cluster_size = c.maxsize
   self.distance_bandwidth = len(centers)+max_cluster_size-1
   return centers
예제 #2
0
import sys
import database
import cluster
import util
import numpy as np
import math

#####################################################################
## MAIN
#####################################################################
if __name__ == "__main__":
    # parse
    if (len(sys.argv) < 2):
        print "usage: db_cluster.py database"
        sys.exit()
    dfile = sys.argv[1]
    K = int(sys.argv[2])

    if not os.path.isfile(dfile):
        print dfile, "does not exist"
        sys.exit()

    stem = (dfile.split("."))[0]
    db = database.database()
    db.init(stem, "RMSD")
    A = db.adjacency_matrix()

    c = cluster.kcluster(A, K)
    c.cluster()
    c.report()
예제 #3
0
파일: main.py 프로젝트: snl017/AIproject
	domainsFemale = roommate.arcConsistentDomains(femaleStudentsFeatures)

	#RUN BACKTRACKING_PAIRS ON PEOPLE -> ROOMMATES
	#get the set of roommate pairs
	malePairs= roommate.backtrackingPairs({}, domainsMale) #this is a dictionary of the roommate pairs!
	femalePairs = roommate.backtrackingPairs({}, domainsFemale)
	if(malePairs and femalePairs) :
		malePairs.update(femalePairs)
		pairs = malePairs
		#print"Roommate pairs:"
		#print pairs
		# print len(pairs)
		uniquePairs = roommate.uniquifyPairs(pairs)

		#get the clustering of the students	
		clustering = cluster.kcluster(uniquePairs,studentDict,helper.NUM_SPOGROS)
		allStudentsClustering = deepcopy(clustering)

		for cluster1 in allStudentsClustering:
			for student in uniquePairs.keys():
				if student in cluster1:
					cluster1.append(uniquePairs[student])
		#print "Clustering for run"+str(runNum)
		#print allStudentsClustering
		#print uniquePairs

		# #use for testing (by just replacing uniquePairs with uniquePairsTEST below)
		# uniquePairsTEST = {}
		# for i in range(3) :
		# 	stud = uniquePairs.keys()[i]
		# 	uniquePairsTEST[stud] = uniquePairs[stud]
예제 #4
0
import database
import cluster
import util
import numpy as np
import math


#####################################################################
## MAIN
#####################################################################
if  __name__ == "__main__":
  # parse
  if (len(sys.argv) < 2):
    print "usage: db_cluster.py database"
    sys.exit()
  dfile =      sys.argv[1]
  K     =  int(sys.argv[2])

  if not os.path.isfile(dfile):
    print dfile,"does not exist"
    sys.exit()

  stem = (dfile.split("."))[0]
  db = database.database()
  db.init(stem,"RMSD")
  A = db.adjacency_matrix()

  c = cluster.kcluster(A,K)
  c.cluster()
  c.report()