Edit
FindInstance
work fine when the region doesn't contain it's boundary.
f[x_, y_] = x - y^2 Cos[y];
g[x_, y_] = -y + x*Sin[x];
reg = ImplicitRegion[{-10 < x < 10, x < y < 10}, {x, y}];
pts1 = {x, y} /.
FindInstance[{f[x, y] == 0,
g[x, y] == 0, {x, y} ∈ reg}, {x, y}, Reals, 20];
ContourPlot[{f[x, y], g[x, y]}, {x, y} ∈ reg,
PlotPoints -> 100, MaxRecursion -> 0,
Epilog -> {PointSize -> Large, Red, Point /@ pts1}]

f[x_, y_] = x - y^2 Cos[y];
g[x_, y_] = -y + x*Sin[x];
reg = ImplicitRegion[{-10 < x < 10, x < y < 10}, {x, y}];
plot = ContourPlot[{f[x, y] == 0, g[x, y] == 0}, {x, y} ∈
reg, PlotPoints -> 100, MaxRecursion -> 0, PlotRange -> All,
AspectRatio -> Automatic];
intersections =
Graphics`Mesh`FindIntersections[plot,
Graphics`Mesh`AllPoints -> False];
roots = {x, y} /.
FindRoot[{f[x, y] == 0, g[x, y] == 0}, {{x, #1}, {y, #2}}] & @@@
intersections;
Show[plot, Graphics[{PointSize[Large], Red, Point /@ roots}]]

Original
Since FindInstance
or NMinimize
can not work for the case as below, we have to try to use ContourPlot
to draw such plot and locate the initial point.
f[x_, y_] = -Cos[y] + 2 y Cos[y^2] Cos[2 x];
g[x_, y_] = -Sin[x] + 2 Sin[y^2] Sin[2 x]; plot =
ContourPlot[{f[x, y] == 0, g[x, y] == 0}, {x, y} ∈
ImplicitRegion[{y > x, 0 < x < 2}, {x, y}], PlotPoints -> 50,
MaxRecursion -> 2, PlotRange -> All, AspectRatio -> Automatic];
pts = Graphics`Mesh`FindIntersections[plot,
Graphics`Mesh`AllPoints -> False]
FindRoot[{f[x, y] == 0, g[x, y] == 0}, {{x, #1}, {y, #2}}] & @@@ pts
(* FindInstance[{f[x,y]==0,g[x,y]==0,y>x,0<x<2},{x,y},Method-> Automatic]//N *)
(* NMinimize[{f[x,y]^2+g[x,y]^2,y>x,0<x<2},{x,y}] *)
{x -> 0.24248, y -> 0.510362}

NSolve[]
has improved a lot that it should now be possible to make region-based constraints; otherwise, have you already seen this? $\endgroup$NMinimize[F[x, y], {x, y} \[Element] Disk[], Method -> {"RandomSearch", "SearchPoints" -> 1}]
helpful? $\endgroup$f[[x,y]
andg[x,y]
byPiecewise[{{1, x >= xi && x <= xj && y - yi >= (yj - yi)*(x - xi)/(xj - xi)}, {0, True}}]
. I am not sure whetherFindRoot
handles discontinuous functions. $\endgroup$