タグ

Algorithmに関するunaristのブックマーク (80)

  • Home — Memory Management Reference 4.0 documentation

    Home¶ Welcome to the Memory Management Reference! This is a resource for programmers and computer scientists interested in memory management and garbage collection.

  • カルマンフィルターが自動運転の自己位置推定で使われるまで - TIER IV Tech Blog

    はじめまして、ティアフォー技術部 Planning / Controlチームで開発を行っている堀部と申します。 今回は状態推定の王道技術「カルマンフィルター」が実際に自動運転で用いられるまでの道のりやノウハウなどを書いていこうと思います。 みなさんはカルマンフィルターという言葉を聞いたことがありますでしょうか。 カルマンフィルターとは「状態推定」と呼ばれる技術の一種であり、自動運転においては現在の走行状態、例えば車速や自分の位置を知るために用いられます。 非常に有名な手法で、簡単に使えて性能も高く、状態推定と言えばまずカルマンフィルターと言われるほど不動の地位を確立しており、幅広いアプリケーションで利用されています。 使い勝手に定評のあるカルマンフィルターですが、実際に自動運転のシステムとして実用レベルで動かすためには多くの地道な作業が必要になります。 この記事では、カルマンフィルターが

    カルマンフィルターが自動運転の自己位置推定で使われるまで - TIER IV Tech Blog
  • 計算量について、償却/期待/平均など - noshi91のメモ

    記事は皆様からのご指摘を募集しております 誤った記述があるかもしれません 概要 競技プログラミングをやっていると などの表記を見掛けることも多いでしょう *1。 それぞれについて、大雑把な意味をまとめました。 アルゴリズムの挙動の正確な把握は競技においても重要です。 以降、全て時間計算量に付いて議論します。 注: 稿内で用いられる はほとんどが に置き換えられますが、 Big O notation と同時に説明すると混乱を招くと判断し、競技プログラミングにおいて常用されている を使用しています。 最良計算量 多くのアルゴリズムは、入力によって計算量が変化します *2。 例えば、ソートアルゴリズムには大まかに 通りの入力が存在します。 あり得る全ての入力のうちの計算量の最小値を最良計算量と呼び、 を付けて表記します。 線形探索は (最初に求める値が存在した場合) マージソートは 挿入ソー

  • スーパーマリオのジャンプのアルゴリズム - Qiita

    先日、気持ちのいいジャンプを目指してというQiitaの記事を見かけました。記事中では、マリオのジャンプについても触れられています。マリオというと、マリオブラザースやスーパーマリオブラザース等々、色々あるのですが、これはおそらくスーパーマリオブラザースの事だと思われます。ジャンプアクションゲームといったらスーマリですね。 そのマリオのジャンプの仕組みは「マリオの速度ベクトルを保存しておいて座標を計算するんじゃなくて~」と書かれていて、別サイトのブログへのリンクが張られています。 マリオのジャンプ実装法とVerlet積分 ただ、この記述については不正確であるという別のブログもあったりします。 マリオの完コピvol.28 ジャンプの解析と修正 ホントのところはどうなんでしょうか?世界で最も有名なゲームジャンプがどのように処理されているのか気になったので調べてみることにしました。 原典にあたる

    スーパーマリオのジャンプのアルゴリズム - Qiita
  • ImageMagick 改造入門 (その四) | GREE Engineering

    こんにちは。マルチメディアエンジニアリングチームのよやです。最近は ImageMagick の ストーキング(アップデートの差分追跡)に余念のない日々を送っています。 尚、エントリは GREE Advent Calendar 2013 の 7日目です。よろしくお願いいたします! ImageMagick をサービスに適用している皆様におかれましては、バージョンアップに大変な慎重さをもって臨まれていると思いますが、自分なりの薀蓄を共有出来ればと、バージョンアップに絡んだ最近の闘いの記録を公開します。(長文です) 参考までに今まで ImageMagick について解説したエントリを並べます。 ImageMagick 改造入門 (その壱) GIFアニメーション ImageMagick 改造入門 (その弐) 減色処理前編 ImageMagick 改造入門 (その参) 減色処理後編 GIF アニメ生

  • 面積を測る

  • 誰も気付いていないTikTokの本当のイノベーションを語る - toricago

    TikTokは良い動画が一瞬でバズりやすい。それは例え、あなたの最初に投稿した動画だったとしても。これはYouTubeと対極的である。YouTubeでは無名の人がどんなに面白い動画を投稿しても、そもそも誰にも見てもらえない。YouTubeで毎日毎日面白い動画を投稿し、たまたま見てくれた人が読者登録してくれたりして、数ヶ月、半年と努力を継続しなければならない。 一言で表せば、YouTubeは「信用経済」「評価経済」時代のプラットフォームなのである。 たくさんの登録者数を持つYouTuberが強い。少ない登録者数しか持たないYouTuberは弱い。弱いYouTuberは、たくさん登録者数をゲットするまで、修行する。そういう世界だ。 一旦インフルエンサー級まで自分の信用や評価を蓄積することができれば、後は自由自在に動きやすい。他のYouTuberともコラボしやすいし、企業案件もどんどん舞い込んで

    誰も気付いていないTikTokの本当のイノベーションを語る - toricago
    unarist
    unarist 2019/01/04
    新着動画を全ユーザーのサジェストにランダムに混ぜることで、知名度や宣伝に頼らずに評価される機会やデータ収集の機会を用意している。どれも短い動画なので、信頼度の低いおすすめを混ぜても嫌がられにくい、と。
  • Eventual Consistencyまでの一貫性図解大全 - Qiita

    TL;DR; Eventual Consistencyとか言いながらどうせもっとまともな一貫性実装してることはよくあるんだからみんな適切な名前を使おうぜ。 なぜこの記事を書くのか NoSQLの文脈においてスケーラビリティとのトレードオフでEventual Consistencyという用語は結構な頻度で出てくる。 ACIDに対抗してBASE(Basicaly Avalilable, Soft state, Eventual consistency)なんて言葉が出てきたり、CAP定理の中のAとPだと言ってみたり、分散システムのスケーラビリティを高めるために人類は一貫性を諦めることに余念がない。 その一方で、諦められた一貫性に関しては雑な分類論で語られる事が多く実はもっと適切な言葉があるのに「Eventual Consistencyです」なんて言われる事が良くある。そこで、この記事では過去に並行

    Eventual Consistencyまでの一貫性図解大全 - Qiita
  • 約3年かけてプログラマ向けニュース推薦アプリを作り直した話 - Qiita

    概要 『もっとより良いニュースアプリはできないだろうか』 そう考えてMenthasというニュースアプリを開発し、プログラマ向けニュースキュレーションサービスを作ってみた話 という記事をQiitaに書き、自分の予想を超えた反響を受けてから約3年になります。 しばらく開発の更新は留まってしまいましたが、ニュース推薦に関しての探求が終わったわけではなく、むしろ見えてきた課題のために数多くの論文を読んだりプロトタイピングを繰り返していました。 そしてつい先日、これまで解けなかった問題に対してようやく答えを自分なりに導き出すことができたため、骨格となるアルゴリズムの刷新に始まり、ついで開発もインフラからサーバサイド、フロントエンド・デザインと、全面的なリニューアルを行うことに成功しました。 新しいMenthasは以下のリンクから使用することができます。 https://menthas.com 今回は

    約3年かけてプログラマ向けニュース推薦アプリを作り直した話 - Qiita
  • なんでGCCはa*a*a*a*a*a を (a*a*a)*(a*a*a) に最適化できないの?っと

    c - Why doesn't GCC optimize a*a*a*a*a*a to (a*a*a)*(a*a*a)? - Stack Overflow 俺は科学技術計算の数値計算の最適化をしてたんだけどさ。GCCはpow(a, 2)をa*aにしてくれるんだな。うん。で、pow(a, 6)は最適化されずに、ライブラリ関数であるpowを呼んじゃうんだ。パフォーマンス的に最悪。(Intel C++ Compilerはpow(a,6)のライブラリ関数呼び出しを消し去ってくれるんだけどな) どうもよくわからんのが、pow(a, 6)をa*a*a*a*a*aで置き換えて、GCC 4.5.1をオプション"-O3 -lm -funroll-loops -msse4"で使ったら、mulsd命令を5個使う。 movapd %xmm14, %xmm13 mulsd %xmm14, %xmm13 mulsd

  • Aho Corasick 法 - naoyaのはてなダイアリー

    適当な単語群を含む辞書があったとします。「京都の高倉二条に美味しいつけ麺のお店がある」*1という文章が入力として与えられたとき、この文章中に含まれる辞書中のキーワードを抽出したい、ということがあります。例えば辞書に「京都」「高倉二条」「つけ麺」「店」という単語が含まれていた場合には、これらの単語(と出現位置)が入力に対しての出力になります。 この類の処理は、任意の開始位置から部分一致する辞書中のキーワードをすべて取り出す処理、ということで「共通接頭辞検索 (Common Prefix Search)」などと呼ばれるそうです。形態素解析Wikipediaはてなキーワードのキーワードリンク処理などが代表的な応用例です。 Aho Corasick 法 任意のテキストから辞書に含まれるキーワードをすべて抽出するという処理の実現方法は色々とあります。Aho Corasick 法はその方法のひと

    Aho Corasick 法 - naoyaのはてなダイアリー
  • レコメンデーション・フェアネスがマストドンでうまれたわけ、あるいは、インターネットをGoogleがうまれるまえまでさかのぼる – 墓場人夜

    このきじは、かんじをつかわずに、かんたんなにほんごでかかれています。 わたしがレコメンデーション・フェアネスというアイディアをつかって、なにをくらべたかというと、はじめはマストドンのインスタンスいちらん、つづいてマストドンのおすすめユーザーでした。では、わたしがレコメンデーション・フェアネスをマストドンにあてはめたのは、なにがきっかけだったのでしょうか? なぜ、べつのソフトウェアやウェブサイトではなかったのでしょうか? ひとつには、マストドンのインスタンスいちらんのうちのおおくが、あまりにアンフェアであったからです。とくに、インスタンスのユーザーのかずは、マストドンのAPIでかんたんにえることができたので、おおくのインスタンスいちらんがそれをつかいました。しかし、これまでにはなしてきたとおり、インスタンスのユーザーのかずをつかったインスタンスいちらんは、とてもとてもアンフェアです。そのため

    レコメンデーション・フェアネスがマストドンでうまれたわけ、あるいは、インターネットをGoogleがうまれるまえまでさかのぼる – 墓場人夜
  • 「電子署名=『秘密鍵で暗号化』」という良くある誤解の話 - Qiita

    はじめに 「クラウドを支えるこれからの暗号技術」のデジタル署名の説明へのツッコミtweetをしたところ、著者の方との遣り取りが始まったのですが…。 ※togetterまとめ「電子署名=『秘密鍵で暗号化』」という良くある誤解の話に経緯があります 認識の齟齬についてtwitterでどうこうするのは難しいですし、批判ばかりなのも建設的ではないので、「自分ならこう書くだろう」という文面の形でまとめてみました。 ※なお、電子署名を含めた公開鍵暗号全般に対する私の説明を2つの公開鍵暗号(公開鍵暗号の基礎知識)にまとめています。 署名の説明案 前提 「クラウドを支えるこれからの暗号技術」Web公開されているPDF、2018/3/11時点(最終更新2017/11/11の4.6節デジタル署名(p.50)を、書き換えるとしたら、という前提で文面を作っています。 ※そのため既存の文面の流用や、他の節を参照する記

    「電子署名=『秘密鍵で暗号化』」という良くある誤解の話 - Qiita
  • HashDoS脆弱性との戦い! Rubyコミッター・卜部昌平が明かすプログラム堅牢化のノウハウ - エンジニアHub|若手Webエンジニアのキャリアを考える!

    HashDoS脆弱性との戦い! Rubyコミッター・卜部昌平が明かすプログラム堅牢化のノウハウ 過去、HashDosの影響を受けたRuby。言語開発者はいかにしてこうした問題に対応してきたのでしょうか。コミッターである卜部氏の貴重な記録を公開します。 2011年の末頃、HashDoSという脆弱性が公表され、Rubyもこの影響を受けた。稿の筆者である卜部昌平(うらべ・しょうへい/@shyouhei/以下、卜部)は、報告当初からRuby側のチームメンバーとしてプログラム体の修正を担当した。以下はその記録である。言語開発者たちが普段どのようなことを考え、どういった技術を用いて開発やバグフィックスを行っているのか。その概要を知ってもらえれば幸いだ。 オブジェクト指向スクリプト言語 Ruby HashDoSの概要 なぜ約6年後の今、修正内容を公開するに至ったか? 前史:すでに内包されていたリスク

    HashDoS脆弱性との戦い! Rubyコミッター・卜部昌平が明かすプログラム堅牢化のノウハウ - エンジニアHub|若手Webエンジニアのキャリアを考える!
  • データ圧縮の昔話

    1988年 1989年 1990年 1991年 1992年 1993年 1999-10-11: David Huffman 没 2000-04-14: Phil Katz 没 (享年37才) 2001-02-26: Claude Shannon 没 当時の畏友[これもずっと前の情報です。間違っていたら教えてください] 吉崎栄泰さんは帯広協会病院の忙しいお医者さんです。 三木和彦(まむし)さんは株式会社情報管理の代表取締役をしておられます。 MASSAN(massangeana,益山健)さんについてはここをご覧ください。 ROM男さんについてはここをご覧ください。 岡継男さんはここでUNIX版LHAをメンテしてくださっています。 大久保謙二郎先生は どうしておられるでしょうか お元気で活躍されておられます。 奥村晴彦 Last modified: 2008-03-20 07:30:19

  • ビットを数える・探すアルゴリズム

    作成日:2004.05.04 修正日:2012.09.01 このページは 2003年の9/11、9/28 の日記をまとめて作成。 はじめに PowerPC 系や Alpha などには population count と呼ばれるレジスタ中の立っているビット数を数える命令が実装されている。 集合演算を行うライブラリを実装したい場合などに重宝しそうな命令である。 職場でこの population count 命令について話をしているうちにビットカウント操作をハードウェアで実装するのは得なのか?という点が議論になった。 CPU の設計をできるだけシンプルにするためには、複雑で使用頻度の低い命令は極力減らした方がよい。 例えば SPARC は命令セット中にビットカウント演算があるが、CPU 内には実装しないという方針をとっている(population 命令を実行すると不正命令例外が発生し、それを

  • ごちうサーチ

    博士論文の執筆した時に作った,チェックリストをスライドにまとめました. This slide is only for Japanese speakers 他に参考になるページ +修士論文の作り方( http://itolab.is.ocha.ac.jp/~itot/lecture/msthesis.html ) by 伊藤先生 +修論(D論)参考( http://d.hatena.ne.jp/rkmt/20101217/1292573279 ) by 暦純一先生

    ごちうサーチ
  • 類似画像検索について簡単にまとめてみた - Qiita

    類似画像検索手法について簡単にまとめました。 はじめに 画像検索には主に2種類の手法がある。 TBIR (Text Based Image Retrieval) 画像にテキストデータが紐付けられていて、テキストを元に検索する CBIR (Content Based Image Retrieval) 画像の特徴量を基盤として検索する ライブラリ Feature Extraction Library - FELib http://appsrv.cse.cuhk.edu.hk/~jkzhu/felib.html 下記の5つの特徴を持つ画像から特徴量を抽出できるライブラリである。 Color histogram, color moments. カラーヒストグラム・色統計) Edge histogram. 輪郭のヒストグラム Gabor wavelets transform. Wavelet tra

    類似画像検索について簡単にまとめてみた - Qiita
  • perceptual hash(phash)を利用して画像比較をしてみる - テノニッキ (@hideack 's diary)

    突然ですが画像がたくさんあってそれを人の目で分類するのって大変ですよね。 自動でこういったものを分類できないか興味があったので調べてみました。 perceptual hashとは perceptual hash というのは、ハッシュ関数の実装なのですがSHA1等のハッシュ関数とは違い、以下の様な特徴があります。 得られるハッシュ値は64bit 対象は静止画, 画像, 音声等のマルチメディアデータ コンテンツ内容が類似しているケースでハッシュを得た場合、例えば静止画画像の拡大、縮小といった加工の場合ハッシュ値が全く同じになる また、色調の修正やノイズが加わった場合も得られるハッシュ値間のハミング距離が近くなる 64bitのハッシュ値なので最も遠いハミング距離は64 (=全くコンテンツが異なっている) 逆にハミング距離が0であればperceptual hashで得られた結果上は同一コンテンツ

    perceptual hash(phash)を利用して画像比較をしてみる - テノニッキ (@hideack 's diary)
  • 類似度と距離 - CatTail Wiki*

    2つのデータが似ている度合いを,類似度の大きさや距離の近さといった数値にしてあらわすことで,クラスタ分析や,k-近傍法,多次元尺度構成法(MDS)をはじめとするいろいろな分析を行うことが可能となる. ここでは,よく知られている類似度や距離について述べる. 類似度という概念は,2つの集合の要素がまさにどれだけ似ているかを数量化したものであり,距離とは,要素同士の離れ具合,従って非類似度とちかい概念と考えてもよい. 参考までに数学における距離の概念の定義を示すと, 距離空間の定義 Sを1つの空でない集合とし,dをSで定義された2変数の実数値関数 d(SxS) → R が,以下の4条件(距離の公理) D1 : (非負性) 任意のx,y∈Sに対して d(x,y)≧0. D2 : (非退化性) x,y∈Sに対し d(x,y)=0  ⇔ x=y. D3 : (対称性) 任意のx,y∈Sに対して d(x

    類似度と距離 - CatTail Wiki*