def compute_worst_similarity(cluster_1, cluster_2, sim_matrix):
    """
    Given two clusters, computes the worst similarity score between 
    any possible pair of nodes between the two clusters

    Input: cluster1, cluster2 (lists of of ActiveSites)
           sim_matrix (dictionary of dictionaries)
    Output: worst_sim (a float between 0.0 and 1.0)
    """
    worst_sim = 1.0
    for site_1 in cluster_1:
        for site_2 in cluster_2:
            current_sim = sim_matrix[site_1][site_2]
            if current_sim < worst_sim:
                worst_sim = current_sim

    return worst_sim