われがわログ

最適化アルゴリズムとかプログラミングについて書きたい

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

シミュレーション用パラメータファイルとしてのtoml形式のススメ

シミュレーションのパラメータファイルを外部化しておくと、メンテ性、再現性などの面でなにかと都合がよい。 設定ファイル用のファイル形式としてはyaml、jsonなど様々なものが存在するが、 ここではシンプルに書ける[toml](https://github.com/toml-lang/t…

【感想&メモ】 Effective Python 2nd Edition

Effective Pythonの第二版(Effective Python: 90 Specific Ways to Write Better Python)を読んだので、簡単な感想とメモを残しておく。

オススメのRust入門法【2019年11月版】

プログラミング言語「Rust」に入門したので、後続のためにRust入門情報をまとめておく。

Visual Studio 2019でのMSBuildの使い方メモ

MSBuildでコマンドラインからコンパイルしようとしたが、Qiita情報(VS2017)だと`/p:Configuration=Release;Platform="x64"`オプションをMSBuildが認識しなかったので解決法をメモ。

Anaconda + VS Code + Windows環境におけるRust のデバッグ環境構築のはまりどころ

VS Code+Windows上にRustのデバッグ環境を構築するため、CodeLLDBのv1.4.0(2019/11現在の最新版)を導入した。 CodeLLDBの実行にはPythonが必要だが、python.orgから配布されているPythonが想定されており、Anaconda配布のものを使用するには一工夫必要だった…

GitのリモートリポジトリをNAS上に置く方法

Git

まず、NAS中の任意の場所(ここでは$NAS_ADDRを想定)にリモートリポジトリを以下のコマンドで作る。 --bareを指定することで、履歴情報などのみのリポジトリを作成できる。 Gitのリモートディレクトリの名称は任意だが、慣例的には接尾辞に.gitをつける。 …

mesaによるマルチエージェントシミュレーション

Pythonで実装された、マルチエージェントシミュレーション用ライブラリの一つが「mesa」である。 普段お世話になっているこのライブラリの布教を目的に、鳥の行動モデルをmatplotlibで可視化した。

PowerShell上におけるlatexdiffの出力結果の文字化けへの対処

TeX

latexdiffは、2つのTeXファイルの差分を、PDFにコンパイル可能な形で出力するプログラムであり文書校正に有用である。 この記事では、ネット情報を基にlatexdiffをPowerShell上で実行したら、出力結果が文字化けしたことへの対処をメモする。

TeXstudioからSumatra PDFを呼ぶときにフォーカスを移さない方法(forward searchなし)

TeX

まとめ TeXstudioの外部PDFビューアに以下のコマンドを設定すればよい。 \dde:///"C:\Program Files\SumatraPDF\SumatraPDF.exe":SUMATRA/control/[Open("?am.pdf", 0,0,1)] 詳細説明 私はTeXエディタとしてTeXstudioを使っており、その外部PDFビューワとし…

最適制御問題の求解アルゴリズムの実装を公開しました

以下のページで、最適制御問題の数値解法の一つであるSCGRA (Sequential Conjugate Gradient-Restoration Algorithm)のMATLAB実装を公開しました。 github.com 最適制御問題の数値解法には非線形計画法に帰着させる直接法と、変分法に基づく間接法があり、こ…

PMA-60の電源不具合

Denonのプリメインアンプ「PMA-60」を購入したが、電源まわりに不具合があったためメモ。 Denonに問い合わせた結果、初期不良とのことで交換となった。交換後は正常に動作している。 DENON プリメインアンプ USB-DAC搭載/ハイレゾ音源対応/ヘッドホンアンプ…

差分更新によるmatplotlibのアニメーションの高速化

業務で、シミュレーション結果をmatplotlibによりリアルタイム描画する必要に迫られた。 最初はグラフ全体を毎ステップ再描画していたが、差分更新に変えたら動作がめっちゃ速くなって感動したのでメモ。

分布推定アルゴリズムあるいは確率モデル遺伝的アルゴリズム

分布推定アルゴリズム(estimation of distribution algorithm: EDA)、あるいは確率モデル遺伝的アルゴリズム(probabilistic model-building genetic algorithm: PMBGA)と呼ばれる、ヒューリスティックな最適化アルゴリズムについて調べる機会があったの…

「StanとRでベイズ統計モデリング」のメモ

随所で「確率的プログラミング」という言葉を見かけ、気になっていたので本書を読んだ。そのときのメモ。

機械学習のための連続最適化 まとめ

機械学習のための連続最適化を読んでいる途中ですが、自分用にまとめます。

conda-forgeからのPythonパッケージインストール

conda-forgeからインストールするとき、`conda install -c conda-forge hogehoge`としたら要らないパッケージまでインストールされそうになったのでメモ。

Introduction to Applied Linear Algebra まとめ

My Enigmaさんに触発されてIntroduction to Applied Linear Algebraを読んだのでそのメモ。 ベクトル、行列のあたりは知っていることが多かったので、最小二乗法だけまとめます。

既存conda環境へのJulia (v1.0.3)のインストール

JuliaからPythonを呼び出す場合、Juliaはcondaを自動的にインストールする。 だが、自分の環境には既にcondaが入っていたため、これをJulia側に認識させる方法をまとめた。