タグ付けされた質問 「optimization」

このタグは、関数の(制約付きまたは制約なし)最小化または最大化のメソッドに関する質問を対象としています。

2
凸問題が最適化しやすいのはなぜですか?
質問に対するこのトップアンサーに動機付けられた:最適化において、凸性は準凸性よりもなぜ重要なのですか?、私は今、なぜ凸問題が最適化しやすい(または少なくとも準凸問題より簡単である)かを理解したいと思っています。 凸最適化の最も効率的なアルゴリズムにはどのようなものがありますか?それらは準凸問題で効果的に使用できないのはなぜですか?

1
N体シミュレーションの最適化、名前または既存の作業の検索
WebGLで視覚化したN体シミュレーションの開発中に、最適化を考案しましたが、名前があるかどうか疑問に思っています。これまでに行われたことがない可能性は低いと思います。 これは次のように機能します。最初のタイムステップで、すべてのペアの反復を作成します。その反復中、各パーティクルについて: すべての密接な相互作用をリストに保存します-この相互作用に近いすべての粒子を表します。これらの相互作用は、それ以降、タイムステップごとに評価されます。このリストには通常、少数のエントリが含まれます。 他のすべてのパーティクルで反復し、パーティクルと一緒に保存する正味のフォースを計算します。したがって、この正味の力はタイムステップ間で記憶され、継続的に粒子に適用されます。 次に、シミュレーションが最初のタイムステップを過ぎてラウンドロビン方式で続行されると、各タイムステップは、少数の粒子の近接相互作用と正味の遠方力のリストを更新します。そのため、特定の数のタイムステップ(たとえば1000)を超えると、すべてのパーティクルの密接な相互作用と正味の遠方の力が更新されます。更新しないものは、それらの密接な相互作用をチェックし、正味の遠方の力を適用します。この例では、各時間ステップの計算の複雑さのようなものであるの代わりにN 2。N2/ 1000N2/1000N^2 / 1000N2N2N^2 これをある程度正確にするための秘訣は、「密接な相互作用」をよりよく識別することです。近接性が最適な指標ではない場合もあります。質量や相対速度なども考慮できます。「最も重要な相互作用」の方がいいかもしれません。または、「変更の可能性が最も高い、すぐに相互作用」。 この最適化により、すべてのペアの方法よりも相互作用する粒子が多くなりますが、 O()で表現する方法がわかりません。これは、タイムステップごとに完全なソリューションを作成するのではなく、古いものを(わずかに正しくない)再利用するためです。情報を収集し、時間の経過とともに計算量を分散させます。 (免責事項:私のwebglシミュレーションにも影響を受けるだけの「vfx」パーティクルがあります、重力のて効果を往復しないため、表示されるほど高速ではありません) この最適化手法には名前がありますか?

2
可変スペースのサイズを削減するための最適化アプローチの名前
過剰に最適化する変数が多数ある最適化問題を扱っています。たとえば、これらの変数を、y、zと呼び、関数f (x 、y 、z )を最小化したいとします。私が使用している最適化方法では、すべての変数の最適化を一度に処理できません。代わりに、他の変数を固定したまま、一度に1つの変数を最適化することで問題を単純化しています。xxxyyyzzzf(x,y,z)f(x,y,z)f(x,y,z) つまり、とz = z 0を修正し、xに対してのみ関数を最適化します。この1D最適化により、いくつかの最適値x ∗が得られます。次に、x = x ∗、z = z 0を修正し、yで最適化します。これは必ずしもグローバルに最適なソリューションを提供するわけではありませんが、ローカルミニマムを生成するはずです。y=y0y=y0y=y_0z=z0z=z0z=z_0xxxx∗x∗x^*x=x∗x=x∗x=x^*z=z0z=z0z=z_0yyy このメソッドの名前が何であり、それに関する情報がどこにあるかを知りたいのですが。また、より適切なコミュニティがある場合は、お知らせください。ありがとう 編集:解が収束するまで、最適化は、次にy、次にz、次にxと続きます。xxxyyyzzzxxx

2
2つの異なるメッシュの幾何学的差異を定量化する方法
2つのメッシュが幾何学的にどのように異なるかを表す値を生成する方法またはアルゴリズムを探していますが、トポロジは異なります。 例としては、FEメッシュが適用されたCADデータと、製造されて3D三角形メッシュにスキャンされた後の部品があります。製造されたパーツは、CADパーツと幾何学的に若干異なりますが、適用されたメッシュは完全に異なります。 それらが幾何学的にどれほど類似しているか、または類似していないかの測定値を生成するための良い方法は何ですか

1
次の式を計算する改良された方法はありますか?
対称行列と任意の行列X \ in \ mathbb {R} ^ {n \ times n}、およびベクトルv \ in \ mathbb {R } ^ {n \ times 1}、O(n ^ 2)時間で次の式を計算することは可能ですか?Y∈Rn×nY∈Rn×nY \in \mathbb{R}^{n \times n}X∈Rn×nX∈Rn×nX \in \mathbb{R}^{n \times n}v∈Rn×1v∈Rn×1v \in \mathbb{R}^{n \times 1}O(n2)O(n2)O(n^2) diag(XTYX)⋅vdiag(XTYX)⋅vdiag(X^TYX) \cdot v ここで、diag(X)diag(X)diag(X)は、主な対角要素がXの要素に等しく、非対角要素が0に等しいn×nn×nn \times n行列を返します。X^ TはXの転置行列です。XXXXTXTX^TXXX

1
乗数の交互方向法の背後にある直観
私は最近ADMMに関する多くの論文を読んでおり、それを使用していくつかの問題を解決しようとしましたが、そのすべてが非常に効果的でした。他の最適化手法とは対照的に、この手法がどのように、そしてなぜ効果的であるかについては、直感がわかりません(もちろん、いくつかのケースで収束分析を見てきましたが、あまり洞察力がありませんでした)。ADMMの背後にある直感はありますか?それを最初に使用した科学者はどのようにしてこのアイデアを思い付きましたか?いくつかの幾何学的な直感が最善ですが、だれでも持っている洞察は役に立ちます。

1
効率的な重力場の実装
私はphysics.stackexchangeについて同様の質問をしましたが、このウェブサイトについては無知でした。 私は基本的に重力場を実装する効率的な方法を探しています。 何千ものオブジェクトが入った巨大な2Dスペースがあります。次に、これらのオブジェクトが互いの重力によってどのように影響を受けるかをシミュレートする必要があります。 オブジェクトをコレクションにソートし、コレクション内の個々のオブジェクトではなく、コレクション外のすべてのオブジェクトをそのコレクションと照合することは可能だと思いました。私はすぐにこれが単に不可能であることに気づきました。複数のオブジェクトの重力場は、1つの質量と距離だけで計算される1つの均一場として表すことはできません。 シミュレーション内のすべてのオブジェクトは、球と見なすことができます。それが合理的に現実的に見える限り、私は近似で大丈夫です。

3
多くの小さな行列に対する行列-ベクトル乗算の最適化
私は行列-ベクトル積の高速化を検討していますが、私が読むすべては非常に大きな行列に対してそれを行う方法についてです。私の場合、行列は小さいですが、実行しなければならない回数は非常に多いです。 これを最適化する方法はありますか?小さな行列と小さなベクトルで構成される1つの大きなベクトルから非常に大きな対角ブロック行列を作成し、大きな行列ベクトルの高速化の手法を使用する方が高速でしょうか?または、グローバルマトリックスとベクトルを設定すると、そこでメリットが失われますか?

2
ノルムの不等式制約に対処する方法
(凸)最適化タスクを解決したい: 以下の2つの制約を受ける R ‖ X I ‖ - X T I Z ≤ 0maxr,zrmaxr,zrmax_{r,z}\quad r ‖ Z ‖ ≤ 1 R ≥ 0r∥xi∥−xTiz≤0∀i=1,…,Nr‖xi‖−xiTz≤0∀i=1,…,Nr\|x_i\| - x_i^Tz \leq 0 \qquad \forall i=1,\dots, N ∥z∥≤1‖z‖≤1\|z\| \leq 1 r≥0r≥0r\geq0 スカラーであり、 zはベクトルであり、 X 私のは、同じ次元のベクトルであり、 ‖ ⋅ ‖は簡単のEuClあります。規範。実行可能領域は空ではないと想定できます。 これを解決する簡単な方法はありますか?私はなしであるため、これは簡単なはずだと思う ‖ Z ‖ ≤ 1制約これは単なる線形プログラムです。私にソフトウェアパッケージを紹介する前に、この種のタスクに役立つ一般的なアプローチについてのヒントを教えてください。 ありがとうDGrrrzzzxixix_i∥⋅∥‖⋅‖\|\cdot\|∥z∥≤1‖z‖≤1\|z\|\leq 1

2
既知のポテンシャルサーフェス上の最小パス
グリッドで既知の潜在的なサーフェスの最小値の間の最小パスを検索しています。 (ソース:http : //www.math.nus.edu.sg/~matrw/string/) パス上の任意の点は、パスに垂直なすべての方向で最小になる可能性があります。 このパスを計算するSciPyメソッドまたは他のPythonパッケージはありますか?未知の表面を検索できる方法を探しているのではありません。 編集:障壁が最も低いパスを検索しています。

4
シンプレックス法を実現可能な内部ポイントから開始するにはどうすればよいですか?
線形計画問題の実行可能な解決策を生成する1つのアルゴリズムがあります。ただし、これはコーナーポイントではない可能性が非常に高いです。このため、制限付きシンプレックスソルバーの最初の実行可能なソリューションとして直接使用することはできません。このソリューションから使用可能なコーナーポイントを効率的に見つけるにはどうすればよいですか? 簡単に言うと、実現可能な内部ポイントからシンプレックス法を開始するにはどうすればよいですか?

2
遺伝的アルゴリズムvs共役勾配法
シミュレーションの結果が実験構造にできる限り近づくように、分子フレームワークのいくつかの力場パラメータを最適化しようとしています。 以前は、本質的にランダムにパラメーター空間をサンプリングし、最適に機能する組み合わせを選択し、変異パラメーターのセットを作成し、目的の関数に最適なパラメーターが得られるまでこのプロセスを繰り返す遺伝的アルゴリズムを作成しました。また、アルゴリズム自体のいくつかの最適化も実行します。ここで、変異した値の分布は、より高速な収束を優先するように最適化されます。 私のアドバイザーは遺伝的アルゴリズムについて聞いたことがなく、彼が推奨する方法、つまり共役勾配法とシンプレックスアルゴリズムについて聞いたことがありません。 私の状況では、目的関数は実験的な場所からのすべての原子の偏差の関数です(つまり、構造最適化です)。システムは4-10K原子です。CGMやシンプレックスアルゴリズムの学習に時間を費やす価値はありますか?3つのうち、この状況に最適なのはどれですか。

1
剛体運動によってあるセットのポイントを別のセットにフィットさせる
この問題を明確に説明する方法がよくわからないので、ご容赦ください。私は3つの正規直交単位ベクトルと位置、コンピューターグラフィックスの標準的な4x4変換行列のベースを持っています。 また、その空間にいくつかのポイント(オフセット)があり、ワールドスペースに変換します。次に、ポイントがわずかに摂動されます。次に、摂動されたポイントを表すのに最も近い新しい基準を見つけたいと思います。 元のオフセットを尊重したいので、主成分を見つけるのとはまったく異なります。それが理にかなっている場合。新しい各ポイントからそれぞれの開始位置へのスプリングのように。答えは最小二乗問題を解決することだと思いますが、頭が痛いので調べました。 誰かが簡単に説明してくれませんか。私は閉じた形のソリューションを好みますが、反復的なソリューションも大丈夫でしょう。どうもありがとう

1
この「買い物かご」の最適化問題の正しい定式化とは何ですか。どうすれば効率的に解決できますか?
次の問題の解決策を探していますが、賢明にそれを定式化し、それを解決するための適切なアルゴリズムを見つけるのに苦労しています。 ショッピングバッグに入れられたアイテムのリストを考えてみましょう:1、2、3、4 ... 各アイテムは、1つ以上のプロモーションの一部にすることができます:A、B、C、D 割引の価値を最大化するように、プロモーションのセットを適用します。アイテムは複数のプロモーションに参加できませんが、各プロモーションは複数回適用できます。 プロモーションはさまざまな方法で定義できますが、今のところ、「2つの対象アイテムを購入してXを節約」というタイプを検討しているだけなので、ここから一般化できると期待しています。 私の例は: プロモーションA-購入2割引8 プロモーションB-購入2割引10 プロモーションC-購入2保存6 アイテム1-A、Bの対象 項目2-Bの対象 項目3-A、Cの対象 アイテム4-B、Cの対象 プロモーションの正しい適用は、アイテム1に対して3、Bに対して2、4であることが簡単にわかります。これにより、合計で18割引になります。 大きなケースでは困難になるため、アルゴリズム的に解決する必要があります。 私は以下を試しました: 適用可能なプロモーションの可能な組み合わせをすべてリストアップしてください。 明らかに貧弱なものはすべて破棄します(例:値の高いプロモーションの直接コピー)。 他のプロモーションと重複しないものを適用します(たとえば、アイテム1と2がプロモーションAに対してのみ有効である場合、そのプロモーションを適用します)。 残りのセットを取得し、結果に対してブランチアンドバウンドタイプの検索を試みます。 ただし、これには時間がかかる場合があります(同様の割引のある大規模なセットの場合)。 これは一種のナップザックまたは割り当て問題だと思いますが、私はそれを賢く書くことができません。うまく書けなくては解決できません。 これは問題の認識されたバリアントですか?特にそれを解決するのに役立つ擬似コードでそれを攻撃する助けは大歓迎です

2
クライミングホールドカラーを壁のセクターに割り当てるアルゴリズムを探す
以前にこの質問をstackoverflowに投稿しましたが、オフトピックとして閉じられました。私はそれがここで生き残ることを望みます。 私のクライミングジムでは、ルートは時々再設定する必要があります。次の規則が適用されます。 私たちは、さまざまな量のさまざまな色で登りを保持しています。-セクターにルートを設定する場合、混乱を避けるために、そのセクターまたは近くのセクターに同じ色の他のルートを設定してはなりません。 白/灰色または赤/ピンクなど、一部の色の組み合わせは、セクターで避ける必要があります。 目標は、各セクターに4つのルートを設定することですが、4つが上記のルールに違反する場合は、それより少なくてもかまいません。 今までに2つの異なるアプローチを試しました。1つ目はSimulated Annealingで、ランダムなパターンの色(ただし、指定された色の重み)で壁を初期化し、各色の組み合わせの悪さを計算しました。この悪さは、1つのセクターとその近隣のセクターの組み合わせについても計算されました。各反復で、最悪のセクターからランダムに選択されたルートが、ランダムに選択された他のセクターからのルートと交換されました。これはある種の収束を示しましたが、結果は使用できませんでした(つまり、結果の状態には2色または3色のセクターが含まれていました)。 それから反対側から問題に取り組み、空の壁から始めました。今回は、すべての色に1つのセクターから隣接するセクターに減衰する濃度がありました。同様の色の濃度も増加しました。つまり、赤いルートは、セクターとその周辺のオレンジの濃度を増加させました。重み付けされたランダムな色のソース(バケット)により、壁の次の色が得られました。これは、この色の濃度が最も低いセクターに配置されました。濃度が特定のしきい値を超えた場合、色は追加されませんでした(ただし、バケットに戻されました)。結果の状態にダブルカラーが含まれていなかったため、これは部分的に成功しました。 だから:上記のルールを考えると、この問題を解決するための適切なアルゴリズムは何でしょうか?必要に応じて、情報を追加させていただきます。 編集1-詳細: 私のテストケースには15のセクターがあります。 各セクターには4つのルートが含まれている必要があります 実際のジムには平均50セクターの建物が3つあります 一部のセクターは柱の周りに配置され、一部は屋根で接続されています 約10種類のホールドカラーがあります セクターの高さは6(初心者セクション)から20メートル(13垂直+ 7屋根)の間で変化するため、ホールドの消費量は異なります。ただし、平均は約12で、これは一定と見なすことができます。 各色の量には限りがあり、量は等しくありません いくつかの色はより簡単で、いくつかはより困難です(つまり、どんな困難でも黄色のルートを作成できますが、子供のために非常に簡単なオレンジのルートを作成することはほとんど不可能です) 一部のセクターは「より簡単」なので、簡単な色を使用する必要があります(これはオプションです。ルートセッターは、広範囲で困難または簡単にすることができます)。 セクター内または隣接するセクター内でどの色がうまく調和し、どの組み合わせがうまくいかないかを安全に判断できます。白と黒(コンボが悪い)など、いくつかの驚きがあります。ゴム(靴)またはチョーク(手)が残っていると、どちらも灰色になります。 一部の保持色は、紫/白(縞模様)のような組み合わせです。 編集2:遺伝的アルゴリズムに関するいくつかの質問 ParadisEOをダウンロードしてコンパイルし、IDE(Code :: Blocksを使用)でQuickStartサンプルをコンパイルしました。ParadisEOは、単一目的と多目的GAを備えた遺伝的アルゴリズムを提供します。GertVdEは、各セクターの適合度を計算し、すべてのセクターの適合度の合計を単一の目的として最大化することを提案しました。また、多目的GAを使用して、各セクターの適応度を最大化できますか?それは約50の目標になります。 また、私は賢明なクロスオーバー関数の定義に苦労しています。各色の最大量が固定されているため、交差すると違法な状態になる可能性があります。以前に与えられた最大量よりも多くを許可すると、パターン全体が、厄介な色が捨てられた「厄介な」組み合わせの繰り返しに収束する可能性があります。一方、最大に達するまで余分な色を捨てて、クロスオーバー機能を非保守的にすることもできます。 (私は遺伝的アルゴリズムに完全に新しいです)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.