パーソナルブログメモリ

個人的な備忘録、主にコンピュータ関連です

ボードゲームの高速化

2020-08-07 | Python
CodinGameに新しくDots and BoxesがCONTRIBUTEされていたので遊んでみます。 実に他愛もないアルゴリズムなんですが、たまたま当たり、 まだ参加者が少ないのでとりあえずトップに、そして高速化することにしてみました。   ルール お互いに線をひいていきます。 ボックスの4つで獲得、獲得した時まわりも3つになればボックス獲得で線も追加され連鎖していくよう . . . 本文を読む
コメント

Atari碁のプログラムで1位を3度奪還して泣く

2020-08-05 | CodinGame
バグのような手を打たないようにする。 ここからどう強くしていったらいいのか、 自分なら打てるが、それをうまくコンピュータに伝えられない。 もう終わったかなと少しは頑張ったからと記念に書いたのが先程の自戦記。   いつも何度作ってもトップには抜かれ、後続にも抜かれる。 Python3が遅いのは知っている。 ランク上位の占める言語を、いつもみているから嫌と言うほど知っている。 . . . 本文を読む
コメント

Atari Go自戦記

2020-08-05 | CodinGame
昨日、久しぶりに1位を奪還したのですが、翌朝は元に戻っている。 もう疲れたので、最後に自戦記でも残そうかなとpeekでGIFアニメーションを作成。   後手 なぜそこに打った。 パターン認識に情報が足りてない...   後手 うまく囲まれている。これは仕方ない。   先手 まだバグがある。 とっても負けなのだけど。   . . . 本文を読む
コメント

Pythonのエラー too many indices for array と list indices must be integers or slices, not tuple

2020-08-05 | Python
[::3, ::3] というデータ操作をみたことがなかったので調査。 画像のドットデータを縦横3ドットごとに取得して簡単な圧縮処理に使っている。   普通の配列で実行すると TypeError: list indices must be integers or slices, not tuple numpy特有のものらしい       . . . 本文を読む
コメント

WordCloudがぼける 犯人(原因)

2020-08-05 | Python
SEに必要な能力は時に、ミステリーを解く能力に似ているのかもしれない。   どんな状況にも慌てず。冷静に、事実を見る。 とある問題を推理小説っぽく解決してみることにする。 やす 「これが現場です」 ボス 「いったいこのボケたWordCloudはサンプルとしてどうなんだ」 やす 「たしかに、はっきりしませんね」   この謎に挑むことにした。   . . . 本文を読む
コメント

WordCloudを作ろうとしてPythonの依存関係にはまる

2020-08-04 | Python
画像はwordcloudのサンプルから、 テキストをThe Python Standard Libraryの一部分に変更して作成 これはミステリー小説です。 文字の大きさがいろいろ変わって表現するものを作ってみようかと調べると Pythonでwordcroudというライブラリがすでにある。   インストール $ sudo pip install wordcloud &n . . . 本文を読む
コメント

アタリ碁で時代を表現する

2020-08-02 | CodinGame
平安時代 平安京エイリアンのような都市を公家(白)が作ろうとして、 鬼と呼ばれた者たちがそれを破壊している。     バブル時代 得体のしれない闇(黒)が泡のように世界金融市場が膨らみ 様々な都市を飲み込もうとしている。   いずれも、パターン認識の1つが盤上を一変させている。 二間トビのつなぎ形だけで時代が変わる。   &n . . . 本文を読む
コメント

Python3のエラー TypeError: unhashable type: 'list'

2020-08-02 | Python
リスト内の項目でかぶっているものを削除するためには 一度、setで集合型に変換したあとlistで戻せばできます。(順番は保証されません)   List内の項目がListでもできるかとやってみると集合型に変換する所で unhashable type: 'list'が発生しました。   List内のListを一度タプル型に変更するとできました。 . . . 本文を読む
コメント

適応能力

2020-08-01 | CodinGame
スプラトゥーンのAIを作っていて、俯瞰から実行中の映像をみて、 なぜここで、この動作をしてくれない。とデバッグをしている最中に目が覚める。   夢か...おもしろそうなコーディングしているではないか   現実は、ここ2,3日Atari Go(ポン抜き囲碁)のチューニングをしている。 next_captureというアタリにして逃げても次に取るという関数が、 いまのと . . . 本文を読む
コメント

今の人類に欠乏している概念

2020-07-30 | その他
とあるプログラム同士の Atari Go(ポン抜き囲碁) の対局をみて 頭に浮かんだのが記事のタイトル   最後引き分けになっている。 なんかとてもやさしい。   将棋でもAIが行き着くところまでいくと、 お互いの天国で守りあって勝負がつかないらしい。     わーい、やったー久々の瞬間 世界一 と台無しのセリフで締めよう。 . . . 本文を読む
コメント

最適化を終え、ひとつのQuestが終わる

2020-07-28 | CodinGame
最適化アルゴリズムをなんとかする方法 の続きと舞台裏   なんでかよくわからないけどスイッチが入ってフルスロットルで最適化を続けていた。 (続けていると、よかれあしかれ スイッチが入ります)   世界のトップ5%から3%までの過程が前回、 今回は そもそもの発端、Questの実績課題トップ2%へ   CodinGameというプログラム作成を楽しむサイ . . . 本文を読む
コメント

最適化アルゴリズムをなんとかする方法

2020-07-27 | CodinGame
CodinGameのトップページにQuestという実績のフローが新しく追加されていて、 これまでの努力のたまものかみるみると実績が解除されていく。   Level34になった時、もうレベルがあがることはないだろうなと思っていたけど、 この実績解除の際の経験値でLevel35になる。 行き止まりと思っていても他力本願で開ける時もある。   そして解除できない実績の解 . . . 本文を読む
コメント

Blender2.83 python scriptでオブジェクトを複数コピー

2020-07-24 | Blender
Blender2.7から2.8で大きく変わったようで過去のスクリプトだと動かず、ダウンロードしたblender_python_reference_2_83をみてなんとか完成 yamaという名前をつけた オブジェクトをコピーするプログラムです。     import bpyimport mathimport fnmatchimport random for obj . . . 本文を読む
コメント

挑戦九言語

2020-07-20 | 2020年までにプログラムをマスターさせる計画
先日の 18言語の修正(言語はにらめっこで覚える) の続き 残った、9言語も作ってみることにしました。   TypeScript JavaScriptにvarをつけるとだいたい動きました     C 文字列の操作にとても苦労しました。 C言語の頃は文字列の扱い大変だったのを思い出しました。     Objective . . . 本文を読む
コメント

18言語の修正(言語はにらめっこで覚える)

2020-07-18 | 2020年までにプログラムをマスターさせる計画
まだ時代が昭和だったころ 雑誌のゲームのプログラムを打ち込んでは ミスタイプの嵐とにらめっこで格闘していました。 すると誰に習ったのでもなく、なんとなくプログラムができるようになって、 高校時には雑誌に掲載されたりしました。   つい先日、将棋エンジンのコンパイルをしていて いくつかできるようになると、どことなくMakefileが理解できるようになった気がします。(30%) . . . 本文を読む
コメント