タグ

algorithmに関するloosecontrolのブックマーク (59)

  • おねえさんを組み合わせ爆発から救う:完結編おねえさんは星になった - きしだのHatena

    おねえさんを組み合わせ爆発から救うために、経路をZDDとして表したら、すっきりと経路情報が扱えました。 http://d.hatena.ne.jp/nowokay/20121018#1350528607 あとは、このZDDを効率よく構築できれば、おねえさんを救えそうです。このZDDの構築には、クヌース先生の開発したSimpathアルゴリズムを使うと非常に効率よく構築できます。 前回生成したZDDを見ると、同じノードにまとまっているものがいくつかあることがわかります。特に後半になるとどんどん同じパターンになるものがまとめられていきます。 つまり、この経路問題のZDDを構築するときには、いかに同じパターンになるものをまとめるかが鍵になるということです。 Simpathでは、辺の端だけに注目して、同じパターンになっていればそれ以降のノードを使いまわすという考え方で、ノードをまとめていきます。 つ

    おねえさんを組み合わせ爆発から救う:完結編おねえさんは星になった - きしだのHatena
  • Boids Pseudocode

    This is an explanation of the boids algorithm explained with the use of pseudocode. It is mostly the standard algorithm as described by Reynolds [1], with a few of my own tweaks thrown in. It should be enough to get you started with programming your own boids simulation and making up your own extra routines. If you have any queries regarding this or have difficulty understanding any parts of the e

  • [空を飛ぶ鳥の群れの動きを再現するアルゴリズムの論文] Craig Reynolds: Flocks, Herds, and Schools: A Distributed Behavioral Model

    Published in Computer Graphics, 21(4), July 1987, pp. 25-34. (ACM SIGGRAPH '87 Conference Proceedings, Anaheim, California, July 1987.) Flocks, Herds, and Schools: A Distributed Behavioral Model 1 Craig W. Reynolds Symbolics Graphics Division [obsolete addresses removed 2] Abstract The aggregate motion of a flock of birds, a herd of land animals, or a school of fish is a beautiful and familiar par

  • システム・エンジニアの基礎知識

    静岡理工科大学情報学部コンピュータシステム学科菅沼研究室のページです.主として,プログラミング言語( HTML,C/C++, Java, JavaScript, PHP, HTML,VB,C# ),及び,システムエンジニアとしての基礎知識(数学,オペレーションズ・リサーチやシステム工学関連の手法)を扱っています.

  • Googleアルゴリズム200項目全てを特別公開 – マーケティングブログ

    Googleアルゴリズムの200の要素を発見しましょう!(Let’s Try to Find All 200 Parameters in Google Algorithm) は2009年に書かれた記事ですが、パンダアップデートが適用された今現在(2011年4月)でも重要項目が多く書かれているもので。 多くはGoogleの特許(合衆国特許出願0050071741)に基づいていますが、筆者のアンが自身の解析結果や予測を盛り込んでいる事で、より実践に近い内容になっています。 SEO初心者の方は、これからのウェブ制作の軸に、SEOエキスパートの方はもう一度自身のサイトを見直す目次として確認してみてはいかがでしょうか。 ドメインに関する13要因 ドメイン年齢 ドメイン取得からの長さ ドメイン登録情報(Who is情報)の表示/非表示 ドメイン種類(サイトレベルドメイン(.com や co.uk) ト

    Googleアルゴリズム200項目全てを特別公開 – マーケティングブログ
  • ランキングのつくりかた:Kenn's Clairvoyance

    遅ればせながら、あけましておめでとうございます。 先週には、ベイエリアの友人たちがやっているEchofonがPostUpに買収されるなど、幸先のよい新年のスタートとなりました。 さて、最近ホットなマーケットといえばソーシャルゲームですが、ゲームといえばリーダーボード。ハイスコアのランキング友人や見知らぬ人たちと競うのは、ビデオゲームが誕生した1970年代から欠かせない要素でした。 ところが、インターネット経由で100万人規模のプレイヤーがつながるようになってきた現在、その全体をランキングづけするのは、技術的にも大きなチャレンジとなってきました。 今回は、そのリーダーボードのつくりかたについて、ぼくらの作っているソーシャルゲーム・プラットフォームであるPankiaの運用で得られた知見を共有したいと思います。 自分の順位を知る方法 リーダーボードの基的な考え方はシンプルで、それはつまり「ユ

    ランキングのつくりかた:Kenn's Clairvoyance
  • ついに、顔を完璧にフラクタル分割する方法を思いついた!! イェイ

  • アルゴリズムの紹介

    ここでは、プログラムなどでよく使用されるアルゴリズムについて紹介したいと思います。 元々は、自分の頭の中を整理することを目的にこのコーナーを開設してみたのですが、最近は継続させることを目的に新しいネタを探すようになってきました。まだまだ面白いテーマがいろいろと残っているので、気力の続く限りは更新していきたいと思います。 今までに紹介したテーマに関しても、新しい内容や変更したい箇所などがたくさんあるため、新規テーマと同時進行で修正作業も行なっています。 アルゴリズムのコーナーで紹介してきたサンプル・プログラムをいくつか公開しています。「ライン・ルーチン」「円弧描画」「ペイント・ルーチン」「グラフィック・パターンの処理」「多角形の塗りつぶし」を一つにまとめた GraphicLibrary と、「確率・統計」より「一般化線形モデル」までを一つにまとめた Statistics を現在は用意していま

  • 「1000のアルゴリズムを持つ男」vs.「やわらか頭脳」

    「1000のアルゴリズムを持つ男」vs.「やわらか頭脳」:最強最速アルゴリズマー養成講座(1/3 ページ) 典型的なアルゴリズムをたくさん知っている人間が最強か――? いいえ、典型的なアルゴリズムを知らなくても、違ったアプローチで答えに迫る方法はいくらでも存在します。短い実行時間で正確な答えを導き出せるかを考える習慣をつけましょう。 アルゴリズマー養成講座と銘打ってスタートした連載。もしかすると読者の方の興味は、はやりのアルゴリズムや汎用的なアルゴリズムを知ることにあるのかもしれません。しかし、今回は、いわゆる「典型的なアルゴリズム」を用いずに進めていきたいと思います。 なぜ典型的なアルゴリズムを用いないのか。それは、典型的なアルゴリズムばかりを先に覚え、それだけでTopCoderなどを戦っていこうとした場合、それに少しでもそぐわない問題が出た場合に、まったく太刀打ちできなくなってしまう

    「1000のアルゴリズムを持つ男」vs.「やわらか頭脳」
  • 類似画像検索システムを作ろう - 人工知能に関する断創録

    C++版のOpenCVを使ってカラーヒストグラムを用いた類似画像検索を実験してみました。バッチ処理などのスクリプトはPythonを使ってますが、PerlでもRubyでも似たような感じでできます。 指定した画像と類似した画像を検索するシステムは類似画像検索システムと言います。GoogleYahoo!のイメージ検索は、クエリにキーワードを入れてキーワードに関連した画像を検索しますが、類似画像検索ではクエリに画像を与えるのが特徴的です。この分野は、Content-Based Image Retrieval (CBIR)と呼ばれており、最新のサーベイ論文(Datta,2008)を読むと1990年代前半とけっこう昔から研究されてます。 最新の手法では、色、形状、テクスチャ、特徴点などさまざまな特徴量を用いて類似度を判定するそうですが、今回は、もっとも簡単な「色」を用いた類似画像検索を実験してみます

    類似画像検索システムを作ろう - 人工知能に関する断創録
  • ぜひ押さえておきたいコンピューターサイエンスの教科書

    僕はバイオインフォマティクスという生物と情報の融合分野で研究を行っています。東大の理学部情報科学科にいた頃は同僚のマニアックな知識に驚かされたものですが、そのような計算機専門の世界から一歩外に出ると、それが非常に希有な環境だったことに気が付きました。外の世界では、メモリとディスクの違いから、オートマトン、計算量の概念など、コンピューターサイエンスの基礎知識はあまり知られていませんでした。コンピューターサイエンスを学び始めたばかりの生物系の人と話をしているうちに、僕が学部時代に受けた教育のうち、彼らに欠けている知識についても具体的にわかるようになってきました。 バイオインフォマティクスに限らず、今後コンピュータを専門としていない人がコンピューターサイエンスについて学ぶ機会はますます多くなると思われます。そこで、これからコンピューターサイエンスを学ぼうとする人の手助けとなるように、基礎となる参

  • はてなのCAPTCHAを破るプログラムは30分で書ける - やねうらおブログ(移転しました)

    CAPTCHAとは、スパムコメントなどを防止するための認証画像のことである。 それにしても、はてなのCAPTCHAはひどい。無いよりマシという考え方もあるのでそれについてはあまり議論する気は無いのだが、それにしてもこれを破るプログラムは30分あれば十分書ける。 具体的には、はてなのCAPTCHAには8つの好ましくない特徴と、2つの脆弱性がある。 ■ 8つの好ましくない特徴 ・画像自体のサイズが小さすぎる。→ こんなに小さいと探索量(計算量)が小さくて済む。 ・フォントにゆがみがない → フォントはある程度変形させたほうが良い。変形させてあるとテンプレートマッチングがしにくくなる。 ・フォントが固定。→ フォントは毎回変えたほうが良い。 ・フォントを回転させていない → フォントは文字ごとにある程度ランダムに回転させた方が良い。 ・フォントサイズが一定 → フォントサイズは文字ごとにある程度

  • CNET Japan

    人気の記事 1「Pixel Watch 2」の一部機能、初代モデルでも利用可能に 2024年03月05日 2マイナカードのiPhone搭載「もうちょっとお待ちを」--河野大臣が笑顔で言及 2024年03月05日 3計算アプリ「Photomath」、グーグルのアプリとして公式に公開 2024年03月04日 41ビットコインが1000万円を突破--史上初 2024年03月05日 5バンナム、シリーズ完全新作「学園アイドルマスター」--「成長を描く」にこだわり 2024年03月05日 6「Pixel」、Ultra HDR写真と10ビットHDR動画をInstagramに投稿可能に 2024年03月05日 7格安にゲームに課金できる?--「課金代行」の仕組みと手を出してはいけないワケ 2024年01月27日 8楽天の株価に連動して「楽天ポイント」が増減する新サービス 2024年03月05日 9【追記

    CNET Japan
  • ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室

    ゲームの作り方とアルゴリズムをジャンル別にまとめてみました。ゲーム制作や、プログラミングの勉強用にご活用ください。言語別ゲームプログラミング制作講座一覧もあわせてお読みください。 リンク切れがおきていたものは、URLを表示しておくので、Internet Archiveなどでキャッシュを表示させてみてください。 RPG ゲームの乱数解析 乱数を利用した敵出現アルゴリズムの解説 各種ゲームプログラム解析 FF、ドラクエ、ロマサガのプログラムの解析。乱数の計算など ダメージ計算あれこれ(http://ysfactory.nobody.jp/ys/prg/calculation_public.html) ダメージの計算式 エンカウントについて考えてみる エンカウント(マップでの敵との遭遇)の処理方法いろいろ RPGの作り方 - ゲームヘル2000 RPGのアルゴリズム ドルアーガの塔 乱数の工夫の

    ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室
  • どうなるECMAScript どうするActionScript | とんぶろ

    “[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識” というを読んだのでメモ。 感想 書は以下のような構成になっていて、概要の話からプロセス→メモリ→キャッシュ→ファイルシステム→ストレージとどんどん下の階層?に降りていくような進め方になっている。 コンピュータシステムの概要 ユーザモードで実現する機能 プロセス管理 プロセススケジューラ メモリ管理 記憶階 ... 続きを読む

    どうなるECMAScript どうするActionScript | とんぶろ
  • グーグル、辞めそうな社員を見分けるアルゴリズムを開発--WSJ報道

    Googleはどの従業員が辞めることになるか、ひょっとしたら従業員自身が自覚する前から見分けられるようになると考えている。 Googleは米国時間5月19日、同社の有名なデータ収集と分析の能力を検索結果以上のことに使用していると明らかにした。Wall Street Journal(WSJ)によると、Googleは、無料のランチやカラフルに彩られたオフィスなどの人材引きとめ策に背を向けて同社を辞めてしまう可能性のある従業員の数を算定するアルゴリズムを開発したという。 数年前まで、シリコンバレーの労働者はこぞってGoogleに押し寄せていた。一方のGoogleも精力的に人材を採用していた。しかし特にGoogleの株価が2007年後半をピークに下降するようになってからは状況が変わり、Googleは必ずしも新進の若いプログラマー起業家が才能に磨きをかけるための最高の場所とは見られなくなってしまっ

    グーグル、辞めそうな社員を見分けるアルゴリズムを開発--WSJ報道
  • OpenGLの基礎

    OpenGLは,3次元グラフィクスプログラミングにつかわれる標準的なライブラリです. ライブラリとは,プログラムの部品セットであるといえます. ライブラリを利用することで,自分で0から書かなくても, ライブラリが提供する部品を組み合わせることでプログラムを作成することができます. ここでは,OpenGLの基礎を説明します. OpenGLの概要 Ruby/OpenGL OpenGLプログラムの基的な構造 イベント,コールバック,イベントループ 2次元図形の描画 図形プリミティブ 属性 2次元ビューの設定 ビューポート OpenGLの概要 OpenGLは,3次元グラフィクスプログラミングにつかわれる標準的なライブラリで,SGI(Silicon Graphics, Inc.)がGLという同社のコンピュータ専用のグラフィクスライブラリをもとに開発したものです. OpenGL以外でよく用いられる3

  • 統計的に正しいランキングを行う方法 - Hello, world! - s21g

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ポジティブ/ネガティブ投票による正しいランキング方法が以下の記事で紹介されています。 How Not To Sort By Average Rating この計算方法では、投票数が少ない場合には分散が大きく不正確な評価で、 投票数が多くなるにつれて分散が小さく正確な評価が得られているという事を考慮しています。以下数式 これはScoreの信頼区間を表しています。 この信頼区間の下界をランキングのスコアにすれば良い事になります。 ここで、は、 です。全体に占めるポジティブ投票数の割合ですね。 は標準正規分布上の 信頼区間の有意確率です。 さて、五段階評価によるRatingに同様のテクニックを適用する場合はどうしたらいいでしょうか

  • Blunderについて - やねうらおブログ(移転しました)

    今年の第19回世界コンピュータ将棋選手権に出場したBlunderは、C#で書かれたコンピュータ将棋である。 コンピュータ将棋ではC#で書くとC++などで書かれた場合の1/4〜1/2ぐらいの速度しか出ないのだが*1、一次予選を3位で通過した。二次予選は惜しくも7位で終わったが、初出場とC#というハンデのわりには、十分な奮闘を見せたと思う。 そのBlunderのソースがこの度、公開された。 http://hp.vector.co.jp/authors/VA039571/blunder/ いまのところソースが公開されている将棋プログラムを強さ順に並べると、 GPS将棋 Bonanza Blunder うさぴょん …(以下略) こんな感じか。 GPS将棋とBonanzaが圧倒的なのは言うまでもないが、Blunderも、C++で書き直したりすれば、あとR200〜300ぐらいは上がる見込みがあるので、

    Blunderについて - やねうらおブログ(移転しました)
  • Lanczos拡縮アルゴリズムの実装 - GIOの日記

    原理 画像の拡大縮小アルゴリズムはいくつか存在します ・ニアレストネイバー ・バイリニア ・バイキュービック ・Lanczos-2 ・Lanczos-3 この中で理論上最も美しいとされているのはLanczos-3であり、漢はだまってこの方法を選ぶべきなのですが、いくつかの実装では正確な計算がされておらず、もったいない事になっています。 なので今回はできるだけ正確な高品質な画像を目指して実装してみました。 rubyで。 原理的なものはコチラが詳しいです。こんなブログを見るよりお勧め http://gwaihir.hp.infoseek.co.jp/wiki.shtml?Lanczos%E9%96%A2%E6%95%B0%E3%81%AB%E3%82%88%E3%82%8B%E7%94%BB%E5%83%8F%E3%81%AE%E6%8B%A1%E5%A4%A7%E7%B8%AE%E5%B0%

    Lanczos拡縮アルゴリズムの実装 - GIOの日記