たくのろじぃのメモ部屋

プログラミング(C#)の基礎やそれを応用した技術情報をメモしておくブログです。

Windows 10 IoT Core を動かしてみた #1 導入編

RaspberryPi 4が発売されるということで思い出したことがあって、「そういえば家にRaspberryPi3があったな」と。久しぶりに起動してみようとして電源投入しようとしてみたら起動画面が黒いまま動かなかったのでOSを再度書き込むことに...。 PCにmicroSDをさ…

【宣伝】QiitaにてMinecraft自動化の記事を書きました

2019年12月8日現在のブログの反響?について 本当にありがたい話で、Minecraft自動化の記事を書いてからいろんな方々にお話を伺う機会が増えました。 Microsoftに勤務されている方から直接メッセージをいただいたときは本当に嬉しく、モチベーションにつなが…

Minecraft Education Edition が素晴らしすぎた話

2020年に小学校でプログラミング教育が必修化します。で、どんな内容か調べてみたらブロックを並べる、いわゆるビジュアルプログラミングでした。 正直、「なーにがビジュアルプログラミングだ」と。「男は黙ってガリガリコードを書け」と。言いたいところで…

【C#】Minecraft自動化 #7 建築自動化

はじめに いよいよ建築自動化を行います。この内容が個人的に一番やりたかったことです。 建築は設計図をもとにブロックを配置していきたいと考えていますが、設計図をどうするかが問題ですね。3次元的に表したいので、CADと行きたいところですが、それはち…

【C#】Minecraft自動化 #6 迷路の生成

はじめに マイクラ自動化はもともとC#でどこまでできるかを検証するためにやってきましたが、どうやら本当に色々できるようです。 とりあえず座標移動(テレポート)と配置(ブロック配置)ができれば何でもできそうです。 今回は迷路を作ります。これは建設…

【C#】JSONファイルを読み込む

JSONファイル読み込みを行うことになったのでやり方をメモ。 1. JSONファイルの読み込み まずはjsonファイルのパスを指定して内容を読み込みます。jsonldファイルもいけます。 string FilePath = @"hoge/huga.json"; //ファイルパス var json = File.ReadAll…

量子化学計算シミュレーション #1 GAMESSの導入

量子化学計算シミュレータを使う事になったので、メモメモ。 本にはダウンロード方法が書いてあるのですが、少しわかりにくかった部分があったので図を多めにします。 1 公式サイトからのダウンロード まずはダウンロードサイトへ行きましょう。 https://www…

【C#】Minecraft自動化 #番外編1 VSOnlineからの操作

はじめに 前回はVisual Studio Onlineを使う方法について書きました。書いているときに思いました。「もしかしてマイクラ自動化もできるのではないか?」と。早速やってみたいと思います。 お品書き CoreRCONの導入 自動化プログラムを書く いざ、実行 1. Co…

【C#】Visual Studio Online がアツい件

【朗報】VSCodeがオンラインで使えるだとっ!? ついに、ついに、ついに!! VSCodeがオンラインで利用できるようになりました! 何が嬉しいかというと、Web上でプログラミングができるのです。 「それだけ?」という人、いやいやちょっと待ってください。We…

【C#】深層学習入門 #5 ニューラルネットワークの実装1

はじめに 前回までに行列のロジックをやったので、今回はニューラルネットワークを実装してみます。まだニューラルネットワークの学習や出力層を調整する関数は考慮していません。フォワード方向のみです。 ニューラルネットワークの実装1 深層学習入門 #5 f…

【C#】深層学習入門 #4 3層ニューラルネットワークと行列計算

はじめに ニューラルネットワークは活性化関数を用いて、中間層をもつものです。しかし、具体的にどのようなロジックで解を導き出すのかがわかりません。今回は行列計算からはじまり、ニューラルネットワークのロジックに迫ります。 3層ニューラルネットワー…

【C#】深層学習入門 #3 ニューラルネットワークと活性化関数

はじめに 多層パーセプトロンは単層パーセプトロンを複数の層で重ねたものであり、ニューラルネットワークとも言えます。が、活性化関数があるかないかでニューラルネットワークかどうかが決まります。とくに最近ではReLU関数を活性化関数として扱っているも…

【C#】WPFアプリケーション入門 #13 グラフを描く

はじめに 深層学習の勉強中に、プログラムでグラフを描画したときのメモです。WPFよりもWindows Formsで作る記事が多かったので、WPFでも描けるように色々調べました。 お品書き 参照の追加 XAMLデザイン 描画ロジック 実行結果 1. 参照の追加 どうやら Wind…

【C#】深層学習入門 #2 多層パーセプトロン

はじめに 前回は単層パーセプトロンについてやりました。単純な論理回路(AND, OR, NAND) は実装できましたが、このままでは組み合わせ回路が実現できません。特にXORはNANDとORで作りますが、単層ではNANDもしくはORのどちらかしか実装できません。なので、…

【C#】深層学習入門 #1 単層パーセプトロン

はじめに 最近話題の機械学習。その中でも深層学習を扱うところが多いですね。ゲームAIをはじめ、画像認識やセキュリティなど幅広く活躍しています。 自分も興味があったのですが、アルゴリズムが苦手で敬遠していました。しかし、やっぱり機械学習やってみ…

【C#】WPFアプリケーション入門 #12 ポリモーフィズムとインターフェース

はじめに オブジェクト指向 (#10) でポリモーフィズムについて扱いました。ポリモーフィズムを意識すると、同じメソッドなのにクラスが違うと処理内容が変わるような処理ができます。つまり、操作名を共通化できます。 お品書き 今回扱う内容です。 ポリモー…

【C#】Minecraft自動化 #5 整地自動化

はじめに 前回は湧き潰し自動化を改良しました。具体的には任意の平面座標における湧き潰しを、地形を考慮して行うプログラムに直しました。 今回は指定範囲内を更地(整地)にするプログラムを作りたいと思います。整地は建築のための前準備ですね。整地し…

【C#】Minecraft自動化 #4 湧きつぶしの改良と地表判定ロジック

はじめに 前回は湧き潰しのプログラムを書きました。が、前回のプログラムのままでは障害物のブロックがあったときに、ブロックを置き換えてしまいます。ブロックを置き換えてしまうということは、地表に松明が設置されないことがあるので湧き潰しに不備が出…

Geant4をWindows10で動かす

Geant4 を Windows10 で動かすために行ったメモです。一筋縄で行かなかったので大変だった記録。 実行環境(動いたVer) Windows 10 Pro CMake 3.15.2 Visual Studio 2019 Community Microsoft (R) C/C++ Optimizing Compiler Version 19.21.27702.2 for x86…

【C#】Minecraft自動化 #3 範囲指定と湧きつぶし

はじめに 前回はプレイヤーの位置座標とブロックの配置方法についてやりました。今回は前回に引き続き、湧きつぶしをやりたいと思います。 湧きつぶしはフィールド上にモンスターがスポーンしないよう、暗い場所にたいまつなどの照明を一定間隔で置いていく…

【C#】Minecraft自動化 #2 プレイヤー座標の取得とブロックの配置

はじめに 前回は環境構築とマイクラに対してコマンドを送れるようにしました。今回はプレイヤーの座標を取得し、ブロックをその座標へ配置していきます。 お品書き ブロックを置くコマンド C# を用いてブロックを配置したいが... プレイヤーの座標を取得する…

【Python, C#】Minecraft自動化 #1 環境構築とコマンド操作

はじめに このシリーズはdocker環境ではなく、jarファイルで起動したforgeサーバを用います。また、サーバの環境構築はできていて、遊べる状態を前提としています。 Minecraft自動化ですが、「自動化」というと「自動収穫」や「経験値トラップ」を思い浮かべ…

【Minecraft】dockerを用いたMinecraftサーバの構築 #2

はじめに 前回のつづきです。前回はdockerで特に何も編集せずに実行していました。今回はバージョン変更やModの読み込みまでやります。 Windows10の環境でdockerからMinecraft forge 1.7.10 を起動する記事が見つからなかったので、いろんな記事の一部を集め…

【Minecraft】dockerを用いたMinecraftサーバの構築 #1

はじめに Minecraftは結構有名なゲームでyoutubeにも多数実況動画などがあります。内部的な実況は実況者に任せて、私「たくのろじぃ」は技術的な部分を実況(ではなく紹介)したいと思います。 今回はdockerというコンテナツールを用いてMinecraftサーバを構…

【Python】形態素解析 MeCab を デスクトップアプリ Tkinter で動かしてみる #2

はじめに 今回はGUIデザイン編として、前回作成した MeCab のロジックを少しいじったりしながら Tkinter の GUI を楽しんでみたいと思います。ただ、私自身 Python 初心者なので初歩的な話から「メモ書き」として進めていきたいと思います。 お品書き 今回扱…

【C#】WPFアプリケーション入門 #11 連想配列

はじめに 連想配列は配列の要素ひとつひとつに名前を付けるようなイメージです。配列のときはただ要素数を用意しただけなので、要素を呼び出すためには 変数名[値] を指定する必要があります。が、この値が問題で、何番目の要素に欲しいデータが入っているか…

【C#】WPFアプリケーション入門 #10 オブジェクト指向

はじめに いままで扱ってきたクラスやメソッドなどはオブジェクト指向の考え方に沿って動いています。実はオブジェクト指向を調べると、人によって解釈が異なります。最近はオブジェクト指向という考え方は必須ではない傾向にあるので、ぼんやり「こんなもん…

【Python】形態素解析 MeCab を デスクトップアプリ Tkinter で動かしてみる #1

はじめに 何回か前に WPF で形態素解析を使ったアプリを作ろうとしていましたが、NMeCab の情報とできることが少ないのでやめました。で、今回からは Python でアプリを作っていこうと思います。 実行環境は以下の通りです。 Windows 10 MeCab 0.996 VScode …

【C#】WPFアプリケーション入門 #9 アクセス修飾子とカプセル化

はじめに 前回までにクラスやメソッド、プロパティなどについて扱いましたが、これらのデータは自由に上書きしたり参照することができました。しかし、中にはいじってほしくないデータがあると思います。今回はアクセスレベルを変更する修飾子について扱いま…

【C#】WPFアプリケーション入門 #8 メソッド(関数)とフィールド(変数)

はじめに 前回はクラスについて扱いました。今までに関数や変数を扱ってきましたが、実はクラスを介していると名称が変わります。クラスや今回の内容を扱ってちょっとしたアプリを作ってみます。 お品書き 今回扱う内容です。 メソッド フィールド クラスを…