みつよし

人工生命をつくっています。 ALife/RoboCup/Factorio mod/Sc…

みつよし

人工生命をつくっています。 ALife/RoboCup/Factorio mod/Screeps/Kaggle https://mitsuyoshi-yamazaki.github.io/ALifeGameJam2019/

マガジン

  • 人工生命とジェネラティブアートの雑記帳

    人工生命とジェネラティブアートの制作手法や考察をまとめます

  • Screepsマガジン

    Screepsに関する記事のまとめ

記事一覧

市橋 伯一先生の「自己複製RNAの進化が生み出す寄生と共生」

東大市橋先生の自己複製RNAの研究が日経サイエンスと公開セミナーで発表されました。 Open-Ended Evolutionを目指した寄生体との共進化モデルをRNAを使って実現する試みで…

みつよし
1年前
7

Screepsのはじめかた

Screepsというコードを書いて遊ぶゲームがあります。 文字通りプログラミングをしないといけないため、面白さがわかってくるまでに挫折しないよう、始め方と情報の集め方を…

みつよし
2年前
14

Screepsハッキング事例

Screepsの戦争は、ある程度の強さがあればゴリ押しが効きますが、相手方も良い実装をしていた場合はロジックの穴を突くハッキング合戦になります。 よくある戦術攻撃側 - …

みつよし
2年前
2

Screepsふりかえり

3,4年前からScreepsというリアルタイムストラテジーゲームをプレイしています。 これはユニットの一挙手一投足をプログラムしないとプレイできないというとても硬派なゲー…

みつよし
2年前
13

Absolution Gap読了ガイド(WIP)

Alastair Reynoldsの書く「啓示空間」の未訳の続編「Absolution Gap」を原語で読む上で役立つ知識をまとめています。 本書は紙、電子書籍ともにAmazonから手に入ります。 …

みつよし
2年前
2

外国暮らしの処方箋

以前国際会議でヨーロッパに逗留していたとき、ずっと外国語に囲まれて参ってしまったことがありました。 言語が分からなくともなんとなく理解できることばもありますが……

みつよし
2年前
2

画面から覗く本棚

スマートフォンアプリ開発を生業として十余年、未だにUI化できない体験があります。 雑誌や本棚がそれで、これは物体のもつ「a)全体を見渡す網羅性」「b)細部に注目する詳…

みつよし
2年前

ALife2020研究紹介

先日行われた人工生命研究に関する国際会議 ALife2020 に参加してきました。 人工生命研究はあり得た生命(life as it could be)を作成することで、現実の生命現象(life …

みつよし
3年前
6

セルオートマトンの抽象化

セルオートマトンのルールの多さ初期状態を変化させることで様々なパターンをつくりだすことのできる面白いルールを探そうとするとき、とりうるルールの多さが問題となりま…

みつよし
3年前
2

万華鏡のデジタルとアナログ

万華鏡は鏡の反射を利用して再帰的に模様を生成します。 それにより、 - 鏡に囲われた領域が無限に繰り返される- 回転させると模様が変化する という性質をもちます。 …

みつよし
3年前
2

L-Systemと生物の対称形について

L-Systemをつかって海洋の小生物のような模様を大量に生産するジェネレータをつくりました。 元々は紙面を埋める模様をGenetic Programmingで自動生成する系を目指してお…

みつよし
3年前
6

ソフトウェア開発とクラフトゲームの差異について

ソフトウェア開発は目的物がどれほど面白くても開発が続かないことがある一方で、ゲーム内のものづくりは過程がつまらなくてもプレイしてしまいます。 その差異について。 …

みつよし
3年前
3

Blind Painter

はじめに BlindPainterはALife Game Jam 2019で作成した人工生命系/ジェネラティブアートです。 作品のコンセプトを "収束しない進化" と設定し、常に移り変わって寡占にな…

みつよし
3年前
5

プラナリアはメダカの餌で飼育できる

顆粒になっているメダカの乾燥餌で育てられます。 レバーなど生肉を与えるのと違って保存が効きますし、水も汚れにくいので飼育がかなり楽になります。 水底を這う生き物…

みつよし
3年前
3

簡単なcollision実装

物理シミュレーションを実装する際に物体の衝突を正確に表現するのは面倒なので、物体が重なったら斥力が生じるという実装を行います。 複数の物体が同時に衝突する場合も…

みつよし
3年前

ALife2020でArt in the Science Awardを受賞しました

人工生命の国際会議 Alife2020 に出展した Blind Painter という作品が、シンプルな仕組みでありながら複雑なふるまいを創発できるアイデアを評価されて Art in the Scienc…

みつよし
3年前
14
市橋 伯一先生の「自己複製RNAの進化が生み出す寄生と共生」

市橋 伯一先生の「自己複製RNAの進化が生み出す寄生と共生」

東大市橋先生の自己複製RNAの研究が日経サイエンスと公開セミナーで発表されました。
Open-Ended Evolutionを目指した寄生体との共進化モデルをRNAを使って実現する試みです。

公開セミナー「自己複製RNAの進化が生み出す寄生と共生」をオンライン開催(6月2日)

論文: https://webpark2056.sakura.ne.jp/papers/2022_Mizuuchi.p

もっとみる
Screepsのはじめかた

Screepsのはじめかた

Screepsというコードを書いて遊ぶゲームがあります。
文字通りプログラミングをしないといけないため、面白さがわかってくるまでに挫折しないよう、始め方と情報の集め方をまとめます。

どんなゲーム?多くのゲームはゲームのキャラクターを手動で動かしてプレイしますが、Screepsはゲームのキャラクターを動かすコードを書いてプレイするゲームです。
ジャンルとしてはリアルタイムストラテジーゲームで、経済

もっとみる
Screepsハッキング事例

Screepsハッキング事例

Screepsの戦争は、ある程度の強さがあればゴリ押しが効きますが、相手方も良い実装をしていた場合はロジックの穴を突くハッキング合戦になります。

よくある戦術攻撃側 - Tower Drain

防衛側の攻撃設備towerに充填されたエネルギーを枯渇させることでtowerを無効化する戦術です。
Bodyの小さな捨て身のcreepを大量に送り込んだり、部屋の境界上でうろうろして撃たれたら部屋の外に

もっとみる
Screepsふりかえり

Screepsふりかえり

3,4年前からScreepsというリアルタイムストラテジーゲームをプレイしています。
これはユニットの一挙手一投足をプログラムしないとプレイできないというとても硬派なゲームで、さらに使える計算資源が限られるため遊んでいくうちに計算機科学の知識がつくようになります。
昨年は公式マッチに参加したのを皮切りに新アーキテクチャの実装を進めて、コードとゲームの両面で大きな進捗がありました。

ゲームの進捗S

もっとみる

Absolution Gap読了ガイド(WIP)

Alastair Reynoldsの書く「啓示空間」の未訳の続編「Absolution Gap」を原語で読む上で役立つ知識をまとめています。
本書は紙、電子書籍ともにAmazonから手に入ります。

記事の前半は「Absolution Gap」前までの状況、後半に作中で描かれる状況を書いています。
私はまだ読み終えていないため未完成です。

Reynoldsの本の難しさは視点の転換と形容詞の多さに

もっとみる
外国暮らしの処方箋

外国暮らしの処方箋

以前国際会議でヨーロッパに逗留していたとき、ずっと外国語に囲まれて参ってしまったことがありました。

言語が分からなくともなんとなく理解できることばもありますが…

内容を推測できないものも多くあります。

読めない言葉に囲まれて生活するのも息が詰まるうえに、その大変さを共有できる人間も周囲にいません。
私はそんな環境では外国の登場するエッセイを探して、著者たちが外国でどんな問題にでくわしたのか、

もっとみる

画面から覗く本棚

スマートフォンアプリ開発を生業として十余年、未だにUI化できない体験があります。
雑誌や本棚がそれで、これは物体のもつ「a)全体を見渡す網羅性」「b)細部に注目する詳細性」をスマートフォン上で両立できないためです。

このふたつの性質を成り立たせているのは対象の物理的な広がりと人間の視覚によるもので、人間は広範囲を鳥瞰することと一点に注目することを瞬時に切り替えることができます。

一方でスマート

もっとみる

ALife2020研究紹介

先日行われた人工生命研究に関する国際会議 ALife2020 に参加してきました。
人工生命研究はあり得た生命(life as it could be)を作成することで、現実の生命現象(life as we know it)を理解しようとする試みです。

この分野の研究はどれも独特なもので面白いのですが、その理由は研究対象とアプローチの組み合わせの数だけ研究があるためです。
研究対象である生命現象

もっとみる
セルオートマトンの抽象化

セルオートマトンの抽象化

セルオートマトンのルールの多さ初期状態を変化させることで様々なパターンをつくりだすことのできる面白いルールを探そうとするとき、とりうるルールの多さが問題となります。

セルオートマトンを離散的に実装していればルールの総数は決まっているため総当たりにすることはできますが、これは2^10〜という数になるため人間が目を通すことはできません。

ランダムなルールを生成して目を通せば全体を満遍なく見ることも

もっとみる

万華鏡のデジタルとアナログ

万華鏡は鏡の反射を利用して再帰的に模様を生成します。
それにより、


- 鏡に囲われた領域が無限に繰り返される- 回転させると模様が変化する

という性質をもちます。

これをデジタルで再現することを考えると、「鏡に囲われた領域の模様を繰り返す」という性質を実装するのは少し面倒ですが、「背景を透過させた模様を繰り返し配置し、重ねる」ということは簡単に実装できます。

つまり、現実の万華鏡と一部

もっとみる
L-Systemと生物の対称形について

L-Systemと生物の対称形について

L-Systemをつかって海洋の小生物のような模様を大量に生産するジェネレータをつくりました。

元々は紙面を埋める模様をGenetic Programmingで自動生成する系を目指しており、L-Systemは実装の容易な祖先種として選んだだけだったのですが、L-Systemのみでも綺麗な模様が生まれると分かったのでGenetic Programmingは忘れることにして今の形になりました。

もっとみる

ソフトウェア開発とクラフトゲームの差異について

ソフトウェア開発は目的物がどれほど面白くても開発が続かないことがある一方で、ゲーム内のものづくりは過程がつまらなくてもプレイしてしまいます。
その差異について。

ソフトウェア開発は繰り返し作業がなく、能動的に動かなければ状況が変わらないという特徴があります。

対してゲーム内のものづくりは、解決できる問題のみで構成されており、また時間経過でイベントが起きます。

ソフトウェア開発

- 能動的-

もっとみる
Blind Painter

Blind Painter

はじめに
BlindPainterはALife Game Jam 2019で作成した人工生命系/ジェネラティブアートです。
作品のコンセプトを "収束しない進化" と設定し、常に移り変わって寡占にならない人工生命系を実装しました。

コンセプト
イベントの "ever changing -変わり続ける-" というテーマと "人工生命" というワードから、作品のコンセプトを "収束しない進化" と設

もっとみる

プラナリアはメダカの餌で飼育できる

顆粒になっているメダカの乾燥餌で育てられます。
レバーなど生肉を与えるのと違って保存が効きますし、水も汚れにくいので飼育がかなり楽になります。

水底を這う生き物が水面に浮かぶ餌を食べられるのか…というと、なんとこの動物は波のない水面の裏を這い進むことができる(!)ために問題になりません。
餌を撒いておくとわらわらと寄ってきて食事する様子を観察できます。
水面だと障害物も少なく見やすいのも良いです

もっとみる

簡単なcollision実装

物理シミュレーションを実装する際に物体の衝突を正確に表現するのは面倒なので、物体が重なったら斥力が生じるという実装を行います。
複数の物体が同時に衝突する場合も合力を求めれば良いだけなので簡単で、また物体同士の距離が近いほど斥力が大きくなるようにすれば弾性のような現象も再現できます。

// 疑似コード// Object.position は vectordistance = object1.po

もっとみる
ALife2020でArt in the Science Awardを受賞しました

ALife2020でArt in the Science Awardを受賞しました

人工生命の国際会議 Alife2020 に出展した Blind Painter という作品が、シンプルな仕組みでありながら複雑なふるまいを創発できるアイデアを評価されて Art in the Science Award を受賞しました。

Blind PainterBlind Painter は人工生命を種族ごとに色分けして軌跡を表示することにより、その種族の分布を可視化できるようにしたジェネラテ

もっとみる