I have converted the problem "Anyone who owns a rabbit hates anything that chases any rabbit." to FOL,
$∀x∃y [Rabbit(y)∧Owns(x,y) → ∀z∀w [Rabbit(w)∧Chase(z,w) → Hates(x,z)]]$
But the actually answer says FOL is
$∀x∀y [Rabbit(y)∧Owns(x,y) → ∀z∀w [Rabbit(w)∧Chase(z,w) → Hates(x,z)]]$
I have used $∃y$ to refer "a rabbit" in the sentence because I thought "Anyone owns a rabbit" can be interpreted as "For each person, there is a rabbit that owned by that person."
Can anyone please explain why universal quantifier has been used for the variable $y$?
Thank you for your help in advance.
I'll have to disagree with both you and the answer you've found on certain points.
$\exists y$ means "there exists a $y$ (such that)". "Anyone who owns a rabbit" (you may have overlooked the italicized word; emphasis mine) means "any $x$ who owns at least one rabbit $y$". It begins a statement about such people, but it's never claimed everyone owns a rabbit.
Neither your attempt nor the given answer makes sense, as both use $\forall x$ twice, implying $x$ has two meanings. Ignoring that, however, your attempt starts saying: "for all $x$ there exists a rabbit $y$ which $x$ owns such that...", while the given answer starts, "for all $x$ and all rabbits $y$ which $x$ owns, ..."
Replacing the second $\forall x$ in each version with $\forall z$, the given answer is correct as @Kaind's answer notes. An alternative bracketing convention allows us to instead write:$$\forall x[\exists y(\operatorname{Rabbit}(y)\land\operatorname{Owns}(x,\,y))\to\forall z(\exists w(\operatorname{Rabbit}(w)\land\operatorname{Chase}(z,\,w))\to\operatorname{Hates}(x,\,z))]$$