タグ

mathに関するHashのブックマーク (192)

  • Knight's tour - Wikipedia

    An open knight's tour of a chessboard An animation of an open knight's tour on a 5 × 5 board A knight's tour is a sequence of moves of a knight on a chessboard such that the knight visits every square exactly once. If the knight ends on a square that is one knight's move from the beginning square (so that it could tour the board again immediately, following the same path), the tour is "closed", or

    Knight's tour - Wikipedia
    Hash
    Hash 2012/10/13
    ちょっとした問題
  • Mersenne Twister: A random number generator (since 1997/10)

    English Version News: MTToolBox をGitHubで公開しました。(2013/10/04) TinyMTをリリースしました。 (2011/06/20) MTGPをリリースしました。(2009/11/17) SIMD-oriented Fast Mersenne Twister (SFMT) をリリースしました。 SFMTはオリジナルのMersenne Twisterより約二倍速く、 よりよい均等分布特性を持ち、零超過初期状態からの回復も高速です。 SFMTのページを見てください。 (2007/1/31) お願い:使う時にemailを一通下されば、 今後の改良のはげみになります。 どんなささいな問題点でも、見つけ次第御連絡下さい。 m-mat @ math.sci.hiroshima-u.ac.jp (このメールアドレスは スペースを抜いて手で打ち直してください)

    Hash
    Hash 2012/10/02
    メルセンヌツイスタ
  • 良い乱数・悪い乱数

    C言語標準ライブラリの乱数rand( )は質に問題があり、禁止している学会もある。 他にも乱数には様々なアルゴリズムがあるが、多くのものが問題を持っている。 最も多くの人に使われている乱数であろう Visual Basic の Rnd の質は最低である。 そもそも乱数とは 乱数とは、来サイコロを振って出る目から得られるような数を意味する。 このような乱数は予測不能なものである。 しかし、計算機を使って乱数を発生させた場合、 次に出る数は完全に決まっているので、予測不能とはいえない。 そこで、計算機で作り出される乱数を疑似乱数(PRNG)と呼び区別することがある。 ここでは、特にことわらない限り乱数とは疑似乱数のことを指すとする。 計算機でソフト的に乱数を発生させることの最大のメリットは、 再現性があることである。 初期状態が同じであれば、発生する乱数も全く同じものが得られる。 このことは

    Hash
    Hash 2012/10/02
    C言語標準ライブラリの乱数rand( )は質に問題があり、禁止している学会もある。 最も多くの人に使われている乱数であろう Visual Basic の Rnd の質は最低である。
  • 線形合同法 - Wikipedia

    線形合同法(せんけいごうどうほう、英: Linear congruential generators, LCGs)とは、擬似乱数列の生成式の一つ。 漸化式 によって与えられる。A、B、Mは定数で、M>A、M>B、A>0、B≥0である。 上の式で、が、乱数の種であり、これに数を代入すると、が得られる。さらにを生成する場合には、を使う。以後、同様に行う。 例えば、定数をそれぞれ、A=3、B=5、M=13、乱数の種=8とすると、(上の式においてはXn+1を左辺に置いたが、今回は便宜上、右辺に置く) 次に乱数を生成する際は前回生成された乱数(今回は3)を使って、 以下、同じように、 となる。 生成される乱数列は周期性を持ち、上の例では8→3→1→8→3→……、を繰り返す。この周期は最大でMであり、以下の条件が満たされたときに最大周期Mをもつ。 BとMが互いに素である。 A-1が、Mの持つ全ての素因

    Hash
    Hash 2012/10/02
    Xn+1 = (A * Xn + B) mod M で表す疑似乱数列発生アルゴリズム.
  • Monte Carlo simulation of the Monty Hall Problem in Ruby and Python | Programming Zen

    Monte Carlo simulation of the Monty Hall Problem in Ruby and Python Reading Jeff Atwood’s post The Problem of the Unfinished Game, reminded me of a similar problem. The Monty Hall Problem is a well known probability puzzle that has tricked many people. In fact, if you are not familiar with it already, chances are that you’ll get it wrong. And you would be in good company along with many mathematic

    Monte Carlo simulation of the Monty Hall Problem in Ruby and Python | Programming Zen
    Hash
    Hash 2012/10/02
    モンティホール問題のシミュレーション
  • 404 Blog Not Found:Stiffと偉大なプログラマー達-プログラマーと数学・物理

    2006年09月14日17:45 カテゴリBlogosphere Stiffと偉大なプログラマー達-プログラマー数学・物理 引き続きSztywny Blog - Stiff asks, great programmers answerの翻訳。 今回の質問はこちら。 数学と物理は、プログラマーにとって重要?だとしたらなぜ? プログラマー達の解答は以下のとおり。 Dan the Translator Steve Yegge: 「離散数学」とか"concrete math"(訳注:「具象数学」?)と言われる分野は、プログラマーにとって非常に重要。確率、組み合わせ、グラフ理論、帰納的証明、その他の重要な道具がここに含まれている。 全てのプログラマーは、その能力の許す限り離散数学を学ぶべきだ。それがたとえわずかでも、ないよりはずっとずっとマシである。 その他の伝統的な数学に関しては、うーん、それほ

    404 Blog Not Found:Stiffと偉大なプログラマー達-プログラマーと数学・物理
    Hash
    Hash 2012/09/30
    プログラマにとって数学は重要?という質問に対する回答集(の翻訳)
  • Proof claimed for deep connection between primes - Nature

    Thank you for visiting nature.com. You are using a browser version with limited support for CSS. To obtain the best experience, we recommend you use a more up to date browser (or turn off compatibility mode in Internet Explorer). In the meantime, to ensure continued support, we are displaying the site without styles and JavaScript.

    Proof claimed for deep connection between primes - Nature
    Hash
    Hash 2012/09/11
    えっなにこれ
  • Euler Transform -- from Wolfram MathWorld

    There are (at least) three types of Euler transforms (or transformations). The first is a set of transformations of hypergeometric functions, called Euler's hypergeometric transformations. The second type of Euler transform is a technique for series convergence improvement which takes a convergent alternating series

    Euler Transform -- from Wolfram MathWorld
    Hash
    Hash 2012/09/10
    関孝和が江戸時代に発見していたとか。
  • プログラミングのための線形代数 - 『プログラミングのための確率統計』非公式サポートページ

    @@ -9,7 +9,7 @@ * [[なんでも|PSCS.Comment]] … 掲示板 !!リンク -* [[→ 公式ページへ|http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06775-4]] … シミュレーションスクリプトや補足編PDFのダウンロードなど. 詳細目次もこちらに. +* [[→ 公式ページへ|https://www.ohmsha.co.jp/book/9784274067754/]] … シミュレーションスクリプトや補足編PDFのダウンロードなど. 詳細目次もこちらに. * [[→ プログラミングのための確率統計 in Haskell|http://note.golden-lucky.net/2010/12/1-2-3-4-5-6-16-16-16-16-16-16-246-135.html]] * [[

    Hash
    Hash 2012/08/27
  • プログラミングコンテストでの乱択アルゴリズム

    Introduction to Locally Testable Codes and Related Topics (in Japanese)

    プログラミングコンテストでの乱択アルゴリズム
    Hash
    Hash 2012/07/04
    数学ガール乱択アルゴリズム読んでるのでこれも
  • 乱択アルゴリズム - Wikipedia

    乱択アルゴリズム(らんたくアルゴリズム)、ランダム・アルゴリズム(英: randomized algorithm)または確率的アルゴリズム(かくりつてきアルゴリズム、(英: probabilistic algorithm)は、その論理の一部に無作為性を導入したアルゴリズムである。通常のアルゴリズムでは自然数を順番にあてはめるような決定的な部分で、乱数による非決定的な選択を入れることで、「平均的に」よい性能を実現することを目的とすることがある。形式的には、乱択アルゴリズムの性能はランダムビット列で決定される確率変数となる。その期待値を期待実行時間[1]と呼ぶ。最悪の場合に関して「無視できる」ほどに低い確率であることが、一般に、この類のアルゴリズムが効果的である要件となる。 n 個の要素からなる配列から「a」という要素を探す問題を考える。この配列の各要素は半分が「a」で残りが「b」である。単純

  • 「親子で学ぶ数学図鑑」基礎からわかるビジュアルガイド | 創元社

    小中学生の子どもと親が いっしょに学べるオールカラーのビジュアル系入門書 たし算・ひき算から確率や数列まで、カラフルな図で幅広い基礎概念を学べます。 算数や数学で苦労している小中学生、かつて数学嫌いだった親御さんにオススメ! 「わかりやすさ」と「使いやすさ」を兼ね備えた自習用にも最適な一冊。

    「親子で学ぶ数学図鑑」基礎からわかるビジュアルガイド | 創元社
    Hash
    Hash 2012/06/26
    これいいな
  • http://jp.allthingsuniverse.com/prime/100000.html

    Hash
    Hash 2012/06/21
  • コンプガチャの確率マジックを中学生にも分かるように説明するよ - てっく煮ブログ

    コンプガチャが話題になっています。コンプガチャにハマりやすい理由として「最初は当たりやすいが、だんだん確率が低くなる」という指摘があります。なぜ「確率が低くなる」という現象おきるのでしょうか。この記事ではコンプガチャの裏側にある確率マジックを分かりやすく解説します。サイコロの面を全部そろえるゲームいちばん身近な確率といえばサイコロです。サイコロを使ったこんなゲームを考えてみます。サイコロ コンプのルール サイコロを 1 回振るには 10 円が必要。 6 つの面をすべてを出せば、ペットボトル飲料をプレゼント。「サイコロの 6 つの面をすべてコンプしよう」というゲームなので、シンプルな「コンプガチャ」といえます。このゲーム、あなたなら参加しますか?6 つの面を全部だせばよいので、運がよければ 6 回(60円)でペットボトルが手に入ります。なんだかお得そうです。ためしにやってみると・・・サイコロ

    Hash
    Hash 2012/06/15
  • 分数計算 - みずぴー日記

    こんばんは、水野です。趣味は再発明です。 30分プログラム、その142。分数計算を再発明してみる。 いくつかの関数名とすべての機能が標準ライブラリと被ってるけど気にしない。 使い方 gosh> (define half (make-ratio 1 2)) half gosh> (define one-third (make-ratio 1 3)) one-third gosh> (add half one-third) (5 . 6) gosh> (sub half one-third) (1 . 6) gosh> (mul half one-third) (1 . 6) gosh> (div half one-third) (3 . 2) gosh> (ratio->float half) 0.5 ソースコード numeratorとdenominatorを何度打ったことか。 #! /op

    分数計算 - みずぴー日記
    Hash
    Hash 2012/06/12
    再発明素敵
  • コンプガチャの数理 -コンプに必要な期待回数の計算方法について- - doryokujin's blog

    目次 1. 『コンプガチャの数理 -コンプに必要な期待回数の計算方法について-』 2. 『「数学ゲームデザイン」というアプローチ』 3. 『コンプガチャの数理 -ガイドラインに基づいたゲームデザイン その1-』 4. 『コンプガチャの数理 -ガイドラインに基づいたゲームデザイン その2-』 目的 コンプガチャのコンプに必要な回数を求める問題は「The Coupon Collector's Problem」と呼ばれる数学モデルの枠組みに沿った美しい問題である事を述べ,いくつかの有用な結果を示す。 ※ あくまで個人研究のつもりで書いたので,色々不備があるかもしれません。その際は一言頂けると助かります。 定義 コンプガチャ問題を Coupon Collector's Problem に準じた形で書くと以下の様になる: 「全部で n 種類のアイテムがあって,1つのガチャの中にアイテムが1つ入って

    コンプガチャの数理 -コンプに必要な期待回数の計算方法について- - doryokujin's blog
    Hash
    Hash 2012/05/10
    饒舌な層が沈黙してブクマしてるのが面白い
  • 何故私は計算が小学校で一番速かったのか? - やねうらおブログ(移転しました)

    小学校のころ、私は四則演算が学校で一番速く出来た。そんな私だが、実は九九はほとんど覚えていなかった。 掛け算や割り算を速く行なうのに必要なのは九九じゃないことを私は知っていたからだ。 簡単な例を出そう。あなたは、40÷6をどうやって計算するだろうか? 九九を持ち出してきて、「6×8 = 48 あれ、大きすぎたか。6×7 = 42、ありゃ、まだ大きいか。6×6 = 36。おお、40より小さくなった。40-36 = 4だから、6余り4が答え!」なんてやらないだろうか。これは凄く無駄な作業だ。どう考えてもやり方がおかしい。 ここで必要なのは、九九ではなく、36〜41は、6で割ったら商は6という知識である。「余り」もセットにして覚えてあるとなお良い。 「÷6」をするとき、割られる数が60以上であることは考えなくて良い。また、もう少し一般化して言えば、「÷N」するときは、割られる数がN*10以上であ

    何故私は計算が小学校で一番速かったのか? - やねうらおブログ(移転しました)
    Hash
    Hash 2012/03/22
    暗記+感覚、のコンボは僕も意識せずに使ってる気がする。ラクなので // 子供が出来たら水を向けてみよう
  • 紙芝居:ラムダ抽象 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    石井君*1が、2月19日セミナーのツイン・ホワイトボードを撮影してくれていたので、ハイライト(?)部分を紙芝居にしました。 紙と鉛筆の準備はいいかな -- では、はじまりはじまり。 g = <a, b, x| a*x + b> という関数があるとき、これを2回“ラムダ抽象”してみます。ラムダ抽象とは、右肩ハット(^)または大文字ラムダ(Λ)で表されるオペレータです。ラムダ抽象とカリー化は同義語です*2。ラムダ抽象すると、n引数関数は(n-1)引数関数に変化し、その代わり戻り値が関数型になります。ただし、ここで言う「関数型」は数学的な関数の型ではなくて、とある実行エンジンEで実行する関数コードのデータ型のことです。 gの2回ラムダ抽象g^^を絵に描くとこうです。 gの1回ラムダ抽象 g^ = Λg と、gの2回ラムダ抽象 g^^ = Λ(Λg) を計算してみます。Λの計算規則*3を使えば、こ

    紙芝居:ラムダ抽象 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • ラムダ計算 - Wikipedia

    この記事には参考文献や外部リンクの一覧が含まれていますが、脚注による参照が不十分であるため、情報源が依然不明確です。 適切な位置に脚注を追加して、記事の信頼性向上にご協力ください。(2020年5月) ラムダ計算(ラムダけいさん、英語: lambda calculus)は、計算という行為を「関数」の定義と適用だけで表現する計算模型(数理モデル)である。ラムダ算法とも言う。 1930年代に数学者のアロンゾ・チャーチとスティーヴン・コール・クリーネによって、「計算できるとはどういうことか」を厳密に定義するために考案された。当時はまだ電子計算機は実用化されておらず、ラムダ計算は純粋に理論的な数学的体系として発展した。関数を定義する際にギリシャ文字のラムダ(λ)を使う慣習からその名がある。 ラムダ計算は、変数と関数の抽象化、および関数の適用という基的な操作のみから構成されるが、全ての計算可能関数を

    Hash
    Hash 2012/02/27
    基礎の基礎 => f(x) = x + 2 が λx. x + 2 と書ける
  • 0.999... - Wikipedia

    実数として "0.999…" と"1"は等しくなることを示すことができる(ただし、0.9999など途中で終了する小数は1と等しいと言えない)。この証明は、実数論の展開・背景にある仮定・歴史的文脈・対象となる聞き手などに応じて、多様な数学的厳密性に基づいた定式化がある[注釈 1]。 循環する無限小数一般に言えることだが、0.999… の末尾の … は省略記号であり、続く桁も 9 であることを示す。省略記号の前の 9 の個数はいくつでもよく、0.99999… のように書いてもよい。あるいは循環節を明確にするために 0.9、0.9、0.(9) などと表記される。 一般に、ある数を無限小数で表すことも有限小数で表すこともできる。稿で示されるように 0.999… と 1 は等価であるから、例えば 8.32 は 8.31999… と書いても同じ数を表す。十進数を例に採ったが、数が一意に表示されないこ

    Hash
    Hash 2012/02/23