非線形最適化問題での方向ベクトルの扱い

非常に悩み中。
方向ベクトルを2つのパラメータで最適化したいのだけれど、どう表せばいいのやら・・・


当初はp=(1,0,0)の点を角度θ、φでそれぞれz軸、y軸についての回転で表そうと思っていたのだけれど、よく考えるとこれ、方向がy軸方向になった時にφが任意になってしまうんだよね・・・
任意っていうのは最適化問題だとまずいよなぁ。
直接数値で求めようかとも思ったのだけれど、数値で求めると今度はノルムを1にする(単位方向ベクトルにする)のが上手くいかない。
ステップ幅に拘束をつけるやり方がよくわからないので、ノルムが1を越えてしまう。
無理やり正規化しても、結局のところ最適化手法で求めたパラメタと違う値になるからうまく収束しない(定数倍変化させてしまっているので、そもそも最適化手法のパラメタ導出→代入→新たなパラメタ導出の繰り返しになっていない)。


わかってしまえば簡単な問題のような気もするけど、どうしたものやら。