タグ

algorithmに関するmorita_nonのブックマーク (12)

  • BitVault - Wikipedia

    morita_non
    morita_non 2008/08/27
    MSRの分散storage
  • Paxos (computer science) - Wikipedia

    5.5Graphic representation of the flow of messages in the basic Paxos

  • ビザンチン将軍問題 - Wikipedia

    ビザンチン将軍問題(ビザンチンしょうぐんもんだい、英語: Byzantine Generals Problem)とは、相互に通信しあう何らかのオブジェクト群において、通信および個々のオブジェクトが故障または故意によって偽の情報を伝達する可能性がある場合に、全体として正しい合意を形成できるかを問う問題である[1]。フォールトトレラントシステムでの多数決の妥当性や分散コンピューティングの処理の妥当性に関わる問題と言え、二人の将軍問題を一般化したものと言える。 ビザンチン将軍問題に帰結される故障や障害をビザンチン故障(Byzantine Failure、あるいはビザンチン障害)と呼ぶ。また、ビザンチン将軍問題が発生しても全体として正しく動作するシステムをビザンチン・フォールトトレラント性(Byzantine Fault Tolerance)があるという。 問題[編集] ビザンチン将軍問題は、東ロ

    morita_non
    morita_non 2008/08/26
    これは難しい。
  • ALGORITHM NOTE Disjoint Sets, Union Find

    Disjoint Sets に対して、「指定された2つの要素 x, y が、同じ集合に属するか?」どうかを調べる操作、つまり findSet(x) == findSet(y) は Union Find と呼ばれます。 Disjoint Sets の表現 Disjoint Sets を実装する方法はいくつかありますが、ここでは Disjoint Sets forests と呼ばれる"森"の構造を用います。森を構成する tree (木)が各集合を表し、tree の各ノードが集合内の各要素を表します。 findSet( x ) 集合を区別するために、各 tree の根を代表 (representative) とし、集合を識別するために用います。従って、findSet( x ) は、要素 x が属する tree (集合)の根を値として返します。これを実現するために、各ノードはそれ自身から代表まで到

  • main.dvi

    morita_non
    morita_non 2008/06/23
    ロックフリーライブラリ元論文 これに続く→http://www.cs.brown.edu/people/mph/DohertyHLM04/ft_gateway.cfm.pdf
  • p150-doherty.dvi

  • lucille development blog » Blog Archive » 64-bit Lock-free queue implementation

    http://lucille.atso-net.jp/svn/angelina/algo/lock-free/ [EN] Here’s my implementation of Simon Doherty, Maurice Herlihy, Victor Luchangco and Mark Moir, Bringing practical lock-free synchronization to 64-bit applications. PODC 2004. pp. 31–39. http://www.cs.brown.edu/research/projects/transactional_memory.html – [JP] 64-bit 対応な lock-free queue を実装してみました。 この論文の特徴は、 o 64-bit 対応 o スレッド数をあらかじめ知ら

    morita_non
    morita_non 2008/06/20
    動かなかった…
  • P2P basic

    P2P basic P2Pとは何か?〜基礎から研究紹介まで〜 最近,P2Pという言葉を良く聞きます。ニュースの中でも「P2Pを意識している」とか「P2Pの研究に着手」というニュースを聞いたことがあるのではないでしょうか? しかしながら,P2Pとは何かいまいちわからなかったり、どんなことに役に立つのか調べにくいことも確かです。 またP2Pの動向は激しく,その流れについていくのも大変です。 私は情報系の研究所でP2Pの研究開発をしていました。 そのため、このような現状を踏まえてP2Pの基礎から私の研究まで重要な部分を なるべくわかりやすく紹介致します。 また用語についてはわかりやすさを優先するために一部不正確なところがあるのでご了承下さい。 質問,コメント等はメール(tnishita@yahoo.co.jp) にて連絡して頂くと,ページ改良の参考になりますのでよろしくお願い致します。 P2Pに

    morita_non
    morita_non 2008/06/20
    まだ歯が立たない。
  • Fast Concurrent Queue Algorithms

    Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms Pseudocode from article of the above name in PODC96 (with two typos corrected), by Maged M. Michael and Michael L. Scott. Corrected version also appeared in JPDC, 1998. The non-blocking concurrent queue algorithm performs well on dedicated as well as multiprogrammed multiprocessors with and without contention. The al

    morita_non
    morita_non 2008/06/20
    64bit環境で素直にコーディングするためには、16ByteのCASが必要?
  • スペル修正プログラムはどう書くか

    Peter Norvig / 青木靖 訳 先週、2人の友人(ディーンとビル)がそれぞれ別個にGoogleが極めて早く正確にスペル修正できるのには驚くばかりだと私に言った。たとえば speling のような語でGoogleを検索すると、0.1秒くらいで答えが返ってきて、もしかして: spelling じゃないかと言ってくる(YahooMicrosoftのものにも同様の機能がある)。ディーンとビルが高い実績を持ったエンジニアであり数学者であることを思えば、スペル修正のような統計的言語処理についてもっと知っていて良さそうなものなのにと私は驚いた。しかし彼らは知らなかった。よく考えてみれば、 別に彼らが知っているべき理由はないのだった。 間違っていたのは彼らの知識ではなく、私の仮定の方だ。 このことについてちゃんとした説明を書いておけば、彼らばかりでなく多くの人に有益かもしれない。Google

  • 文書比較(diff)アルゴリズム

    文書比較(diff)アルゴリズム 前のドキュメント 次のドキュメント ViViの文書比較(diff)機能で使用しているアルゴリズムについて解説する。 これらのアルゴリズムは Myers 氏らの論文によるもので、氏は筆者のためにわざわざ論文をWebサイトで入手可能な形式にしてくださった。この場を借りてお礼申し上げる。 オリジナル論文は以下のWebサイトから入手可能である。 http://www.cs.arizona.edu/people/gene [1] E.W.Myers, "An O(ND) Difference Algorithm and Its Variations", Algorithmica, 1 (1986), pp.251-266 [2] S. Wu, U. Manber, G. Myers and W. Miller, "An O(NP) Sequence Comparis

  • ブルームフィルタ - Wikipedia

    この項目では、確率的データ構造について説明しています。画像にぼかし効果を付加する画像フィルタについては「川瀬のブルームフィルター」をご覧ください。 ブルームフィルタ(英語: Bloom filter)は、1970年に Burton H. Bloom が考案した空間効率の良い確率的データ構造であり、あるデータが集合の要素である(集合に含まれている)かどうかの判定に使われる。ただし判定は正確ではなくて、含まれていないのに含まれていると誤って判定すること偽陽性(false positive)の可能性がある。しかし含まれているものを含まれていないと誤判定すること偽陰性(false negative)はない。なお集合に要素を追加することはできるが、集合から要素を削除することはできない(ただし、拡張をした counting filter であれば削除もできる)。集合に要素を追加していくにつれて偽陽性の

    ブルームフィルタ - Wikipedia
  • 1