# Potts model

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

## Contents

### The Model

A relevant model in statistical physics is the so-called Potts model which was introduced as a generalization of the Ising model describing some physical systems (cf. the article about spin glasses).

The Potts model is defined on a graph G = (V,E) with vertex set V(G) = {1,2,...,N}. Each vertex of the graph coincides with a discrete variable $\sigma_i\ \in\ \mathbb{Z}_q\ (\mathbb{Z}_q = \{0,1,...,q-1\})$. Thus, $q\ \in\ \mathbb{N}$ is the number of possible states of the variables σi. Two vertices are connected by an edge if they interact in the Potts model. Moreover, to each edge (i,j) ∈ E(G) of the graph some real number $J_{ij}\ \in\ \mathbb{R}$ is assigned, representing the interaction energy.

The so-called Hamiltonian, i.e., the energy function for the Potts model is defined as

$H(\sigma) = - \sum\limits_{(i,j)\ \in\ E(G)} J_{ij}\delta(\sigma_i - \sigma_j),\qquad (1)$

with δ(⋅) denoting the Kronecker function (i.e. δ(0) = 1 and δ(x) = 0 for all x ≠ 0).

### Determining exact ground states for Potts glasses

We determine exact ground states of Potts spin glasses using branch-and-cut based on positive semidefinite optimization (cf. [Ghaddar et al. (2007)]).

### The partition function

In the following we summerize the work by Juhasz et al. (2001) investigating the so-called partition function

$Z = \sum\limits_{\sigma} \exp(-\beta H(\sigma))\qquad (2)$

where $\sigma\ \in\ \mathbb{Z}_q^N$ goes over all possible vectors leading to qN summands. The constant β = 1 / (k0T) is determined by the temperature T and the Boltzmann constant k0.

Now we want to reformulate the partition function (2) by using the equation exp(aδ) = 1 + (exp(a) − 1)δ, which is valid for δ ∈ {0;1}, and variables

$v_{ij} = \exp(\beta J_{ij}) - 1\ for\ all\ (i,j)\ \in\ E(G).\qquad (3)\,\!$

Then we get

$\scriptstyle \begin{matrix} Z & = \sum\limits_{\sigma} \exp(\sum\limits_{(i,j)\ \in\ E(G)} \beta J_{ij}\delta(\sigma_i - \sigma_j)) \\ & = \sum\limits_{\sigma} \prod\limits_{(i,j)\ \in\ E(G)} \exp(\beta J_{ij}\delta(\sigma_i - \sigma_j)) \\ & = \sum\limits_{\sigma} \prod\limits_{(i,j)\ \in\ E(G)} (1 + v_{ij}\delta(\sigma_i - \sigma_j)) \\ & = \sum\limits_{\sigma} \sum\limits_{F\ \subseteq\ E(G)} \prod\limits_{(i,j)\ \in\ F} v_{ij}\delta(\sigma_i - \sigma_j) \\ & = \sum\limits_{F\ \subseteq\ E(G)} \sum\limits_{\sigma} \prod\limits_{(i,j)\ \in\ F} v_{ij}\delta(\sigma_i - \sigma_j). \end{matrix}$

The product over the empty set is supposed to be equal to one.

Obviously, the product $\prod\limits_{(i,j)\ \in\ F} v_{ij}\delta(\sigma_i - \sigma_j)$ is nonzero if and only if the same value σ is assigned to the vertices of each connected component of the induced subgraph G(F) = (V,F). Let c(F) denote the number of connected components of the graph G(F). Then there are qc(F) possible choices to assign values $\sigma_i\ \in\ \mathbb{Z}_q$ to the connected components of the graph G(F) which implies

$Z = \sum\limits_{F\ \subseteq\ E(G)} q^{c(F)} \prod\limits_{(i,j)\ \in\ F} v_{ij}.\qquad (4)$

Suppose ∀(i,j) ∈ E(G):T  >  0 and Jij  >  0, then we get vij  >  0 for all (i,j) ∈ E(G) because of definition (3), and we are able to define variables wij as follows:

$w_{ij} = \log_{q} v_{ij}\ for\ all\ (i,j)\ \in\ E(G).\qquad (5)\,\!$

By fitting these variables into formula (4) we get

$Z = \sum\limits_{F\ \subseteq\ E(G)} q^{c(F) + \sum\limits_{(i,j)\ \in\ F} w_{ij}} = \sum\limits_{F\ \subseteq\ E(G)} q^{f(F)}\qquad (6)$

where $f:\ 2^{E(G)}\ \rightarrow\ \mathbb{R}$ is a function with

$f(F) = c(F) + \sum\limits_{(i,j)\ \in\ F} w_{ij}\ \qquad (7)$

for all F ⊆ E(G). The function $f:\ 2^{E(G)}\ \rightarrow\ \mathbb{R}$ is called Potts function.

Computing the partition function is (in general) a difficult task. However, it can be approximated in reasonable time.

### Approximation of the partition function for q→∞

The approximation of the partition function can be determined using the Potts function. Thus, let

$\scriptstyle \begin{matrix} f^* & = & \max\limits_{F\ \subseteq\ E(G)} f(F)\qquad \qquad \ and\qquad (8) \\ \Psi^*_G & = & \{F\ \subseteq\ E(G):\ f(F) = f^*\}\qquad (9) \end{matrix}$

be the maximum function value and the set of optimum solutions to the maximization problem, respectively.
Then, because of 0  <  f(F)  <  f * for all F ⊆ E(G)\ΨG * , it holds

$q^{f^*}|\Psi^*_G|\ \le \ Z = q^{f^*}(|\Psi^*_G| + \sum\limits_{F\ \subseteq\ E(G)\setminus \Psi^*_G} q^{f(F) - f^*}).\qquad (10)$

Furthermore the lower bound holds as equality if and only if f(F) = f * for all subsets F ⊆ E(G). Applying the logarithm to formula (10) we get

$f^*\ln q + \ln |\Psi^*_G|\ \le\ \ln Z\ \le\ f^*\ln q + \ln(|\Psi^*_G| + \sum\limits_{F\ \subseteq\ E(G)\setminus \Psi^*_G} q^{f(F) - f^*}).\qquad (11)$

For q → ∞ the sum $\sum\limits_{F\ \subseteq\ E(G)\setminus \Psi^*_G} q^{f(F) - f^*}$ is converging to zero. Thus, for large numbers q it holds

$\ln Z\ \approx\ f^*\ln q + \ln |\Psi^*_G|.\qquad (12)$

For almost all possible values of Jij (and wij, respectively) there exists an unique optimum solution, i.e. | ΨG * | = 1. Then $\ln Z\ \approx\ f^*\ln q\ for\ large\ q$.

Furthermore, small variations in the values wij can cause only small changes of f * but large changes of | ΨG * | . This means that small variations of the values wij can have large influence to the partition function of the physical system.

### Optimum solutions for the partition function for q→∞

The above function is submodular and therefore polynomially solvable. Furthermore, we could use any algorithm for submodular function minimization for its solution. However for this special submodular function it is possible to design an algorithm with better worst-case running time. The latter is based on iteratively computing minimum cuts (cf. [Auriac et al. (2002)]).

Using graph theory, we show that many of these mimimum cut calls are not necessary in practice, leading to a considerably faster implementation (cf. [Fanghänel and Liers (2008)])