def optimise_partition(self, partition):
<EOL>diff = _c_louvain._Optimiser_optimise_partition(self._optimiser, partition._partition)<EOL>partition._update_internal_membership()<EOL>return diff<EOL>
Optimise the given partition.

        Parameters
        ----------
        partition
          The :class:`~VertexPartition.MutableVertexPartition` to optimise.

        Returns
        -------
        float
          Improvement in quality function.

        Examples
        --------

        >>> G = ig.Graph.Famous('Zachary')
        >>> optimiser = louvain.Optimiser()
        >>> partition = louvain.ModularityVertexPartition(G)
        >>> diff = optimiser.optimise_partition(partition)