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

アルゴリズムは、計算、データ処理、および自動推論に使用されます。より正確には、アルゴリズムは、関数を計算するための明確に定義された命令の有限リストとして表現される効果的な方法です。

3
PyGame QIXクローン、塗りつぶし領域
私はPyGameで遊んでいます。 今私はQIXクローンを実装しようとしています。 ゲームループがあり、画面上でプレーヤー(カーソル)を移動できます。 QIXでは、プレーヤーの動きによって画面に痕跡(尾)が残り、ポリラインが作成されます。 画面境界を持つポリラインがポリゴンを作成する場合、領域は塗りつぶされます。 どうすればこの動作を実現できますか? 尾をどのようにメモリに保存しますか? 塗りつぶす必要のある閉じた形状を構築するときにそれを検出する方法は? 私は正確な実用的なソリューションを必要としません、いくつかのポインター、アルゴ名はクールでしょう。 開始時、灰色の境界線のみがあり、プレーヤーがカーソルを移動できます。 最初のシナリオ: ユーザーは、カーソルをポイントAからポイントBに移動し、赤いマルチラインをポイントCまで描画します。この時点で、境界を越えているため、ポイントAは自動的にポイントCに接続され、塗りつぶされるべきポリゴンが作成されます(私の図面上のそのオレンジ色のもの)。ポリゴンの塗りつぶしはPyGameでは非常に簡単です。私がポイントのシーケンスを提供し、残りはPyGameが処理するためです。 2番目のシナリオ: ユーザーはボーダーをポイントDに移動し、そこからラインEに線を引きます。前のポリゴンのラインと交差しているため、ラインとボーダーで別のポリゴンを作成できるので、それも塗りつぶす必要があります。(緑色のもの)。 3番目のシナリオ: プレイヤーはポリゴン上をさらに移動し(既存のポリゴンライン上を移動できます)、ポイントGからポイントFにラインを描画します。ここでも、境界線と既存のラインのため、別のポリゴン(青色のポリゴン)を塗りつぶす必要があります。

3
ランダム化された天気のアルゴリズム
天気のモデリングに苦労しています。単一のアスペクトのモデリングは簡単です-いくつかの正弦波パターン+ランダムノイズ。しかし、1つ以上が私の心を吹き飛ばしています。風、葉っぱ、雨、雪をランダムにすることはできません。雨や雪のような単純な衝突は決して起こらないはずです。 これに加えて、多分それぞれの「強度」レベルが欲しいです。しかし、これはメインロジックの後に来る可能性があります。 天気はMySQLに保存されます。 提案はすべて大歓迎ですが、郵便番号にpingを送信してそこから天気を取得することを提案しないでください。 実際、以下のすべての回答からの提案を利用して、私はこの非スケールの分布を考え出しました: 各フィーチャはランダムノイズで計算され、3つの組み合わせによりオーバーレイ効果が生成されます。 (気温<0)および(湿度> 65)=>雪

2
プレーヤーが作成した構造が3Dブロックベースのゲームのテンプレートと一致するかどうかを判断する
免責事項:これは恐ろしいMinecraftスタイルの質問の1つですが、データ構造とアルゴリズムの質問のほうが多いと思います 私は3Dデータ構造に本当に慣れていないので、3Dブロック構造を保存および照合するための最良の方法を考えています。 現在、プレイヤーは任意のスペースにブロックを配置でき、これらのブロックが事前定義された構造と一致すると、イベントが発生します。私が現在行っている方法は、プレーヤーがブロックを配置するときに、ゲームが再帰的に各隣接ブロックをチェックして、x、y、z座標が最も低いブロックを見つけ、そのブロックをルートブロックにします。次に、ルートブロックに基づいて残りのブロックをチェックし、特定のテンプレートと一致することを確認します。問題は、テンプレートが複雑になるにつれて、私のコード(非常に非効率的)も複雑になることです。 これを行う最善の方法は、構造を定義するあるタイプのマトリックスを保存し、プレーヤーがブロックを配置するたびにマトリックスと照合することです。このタイプの問題に一致するデータ構造/アルゴリズムはすでにありますか?

2
多数の独立した俳優をリアルタイムで管理する
私は大規模なリアルタイムストラテジーゲーム(理想的には数千のユニットを同時にアクティブにする)に取り組んでいますが、驚くほど遅くなることなくすべてのユニットを一度に管理するのに問題があります。問題は、タイムステップごとにすべての位置と状態を更新するのに時間がかかることです。これを軽減するための設計パターン/方法論/ヒントを知っていますか?

2
グリッドで川をレンダリングする
ランダムな高さマップを作成したので、川を作成します。私はa *に基づいてアルゴリズムを作成し、川をピークから海に流しました。今では、それらをレンダリングするためのエレガントなアルゴリズムを考え出そうとしています。 これは2Dの正方形のマップグリッドです。川が通過するセルには、次の形式の単純な整数値があります:rivernumber && pointOrder。つまり、10、11、12、13、14、15、16 ... 1 + Nは最初の川、20、21、22、23 ... 2 + Nは2番目の川などです。これは、グリッド生成時間をマップし、ワールドが生成されるときに一度だけ実行されます。 各河川をベクトルとして扱いたかったのですが、同じ河川に枝がある場合(ノイズを入れて枝を生成するため)、点を順番に接続できないという問題があります。 2番目の代替案は、各ポイントを分析し、次が分岐でないかどうかを確認する複雑なアルゴリズムを生成することです。そうでない場合は、分岐を処理する別のアルゴリズムをトリガーしてから、本川に戻ります。非常に複雑で洗練されていません。 おそらく、これらのケースで一般的に使用されているワールド生成アルゴリズムまたはリバーレンダリングアルゴリズムに解決策があり、私にはわかりません。 任意のヒント?ありがとう!!

3
アルファベータを強化する最良のアルゴリズム?
私はAIを勉強しています。私の先生はチェスのようなゲームのソースコードをくれて、それを強化するように頼みました。私の課題は、そのゲームに実装されているアルファ/ベータアルゴリズムを改善することです。プログラマーはすでに転置テーブルを使用しています。MTD(f)はalpha / beta + memoryです(MTD(f)は私が知る限りでは最高のアルゴリズムです)。では、アルファベータ検索を強化するためのより良いアルゴリズムや、ゲームのコーディングにMTD(f)を実装するための良い方法はありますか?
8 algorithm  ai  chess 

3
タワーディフェンスゲームで複数のランダムパスを使用したパスファインディング
タワーディフェンスゲームのランダムパスファインディングについて考えました。A *は、ランダムなパスファインディングが特に必要なため、私の目的では機能しません。 ルート、出発地、目的地の地図を想像してみてください。私は複数のルートを持っています。それらはすべて、出発地から目的地まで、何らかの方法でつながっています。次のようになります。 色の説明:赤-開始点。黒-目的地; 灰色-ルート; 白-空きスペース (数字は一部のタイルへの参照として本文で使用されています) エンティティがタイルを通過するときに、次のウェイポイントをランダムに計算することを最初に考えました。しかし、それはうまくいきません。エンティティがタイル1を通過すると、上または下に移動できます。それが2になると、それは(それの位置に対して)ダウン/アップまたは右に行くことができます。 場合、それは行くアップ/ダウン、それが逆方向に行くことを意味タイル1、に行くだろう。悪い... 本当にダイナミックにしたいのですが、今何ができるかわかりません。これについてアイデアや経験を持つ人はいますか?

3
三角形のリストから頂点法線を計算する最良の方法
こんにちは、私はコンピュータグラフィックスの完全な初心者です。愚かな答えだとすみません。シンプルな3Dエンジンをゼロから作ろうとしています。実際の使用よりも教育目的のためです。 今のところ私は顔の法線のみを計算します。この方法では: Triangleのリストの中にあるSurfaceオブジェクトがあります。Triangleクラス内の法線を次のように計算します。 triangle.computeFaceNormals() { Vec3D u = v1.sub(v3) Vec3D v = v1.sub(v2) Vec3D normal = Vec3D.cross(u,v) normal.normalized() this.n1 = this.n2 = this.n3 = normal } そして表面を構築するとき: t = new Triangle(v1,v2,v3) t.computeFaceNormals() surface.addTriangle(t) これが一番いい方法だと思います…。 さて、これでうまくいきます。軽いですが滑らかにはなりません。頂点法線も計算しようとしています。(私は自分のエンジンを細管表面でテストしているので、ほぼすべての頂点が複数の三角形と共有されています) 私はこの単純なアルゴリズムを見つけました:フリップコード頂点法線 ですが.. heiこのアルゴリズムは..指数関数的な複雑さですか?(私の記憶が私のコンピュータサイエンスの背景に失敗しない場合) なにか提案を?

2
グラフからマップを作成する方法
別のソースから提供されたデータに基づいて2Dポリゴンマップを描画して、マップでのアクションの分析を容易にしたいと考えています。データの形式は次のとおりです。 1 ['2', '4', '5', '7', '17', '10'] 2 ['1', '3', '4'] 3 ['2', '11', '4'] 4 ['1', '2', '3', '11', '13', '18', '5'] 5 ['1', '4', '18', '17'] 6 ['7', '8'] ... 最初の番号はノードのIDです。次のリストには、その隣接ノードのIDが含まれています。ノードの隣接ノードの数が異なるため、ポリゴンマップを描画する必要があります。 そこで、マップ表現にボロノイポリゴンを使用しようとしました。問題は、すべての近傍関係を満たすポイントをどのように決定できるでしょうか。私の最初の試みは、多かれ少なかれ私の試行錯誤のサイクルにおけるエラーだと思います。graphvizのsfdpツールを使用して、グラフのポイント位置を取得しました。 ポイントの位置を使用すると、次のマップ表現になります。 このアプローチの問題は、たとえばノード4と1が隣接しているが、ボロノイ図ではノードの位置が原因​​で隣接していないことです。私にとって、このアプローチは失敗しました。 グーグルで、ポリゴンまたはタイルを使用してマップを生成する多くのチュートリアルを見つけましたが、与えられたデータのマップを作成する方法はまだわかりません。(複数の)六角形/三角形/正方形または混合を使用して必要なものを達成するアプローチがあると思いますが、何を検索するかわかりません。 ここで私を助けることができるキーワードまたはアルゴリズムはありますか? 更新/結果:完全を期すために:これは、受け入れられた回答の提案を使用した後の私の結果です。

2
ビットマップマスクを長方形のリストに減らすアルゴリズム?
自分でこれを書いて午後を過ごす前に、たとえ参考としても、すでに利用可能な実装があるかどうか尋ねたいと思いました。最初の画像は、長方形のリストにしたいビットマップマスクの例です。悪いアルゴリズムは、設定されたすべてのピクセルを1x1の長方形として返します。優れたアルゴリズムは2番目の画像のようになり、オレンジと赤の長方形の座標を返します。長方形が重なっているという事実は重要ではなく、返されるのは2つだけです。 要約すると、理想的な結果は次の2つの長方形(x、y、w、h)です。 [ { 3, 1, 2, 6 }, { 1, 3, 6, 2 } ]
7 2d  algorithm  sprites 

1
チェッカーAIアルゴリズム
私はチェッカーゲームのAIを作成しており、できる限り難しくするようにしています。最も困難な難題に取り組むための現在の基準は次のとおりです。 1:ブロックを探す:これは、ピースが脅迫されており、別のピースを後ろに移動して保護できる場合です。次に例を示します。 ブラックムーブ |W| |W| |W| |W| | | |W| |W| |W| |W| |W| | | |W| |W| | | | | |W| | | | | | | | | |B| | | | | |B| | | |B| |B| |B| |B| |B| |B| | | |B| |B| |B| …
7 algorithm  ai 

3
進化的手続き生成[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 2年前休業。 ゲームのコンテンツの手続き型生成で進化的アルゴリズム(EA)または遺伝的プログラミング(GP)を使用している企業または論文の例はありますか?これは業界に存在しますか? これは私が実際に見つけた唯一の場所です:http : //pcg.wikidot.com/pcg-algorithm : automatic-game-design 私はこれらの質問もチェックしましたが、PCGの回避策を知ってい ます。「手続き型生成」とは何ですか、どのように行われますか? 無限レベル 2d手続き型宇宙生成の手続き型生成

8
確定的であるランダムに見えるアイテムの配置?
私は横スクロールゲームに取り組んでおり、背景の森を生成したいと考えています。品質が同じであることを確認するために、すべての人の背景を同じにしてください。シードされた乱数ジェネレーターにもアクセスできないため、適切なシードを見つけてそこから移動できません。 アイデア?


4
長方形以外のホットスポットを作成し、クリックを検出する
不規則なホットスポットのあるゲーム(たとえば、リスク、またはParadoxのHearts of IronやCrusader Kingsなどの戦略ゲーム)については、どのようにしてください コードで、不規則な形状の非長方形のホットスポット(マップ上のテリトリーのように?)を定義しますか? ホットスポットを追跡してゲームにインポートするには、どのツールを使用できますか? 誰かがそのようなホットスポット内をクリックしたかどうかを検出するためのアルゴリズムは何ですか?
7 algorithm  gui 

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