問題タブ [heuristics]

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 投票する
8 に答える
3485 参照

algorithm - コンピュータのチェスの木の探索における最新技術とは?

速度の数パーセントを与える小さな最適化には興味がありません。私は、アルファベータ検索の最も重要なヒューリスティックに興味があります。そして、評価関数の最も重要なコンポーネント。

私は、(改善/コードサイズ) 比率が最大のアルゴリズムに特に興味があります。(ない(改善/複雑さ))。

ありがとう。

PS Killer ムーブ ヒューリスティックは完璧な例です。実装が簡単で強力です。ヒューリスティックのデータベースは複雑すぎます。

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

model-view-controller - MVC でコントローラーに名前を付ける必要がありますか? いつ新しいものを作成する必要がありますか?

どの MVC フレームワークにも当てはまる質問があります。私は Zend Framework MVC を使用しています。

いつ新しいコントローラーを作成する必要がありますか? コントローラ層は正確に何を定義する必要がありますか?

私は MVC を使用していくつかのアプリを作成し、徐々に再利用できるようにしましたが、コントローラー クラスの名前付けには常に苦労していました。ほとんどの場合、どの URL リクエストにも一致するため、ビジネス/フロント エンド ロジックに一致します。しかし、場合によっては、完全に恣意的に思えることもあります。

従うべきヒューリスティック/ガイドラインを持っている人はいますか? MVC、特に PHP に関する誇大宣伝のように思えますが、実際の規約やヒューリスティックに関するデータはほとんどありません。整理されていない MVC アプリケーションを作成するのは非常に簡単なので...

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

antivirus - ウイルス対策プログラムは、EICAR テスト ウイルスをどのように検出しますか?

EICAR テスト ウイルスは、ウイルス対策プログラムの機能をテストするために使用されます。ウイルスとして検知するには、

ウイルス対策プログラムには、テスト ウイルスのウイルス定義が必要です。

また

ヒューリスティックはそれを疑わしいパターンとして検出し、ウイルスとして検出します。

(私は、AV プログラムがダウンロード中にファイルを削除するのを見たことがありますが、ウイルスを EICAR テスト ウイルスとして識別せずに.なの?)

0 投票する
8 に答える
455 参照

spam-prevention - スパマー/ボットを発見するためのヒューリスティック (フォーラム、ブログなど)

私が考えることができる方法は次のとおりです。

  1. アクション間の時間を測定します。
  2. 投稿の内容を比較するか (あまりにも類似している場合)、投稿されたリンクだけを比較することをお勧めします。
  3. ユーザーがアクティブな期間の分布を確認します (ユーザーがアクティブな場合、たとえば 1 時間ごとに 1 週​​間投稿すると、スーパーマンまたはボットがここにいます)。
  4. いくつかの特別なアクティビティが予想されます: stackoverflow のように、ユーザーがユーザー名のリンク (上部中央) を押して、新しい回答、コメント、質問などを表示することを期待します。
  5. (chakrit によって追加) 投稿内のリンクの数。
  6. ヒューリスティックではありません。ユーザー ログインに非同期 JS を使用します。(ボットプログラマーの生活を少し難しくするだけです)。
  7. (Alekc が追加) ヒューリスティックではありません。ユーザーエージェントの値。
  8. そして、どうすれば Google のアプローチを忘れることができますか (Will Hartung が言及)。ユーザーが誰かをスパムとしてマークできるようにします。十分な数のスパム投票は、これがスパム ユーザーであることを意味します。(十分なユーザー数を計算するのは、ここでの作業です)。

他にアイデアはありますか?

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

python - ファイルからビットマップを抽出する

仕様が不明なやや複雑なファイルで、特に非圧縮のビットマップファイル(.BMP)が含まれている場合、Pythonでどのように抽出しますか?
「BM」タグをスキャンして、次のバイトがBMPヘッダーに「似ている」かどうかを確認しますか?

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

image - 写真の向きを検出するアルゴリズム

画像の向きに関する EXIF メタデータが利用できない場合でも、写真を自動的に回転させたいと考えています。

写真の向きを検出するための適切なアルゴリズムはありますか? 画像はデジタルカメラで撮影したものです。アルゴリズムが完全に機能する必要はありませんが、写真を適切に回転させるために必要な人間の操作の量を削減できればメリットがあります。

このトピックに関する次の 2 つの論文を見つけました。

他の研究、特に実装へのポインタは高く評価されます。

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

yahoo-pipes - Yahoo-Pipes、ベスト プラクティス: 「文字列正規表現を使用したループ」と「正規表現」

「Loop with a String Regex」モジュールと「Regex」モジュールのどちらを使用するかを決定する際に考慮すべき有用なヒューリスティックは何ですか?

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

html - HTML セクション ドキュメントのコンテンツの検索

これは実際にはプログラミングの問題ではなく、アルゴリズムの問​​題です。

問題: HTML ページの「コンテンツ」セクションを見つける。

「コンテンツ」とは、ノイズのない、単に「ページの実際のコンテンツ」である、人間が見たページ コンテンツを含む DOM を意味します。問題が明確に定義されていないことはわかっていますが、続けましょう... たとえば、ブログ サイトでは、これは通常簡単です。特定の投稿を閲覧するとき、通常、ページの上部にいくつかのツールバーがあり、おそらくいくつかのナビゲーション要素がありますLHS と、コンテンツを含む div があります。HTML からこれを理解しようとするのは難しい場合があります。幸いなことに、ほとんどのブログには RSS フィードがあり、この特定の投稿のフィードには <description> セクション (または <content:encoded>) があり、これはまさにあなたが望むものです。したがって、コンテンツの定義を洗練するために、これは興味深い部分を含むページ上の実際のものであり、すべての広告、ナビゲーション要素などを削除します. そのため、RSS があれば、ブログからコンテンツを見つけるのは比較的簡単です。他の RSS サポート サイトも同様です。

ニュースサイトはどうですか?多くの場合、ニュース サイトには RSS がありますが、常にではありません。では、ニュース サイトでコンテンツを見つけるにはどうすればよいでしょうか。もっと一般的なサイトはどうですか?多くの Web ページ (もちろんすべてではありません) には、コンテンツ セクションとその他のセクションがあります。「興味深い」セクションとあまり興味のないセクションを見つけるための優れたアルゴリズムを思いつくことができますか? 変わらない部分と変わる部分でしょうか。

私は自分自身を明確にしたことを願っています...ありがとう!

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

algorithm - 等角図の正確な A* 検索ヒューリスティック?

A* 検索アルゴリズムの実装を作成しました。問題は、私が現在使用しているヒューリスティックが正方形のグリッドでのみ正確に機能することです。私のマップは等角図であるため、ヒューリスティックは実際のマップのレイアウトを考慮していないため、セル間の距離が考慮されていません。

更新:大規模ログ記録と分析の後 (平凡さを理解しようとして多くの時間を費やしていると読んでください)、現在のヒューリスティックが非常にうまく機能するという結論に達しましたが、1 つの小さな例外があります。斜め移動。

これは、アイソメsqrt(2)マップ上で実際には斜めの移動よりも何倍もコストがかかる直線の移動が、斜めの移動として計算されることを意味します。問題は、アイソメ レイアウトで正しい結果が得られるように現在のヒューリスティックを変更するにはどうすればよいかということです。を単純に置き換えたり、その逆を行ったりするだけでは機能しませんdiagonalstraight

地図のレイアウト

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

nlp - Project Gutenbergのテキストからヘッダー/フッターを削除するにはどうすればよいですか?

言語学習プロジェクトのコーパスとして使用するために、プロジェクトグーテンベルクのテキストからライセンスを取り除くためにさまざまな方法を試しましたが、教師なしで信頼できるアプローチを思い付くことができないようです。私がこれまでに思いついた最高のヒューリスティックは、最初の28行と最後の398行を削除することです。これは、多数のテキストで機能しました。テキストを自動的に削除する方法に関する提案(多くのテキストで非常に似ていますが、それぞれの場合にわずかな違いがあり、いくつかの異なるテンプレートもあります)、およびそれを確認する方法に関する提案テキストは正確に削除されているので、非常に便利です。