SlideShare a Scribd company logo
1 of 24
Download to read offline
Daisy OSでデイジーワールド!
2024/01/19
大神 祐真
(へにゃぺんて)
2024/01/19 大神 祐真(@yohgami) 2
自己紹介
大神 祐真 (@yohgami)
「へにゃぺんて」
という個人サークルで
独自なOSを作るための
活動を行っています!
自作OSを行う対象として
近年はレトロハードを
扱っています!
2024/01/19 大神 祐真(@yohgami) 3
自己紹介
大神 祐真 (@yohgami)
「へにゃぺんて」
という個人サークルで
独自なOSを作るための
活動を行っています!
自作OSを行う対象として
近年はレトロハードを
扱っています!
2024/01/19 大神 祐真(@yohgami) 4
独自なOS
現代のOSは基本的に
「ファイル」・「プロセス(アプリ)」
をユーザーに提供している
2024/01/19 大神 祐真(@yohgami) 5
独自なOS
現代のOSは基本的に
「ファイル」・「プロセス(アプリ)」
をユーザーに提供している
そうではないOSを作れないか?
2024/01/19 大神 祐真(@yohgami) 6
ファイルでもプロセスでもないOS
実行プログラムなどのバイナリデータが
生物のように振る舞える環境を提供するOS
2024/01/19 大神 祐真(@yohgami) 7
ファイルでもプロセスでもないOS
実行プログラムなどのバイナリデータが
生物のように振る舞える環境を提供するOS
それにより、
「実行プログラムを進化の仕組みで生み出す」
など
新たな価値のあるOSが作れるのでは?
2024/01/19 大神 祐真(@yohgami) 8
ファイルでもプロセスでもないOS
実行プログラムなどのバイナリデータが
生物のように振る舞える環境を提供するOS
・その仕組みを考え、設計・実装する取り組み
→ バイナリ生物学
・バイナリ生物学をOSのレイヤーで実装したもの
→ Daisy OS
2024/01/19 大神 祐真(@yohgami) 9
バイナリ生物学
2024/01/19 大神 祐真(@yohgami) 10
ファイルでもプロセスでもないOS
実行プログラムなどのバイナリデータが
生物のように振る舞える環境を提供するOS
・その仕組みを考え、設計・実装する取り組み
→ バイナリ生物学
・バイナリ生物学をOSのレイヤーで実装したもの
→ Daisy OS
2024/01/19 11
GB版Daisy OSによる
デイジーワールドデモ
itch.ioで公開中!
(ブラウザプレイ可)
Daisyworld DEMO
- Daisy OS GB v0.3.0
https://yohgami.itch.io/daisy
world-demo-daisy-os-v030
リンクは@yohgamiのXの
固定されたポストにも
あります(2024年1月現在)
2024/01/19 大神 祐真(@yohgami) 12
GB版Daisy OSによる
デイジーワールドデモ
Daisyworld DEMO - Daisy OS GB v0.3.0
https://yohgami.itch.io/daisyworld-demo-daisy-os-v030
↑のページ上で
デモとソフトの概要説明
2024/01/19 大神 祐真(@yohgami) 13
内部のお話
各デイジーは小さな実行プログラム
・白のデイジー:変数(※)から0.1を引く
・黒のデイジー:変数(※)へ0.1を足す
「地表温度」は内部的には単なる一つの変数
※ 実装の都合上、地表温度の変数を直接操作するのではなく、
別の変数へ0.1ずつ加算/減算を行い、1/-1に達したら
地表温度変数をインクリメント/デクリメントしている
2024/01/19 大神 祐真(@yohgami) 14
改めてバイナリ生物学のお話
【バイナリ生物学】
・実行プログラムなどのバイナリデータを
生物のように扱う環境を考え、設計・実装する
・生物としては「単細胞生物」程度の振る舞いを
想定する
→ 細胞分裂による増殖、突然変異による進化
2024/01/19 大神 祐真(@yohgami) 15
改めてバイナリ生物学のお話
【バイナリ生物学】
・実行プログラムなどのバイナリデータを
生物のように扱う環境を考え、設計・実装する
・生物としては「単細胞生物」程度の振る舞いを
想定する
→ 細胞分裂による増殖、突然変異による進化
これらをバイナリが行えるようにする
モデルを考える
2024/01/19 大神 祐真(@yohgami) 16
デイジーの周期動作
代謝/運動
(実行と評価)
成長
(1命令取得)
増殖
(分裂)
死
(消去)
増殖可能?
寿命?
Yes
No
Yes
No
次の
周期へ
2024/01/19 大神 祐真(@yohgami) 17
デイジーの周期動作
代謝/運動
(実行と評価)
成長
(1命令取得)
増殖
(分裂)
死
(消去)
増殖可能?
寿命?
評価して
適応度を設定
Yes
No
Yes
No
次の
周期へ
2024/01/19 大神 祐真(@yohgami) 18
デイジーの周期動作
代謝/運動
(実行と評価)
成長
(1命令取得)
増殖
(分裂)
死
(消去)
増殖可能?
寿命?
評価して
適応度を設定
Yes
No
Yes
No
次の
周期へ
デイジーワールドデモでの評価
「地表温度 - 生育適温」を「誤差」とする
誤差 >= 0 (温暖) の時:
・誤差に比例して
白のデイジーの適応度を高くする
・逆に黒のデイジーの適応度を低くする
誤差 < 0 (寒冷) の時:
・誤差の絶対値に比例して
黒のデイジーの適応度を高くする
・逆に白のデイジーの適応度を低くする
2024/01/19 大神 祐真(@yohgami) 19
デイジーの周期動作
代謝/運動
(実行と評価)
成長
(1命令取得)
増殖
(分裂)
死
(消去)
増殖可能?
寿命?
適応度が
高いほど
取得しやすい
評価して
適応度を設定
Yes
No
Yes
No
次の
周期へ
2024/01/19 大神 祐真(@yohgami) 20
デイジーの周期動作
代謝/運動
(実行と評価)
成長
(1命令取得)
増殖
(分裂)
死
(消去)
増殖可能?
寿命?
適応度が
高いほど
取得しやすい
評価して
適応度を設定
Yes
No
Yes
No
次の
周期へ
自身を構成する命令列を
もう一つ揃えると増殖可能に
2024/01/19 大神 祐真(@yohgami) 21
デイジーの周期動作
代謝/運動
(実行と評価)
成長
(1命令取得)
増殖
(分裂)
死
(消去)
増殖可能?
寿命?
適応度が
高いほど
取得しやすい
評価して
適応度を設定
ある確率で
突然変異
Yes
No
Yes
No
次の
周期へ
自身を構成する命令列を
もう一つ揃えると増殖可能に
2024/01/19 大神 祐真(@yohgami) 22
デイジーの周期動作
環境上のデイジーが周期動作を繰り返すことで、
評価を満たすデイジーがより生まれやすくなる
言いかえると
各デイジーが生物的振る舞いをしているだけで、
結果として地表温度が生育適温付近へ調節される
2024/01/19 大神 祐真(@yohgami) 23
まとめ
へにゃぺんての独自な自作OSについて、
「バイナリ生物学」、「Daisy OS」、
そして、デイジーワールドデモを紹介しました
生物的な振る舞いで問題を解決する所が
Daisy OSの面白さなのかなと感じています
この発表で少しでも楽しんでもらえたら幸いです!
2024/01/19 大神 祐真(@yohgami) 24
ご清聴ありがとうございました!

More Related Content

More from Yuma Ohgami

セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門Yuma Ohgami
 
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門Yuma Ohgami
 
『へにゃぺんて』のこれまでを振り返るブログ記事の紹介
『へにゃぺんて』のこれまでを振り返るブログ記事の紹介『へにゃぺんて』のこれまでを振り返るブログ記事の紹介
『へにゃぺんて』のこれまでを振り返るブログ記事の紹介Yuma Ohgami
 
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介Yuma Ohgami
 
セガサターンで動く自作シンセサイザーの紹介
セガサターンで動く自作シンセサイザーの紹介セガサターンで動く自作シンセサイザーの紹介
セガサターンで動く自作シンセサイザーの紹介Yuma Ohgami
 
セガサターンマシン語プログラミングの紹介
セガサターンマシン語プログラミングの紹介セガサターンマシン語プログラミングの紹介
セガサターンマシン語プログラミングの紹介Yuma Ohgami
 
ハードの作りで振り返るセガサターン
ハードの作りで振り返るセガサターンハードの作りで振り返るセガサターン
ハードの作りで振り返るセガサターンYuma Ohgami
 
エミュレータのコードを読んでわかるセガサターン
エミュレータのコードを読んでわかるセガサターンエミュレータのコードを読んでわかるセガサターン
エミュレータのコードを読んでわかるセガサターンYuma Ohgami
 
エミュレータのコードを読んでわかる「セガサターン」
エミュレータのコードを読んでわかる「セガサターン」エミュレータのコードを読んでわかる「セガサターン」
エミュレータのコードを読んでわかる「セガサターン」Yuma Ohgami
 
シェルスクリプトでセガサターンマシン語ベアメタルプログラミング
シェルスクリプトでセガサターンマシン語ベアメタルプログラミングシェルスクリプトでセガサターンマシン語ベアメタルプログラミング
シェルスクリプトでセガサターンマシン語ベアメタルプログラミングYuma Ohgami
 
ゲームボーイ向けOSの作り方
ゲームボーイ向けOSの作り方ゲームボーイ向けOSの作り方
ゲームボーイ向けOSの作り方Yuma Ohgami
 
メガドラ実機で自作のROMファイルを動かしてみた話
メガドラ実機で自作のROMファイルを動かしてみた話メガドラ実機で自作のROMファイルを動かしてみた話
メガドラ実機で自作のROMファイルを動かしてみた話Yuma Ohgami
 
/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VMYuma Ohgami
 
x86_64向け自作OSの紹介
x86_64向け自作OSの紹介x86_64向け自作OSの紹介
x86_64向け自作OSの紹介Yuma Ohgami
 
CybozuのOSS(WalB)へコミットしてみた/使ってみた
CybozuのOSS(WalB)へコミットしてみた/使ってみたCybozuのOSS(WalB)へコミットしてみた/使ってみた
CybozuのOSS(WalB)へコミットしてみた/使ってみたYuma Ohgami
 
GPD WINでStretchを動かす
GPD WINでStretchを動かすGPD WINでStretchを動かす
GPD WINでStretchを動かすYuma Ohgami
 
UEFIで始めるLinux From Scratch
UEFIで始めるLinux From ScratchUEFIで始めるLinux From Scratch
UEFIで始めるLinux From ScratchYuma Ohgami
 
UEFI向け自作OSの紹介
UEFI向け自作OSの紹介UEFI向け自作OSの紹介
UEFI向け自作OSの紹介Yuma Ohgami
 
UEFIベアメタルプログラミング
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミングYuma Ohgami
 
【シェル芸】コマンド7つで簡易コンテナ
【シェル芸】コマンド7つで簡易コンテナ【シェル芸】コマンド7つで簡易コンテナ
【シェル芸】コマンド7つで簡易コンテナYuma Ohgami
 

More from Yuma Ohgami (20)

セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N9] バイナリ生物学入門
 
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
 
『へにゃぺんて』のこれまでを振り返るブログ記事の紹介
『へにゃぺんて』のこれまでを振り返るブログ記事の紹介『へにゃぺんて』のこれまでを振り返るブログ記事の紹介
『へにゃぺんて』のこれまでを振り返るブログ記事の紹介
 
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
 
セガサターンで動く自作シンセサイザーの紹介
セガサターンで動く自作シンセサイザーの紹介セガサターンで動く自作シンセサイザーの紹介
セガサターンで動く自作シンセサイザーの紹介
 
セガサターンマシン語プログラミングの紹介
セガサターンマシン語プログラミングの紹介セガサターンマシン語プログラミングの紹介
セガサターンマシン語プログラミングの紹介
 
ハードの作りで振り返るセガサターン
ハードの作りで振り返るセガサターンハードの作りで振り返るセガサターン
ハードの作りで振り返るセガサターン
 
エミュレータのコードを読んでわかるセガサターン
エミュレータのコードを読んでわかるセガサターンエミュレータのコードを読んでわかるセガサターン
エミュレータのコードを読んでわかるセガサターン
 
エミュレータのコードを読んでわかる「セガサターン」
エミュレータのコードを読んでわかる「セガサターン」エミュレータのコードを読んでわかる「セガサターン」
エミュレータのコードを読んでわかる「セガサターン」
 
シェルスクリプトでセガサターンマシン語ベアメタルプログラミング
シェルスクリプトでセガサターンマシン語ベアメタルプログラミングシェルスクリプトでセガサターンマシン語ベアメタルプログラミング
シェルスクリプトでセガサターンマシン語ベアメタルプログラミング
 
ゲームボーイ向けOSの作り方
ゲームボーイ向けOSの作り方ゲームボーイ向けOSの作り方
ゲームボーイ向けOSの作り方
 
メガドラ実機で自作のROMファイルを動かしてみた話
メガドラ実機で自作のROMファイルを動かしてみた話メガドラ実機で自作のROMファイルを動かしてみた話
メガドラ実機で自作のROMファイルを動かしてみた話
 
/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM
 
x86_64向け自作OSの紹介
x86_64向け自作OSの紹介x86_64向け自作OSの紹介
x86_64向け自作OSの紹介
 
CybozuのOSS(WalB)へコミットしてみた/使ってみた
CybozuのOSS(WalB)へコミットしてみた/使ってみたCybozuのOSS(WalB)へコミットしてみた/使ってみた
CybozuのOSS(WalB)へコミットしてみた/使ってみた
 
GPD WINでStretchを動かす
GPD WINでStretchを動かすGPD WINでStretchを動かす
GPD WINでStretchを動かす
 
UEFIで始めるLinux From Scratch
UEFIで始めるLinux From ScratchUEFIで始めるLinux From Scratch
UEFIで始めるLinux From Scratch
 
UEFI向け自作OSの紹介
UEFI向け自作OSの紹介UEFI向け自作OSの紹介
UEFI向け自作OSの紹介
 
UEFIベアメタルプログラミング
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミング
 
【シェル芸】コマンド7つで簡易コンテナ
【シェル芸】コマンド7つで簡易コンテナ【シェル芸】コマンド7つで簡易コンテナ
【シェル芸】コマンド7つで簡易コンテナ
 

Recently uploaded

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Recently uploaded (9)

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

Daisy OSでデイジーワールド!

  • 2. 2024/01/19 大神 祐真(@yohgami) 2 自己紹介 大神 祐真 (@yohgami) 「へにゃぺんて」 という個人サークルで 独自なOSを作るための 活動を行っています! 自作OSを行う対象として 近年はレトロハードを 扱っています!
  • 3. 2024/01/19 大神 祐真(@yohgami) 3 自己紹介 大神 祐真 (@yohgami) 「へにゃぺんて」 という個人サークルで 独自なOSを作るための 活動を行っています! 自作OSを行う対象として 近年はレトロハードを 扱っています!
  • 4. 2024/01/19 大神 祐真(@yohgami) 4 独自なOS 現代のOSは基本的に 「ファイル」・「プロセス(アプリ)」 をユーザーに提供している
  • 5. 2024/01/19 大神 祐真(@yohgami) 5 独自なOS 現代のOSは基本的に 「ファイル」・「プロセス(アプリ)」 をユーザーに提供している そうではないOSを作れないか?
  • 6. 2024/01/19 大神 祐真(@yohgami) 6 ファイルでもプロセスでもないOS 実行プログラムなどのバイナリデータが 生物のように振る舞える環境を提供するOS
  • 7. 2024/01/19 大神 祐真(@yohgami) 7 ファイルでもプロセスでもないOS 実行プログラムなどのバイナリデータが 生物のように振る舞える環境を提供するOS それにより、 「実行プログラムを進化の仕組みで生み出す」 など 新たな価値のあるOSが作れるのでは?
  • 8. 2024/01/19 大神 祐真(@yohgami) 8 ファイルでもプロセスでもないOS 実行プログラムなどのバイナリデータが 生物のように振る舞える環境を提供するOS ・その仕組みを考え、設計・実装する取り組み → バイナリ生物学 ・バイナリ生物学をOSのレイヤーで実装したもの → Daisy OS
  • 9. 2024/01/19 大神 祐真(@yohgami) 9 バイナリ生物学
  • 10. 2024/01/19 大神 祐真(@yohgami) 10 ファイルでもプロセスでもないOS 実行プログラムなどのバイナリデータが 生物のように振る舞える環境を提供するOS ・その仕組みを考え、設計・実装する取り組み → バイナリ生物学 ・バイナリ生物学をOSのレイヤーで実装したもの → Daisy OS
  • 11. 2024/01/19 11 GB版Daisy OSによる デイジーワールドデモ itch.ioで公開中! (ブラウザプレイ可) Daisyworld DEMO - Daisy OS GB v0.3.0 https://yohgami.itch.io/daisy world-demo-daisy-os-v030 リンクは@yohgamiのXの 固定されたポストにも あります(2024年1月現在)
  • 12. 2024/01/19 大神 祐真(@yohgami) 12 GB版Daisy OSによる デイジーワールドデモ Daisyworld DEMO - Daisy OS GB v0.3.0 https://yohgami.itch.io/daisyworld-demo-daisy-os-v030 ↑のページ上で デモとソフトの概要説明
  • 13. 2024/01/19 大神 祐真(@yohgami) 13 内部のお話 各デイジーは小さな実行プログラム ・白のデイジー:変数(※)から0.1を引く ・黒のデイジー:変数(※)へ0.1を足す 「地表温度」は内部的には単なる一つの変数 ※ 実装の都合上、地表温度の変数を直接操作するのではなく、 別の変数へ0.1ずつ加算/減算を行い、1/-1に達したら 地表温度変数をインクリメント/デクリメントしている
  • 14. 2024/01/19 大神 祐真(@yohgami) 14 改めてバイナリ生物学のお話 【バイナリ生物学】 ・実行プログラムなどのバイナリデータを 生物のように扱う環境を考え、設計・実装する ・生物としては「単細胞生物」程度の振る舞いを 想定する → 細胞分裂による増殖、突然変異による進化
  • 15. 2024/01/19 大神 祐真(@yohgami) 15 改めてバイナリ生物学のお話 【バイナリ生物学】 ・実行プログラムなどのバイナリデータを 生物のように扱う環境を考え、設計・実装する ・生物としては「単細胞生物」程度の振る舞いを 想定する → 細胞分裂による増殖、突然変異による進化 これらをバイナリが行えるようにする モデルを考える
  • 16. 2024/01/19 大神 祐真(@yohgami) 16 デイジーの周期動作 代謝/運動 (実行と評価) 成長 (1命令取得) 増殖 (分裂) 死 (消去) 増殖可能? 寿命? Yes No Yes No 次の 周期へ
  • 17. 2024/01/19 大神 祐真(@yohgami) 17 デイジーの周期動作 代謝/運動 (実行と評価) 成長 (1命令取得) 増殖 (分裂) 死 (消去) 増殖可能? 寿命? 評価して 適応度を設定 Yes No Yes No 次の 周期へ
  • 18. 2024/01/19 大神 祐真(@yohgami) 18 デイジーの周期動作 代謝/運動 (実行と評価) 成長 (1命令取得) 増殖 (分裂) 死 (消去) 増殖可能? 寿命? 評価して 適応度を設定 Yes No Yes No 次の 周期へ デイジーワールドデモでの評価 「地表温度 - 生育適温」を「誤差」とする 誤差 >= 0 (温暖) の時: ・誤差に比例して 白のデイジーの適応度を高くする ・逆に黒のデイジーの適応度を低くする 誤差 < 0 (寒冷) の時: ・誤差の絶対値に比例して 黒のデイジーの適応度を高くする ・逆に白のデイジーの適応度を低くする
  • 19. 2024/01/19 大神 祐真(@yohgami) 19 デイジーの周期動作 代謝/運動 (実行と評価) 成長 (1命令取得) 増殖 (分裂) 死 (消去) 増殖可能? 寿命? 適応度が 高いほど 取得しやすい 評価して 適応度を設定 Yes No Yes No 次の 周期へ
  • 20. 2024/01/19 大神 祐真(@yohgami) 20 デイジーの周期動作 代謝/運動 (実行と評価) 成長 (1命令取得) 増殖 (分裂) 死 (消去) 増殖可能? 寿命? 適応度が 高いほど 取得しやすい 評価して 適応度を設定 Yes No Yes No 次の 周期へ 自身を構成する命令列を もう一つ揃えると増殖可能に
  • 21. 2024/01/19 大神 祐真(@yohgami) 21 デイジーの周期動作 代謝/運動 (実行と評価) 成長 (1命令取得) 増殖 (分裂) 死 (消去) 増殖可能? 寿命? 適応度が 高いほど 取得しやすい 評価して 適応度を設定 ある確率で 突然変異 Yes No Yes No 次の 周期へ 自身を構成する命令列を もう一つ揃えると増殖可能に
  • 22. 2024/01/19 大神 祐真(@yohgami) 22 デイジーの周期動作 環境上のデイジーが周期動作を繰り返すことで、 評価を満たすデイジーがより生まれやすくなる 言いかえると 各デイジーが生物的振る舞いをしているだけで、 結果として地表温度が生育適温付近へ調節される
  • 23. 2024/01/19 大神 祐真(@yohgami) 23 まとめ へにゃぺんての独自な自作OSについて、 「バイナリ生物学」、「Daisy OS」、 そして、デイジーワールドデモを紹介しました 生物的な振る舞いで問題を解決する所が Daisy OSの面白さなのかなと感じています この発表で少しでも楽しんでもらえたら幸いです!
  • 24. 2024/01/19 大神 祐真(@yohgami) 24 ご清聴ありがとうございました!