Pythonで始めるスワーム制御プログラミング

Pythonで始めるスワーム制御プログラミング

群れをなす生物の振る舞いを応用するスワーム制御をPythonを使って体感できる。

ジャンル
発行年月日
2026/02/10
判型
B5
ページ数
104ページ
ISBN
978-4-339-03249-9
Pythonで始めるスワーム制御プログラミング
在庫あり
2営業日以内に出荷致します。

定価

2,530(本体2,300円+税)

カートに入れる

購入案内

  • 内容紹介
  • まえがき
  • 目次
  • 著者紹介

【対象読者】
本書は,スワーム制御やシープドッグシステムに興味はあるものの,
・スワーム制御アルゴリズムに関する知識がない
・スワーム制御をどのようにプログラミングすればよいか分からない
読者を対象としている.
基礎的な群れモデルについて説明し,それらを実際にプログラミングすることで,理論的説明の理解を助ける構成となっている.また,群制御の歴史やシープドッグシステムの関連研究も紹介している.
さらに,プログラミング言語 Python の基本的な使い方から,グラフ描画やアニメーション作成まで解説しているため,プログラミング初心者でも安心して取り組むことができる.本書の例題プログラムを実行するだけで,手軽にスワーム制御の挙動を体験できる.

【本書の特徴】
本書では,スワーム制御に関するさまざまな制御手法を紹介する.これらを理論的に説明するだけでなく,プログラミング言語 Python を用いて可視化し,実際にシミュレーションを行うことで,スワーム制御の挙動を自身のパソコン上で手軽に体験できる.理論のみでは理解が難しい場合でも,シミュレーションを通じて直感的な理解を促す点が本書の特徴である.

【読めば身につくこと】
・Pythonによるプログラミング
・Pythonを使ったグラフの描画とアニメーション作成
・スワーム制御の動作をシミュレーションで確認
・シープドッグシステムの誘導制御則の理解とシミュレーション
・群制御の歴史およびシープドッグシステムに関する関連研究

【各章の紹介】
1章では,本書のテーマである「群れ」について説明します.
2章では,Pythonの基本的な使い方を学ぶ.変数の扱い方や各種計算方法,グラフ描画を説明し,さらにBoidsモデルの実装とシミュレーションを行う.
3章では,スワーム制御について説明し,シープドッグシステムのシミュレーションを通して,Boidsモデルの構築から牧羊犬の誘導制御法の実装まで扱う
4章では,さまざまな群れモデルを紹介し,それらのモデルに対してシープドッグシステムのシミュレーションを実施する.
5章では,シープドッグの誘導制御則を複数提示し,それぞれについてシミュレーションを行う.
6章では,群制御の歴史やシープドッグシステムに関する関連研究,およびその応用研究について説明する.

【キーワード】
Python,スワーム制御,シープドッグシステム,群制御,マルチエージェントシステム

☆発行前情報のため,一部変更となる場合がございます

我々人間を含め,地球上にはたくさんの群れをなす生物たちが存在する。彼らの見せる振る舞いはとても不思議で,多くの人々を魅了してやまない。働きアリの採餌行動(フェロモントレール)や,数万羽規模のムクドリがまるで1個の生命体のように振る舞う動きや,ヒツジの群れの流れるようにスムーズな移動も非常に美しい。

そのような自然界の群れをなす生き物の振る舞いに着目し,ロボットや分散システムに活かそうと,さまざまな分野で研究が進んでいる。コンピュータによる人工生命シミュレーションから始まり,複数台のロボット群の制御に応用するスワームロボティクスなどである。近年では,インターネットや社会インフラが普及したことに伴い,PC端末のような複数のノードを有するシステムの管理や分散制御などを扱うマルチエージェントシステムという分野が注目を集めている。また,AIや機械学習などの情報数理分野との親和性も高く,応用研究が展開されている。

このような背景から,IoT時代に突入したいま,改めて群れに関して知見を広げておくことは非常に有意義である。本書は,そのような「群」に興味のある大学生や,スワームシステム,マルチエージェントステムの研究をこれから始めてみたいという初学者に向けて執筆されている。本書の冒頭から早速,群れの行動モデルとして有名なBoidsモデルをシミュレーションで作ってみよう。

本書の第1章では,Boidsモデルの概要を述べる。第2章では,Boidsモデルをプログラミング言語"Python"を用いてシミュレーションするその手順を述べている。Pythonを自身のPCで使うためのプログラミング環境の構築から,Pythonプログラミングの基礎コードの書き方まで,詳細に記載している。

つぎに,第2章で作ったプログラムを使って,実際にスワーム制御のプログラミングを構築する手順を第3章に載せている。本書ではスワーム制御の代表的な方法である「リーダ・フォロワモデル」と,ヒツジの群れを少数の牧羊犬が追い立てる「牧羊犬のヒツジ追い」に着想を得た「シープドッグシステムナビゲーション」の二つを紹介している。

そして4章では,Boidsモデルの他に,スワームシステムに関する研究で過去に提案された有名な群れのモデルとそのプログラミングコードをいくつか紹介している。

さらに第5章ではシープドッグシステムの牧羊犬エージェントの誘導モデルを複数載せている。複数の群れモデルと牧羊犬エージェントの誘導モデルを紹介しているため,異なるモデルを組み合わせてスワームナビゲーションを楽しんでほしい。

最後に第6章では,本書で紹介している「群」に関する分野の諸研究について詳説している。本書が群れに関する好奇心を満たすその一助になれば幸甚である。

2025年12月
著者一同

☆発行前情報のため,一部変更となる場合がございます

1.「群れ」を作ってみよう!

2.BoidsモデルをPythonで作ってみよう!
2.1 Pythonについて 
2.2 環境の構築 
2.3 基礎 
2.4 四則演算 
2.5 変数・リスト・配列・行列 
2.6 制御文 
2.7 描画・動画のプロット・データの保存と出力 
2.8 Boidsモデルの実装とシミュレーション 

3.スワーム制御をやってみよう!
3.1 リーダ・フォロワモデル 
3.2 シープドッグのシミュレーション 
 3.2.1 Boidsモデルの設計 
 3.2.2 制御対象と制御目的 
 3.2.3 先行研究における牧羊犬の誘導コントローラ 

4.群れモデルの紹介とPythonによる実装
4.1 実際のヒツジの群れモデル 
4.2 実際の魚群モデル 
4.3 物理模倣モデル 

5.シープドッグモデルの紹介とPythonによる実装
5.1 動的ターゲット切り替え制御 
5.2 動的ターゲット切り替え制御法のシミュレーション 
5.3 最遠個体追跡制御 
5.4 最遠個体追跡制御のシミュレーション
 
6.「群」に関する諸研究
6.1 群れをなす生物の制御構造:自律分散構造 
6.2 スワームロボットの歴史 
6.3 マルチエージェントシステムの歴史 
 6.3.1 人工知能分野 
 6.3.2 システム制御分野 
6.4 シープドッグシステムの歴史 
 6.4.1 シープドッグシステムとは 
 6.4.2 シープドッグシステムの先行研究 
 6.4.3 シープドッグシステムのシミュレーションに関する研究 
 6.4.4 実世界での応用に関する研究 
 6.4.5 シープドッグシステムと機械学習 

引用・参考文献
索引

角田 祐輔

角田 祐輔(ツノダ ユウスケ)

兵庫県立大学大学院工学研究科機械工学専攻助教。
制御工学およびロボティクスを専門とし,生物群の知的な振る舞いに学ぶマルチエージェントシステム・群ロボットシステムについて研究している。本著で扱うシープドッグ型群制御を始め,災害対応ロボット,不整地移動ロボットに興味がある。ロボットの身体と環境との相互作用(インタラクション)を活かし,屋外の過酷な環境で適応的に動作するロボットの設計論の構築を目指している。

今林 亘

今林 亘(イマハヤシ ワタル)

日本大学工学部機械工学科専任講師.制御工学を専門とし,主にモデルマッチング2自由度制御系の研究に従事している.ロバスト制御や適応制御等を2自由度制御系設計に応用したり,実機検証も行っている.最近では,自然の群れ行動をロボット群の群制御に応用したり,ロボットコンテストやロボット製作による工学系人材育成にも取り組んでいる.

小蔵 正輝(オグラ マサキ)

広島大学大学院先進理工系科学研究科教授。
複雑システムおよび制御工学を専門とし,多数の要素が相互作用することで生じる集団的な振る舞いを,数理モデルとシミュレーションを用いて解析・設計する研究に従事している。自然界の群れ行動やロボット群などを対象に,無理に対象を抑え込むのではなく,システムが本来もつ構造や性質を活かしながら,集団としての秩序や機能がどのように創発されるのかを制御の観点から明らかにすることを目指している。

関連資料(一般)

  • 本書に掲載のプログラムファイル

関連資料ダウンロードはこちら

関連リンク