問題タブ [convex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
6292 参照

matlab - Matlab での凸最適化

次の最適化問題を解きたい:

非 Latex: x と mu が与えられた場合、見つける

argmin_p ||xp||_2 st ||p||_2 < mu.

ラテックス:

与えられ$\mathbf{x}$$\mu$、見つけます

これは凸集合上の凸関数です。私はMatlabを使用していますfminconが、遅すぎます。これまでのところ、検索エンジンの結果は、私が探しているものよりもはるかに理論的な資料を提供してくれました。この問題を解決したいと思ったのは私が初めてではなく、既存の効率的な Matlab 実装を見つけたいと思っていました。

0 投票する
1 に答える
901 参照

algorithm - 特定の 3D サーフェスに対する点の位置の決定

3D 凸包を計算するためのクイック ハル アルゴリズムを実装しようとしています。問題は、ポイントが特定のサーフェスを「見る」ことができるかどうかを知る必要があることです。

サーフェスには、時計回りまたは反時計回りの方向があります。

アルゴリズムの動作をグラフィカルに説明するために、小さな opengl プログラムを作成しました。

他のアルゴリズムが使用しているのを見たさまざまな方程式を試しました (正規化された外積、平面からのドットの距離)

それらはすべて、アルゴリズムで間違った手順を実行することにつながりました。つまり、特定のサーフェスがそのポイントから見えると判断したことを意味します (グラフィックで見ることができますが、そうではありません)。

表面または「面」の例。

2 つのポイントがあり、それらがサーフェスのどちら側にあるかを知りたいとしましょう。

p1 = -1、-1、-1 p2 = 1、1、1

どんな助けでも大歓迎です。

0 投票する
3 に答える
668 参照

c++ - 3点で定義される角度が内側か外側かを確認します

一連のポリラインが与えられた場合、角度タイプ(軸の原点の内側または外側)の検出に問題があることがわかりました。非常によく似た質問を何十も見つけましたが、どれも私の問題を解決しなかったので、何かが出てくることを期待してここに置きました。

角度の分類

私が持っているのはポリラインのセットだけです。(長方形に近い特定の許容誤差で)角度を見つけて、それらを内側または外側に分類する必要があります。

各ポリラインについて、頂点3 x 3を取得し、中心の頂点が角度であるかどうかを認識し、その値を0〜180度の数値として測定できます。

ここで、この角度に方向を指定する必要があります(たとえば、符号、鋭角が原点から離れる方向を向いている場合は負、中心を向いている場合は正)、次の2つの方法のいずれかで実装すると思いました。 、しかしそれらのどれも機能しませんでした。

1)「2次元外積の符号」(これは数学的に正しい用語ではないことを私は知っています):

しかし、それは左下の象限でのみ機能するようです。右上ではまったく逆の方法で機能しますが、他の象限ではねじ込まれ、理由がわかりません。

2)頂点のノルムを比較します

これは基本的なケースでのみ機能し、全体として軸を横切る(原点を含む)ポリラインはありません。すべてのケースをチェックできますが、それは避けたいと思います。

明らかに、頂点が2つのベクトル上にある2つの隣接点の間を通る線と比較して、原点の同じ側にあるかどうかを確認するなど、はるかに安全な方法があります。しかし、可能な限り最適化する必要があります。

0 投票する
0 に答える
126 参照

optimization - オンライン凸プログラミングソフトウェア

オンライン学習の方法で凸最適化を行うソフトウェアを探しています。新しい観測がある場合、最初から最適化プログラムを実行したくはありませんが、新しい観測に基づいて現在のモデルを更新します。この問題に関する調査は、http://www.cs.huji.ac.il/~shais/papers/OLsurvey.pdfにあります。

これを行うための適切に実装されたソフトウェアはありますか?

ありがとう、

0 投票する
1 に答える
788 参照

math - 反時計回りのポリゴンを時計回りのポリゴンに変換します

ポリゴン頂点の次の配列構造がある場合(ポリゴンは凸面と凹面の両方にすることができます):

ポリゴンが時計回りか反時計回りかが簡単にわかります。しかし、どうすれば変換できますか?配列を逆にすると、考えられる例では機能しますが、すべてのポリゴンで機能しますか?

0 投票する
1 に答える
971 参照

algorithm - 2D 凸包のポイントの選択

私は毎日 1 つのアルゴリズムを作成していますが、最近はこれを完成させることができませんでした。

描画するポイントのセットがあり、ペアを選択してそれらの間に線を描画し、完了時に凸包を形成したいと考えています。

私の考えは、y座標が最も低いものから始めて、次にCCWの順序で進むことでしたが、ペアを選択するための適切なアルゴリズムを作成する方法がわかりません.

この質問は実際には非常に単純です。初心者の私だけです:)

0 投票する
3 に答える
4374 参照

javascript - 多角形の凸面と凹面の角を見つける

任意のポリゴンでコーナーが凹面か凸面かを検出しようとしています。すべてのエッジペア間の角度を計算する以下の関数を作成しました。ただし、それが戻るのが内側または外側のコーナー角度であるかどうかはわかりません。私はこれについてどうやって行くのか分かりません。助けていただければ幸いです!!!!

問題

0 投票する
1 に答える
806 参照

python - 動的および/または静的直線/直交/XY 凸包

2D 動的直線凸包を処理するための効率的なアルゴリズムを探しています。

静的アルゴリズムをコード化しましたが、ほとんどの場合は機能しますが、まったく機能しないため、静的な直線凸包に関するリソースも探しています。ウィキペディアにはアルゴリズムに関する研究論文がいくつかありますが、アクセスできません。したがって、他のソースを探すか、コードの作成を手伝ってください。

Pythonのアルゴリズムである任意の助けをいただければ幸いです。

現在の静的コード:

0 投票する
3 に答える
2758 参照

c++ - 多角形の凸 C++?

C ++で座標を持つポリゴンのポイントを知るだけで、ポリゴン凸面であるかどうかをテストするにはどうすればよいですか?

0 投票する
2 に答える
3778 参照

c++ - 三角形メッシュが凹面かどうかを調べる方法は?

3 次元の三角形メッシュが与えられた場合、それが凸面か凹面かはどうすればわかりますか? それをチェックするアルゴリズムはありますか?その場合、小さな凹みを無視する許容範囲を定義すると便利です。

凹凸図

画像ソース: http://www.rustycode.com/tutorials/convex.html