  Let $H\subseteq \mathbb{N}^d$ be a normal affine semigroup, $R=K[H]$ its
semigroup ring over the field $K$ and $\omega_R$ its canonical module. The
Ulrich elements for $H$ are those $h$ in $H$ such that for the multiplication
map by $\mathbf{x}^h$ from $R$ into $\omega_R$, the cokernel is an Ulrich
module. We say that the ring $R$ is almost Gorenstein if Ulrich elements exist
in $H$. For the class of slim semigroups that we introduce, we provide an
algebraic criterion for testing the Ulrich propery. When $d=2$, all normal
affine semigroups are slim. Here we have a simpler combinatorial description of
the Ulrich property. We improve this result for testing the elements in $H$
which are closest to zero. In particular, we give a simple arithmetic criterion
for when is $(1,1)$ an Ulrich element in $H$.
