2005-01-01から1年間の記事一覧

ModelSim(Xilinx)を使ってHDLを習ってみる

論理式の塊のようなシミュレーションをする必要があるときに、デジタル回路設計用の言語であるHardware description language (HDL)が使えないものか、と思ってちょっと手習い。 教科書は 図解 ModelSim実習 ゼロからわかるディジタル回路シミュレーション作…

Hardware description language (HDL)

大きな数の扱い

非常に大きい数値を扱いたい。javaの基本データ型だと、たとえば int 32ビット 符号つき整数,-2147483648〜2147483647 (約 21億) long 64ビット 符号つき整数,-9223372036854775808〜9223372036854775807(約) リスト表示 例えば この桁数の数値を指定するに…

確率的アルゴリズムと近似アルゴリズム

多項式時間(Polynomial)アルゴリズムが知られていない問題を解くときに用いる。用いると言っても、『答えとして受け入れられる答え』が出ることが知られている必要がある。 『答えとして受け入れられる答え』の担保が示されていることが条件で、かつ、計算量…

時間計算量と領域計算量

時間計算量はステップ数、領域計算量は情報の保持量(メモリ負荷) 実際の実行にあたってはそれぞれの計算量により制約があり、アルゴリズムは、それらの負荷により分類される 計算量も『決定的(Deterministic)』か『非決定的(Non-deterministic)』かで2分さ…

時間計算量クラス

書きかけ 計算可能性と実際に計算して答えを求める努力をすることとは同じではない。「いつかは終わるかもしれないけれど、あまりに時間がかかりすぎる方法」は、はなから始めない方がよい。この『かかる時間の予想』を数値化したもの。入力情報量によって計…

計算可能性

この記事は表現、非常に曖昧かつ、うそを含む可能性高し! 計算可能性とは、 『数学的には』(数学者でない者が数学的説明を読んで、いきなり数学的な厳密性をはしょって説明するときの枕詞である)、次のように言えるのだろう・・・ 『アルゴリズムが、1つの…

計算モデル

Wikipediaではこう: 「アルゴリズム」の概念を定式化する為の数学モデルのこと。チューリングマシン、帰納的関数、λ計算などがある。

アルゴリズム

問題を解く手順であり、次の性質を満たすものと定義されている 有限個の演算・操作の列のこと ここの演算・操作の終了時に次の演算・操作が決まっている 有限回の演算・操作の後、必ず、手順は終了する 手順の終了時に問題の正当な答が得られている

駆け足で読むアルゴリズムと計算量

臨時別冊・数理科学 SGCライブラリ43『アルゴリズムと計算量』 谷 聖一 サイエンス社

探索

探索アルゴリズムとデータハンドリングの相性については、昨日、若干書いたが・・・ 来た順(First in-First out):::キュー(queue) 最後に来た方から(Last in-Fisrt out):::スタック 優先順位組み込み(Priority-first):::順位キュー ランダム:::-?-?-?MCMC的 …

深さ優先探索と幅優先探索

スタックとキュー 情報の『決済順序』の規則として、決済箱に入ってきた順番に処理するやりかたと、決済箱に最後に入ってきたものから処理するやりかたとがある。それ以外のやり方もあるだろうが、前者には、キューqueue、後者にはスタックstackというデータ…

多数回試行結果の集計

R

Rのapply関数を使う。 想定している状況は 多数回試行(1000回シミュレーションなど)をする 試行ごとに、複数の数値データが出力される それを試行を通じて集計して評価する 出力ファイルは テキストファイル 各試行の結果が1行で出力され 各試行のデータは…

タブ区切りテキストファイルの読み込み

String file = "hogehoge.txt"; FileReader file = null; try{ f = new FileReader(file); BufferedReader objBr=new BufferedReader(f); int fileline=0; while(objBr.ready()){ fileline++; int tokennum=0; String[] aryTkn=objBr.readLine().split("\t")…

Threadを用いて長大ループの途中でキャンセルする

多数回ループを持つプログラムの処理では、途中で中止したくなることが多い。そのための仕組みを考える。ループを持つプロセスと並行にループを制御する変数の値を変えるボタンを配置し、そのループプロセスはループが回るたびに、制御変数の値により、ルー…

SVGで図示

SVG

SVGは(Scalable Vector Graphics)の略で、2次元図形をXML形式で記述するための規格です。ベクター形式なので、拡大・縮小しても画像がギザギザになりません。SVG画像はInternet Explorer(バージョン6以上)で閲覧してください。SVG画像をInternet Explore…

SVG図とビューア

浮動小数点問題

Javaのプログラムにフレーム経由で整数値と実数の値を渡すとする。 double double3 = Double.parseDouble(tf03.getText());のようにして、テキストフィールド tg03に入力された文字列を Double.parseDouble関数にて Double 型数値にするような処理をして、そ…

iPodトラブルシュート

このブログの範疇にかろうじてひっかかる内容(?iPod miniもコンピュータ製品)なので。備忘録として。 ある朝突然、iPod miniのクイックホイールが無反応になり、ディスプレイがまったく何も表示しなくなった。 Appleのページへ行き、該当記述に到達するまで…

Huffman木

Huffman木とは ある電子データの圧縮に際して用いるもので、N個の文字コードのデータ中の出現頻度の高低を集計し、その情報に基づいてN個の文字コードをN個の葉とするトーナメント樹のこと。この圧縮法では、作成したトーナメント樹の構造をもとに、通常用い…

5 均一多数回試行の割り振りによる並列処理

では、実際に簡単な並列処理をしてみる。一番簡単なのは niter回の繰り返し処理を nslave個のslavesに 割り振ることだろう Rmpi,snowを読み込む > library(Rmpi) > library(snow) 繰り返し処理としては、単純なものとして、2値(arg1,arg2)をとって、その入…

4 snow Rのクラスタハンドリングパッケージ

koiti_yano氏の記事をなぞる Rのパッケージ snow_0.2-1.tar.gzの入手 インストール # R CMD INSTALL snow_0.2-1.tar.gz * Installing *source* package 'snow' ... ** R ** inst ** help >>> Building/Updating help pages for package 'snow' Formats: text…

付 SPRNG,rsprngのインストール

Rにてsprngを動かすためのパッケージ rsprng (サイトはここ)のインストールが必要。その前段階として、Linuxでsprngが動くことが必要。そのパッケージがsprng2.0(サイトはここ)。 マルチプラットフォーム対応でLinuxにも対応しているはずだが、コンパイラエ…

Rの並列処理を目標にする

以前、PCクラスタに手を染めるための記事を書いた。RのWikiにRでの並列処理のページも出てきた。ひとまずの目標は、小規模クラスタを組んで、Rの単体マシンのプログラムを並列処理させてみることとする。まずは、ハードの勉強かと。 追記(2005/11/23)本…

3 LAM Rmpiが入ったところで動作確認

lamをとめて、ブートして、Rを立ち上げて、Rmpiパッケージを読み込んで、Rmpiの関数をいくつか使って、それぞれを閉じて、Rも閉じて、lamも止めている。途中Rmpiパッケージを読み込んだところで、エラー "rsprng package is not installed. Cannot use SPR…

2 Rmpiのインストール

Rmpiのインストール パッケージ Rmpi_0.4-9.tar.gzの入手 パッケージのインストール。コマンドとともにざーっとインストール画面が現れて終了 # R CMD INSTALL Rmpi_0.4-9.tar.gz * Installing *source* package 'Rmpi' ... Try to find mpi.h ... checking …

1 LMPのインストール

LMPのインストール マシン環境(Linux単体) PowerEdge 1600SC TurboLinux Server 8 この記事に沿って実施 lam-7.1.1.tar.gzを入手 /usr/local/bin/にインストール 動作確認 一般ユーザでユーザホームディレクトリにて、koiti_yano氏のこの記事に沿ってインス…

Internet ExplorerでPDFを開くとエラーが出て困っていた

Windows XP, IE6.0, Adobe Acrobat 6.0 professionalで、いつの頃からか、一部のPDFファイルを開こうとすると、インターナルエラーがIEで発生して、ブラウザが閉じてしまう現象が起きていた。ウェブのニュースでAdobeがその不具合を修正した、と報じら…

オープンソース関係メモ

Wikipedia記事 OSC-JP(Open Source Group Japan)のホームページ

スパムメールにうんざり

インターネット上にメールアドレスを掲載せざるをえない場合がある。スパムメールがものすごく多い。軽く検索をしただけでは、抜本的なスパムメール対策がなんなのかわからない。しかし、今のスパムメール状況は苦行だ。 対策の条件はなんだろう。 条件 スパ…