Ubuntuで将棋ソフトelmo (2017/06/24)

第27回世界コンピュータ将棋選手権で優勝した将棋ソフトelmoをUbuntuで使いたい。

elmoは評価関数と定跡だけなので、この他に将棋エンジンと将棋ソフトGUIが必要となる。elmoを将棋エンジンに組み込み、その将棋エンジンを将棋ソフトGUIに登録するという手順を経る。

elmo開発者の瀧澤誠さんご自身が説明している導入方法では将棋エンジンとしてやねうら王、将棋ソフトGUIとして将棋所を使っている。そこで、ここでもそのようにする。ただ、将棋ソフトGUIは個人的にはShogiGUIが好みなので、そちらでのやり方も紹介する。

monoのインストール

Ubuntuで使うにはmonoが必要なのでインストールする。

①以下のコマンドを端末に入力して「Enter」キーを押す。

$ sudo apt-get install -y mono-complete

②「[sudo] **** のパスワード:」でパスワードを入力して「Enter」キーを押す。

やねうら王のダウンロード

①以下のアドレスをクリックする。

https://github.com/yaneurao/YaneuraOu/

②「Clone er download」をクリックする。

③「Clone with HTTPS」で「Download ZIP」をクリックする。

④「YaneuraOu-master.zip を開く」で「ファイルを保存する」を選択する。

⑤「OK」ボタンをクリックする。

elmoのダウンロード

①以下のアドレスをクリックする。

https://drive.google.com/file/d/0B0XpI3oPiCmFalVGclpIZjBmdGs

②「elmo.shogi.zip」で「ダウンロード」ボタンをクリックする。

③「Google ドライブではこのファイルのウィルス スキャンを実行することはできません。」で「ダウンロード」ボタンをクリックする。

④「elmo.shogi.zip を開く」で「ファイルを保存する」を選択する。

⑤「OK」ボタンをクリックする。

将棋所のダウンロード

①以下のアドレスをクリックする。

http://www.geocities.jp/shogidokoro/download.html

②「将棋所3.9.0をダウンロード」で「ダウンロード」リンクをクリックする。

③「Shogidokoro.zip を開く」で「ファイルを保存する」を選択する。

④「OK」ボタンをクリックする。

(参考)ShogiGUIのダウンロード

①以下のアドレスをクリックする。

http://shogigui.siganus.com/download.html

②「2017/6/21 ver 0.0.6.11」で「zip版」ボタンをクリックする。

③「ShogiGUIv0.0.6.11.zip を開く」で「ファイルを保存する」を選択する。

④「OK」ボタンをクリックする。

ダウンロードファイルの解凍

○以下のコマンドを端末に入力して「Enter」キーを押す。

$ unzip -d ~/デスクトップ ~/ダウンロード/YaneuraOu-master.zip; \
unzip -d ~/デスクトップ ~/ダウンロード/elmo.shogi.zip; \
unzip -d ~/デスクトップ ~/ダウンロード/Shogidokoro.zip

○「ShogiGUIv0.0.6.11.zip」ファイルを解凍する場合は以下のコマンドを端末に入力して「Enter」キーを押す。

$ unzip -d ~/デスクトップ ~/ダウンロード/ShogiGUIv0.0.6.11.zip

elmoをやねうら王に設置

○以下のコマンドを端末に入力して「Enter」キーを押す。

$ cp ~/デスクトップ/elmo.shogi/eval/*.bin ~/デスクトップ/YaneuraOu-master/exe/eval; \
cp ~/デスクトップ/elmo.shogi/book/yaneura_format/standard_book.db ~/デスクトップ/YaneuraOu-master/exe/book; \
cp -r ~/デスクトップ/YaneuraOu-master/exe/eval ~/デスクトップ/YaneuraOu-master/exe/2017Early; \
cp -r ~/デスクトップ/YaneuraOu-master/exe/book ~/デスクトップ/YaneuraOu-master/exe/2017Early

やねうら王のコンパイル

やねうら王にあるexeファイルはUbuntuでは実行できないようである。そこでソースファイルをコンパイルする。

やねうら王開発者のやねうらおさんによると「make avx2」でコンパイルすればよいらしい。だが、私の環境でははうまくいかなかった。そこで「make sse42」とした。

○以下のコマンドを端末に入力して「Enter」キーを押す。

$ cd ~/デスクトップ/YaneuraOu-master/source; \
make sse42; \
cp ~/デスクトップ/YaneuraOu-master/source/YaneuraOu-by-gcc ~/デスクトップ/YaneuraOu-master/exe/2017Early

やねうら王(elmo)を将棋所に登録

①以下のコマンドを端末に入力して「Enter」キーを押す。

$ mono ~/デスクトップ/Shogidokoro/Shogidokoro.exe

将棋所を起動するときはこのコマンドを使う。

②将棋所のメニューバーで「対局」をクリックする。

③「エンジン管理...」をクリックする。

④「エンジン管理」で「追加...」ボタンをクリックする。

⑤「エンジン選択」で「~/デスクトップ/YaneuraOu-master/exe/2017Early」フォルダーに移動する。

⑥「YaneuraOu-by-gcc」ファイルをクリックする。

⑦「Open」ボタンをクリックする。

⑧「確認」で「OK」ボタンをクリックする。

登録はここまでで、以下は設定である。

⑨「エンジン管理」に戻って「エンジン設定...」ボタンをクリックする。

⑩「エンジン設定」で「Threads」を「16」に設定する。

推奨の設定ではCPUコア数の2倍とあり、私のPCは8コアなので、上のように設定した。

⑪「Hash」を「16」に設定する。

⑫「NetworkDelay」を「0」に設定する。

⑬「NetworkDelay2」を「0」に設定する。

⑭「MinimumThinkingTime」を「1000」に設定する。

⑮「BookMoves」を「200」に設定する。

⑯「BookDepthLimit」を「0」に設定する。

⑰「OK」ボタンをクリックする。

⑱「エンジン管理」に戻って「閉じる」ボタンをクリックする。

(参考)やねうら王(elmo)をShogiGUIに登録

①以下のコマンドを端末に入力して「Enter」キーを押す。

$ mono ~/デスクトップ/ShogiGUIv0.0.6.11/ShogiGUI.exe

ShogiGUIを起動するときはこのコマンドを使う。

②ShogiGUIのメニューバーで「ツール」をクリックする。

③「エンジン設定」をクリックする。

④「エンジン一覧」で「追加」ボタンをクリックする。

⑤「Open」で「~/デスクトップ/YaneuraOu-master/exe/2017Early」フォルダーに移動する。

⑥「Files of type:」で「すべてのファイル」を選択する。

⑦「YaneuraOu-by-gcc」ファイルをクリックする。

⑧「Open」ボタンをクリックする。

⑨「エンジン設定」の「BookDepthLimit」を「0」に設定する。

⑩「BookMoves」を「200」に設定する。

⑪「Hash」を「16」に設定する。

⑫「MinimumThinkingTime」を「1000」に設定する。

⑬「NetworkDelay」を「0」に設定する。

⑭「NetworkDelay2」を「0」に設定する。

⑮「Threads」を「16」に設定する。

推奨の設定ではCPUコア数の2倍とあり、私のPCは8コアなので、上のように設定した。

⑯「OK」ボタンをクリックする。

⑰「エンジン一覧」に戻って「OK」ボタンをクリックする。

参考ページ

コンピュータ将棋ソフト「elmo」導入方法

やねうら王2016MidのLinux/Mac対応について

ubuntuにelmoを入れて戦う

Ubuntuでスワップの解放 (2017/05/09)

スワップが使われて、PCが重くなった場合、スワップを解放する。

①端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo swapoff -a;sudo swapon -a

②「[sudo] **** のパスワード:」でパスワードを入力して「Enter」キーを押す。

参考

http://dqn.sakusakutto.jp/2014/01/linux_swap.html

Ubuntuの再インストール前にやること (2017/05/07)

Ubuntuを再インストールする前にやることを以下に書く。あくまでも私の環境、及び好みに基づくものなので、必ずしもこのようにする必要はない。

フォルダー、ファイルの移動

残したいフォルダー、ファイルは「/home」内に移動する。

私は「/」と「/home」とでパーティションを分けている。再インストールのとき、「/home」をフォーマットしない設定にすれば、「/home」内のフォルダー、ファイルは再インストール後も残される。

フォルダー、ファイルのバックアップ

どうしてもなくしたくないフォルダー、ファイルはUSBメモリに保存する。「/home」内のフォルダー、ファイルは無事なはずだが念のためである。

ブックマークのバックアップ

①Firefoxの「ブックマーク」をクリックする。

②「すべてのブックマークを表示」をクリックする。

③「履歴とブックマークの管理」で「インポートとバックアップ」をクリックする。

④「バックアップ」をクリックする。

⑤「ブックマークをファイルにバックアップ」でバックアップ先のフォルダーを選択する。

もちろん「/home」内のどこかにである。さもないと再インストールのときに消えてしまい、意味がない。

⑥「保存」ボタンをクリックする。

⑦「履歴とブックマークの管理」の「×」ボタンをクリックして閉じる。

Firefoxに保存されているログイン情報をメモ

Firefoxに保存されているログイン情報をメモする。もっとスマートな方法もあると思う。だが、数が少ないので私はメモするというアナログな方法によっている。

ブックマークの保存は忘れても作りなおせばいいだけだ。だが、ログイン情報の保存を忘れるとけっこう苦労するので忘れないようにする。

①Firefoxの「編集」をクリックする。

②「設定」をクリックする。

③「設定」タブの「セキュリティ」をクリックする。

④「セキュリティ」の「ログイン情報」で「保存されているログイン情報」ボタンをクリックする。

⑤「保存されたログイン情報」で「パスワードを表示する」ボタンをクリックする。

⑥「パスワードを表示しますか?」で「はい」ボタンをクリックする。

⑦「サイト」、「ユーザー名」、「パスワード」をメモする。

⑧「閉じる」ボタンをクリックする。

⑨「設定」タブの「×」ボタンをクリックして閉じる。

メモは安全な場所に保管しておく。

Ubuntuのセキュリティ対策 (2017/05/06)

Ubuntuのセキュリティ対策としてファイアウォールとウイルススキャンについて述べる。Linuxではセキュリティ対策は必要ないという意見もある。だが、やっておいて損はあるまい。

ファイアウォール

ファイアウォールを有効にし、設定を加える。Ubuntuはデフォルトではファイアウォールが有効になっていない。

①端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo ufw enable

②「[sudo] **** のパスワード:」でパスワードを入力して「Enter」キーを押す。

これでファイアウォールが有効になる。

③端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo ufw default deny

この設定で外からの通信(インバウンド)を拒否する。だが、外への通信(アウトバウンド)は拒否されない。アウトバウンドの設定もできるようだが、ここではしない。

④端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo ufw status verbose

これで設定を確認する。

状態: アクティブ
ロギング: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
新しいプロファイル: skip

と表示されていればOK。

ウイルススキャン

ClamAVのインストール

①端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo apt-get install -y clamav

②「[sudo] **** のパスワード:」でパスワードを入力して「Enter」キーを押す。

ウイルスデータベースの更新

①端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo /etc/init.d/clamav-freshclam stop

②「[sudo] **** のパスワード:」でパスワードを入力して「Enter」キーを押す。

③端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo freshclam

④端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo /etc/init.d/clamav-freshclam start

以前は③だけでよかった。ところが、そうすると現在では

ERROR: /var/log/clamav/freshclam.log is locked by another process
ERROR: Problem with internal logger (UpdateLogFile = /var/log/clamav/freshclam.log).

というエラーになる。

そこでclamav-freshclamを停止してからウイルスデータベースを更新し、更新が終わったら、また開始することにしている。

ウイルススキャンの実行

ウイルスデータベースの更新に続けて実行する。

○端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo clamscan --infected --recursive --remove /

オプションの意味は

--infected: ウイルスに感染したファイルを出力。
--recursive: サブディレクトリを再帰的にスキャン。
--remove: ウイルスに感染したファイルを削除。

である。

Ubuntuのインストール後にやること (2017/05/04)

Ubuntuインストール後にやることを以下に書く。ただし、単なる私の好みである。

画面ロックの解除

画面ロックの解除を設定する。デフォルトではPCをしばらく操作しないと画面が一々ロックされ、鬱陶しい。

①メニューバー右端のアイコンをクリックする。

②「システム設定...」をクリックする。

③「システム設定」の「ユーザー向け」で「画面の明るさとロック」をクリックする。

④「画面の明るさとロック」の「次の時間アイドル状態が続けば画面をオフにする」で「しない」を選択する。

⑤「画面の明るさとロック」の「×」ボタンをクリックして閉じる。

「デスクトップの表示」をLauncherに追加

「デスクトップの表示」をLauncherに追加する。

①メニューバー右端のアイコンをクリックする。

②「システム設定...」をクリックする。

③「システム設定」の「ユーザー向け」で「外観」をクリックする。

④「外観」の「挙動」タブをクリックする。

⑤「Launcherにデスクトップの表示アイコンを追加」にチェックを入れる。

⑥「外観」の「×」ボタンをクリックして閉じる。

履歴の設定と削除

履歴を設定し、削除する。

①メニューバー右端のアイコンをクリックする。

②「システム設定...」をクリックする。

③「システム設定」の「ユーザー向け」で「セキュリティとプライバシー」をクリックする。

④「セキュリティとプライバシー」で「ファイルとアプリケーション」タブをクリックする。

⑤「ファイルとアプリケーションの利用状況を記録」で「オフ」を選択する。

⑥「利用履歴データをクリア...」をクリックする。

⑦「利用履歴データをクリア」の「ファイルとアプリケーションを利用した記録の削除」で「全期間」を選択する。

⑧「OK」ボタンをクリックする。

⑨「この操作は取り消すことができません。本当にこのアクティビティを削除しますか?」で「はい」ボタンをクリックする。

⑩「セキュリティとプライバシー」の「×」ボタンをクリックして閉じる。

解像度の調整

必要があれば解像度を調整する。インストール直後は解像度がモニターと合っていないことがある。

①メニューバー右端のアイコンをクリックする。

②「システム設定...」をクリックする。

③「システム設定」の「ハードウェア」で「ディスプレイ」をクリックする。

④「ディスプレイ」の「解像度」でモニターに合ったものを選択する。

⑤「適用」ボタンをクリックする。

⑥「ディスプレイの設定に問題はありませんか?」で「この設定のままにする」ボタンをクリックする。

⑦「ディスプレイ」の「×」ボタンをクリックして閉じる。

時計表示の設定

時計で秒を表示させる。デフォルトでは表示されていない。

①メニューバーの時計をクリックする。

②「時刻と日付の設定...」をクリックする。

③「時刻と日付」で「時計」タブをクリックする。

④「時計の表示設定」で「秒」にチェックを入れる。

⑤「時刻と日付」の「×」ボタンをクリックして閉じる。

端末のLauncherへの登録

端末をLauncherに登録する。

①デスクトップの適当な場所を右クリックする。

②「端末を開く」をクリックする。

端末が起動する。

③Launcher上の「端末」を右クリックする。

④「Launcherに登録」をクリックする。

⑤「端末」の「×」ボタンをクリックして閉じる。

テキストエディターのLauncherへの登録

テキストエディターをLauncherに登録する。

①Launcher上の「コンピューターを検索」をクリックする。

②検索窓に「テキストエディター」と入力する。

③「アプリケーション」で「テキストエディター」をクリックする。

テキストエディターが起動する。

④Launcher上の「テキストエディター」を右クリックする。

⑤「Launcherに登録」をクリックする。

⑥「テキストエディター」の「×」ボタンをクリックして閉じる。

システムモニターのLauncherへの登録

システムモニターをLauncherに登録する。

①Launcher上の「コンピューターを検索」をクリックする。

②検索窓に「システムモニター」と入力する。

③「アプリケーション」で「システムモニター」をクリックする。

システムモニターが起動する。

④Launcher上の「システムモニター」を右クリックする。

⑤「Launcherに登録」をクリックする。

⑥「システムモニター」の「×」ボタンをクリックして閉じる。

Firefoxの設定

Firefoxの設定を行う。

①Launcher上の「Firefox ウェブ・ブラウザ」をクリックする。

Firefoxが起動する。

②Firefoxの「編集」をクリックする。

③「設定」をクリックする。

④「設定」タブの「一般」で「ホームページ」に「http://www.yahoo.co.jp/」と入力する。

⑤「コンテンツ」をクリックする。

ここで言語設定をする。デフォルトでは日本語が第1優先になっているが、それでもFC2ブログにログインすると英語になる。うっとうしいので英語を削除する。

⑥「言語」で「言語設定」ボタンをクリックする。

⑦「ウェブページの言語」で「英語/アメリカ合衆国 [en-us]」を選択する。

⑧「削除」ボタンをクリックする。

⑨「英語 [en]」を選択する。

⑩「削除」ボタンをクリックする。

⑪「OK」ボタンをクリックする。

⑫「設定」タブに戻って「プライバシー」をクリックする。

⑬「履歴」の「Firefoxに」で「記憶させる履歴を詳細設定する」を選択する。

⑭「Firefox の終了時に履歴を消去する」にチェックを入れる。

⑮「設定」タブの「×」ボタンをクリックして閉じる。

⑯Firefoxの「履歴」をクリックする。

⑰「最近の履歴を消去」をクリックする。

⑱「消去する履歴の期間」で「すべての履歴」を選択する。

⑲「消去する項目」ですべてにチェックを入れる。

⑳「今すぐ消去」ボタンをクリックする。

次回以降、今回の選択は記憶される。

㉑Firefoxの「ブックマーク」をクリックする。

㉒「すべてのブックマークを表示」をクリックする。

㉓「履歴とブックマークの管理」で「インポートとバックアップ」をクリックする。

㉔「復元」にカーソルを合わせる。

㉕「ファイルを選択」をクリックする。

㉖「復元するブックマークファイル」でブックマークファイルのあるフォルダーに移動する。

㉗ブックマークファイルを選択する。

㉘「開く」ボタンをクリックする。

㉙「本当に復元しますか?」で「OK」ボタンをクリックする。

㉚「履歴とブックマークの管理」の「×」ボタンをクリックして閉じる。

㉛Firefoxの「ツール」をクリックする。

㉜「アドオン」をクリックする。

㉝「アドオンマネージャ」タブで「アドオンを検索します」に「noscript」と入力して「Enter」キーを押す。

㉞「NoScript」で「インストール」をクリックする。

㉟「アドオンマネージャ」タブの「×」ボタンをクリックして閉じる。

㊱Firefoxの「×」ボタンをクリックして閉じる。

アドオンはFirefoxの再起動後に有効になる。

ntpのインストール

ntpをインストールする。これをしないとPCの時間がずれることがあり、トレードのときに不都合である。

①端末に以下のコマンドを入力して「Enter」キーを押す。

$ sudo apt-get install -y ntp

②「[sudo] **** のパスワード:」でパスワードを入力して「Enter」キーを押す。