タグ

Algorithmに関するtanakaBoxのブックマーク (301)

  • LifeWiki

    Jagged lines is a pattern constructed by Dean Hickerson in May 2005 that uses puffers to produce a line of bi-blocks that weaves back and forth in a complicated way. September 14: Mitchell Riley finds R64 duplicator, a record-breaking elementary Herschel fanout device -- a stable Spartan variant of the known Lx65 conduit, which until now has generally needed sparker support. September 4: vilc make

    tanakaBox
    tanakaBox 2013/01/14
    ロゴw
  • ウェーブレット木の世界 - Preferred Networks Research & Development

    岡野原です。ウェーブレット木の解説を統数研チャンネルにて行いました。 統数研チャンネル(プレミアム会員ならしばらくタイムシフト視聴可能)。 ウェーブレット木は万能のデータ構造であり、系列データ、全文検索、グラフ、二次元情報、フィンガープリントなど様々なデータに対して多くの操作をサポートします。 解説では大規模データの背景、ウェーブレット木の作り方、使い方、様々なデータへの適用、最前線(ウェーブレット行列)などを紹介しています。解説は拙著「高速文字列解析の世界」とあわせてみていただけたらと思います。

    ウェーブレット木の世界 - Preferred Networks Research & Development
    tanakaBox
    tanakaBox 2013/01/10
    面白い。
  • ライフゲームの世界 - 人工知能に関する断創録

    ニコニコ動画の複雑系コミュニティの発起人のはむくんがライフゲームの世界というとても面白い動画を投稿されています。Twitterでは何度かツイートしてたけど完結したのでブログでも紹介させていただきます。 ライフゲームの世界1 John Horton Conwayが提案したライフゲーム(Conway's Game of Life)の基的なルールを解説しています。また頻繁に現れる4種の物体(ブロック、蜂の巣、ブリンカー、グライダー)を紹介しています。最後の作品紹介は、P416 60P5H2V0 gunというすさまじいパターンが出てきます。グライダー銃から発射したグライダーたちが滑走路を通ります。グライダーの集合先では、発射された複数のグライダーが合体して宇宙船が組み立てられます。 ライフゲームの世界2 いろんな振動子(パルサー、タンブラー、銀河)が鑑賞できます。作品紹介では大量の振動子が勢揃い

    ライフゲームの世界 - 人工知能に関する断創録
    tanakaBox
    tanakaBox 2013/01/07
    基礎から大作まで。想像超えてたわ。
  • Dictionary of Algorithms and Data Structures

    absolute performance guarantee abstract data type (a,b)-tree accepting state Ackermann's function active data structure acyclic directed graph: see directed acyclic graph acyclic graph adaptive heap sort adaptive Huffman coding adaptive k-d tree adaptive sort address-calculation sort adjacency-list representation adjacency-matrix representation adjacent admissible vertex ADT: see abstract data typ

    tanakaBox
    tanakaBox 2012/12/24
    アルゴリズムとデータ構造辞典。移転してた。
  • [SQEXOC 2012]FFXIVで使われているAI技術〜敵NPCはどうやって経路を探索しているのか?

    [SQEXOC 2012]FFXIVで使われているAI技術〜敵NPCはどうやって経路を探索しているのか? ライター:米田 聡 スクウェア・エニックスが2012年11月23日と24日の両日開催した「スクウェア・エニックス オープンカンファレンス」の最後には「AIセッション」が用意されていた。AIセッションは前半と後半に分かれ,前半は「ファイナルファンタジーXIV: 新生エオルゼア」(以下,新生FFXIV)における経路探索の実装に関する実践的な解説,後半はゲームAIの第一人者とも評される三宅陽一郎氏による,Luminous Studio用AIエンジンのやや概念的な話という構成だった。稿では,まず前半の,より実践的なセッションから紹介してみたい。 テーマは,「MMORPGでマップ上を移動する敵NPCの経路をどう決めるのか」である。複雑で広いマップを有するMMORPGでは,移動する経路を賢く選択

    [SQEXOC 2012]FFXIVで使われているAI技術〜敵NPCはどうやって経路を探索しているのか?
    tanakaBox
    tanakaBox 2012/12/10
    テーブル化、階層化。→階層化近接ルックアップテーブル。しかし色々面倒そうな処理が必要だなぁ。
  • あなたの知らないハッシュテーブルの世界

    Please select the category that most closely reflects your concern about the presentation, so that we can review it and determine whether it violates our Terms of Use or isn't appropriate for all viewers.

    tanakaBox
    tanakaBox 2012/12/08
    かなり詳しい。
  • 数独の高速化 - Cybozu Inside Out | サイボウズエンジニアのブログ

    「サイボウズ・アドベントカレンダー」の4日目です(これまでの記事一覧)。どうやら三日坊主は免れたようです(笑)。 (0) はじめに こんにちは。サイボウズ・ラボの川合秀実です。私は主にサイボウズ製品の高速化のお手伝いをしています。しかし先日、製品とは関係ないものを高速化したので、今日はそれを発表します。 サイボウズには社内勉強会がいくつかあって、その中にはC++の勉強会もあります。私はサイボウズの勉強会に参加するのが好きなので、このC++の勉強会に参加してみました。この勉強会では、「数独」というパズルを解くプログラムをC++で書いてみよう、というのが最初のテーマでした。参加者各自がプログラムを書き、翌週にお互いにレビューしあうということが行われました。 ここで私はやらかしてしまいました。ええ、そうです、高速化してしまったのです! 言うまでもないですが、誰もこんなことは望んでいません。そもそ

    数独の高速化 - Cybozu Inside Out | サイボウズエンジニアのブログ
    tanakaBox
    tanakaBox 2012/12/07
    ハッカー精神が溢れる記事。流石です。それにしても読みやすい。
  • algorithm - bucket sort - 比較しなければソートは相当速い : 404 Blog Not Found

    2012年01月11日07:00 カテゴリアルゴリズム百選Math algorithm - bucket sort - 比較しなければソートは相当速い 珠玉のプログラミング Jon Bentley / 小林健一郎訳 絶賛風邪こじらせ中につきコードと戯れることに。 新ソートアルゴリズム「配列挿入ソート」だ! - hp12c その名も「配列挿入ソート」! すでに突っ込み入ってるけど、それ、もしかしたら人類最古のアルゴリズムだから。 最古にして最速? おそらくプログラムを組んだことがない人でも「誰にも教えられずに」知った「天然の」アルゴリズムの筆頭に来るのがこのバケットソートではないでしょうか。 ソートしたいものに適当に番号を振っておく 番号がついたバケツを用意する ソートしたいものの番号がついたバケツにそれを放り込む 必要があればバケツの中身を同じやり方でソートする 番号順にバケツの中身をぶち

    algorithm - bucket sort - 比較しなければソートは相当速い : 404 Blog Not Found
    tanakaBox
    tanakaBox 2012/12/05
    超高速。な場合もある。
  • 汎用ソート殺し - d.y.d.

    00:26 12/12/18 BookLive! 7月に出会ってからずっと電子書籍ストアとして BookLive! をひいきにしているのですが、一体どこが好きなのか語りたくなりました。 ITMedia の これでもう迷わない、電子書店完全ガイド という一連の記事の、 電子書籍の端末の話よりストアの話をしましょうよというコンセプトに思いっきり影響されています。 といっても、第一印象が「普通のことが普通にできるので感激した!!」というもので、 つまり今年の前半に使っていた幾つかの電子書籍ストア/専用アプリが残念だっただけかもしれません。 買ったがどこをクリックすれば読めるのか理解するのに10分かかった、とか、 6冊以上買うと棚アプリから画面外にがはみ出るので手でいちいち棚を変えて整理しないと読めない、とか。 当に普通に使えるという以上に特筆することもないんですが、 あ、でも、今年になる

    tanakaBox
    tanakaBox 2012/12/05
    デビル遅っ
  • へ、変態っ!!読めないからやめてっ!bit使ったデータ構造・アルゴリズム実装集 - Negative/Positive Thinking

    この記事はCompetitive Programming Advent Calendar Div2012の2日目の記事です。 12月20日追記: Darseinさんが20日目の記事で、ビット演算についての詳しい説明を紹介してくださっています!必読ですね!!!!:) はじめに Y^´       ∨// /,∠ ,. ' /l/// /, ' , '/ ! | l }´     〈 〉    変  〈/ , ' // ̄`>< /// /// _,.=‐|'"´l l〈  変  / 〈    態.   ∨, '/l|   ,.'-‐、`//`7/  /''"´__ | ハ l丿  態   { 人)   ! !   (/!  |ヽ〈_ ・.ノ〃  〃 /  '/⌒ヾ.! ,' !く   ! !  (_ ト、__/   ヽ、_,.イ    /l l |:::::::```/:::::/...´..

    へ、変態っ!!読めないからやめてっ!bit使ったデータ構造・アルゴリズム実装集 - Negative/Positive Thinking
    tanakaBox
    tanakaBox 2012/12/04
    ハッカーの楽しみ読まないとな。
  • バグの数は予測できるのか? 発想は斬新だけど評判の悪い「池の中の魚」モデル

    バグの数は予測できるのか? 発想は斬新だけど評判の悪い「池の中の魚」モデル:山浦恒央の“くみこみ”な話(48) プログラマーの永遠の課題「プログラム中の残存バグ数の推定」に迫るシリーズ。今回は、エンジニアの基姿勢から逸脱した、一種のトンデモ推定法である「キャプチャー・リキャプチャー・モデル(別名、ソフトウェア版『池の中の魚』モデル」を取り上げます。 コーディングが終わり、コンパイルエラーも消え、いざデバッグ工程に突入――。このとき、「プログラムの中に隠れているバグの総数を正確に推定できたらなぁ……」と考えたことはありませんか? こう考えるのは何もプログラマーだけではありません。プロジェクトマネジャーも、プロジェト管理や品質制御の観点から、バグ総数を高精度で予測することを夢見ています。 というわけで、新シリーズでは、この「ソフトウェア中の残存バグ数の推定」をテーマに取り上げ、今回から数回に

    バグの数は予測できるのか? 発想は斬新だけど評判の悪い「池の中の魚」モデル
    tanakaBox
    tanakaBox 2012/11/24
    バグだとすぐバレるが、一部に印をつけて、全体量を予測出来る仕組みは面白い。
  • Facebook、「News Feed」投稿が表示される仕組みを説明--ブランド投稿のリーチ数低下で釈明

    Facebookではこのところ、一部のブランド投稿のリーチ数が通常レベルに達していないことについて多くの監視の目が集まっているが、同社は、その理由を説明するため、奥の手として映画「スター・ウォーズ」の「ヨーダ」を登場させることにした。 Facebookで製品マネージャーを務めるWill Cathcart氏は、この伝説のジェダイマスターに「EdgeRank」と名付けられた同ネットワークのアルゴリズムについての説明を託した。このアルゴリズムは、ユーザーのフィードに無関係のコンテンツが入らないように機能する。たとえば、ヨーダがFacebookにデススターからの更新情報を見たくないと繰り返し伝えると、このアルゴリズムはそれらの情報がフィード上に表示されないようにする。 Facebookが米国時間11月16日に開催した記者会見の席上、Cathcart氏は「ヨーダがこの話を知ったなら、どうするだろうか

    Facebook、「News Feed」投稿が表示される仕組みを説明--ブランド投稿のリーチ数低下で釈明
    tanakaBox
    tanakaBox 2012/11/20
    意外と簡単な仕組みっぽいな。
  • Here's Some Working Code to Sort One Million 8-Digit Numbers in 1MB of RAM

    Earlier this week, this Stack Overflow question was featured on Reddit under /r/programming. Apparently, it was once a Google interview question – or at least, a variation of one: You have a computer with 1M of RAM and no other local storage. You must use it to accept 1 million 8-digit decimal numbers over a TCP connection, sort them, and then send the sorted list out over another TCP connection.

  • ノーベル経済学賞、シャプレー教授が発見した驚きのアルゴリズム:日経ビジネスオンライン

    先週月曜日に発表された今年のノーベル経済学賞は「(マッチング問題における)安定配分の理論とマーケットデザインの実践に関する功績」を讃えて、米ハーバード大学のアルビン・ロス教授とカルフォルニア大学ロサンゼルス校のロイド・シャプレー名誉教授に授与された。 ただし、2人同時受賞とは言っても、両氏がそれぞれ打ち立てた業績は、かなり違う特徴を持つ。ロス教授の愛弟子で筆者の親友でもある小島武仁・米スタンフォード大学助教授が、2012年10月18日付サイトでロス教授の業績について心のこもった解説を書いていた。小島氏と同じく「マーケットデザイン」を専門とする筆者は、もう1人の受賞者・シャプレー教授の理論に迫り、解説したいと思う。 マッチング現象を初めて数学の問題として定式化し、誰もが一番ふさわしい相手とマッチできる「安定配分の理論」を生み出したのがシャプレー教授(および故デヴィッド・ゲール)だ。それに対

    ノーベル経済学賞、シャプレー教授が発見した驚きのアルゴリズム:日経ビジネスオンライン
    tanakaBox
    tanakaBox 2012/10/27
    安定結婚問題
  • Spaghetti Source - 各種アルゴリズムの C++ による実装

    ACM/ICPC(プログラミングコンテスト)系列の問題を解くことを目標にして,各種アルゴリズムを C++ で実装してみた.極めて意地が悪い類の問題には対応していないし,特定の入力に対して高速に動くということもない.計算量も最良とは限らない. これらを参考にする方への注意とお願い: これらの記述は正確とは限りません.参考文献を参照することを強く推奨します.間違っている場合は是非教えてください. これらのプログラムは間違っているかもしれません.各人で検証することを強く推奨します.バグがあれば是非教えてください. 分類が怪しいので,これはこっちだろう,ということがあればコメントを下さると助かります. 注意! 現在書き換え中 TODO 分類を正しく行う. 全体的に説明と使い方を詳しく. Verify していないものを Verify. ボロノイ図(いつになることやら……) 基 テンプレート グラフ

  • Open Data Structures

    Open Data Structures covers the implementation and analysis of data structures for sequences (lists), queues, priority queues, unordered dictionaries, ordered dictionaries, and graphs. Data structures presented in the book include stacks, queues, deques, and lists implemented as arrays and linked-lists; space-efficient implementations of lists; skip lists; hash tables and hash codes; binary search

    tanakaBox
    tanakaBox 2012/10/26
    データ構造実装についての教科書。JavaとC++
  • 参考:大きい要素の処理

    内容 スライド 1 参考:大きい要素の処理 スライド 2 ちょっと寄り道 (一個一個が大きいデータを処理する工夫) スライド 3 大きいデータを処理する工夫2 スライド 4 大きいデータを処理する工夫3 スライド 5 実現 スライド 6 4-4:比較によらないソート スライド 7 比較によらないソート スライド 8 バケットソート スライド 9 バケットソートの動き1 スライド 10 バケットソートの実現 スライド 11 バケットソートの動き2(添字を用いた場合) スライド 12 バケットソートの実現2 スライド 13 バケットソートの計算量 スライド 14 基数ソート スライド 15 基数ソートの動き(3桁) スライド 16 練習 スライド 17 基数ソートの実現 スライド 18 基数ソートの計算量 スライド 19 4-5:ソート問題の下界 スライド 20 問題とアルゴリズム スライド 

    tanakaBox
    tanakaBox 2012/10/23
    決定木とか。ソート色々。
  • ランダウの記号 - Wikipedia

    スターリングの公式はランダウの記号を用いてと書くこともできる。 ランダウの記号(ランダウのきごう、英: Landau symbol)は、主に関数の極限における漸近的な挙動を比較するときに用いられる記法である。 ランダウの漸近記法 (asymptotic notation)、ランダウ記法 (Landau notation) あるいは主要な記号として O (数字の0ではない)を用いることから(バッハマン-ランダウの)O-記法 (Bachmann-Landau O-notation[1])、ランダウのオミクロンなどともいう。 記号 O はドイツ語のOrdnungの頭字にちなむ[2]。 なおここでいうランダウはエトムント・ランダウの事であり、『理論物理学教程』の著者であるレフ・ランダウとは別人である。 ランダウの記号は数学や計算機科学をはじめとした様々な分野で用いられる。 ランダウの記号 は 、x

    ランダウの記号 - Wikipedia
  • プログラミングコンテストでの乱択アルゴリズム

    1. 2012/06/12 ディー・エヌ・エー 渋谷オフィス (TopCoder Meetup in Japan) プログラミングコンテストでの 乱択アルゴリズム 東京大学情報理工学系研究科 秋葉 拓哉 / [[iwi]] 1 2. 自己紹介 • 秋葉 拓哉 / [[iwi]] – Twitter: @iwiwi • 東京大学 情報理工学系研究科 コンピュータ科学専攻 • プログラミングコンテスト凄い好き – 世界大会の常連をやっています – ここ 1 年で 3 回,来月も行きます • プログラミングコンテストチャレンジブック共著 2 3. 今日の話 「乱択アルゴリズム」 • 既存の乱択アルゴリズムの紹介を延々とはしません – そういうアルゴリズム解説は一杯あります • コンテストに焦点を絞り,乱択アルゴリズムを設計 できるようにする,ということを目指す (簡単めの話になります,中上級者の

    プログラミングコンテストでの乱択アルゴリズム
  • Algorithm::NaiveBayesで2ch系まとめサイトをカテゴライズしてみた - 岩手からこんにちは ☆彡 perl とかウェブ系なブログ

    2ch系まとめサイトのアンテナ?的な新着サイトは結構あるんですが、勉強もかねてAlgorithm::NaiveBayesでベイズ使ってカテゴライズしてみたメモ。 Algorithm::NaiveBayes http://search.cpan.org/~kwilliams/Algorithm-NaiveBayes-0.04/lib/Algorithm/NaiveBayes.pm 目標 はてぶみたいに自動でカテゴリ分けしたい 参考に・・ 新はてなブックマークでも使われてるComplement Naive Bayesを解説するよhttp://d.hatena.ne.jp/tkng/20081217/1229475900上のサイトをみるとはてなではComplement Naive Bayesがつかわれてるっぽいです。 ここではAlgorithm::NaiveBayes 単純ベイズを使いました。

    Algorithm::NaiveBayesで2ch系まとめサイトをカテゴライズしてみた - 岩手からこんにちは ☆彡 perl とかウェブ系なブログ