  We present the surface worm algorithm (SWA) which is a generalization of the
Prokof'ev Svistunov worm algorithm to perform the simulation of the dual
representation (surfaces and loops) of Abelian gauge-Higgs models on a lattice.
We compare the SWA to a local Metropolis update in the dual representation and
show that the SWA outperforms the local update for a wide range of parameters.
