IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソフトバンクモバイル株式会社の特許一覧

特許7477712情報処理プログラム、情報処理方法及び情報処理装置
<>
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図1
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図2
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図3
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図4
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図5
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図6
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図7
  • 特許-情報処理プログラム、情報処理方法及び情報処理装置 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-22
(45)【発行日】2024-05-01
(54)【発明の名称】情報処理プログラム、情報処理方法及び情報処理装置
(51)【国際特許分類】
   A01K 61/80 20170101AFI20240423BHJP
   A01K 61/95 20170101ALI20240423BHJP
   G06Q 50/02 20240101ALI20240423BHJP
【FI】
A01K61/80
A01K61/95
G06Q50/02
【請求項の数】 7
(21)【出願番号】P 2023505058
(86)(22)【出願日】2021-03-12
(86)【国際出願番号】 JP2021010159
(87)【国際公開番号】W WO2022190375
(87)【国際公開日】2022-09-15
【審査請求日】2023-09-12
【早期審査対象出願】
(73)【特許権者】
【識別番号】501440684
【氏名又は名称】ソフトバンク株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】石若 裕子
【審査官】吉田 英一
(56)【参考文献】
【文献】特開平09-262040(JP,A)
【文献】特開2019-135986(JP,A)
【文献】再公表特許第2021/038753(JP,A1)
【文献】特開2019-170349(JP,A)
【文献】特開2020-145959(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A01K 61/00-61/95
G06Q 50/02
(57)【特許請求の範囲】
【請求項1】
魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値と、少数の前記魚の個体を含む少数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値と、前記少数よりも多数の前記魚の個体を含む多数魚群に対する給餌方法の特徴を示す給餌パラメータの値と、を取得する取得手順と、
群れの統計的性質に基づくシミュレーションモデルに設定される群れパラメータの値を取得し、取得した群れパラメータの値に基づいて、前記多数魚群の群れシミュレーション画像を生成し、生成した群れシミュレーション画像と前記多数魚群を撮影した撮影画像との差分が予め設定された第1の条件を満たすまで、前記群れパラメータの値を補正し、前記第1の条件を満たすまで補正された補正群れパラメータの値を取得する推定手順と、
前記取得手順によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値とに基づいて、給餌時の前記多数魚群の群給餌シミュレーション画像を生成し、生成した群給餌シミュレーション画像と給餌時の前記多数魚群を撮影した撮影画像との差分が予め設定された第2の条件を満たすまで、前記多数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す多数魚群捕食行動パラメータの値を補正し、前記第2の条件を満たすまで補正された前記多数魚群捕食行動パラメータの値を取得する生成手順と、
前記推定手順によって取得された補正群れパラメータの値と、前記生成手順によって取得された多数魚群捕食行動パラメータの値と、前記取得手順によって取得された給餌パラメータの値とに基づいて、前記給餌パラメータの値に対応する給餌方法によって給餌された前記多数魚群に属する前記魚の個体それぞれの成長をシミュレーションするシミュレーション手順と、
をコンピュータに実行させる情報処理プログラム。
【請求項2】
前記取得手順は、
前記個体捕食行動パラメータの値として、前記魚の個体の大きさ、前記魚の個体によって捕食される餌の大きさ、前記魚の個体が餌を発見可能な範囲、餌発見時の前記魚の個体と餌との距離、前記魚の個体によって捕食される餌の水中落下速度と前記魚の個体によって1回あたりに捕食される餌の捕食量の関係、前記魚の個体によって捕食された餌の捕食量と前記魚の個体の大きさの関係、および種類の異なる複数の餌の中から前記魚の個体が捕食する餌の種類を示す情報を取得する、
請求項1に記載の情報処理プログラム。
【請求項3】
前記取得手順は、
前記少数魚群捕食行動パラメータの値として、前記魚の個体の周囲に位置する他の魚の個体の数、餌発見時に餌に向かって進む前記魚の個体の速度、前記魚の個体による餌の捕食の時間間隔、および前記魚の個体によって1回あたりに捕食される餌の捕食量を示す情報を取得する、
請求項1または2に記載の情報処理プログラム。
【請求項4】
前記取得手順は、
前記個体捕食行動パラメータの実測値および前記少数魚群捕食行動パラメータの実測値を魚種ごとに取得する、
求項1~3のいずれか1つに記載の情報処理プログラム。
【請求項5】
前記取得手順は、
前記給餌パラメータの値として、前記多数魚群に対して給餌する餌の大きさ、前記餌の重さ、前記餌の形状、前記餌の水中落下速度、前記多数魚群が所在する生簀の水中における前記餌の初期位置、前記餌の初速度、前記餌の放出方向、餌放出時に前記餌を押し出す力の大きさ、1回の給餌で前記餌を分割して撒く回数、1回の給餌で前記餌を分割して撒く時間間隔、1回の給餌で前記餌を分割して撒く空間間隔、および1回の給餌で餌が分割して撒かれるときの1回あたりに撒かれる餌の量を示す情報を取得する、
請求項1~4のいずれか1つに記載の情報処理プログラム。
【請求項6】
コンピュータが実行する情報処理方法であって、
魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値と、少数の前記魚の個体を含む少数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値と、前記少数よりも多数の前記魚の個体を含む多数魚群に対する給餌方法の特徴を示す給餌パラメータの値と、を取得する取得工程と、
群れの統計的性質に基づくシミュレーションモデルに設定される群れパラメータの値を取得し、取得した群れパラメータの値に基づいて、前記多数魚群の群れシミュレーション画像を生成し、生成した群れシミュレーション画像と前記多数魚群を撮影した撮影画像との差分が予め設定された第1の条件を満たすまで、前記群れパラメータの値を補正し、前記第1の条件を満たすまで補正された補正群れパラメータの値を取得する推定工程と、
前記取得工程によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値とに基づいて、給餌時の前記多数魚群の群給餌シミュレーション画像を生成し、生成した群給餌シミュレーション画像と給餌時の前記多数魚群を撮影した撮影画像との差分が予め設定された第2の条件を満たすまで、前記多数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す多数魚群捕食行動パラメータの値を補正し、前記第2の条件を満たすまで補正された前記多数魚群捕食行動パラメータの値を取得する生成工程と、
前記推定工程によって取得された補正群れパラメータの値と、前記生成工程によって取得された多数魚群捕食行動パラメータの値と、前記取得工程によって取得された給餌パラメータの値とに基づいて、前記給餌パラメータの値に対応する給餌方法によって給餌された前記多数魚群に属する前記魚の個体それぞれの成長をシミュレーションするシミュレーション工程と、
を含む情報処理方法。
【請求項7】
魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値と、少数の前記魚の個体を含む少数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値と、前記少数よりも多数の前記魚の個体を含む多数魚群に対する給餌方法の特徴を示す給餌パラメータの値と、を取得する取得部と、
群れの統計的性質に基づくシミュレーションモデルに設定される群れパラメータの値を取得し、取得した群れパラメータの値に基づいて、前記多数魚群の群れシミュレーション画像を生成し、生成した群れシミュレーション画像と前記多数魚群を撮影した撮影画像との差分が予め設定された第1の条件を満たすまで、前記群れパラメータの値を補正し、前記第1の条件を満たすまで補正された補正群れパラメータの値を取得する推定部と、
前記取得部によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値とに基づいて、給餌時の前記多数魚群の群給餌シミュレーション画像を生成し、生成した群給餌シミュレーション画像と給餌時の前記多数魚群を撮影した撮影画像との差分が予め設定された第2の条件を満たすまで、前記多数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す多数魚群捕食行動パラメータの値を補正し、前記第2の条件を満たすまで補正された前記多数魚群捕食行動パラメータの値を取得する生成部と、
前記推定部によって取得された補正群れパラメータの値と、前記生成部によって取得された多数魚群捕食行動パラメータの値と、前記取得部によって取得された給餌パラメータの値とに基づいて、前記給餌パラメータの値に対応する給餌方法によって給餌された前記多数魚群に属する前記魚の個体それぞれの成長をシミュレーションするシミュレーション部と、
を備える情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理プログラム、情報処理方法及び情報処理装置に関する。
【背景技術】
【0002】
従来、魚の養殖技術を向上させるための様々な技術が知られている。例えば、生簀内の魚が撮影された撮影画像から、魚の数(尾数ともいう)に応じて変化する予め定められた特徴量を抽出する。そして、機械学習による特徴量と尾数との関係データである学習モデルに、抽出された特徴量を照合することにより、学習モデルから尾数を検知する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第6787471号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、生簀内の尾数を検知するにすぎないため、必ずしも魚の養殖技術を向上させることができるとは限らない。
【課題を解決するための手段】
【0005】
実施形態に係る情報処理プログラムは、魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値と、少数の前記魚の個体を含む少数魚群に属する前記魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値と、前記少数よりも多数の前記魚の個体を含む多数魚群に対する給餌方法の特徴を示す給餌パラメータの値と、を取得する取得手順と、前記取得手順によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値と給餌パラメータの値とに基づいて、前記給餌パラメータの値に対応する給餌方法によって給餌された前記多数魚群に属する前記魚の個体それぞれの成長をシミュレーションするシミュレーション手順と、をコンピュータに実行させる。
【図面の簡単な説明】
【0006】
図1図1は、実施形態に係る情報処理の概要を説明するための図である。
図2図2は、実施形態に係る情報処理装置の構成例を示す図である。
図3図3は、実施形態に係る個体捕食行動パラメータおよび少数魚群捕食行動パラメータの一例を示す図である。
図4図4は、実施形態に係る生簀内の尾数を推定するための機械学習モデルのトレーニングデータの一例を示す図である。
図5図5は、実施形態に係る生簀内の尾数を推定するための機械学習モデルの生成処理の一例を示す図である。
図6図6は、実施形態に係るボイズパラメータの値の補正処理の一例を示す図である。
図7図7は、実施形態に係る給餌シミュレーションの一例を示す図である。
図8図8は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0007】
以下に、本願に係る情報処理プログラム、情報処理方法及び情報処理装置を実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理プログラム、情報処理方法及び情報処理装置が限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0008】
(実施形態)
〔1.はじめに〕
従来、養殖場における給餌に関する様々な課題が存在する。具体的には、給餌における餌が無駄になるといった課題がある。例えば、養殖対象である魚が泳いでいる生簀や養殖池(以下、生簀等)に餌を撒く場合、生簀等の一か所に一度に大量の餌を撒くと、魚によって捕食されなかった餌が生簀等の底に溜まり、無駄になる場合がある。また、魚は給餌の際にいつも餌が撒かれる場所に集まる習性がある。そのため、生簀等の一か所に一度に大量の餌を撒く代わりに、生簀等に対して空間的に均等に餌を撒いたとしても、いつも餌が撒かれる場所とは異なる場所に撒かれた餌が魚によって捕食されず、無駄になる場合がある。
【0009】
また、過剰な餌やりによる病気の発生や全滅といった課題が存在する。例えば、餌をやり過ぎると、魚の糞や食べ残された餌により、生簀等の水質が悪化する場合がある。水質が悪化すると、魚は酸素不足になり、弱ってしまう。また、過剰な餌やりにより、消化不良や病気が引き起こされる場合がある。
【0010】
また、魚の大きさが揃わないため漁獲高が同じでも魚の価格にばらつきが生じるといった課題が存在する。一般的に、魚の大きさは、魚が捕食する餌の量に比例する。そのため、魚の大きさをそろえるには、生簀等にいる多数の魚それぞれに対してできるだけ均等な量の餌を捕食させる必要がある。ところが、生簀等にいる多数の魚それぞれに対して均等な量の餌を捕食させることは難しい場合がある。例えば、生簀等に餌を撒く場合、生簀等の水面に近い位置にいる魚の方が、餌を捕食する確率が高くなると考えられる。一方、水面に近い位置にいる魚によって多くの餌が捕食されてしまうため、生簀等の水底に近い位置にいる魚は、餌を捕食する確率が低くなると考えられる。そのため、同じ生簀等にいる多数の魚が同じ給餌方法で餌を与えられたとしても、多数の魚それぞれの大きさにばらつきが生じてしまう。
【0011】
これに対し、本願に係る情報処理装置100は、魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値と、少数の魚の個体を含む少数魚群(例えば、5匹の群れなど)に属する魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値と、少数よりも多数の魚の個体を含む多数魚群(例えば、100匹の群れなど)に対する給餌方法の特徴を示す給餌パラメータの値と、を取得する。また、情報処理装置100は、取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値と給餌パラメータの値とに基づいて、給餌パラメータの値に対応する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。
【0012】
これにより、情報処理装置100は、上述したような養殖場における給餌に関する様々な課題を解決する最適な給餌パラメータの値(すなわち給餌方法)を見つけることを可能とする。例えば、情報処理装置100は、最も短期間で成長後の魚の個体の大きさのばらつきが最小となる給餌方法を見つけることを可能とする。したがって、情報処理装置100は、魚の養殖技術を向上させることができる。
【0013】
なお、魚の大きさを表す寸法には、魚の全長、標準体長(体長)、尾叉長、体高、体幅などの種類が存在する。本願明細書において「魚の大きさ」と記載する場合には、魚の全長、標準体長(体長)、尾叉長、体高、体幅などいずれの寸法によって測定される魚の大きさをも含む概念とする。
【0014】
〔2.情報処理の概要〕
ここから、図1を用いて、実施形態に係る情報処理の概要について説明する。図1は、実施形態に係る情報処理の概要を示す説明図である。
【0015】
図1の左上に示すように、情報処理装置100は、尾数の異なるBoids(ボイズ)による群行動のシミュレーション(ボイズシミュレーション)を行う。ここで、Boids(ボイズ)とは、魚の群れのような動きを行う魚の個体を示すオブジェクト(Boid、ボイド)の集合体を意味する。また、Boids(ボイズ)は、結合(cohesion)、分離(separation)、整列(alignment)という3つのルールを設定するだけで群れの動きをシミュレーションできるプログラムの名称でもある。
【0016】
Boids(ボイズ)における3つのルールのうち、「結合」は個体同士がばらばらにならないように近付こうとする力、「分離」は個体同士が衝突を避けるため離れようとする力、「整列」は群れとして動く方向を揃えようとする力を指す。これら3つの力の合計で個体の動きが決まる。3つの力は、それぞれ、力の大きさ、力が及ぶ範囲、および角度をパラメータ(以下、ボイズパラメータともいう)として設定できる。例えば、ボイズパラメータは、群れがいる空間の大きさ、個体の大きさ、および個体の密集度によって決定される。以下では、ボイズにおける「個体」が魚の個体であり、「群れ」が魚の個体の群れ(魚群)である場合について説明する。
【0017】
図1の説明に戻る。情報処理装置100は、撮影画像から魚群の尾数および魚群に属する魚の体長を推定するよう学習された機械学習モデルを用いて、実際の生簀にいる多数魚群を撮影した撮影画像から多数魚群の尾数および多数魚群に属する魚の体長を推定する。また、情報処理装置100は、多数魚群のボイズシミュレーション画像をコンピュータグラフィックスにより生成する。続いて、情報処理装置100は、実際の生簀にいる多数魚群(例えば、100匹の群れなど)を撮影した撮影画像(実データ)と多数魚群のボイズシミュレーション画像との差分が予め設定された条件を満たすまで、ボイズパラメータの値を補正し、条件を満たすまで補正された補正ボイズパラメータの値を取得する。
【0018】
また、図1の右上に示すように、情報処理装置100は、魚種ごとに実測された魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの実測値と、少数の魚の個体を含む少数魚群(例えば、5匹の群れなど)に属する魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの実測値を取得する。また、情報処理装置100は、多数の魚の個体を含む多数魚群(例えば、100匹の群れなど)に対する給餌方法の特徴を示す給餌パラメータの値を取得する。例えば、情報処理装置100は、シミュレーションを行う利用者によって指定された所定の給餌パラメータの値を取得する。
【0019】
続いて、情報処理装置100は、取得した個体捕食行動パラメータの実測値、少数魚群捕食行動パラメータの実測値および給餌パラメータの値に基づいて、給餌時の多数魚群の群給餌シミュレーション画像をコンピュータグラフィックスにより生成する。続いて、情報処理装置100は、実際の生簀にいる給餌時の多数魚群を撮影した撮影画像(実データ)と群給餌シミュレーション画像との差分が予め設定された条件を満たすまで、多数魚群に属する魚の個体による餌の捕食行動の特徴を示す多数魚群捕食行動パラメータの値を補正し、条件を満たすまで補正された多数魚群捕食行動パラメータの値を取得する。ここで、多数魚群捕食行動パラメータは、個体捕食行動パラメータおよび少数魚群捕食行動パラメータとパラメータの種類は同じであるが、多数魚群捕食行動パラメータの値は、多数魚群として振る舞うことにより、個体捕食行動パラメータの値および少数魚群捕食行動パラメータの値と異なる。
【0020】
このようにして、情報処理装置100は、実際の生簀にいる給餌時の多数魚群を撮影した撮影画像(実データ)とシミュレーション画像との差分を埋める補正を行うことで、実際の生簀における多数魚群に対する給餌と近いシミュレーションを行うことが可能な補正ボイズパラメータの値および多数魚群捕食行動パラメータの値を取得する。その後、情報処理装置100は、実際の生簀における多数魚群の給餌に近いシミュレーションを行うことが可能な補正ボイズパラメータの値および多数魚群捕食行動パラメータの値と、シミュレーションを行う利用者によって指定された給餌パラメータの値とに基づいて、給餌パラメータの値に対応する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。
【0021】
〔3.情報処理装置の構成〕
次に、図2を用いて、実施形態に係る情報処理装置100の構成について説明する。図2は、実施形態に係る情報処理装置100の構成例を示す図である。情報処理装置100は、通信部110と、記憶部120と、制御部130とを有してよい。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示させるための表示部(例えば、液晶ディスプレイ等)を有してもよい。
【0022】
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークと有線または無線で接続され、例えば、個体を管理する管理者によって利用される端末装置との間で情報の送受信を行う。
【0023】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。具体的には、記憶部120は、シミュレーションに用いられる各種プログラムを記憶する。例えば、記憶部120は、生成部133によって生成された多数魚群シミュレーションプログラムを記憶する。
【0024】
また、記憶部120は、シミュレーションに用いられる各種パラメータの値を記憶する。例えば、記憶部120は、取得部131によって取得された個体捕食行動パラメータの値、少数魚群捕食行動パラメータの値および給餌パラメータの値、推定部132によって取得されたボイズパラメータの値、生成部133によって取得された多数魚群捕食行動パラメータの値を記憶する。
【0025】
(制御部130)
制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0026】
制御部130は、取得部131と、推定部132と、生成部133と、シミュレーション部134を機能部として有し、以下に説明する情報処理の作用を実現または実行してよい。なお、制御部130の内部構成は、図2に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、各機能部は、制御部130の機能を示したものであり、必ずしも物理的に区別されるものでなくともよい。
【0027】
(取得部131)
取得部131は、魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値を取得する。具体的には、取得部131は、個体捕食行動パラメータの値として、魚の個体の大きさ、魚の個体によって捕食される餌の大きさ、魚の個体が餌を発見可能な範囲、餌発見時の魚の個体と餌との距離、魚の個体によって捕食される餌の水中落下速度と魚の個体によって1回あたりに捕食される餌の捕食量の関係、魚の個体によって捕食された餌の捕食量と魚の個体の大きさの関係、および種類の異なる複数の餌の中から魚の個体が捕食する餌の種類を示す情報を取得する。より具体的には、取得部131は、個体捕食行動パラメータの実測値を魚種ごとに取得する。例えば、取得部131は、入力部を介して利用者によって入力された魚種ごとに実測された個体捕食行動パラメータの実測値を取得する。
【0028】
また、取得部131は、少数の魚の個体を含む少数魚群に属する魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値を取得する。具体的には、取得部131は、少数魚群捕食行動パラメータの値として、魚の個体の周囲に位置する他の魚の個体の数、餌発見時に餌に向かって進む魚の個体の速度、魚の個体による餌の捕食の時間間隔、および魚の個体によって1回あたりに捕食される餌の捕食量を示す情報を取得する。より具体的には、取得部131は、少数魚群捕食行動パラメータの実測値を魚種ごとに取得する。例えば、取得部131は、入力部を介して利用者によって入力された魚種ごとに実測された少数魚群捕食行動パラメータの実測値を取得する。
【0029】
図3は、実施形態に係る個体捕食行動パラメータおよび少数魚群捕食行動パラメータの一例を示す図である。図3に示す「餌の発見」は、個体捕食行動パラメータの一例を示す。例えば、魚の個体の体長(大きさ)と餌の大きさの間には相関関係があることが知られている。そこで、取得部131は、個体捕食行動パラメータの一例として、魚の個体の大きさおよび魚の個体によって捕食される餌の大きさの実測値を魚種ごとに取得する。また、魚の個体が餌を発見可能な範囲は、魚の目の位置や目の形状によって異なることが知られている。そこで、取得部131は、個体捕食行動パラメータの一例として、魚の個体が餌を発見可能な範囲の実測値を魚種ごとに取得する。例えば、取得部131は、魚の個体が餌を発見可能な範囲の実測値の一例として、魚の目の位置、魚の視野角度、および餌発見時の魚の個体と餌との距離の実測値を魚種ごとに取得する。また、魚の個体によって捕食される餌の水中落下速度と魚の個体によって1回あたりに捕食される餌の捕食量の間には相関関係があることが知られている。そこで、取得部131は、魚の個体によって捕食される餌の水中落下速度と魚の個体によって1回あたりに捕食される餌の捕食量の関係を示す実測値を魚種ごとに取得する。例えば、取得部131は、魚の個体によって捕食される餌の水中落下速度と魚の個体によって1回あたりに捕食される餌の捕食量の関係を示す実測値として、餌の水中落下速度が所定速度(実測値)低下するごとに、魚の個体によって1回あたりに捕食される餌の捕食量が所定量(実測値)減るといった実測値を取得する。
【0030】
また、図3に示す「餌の種類による違い」は、個体捕食行動パラメータの一例を示す。例えば、種類の異なる複数の餌を同時に与えられた場合、魚の個体がどの種類の餌を好んで捕食するかは魚種によって異なると考えられる。そこで、取得部131は、種類の異なる複数の餌の中から魚の個体が捕食する餌の種類を示す情報を魚種ごとに取得する。また、図示は省略するが、魚の個体によって捕食された餌の捕食量と魚の個体の大きさとの間には比例関係があることが知られている。そこで、取得部131は、魚の個体によって捕食された餌の捕食量と魚の個体の大きさの関係を示す実測値を魚種ごとに取得する。例えば、取得部131は、魚の個体によって捕食された餌の捕食量と魚の個体の大きさの関係を示す実測値として、魚の個体によって捕食された餌の捕食量が所定量(実測値)ごとに魚の個体の大きさが所定の大きさ(実測値)だけ大きくなるといった実測値を取得する。
【0031】
また、図3に示す「餌の捕獲」は、少数魚群捕食行動パラメータの一例を示す。例えば、魚の個体の周囲に位置する他の魚の個体の数と餌発見時に餌に向かって進む魚の個体の速度との間には相関関係があると推定される。例えば、魚の個体の周囲に他の魚の個体が存在する方が、魚が個体でいるときよりも餌の競争率が高くなるため、餌発見時に餌に向かって進む魚の個体の速度が速くなると推定される。そこで、取得部131は、魚の個体の周囲に位置する他の魚の個体の数および餌発見時に餌に向かって進む魚の個体の速度の実測値を魚種ごとに取得する。例えば、取得部131は、魚の個体の周囲に位置する他の魚の個体の数の一例として、魚の個体の位置から所定範囲内に位置する他の魚の個体の数の実測値を取得する。また、魚の個体の周囲に位置する他の魚の個体の数と、魚の個体による餌の捕食の時間間隔および魚の個体によって1回あたりに捕食される餌の捕食量との間には相関関係があると推定される。例えば、魚の個体の周囲に他の魚の個体が存在する方が、魚が個体でいるときよりも餌の競争率が高くなるため、魚の個体による1回の捕食から次の捕食までの時間間隔は短くなり、魚の個体による1回あたりの餌の捕食量は多くなると推定される。そこで、取得部131は、魚の個体の周囲に位置する他の魚の個体の数、魚の個体による餌の捕食の時間間隔および魚の個体によって1回あたりに捕食される餌の捕食量の実測値を魚種ごとに取得する。
【0032】
また、取得部131は、多数魚群に対する給餌方法の特徴を示す給餌パラメータの値を取得する。取得部131は、給餌パラメータの値として、多数魚群に対して給餌する餌の大きさ、餌の重さ、餌の形状、餌の水中落下速度、多数魚群が所在する生簀の水中における餌の初期位置、餌の初速度、餌の放出方向、餌放出時に餌を押し出す力の大きさ、1回の給餌で餌を分割して撒く回数、1回の給餌で餌を分割して撒く時間間隔、1回の給餌で餌を分割して撒く空間間隔、および1回の給餌で餌が分割して撒かれるときの1回あたりに撒かれる餌の量を示す情報を取得する。例えば、取得部131は、入力部を介して利用者によって入力された給餌パラメータの値を取得する。
【0033】
(推定部132)
推定部132は、撮影画像から魚群の尾数および魚群に属する魚の体長を推定するよう学習された機械学習モデルを生成する。推定部132は、ボイズシミュレーションにおける3つのルール(すなわち、ボイズパラメータ)を変更した様々なパターンのボイズシミュレーション画像をコンピュータグラフィックスにより自動生成する。図4は、実施形態に係る生簀内の尾数を推定するための機械学習モデルのトレーニングデータの一例を示す図である。図4に示す例では、ボイズシミュレーションのプログラムによって魚の群れのような動きを行うオブジェクト(Boid、ボイド)である魚の個体がサーモンである場合について説明する。図4の上段は、生簀にみたてた仮想空間を泳ぐ10匹の魚のボイズシミュレーション画像を示す。図4の中段は、図4の上段と同じボイズシミュレーション中の10匹の魚に加えて、ボイズシミュレーション中の10匹の魚の影を含む画像を示す。図4の下段は、図4の中段の画像から10匹の魚を削除して魚の影のみを残した画像を示す。
【0034】
図5は、実施形態に係る生簀内の尾数を推定するための機械学習モデルの生成処理の一例を示す図である。推定部132は、入力データおよび正解データをトレーニングデータとする機械学習(教師あり学習)を深層ニューラルネットワーク(DNN:Deep Neural Network)において行う。図5に示すように、推定部132は、4つの深層ニューラルネットワークを全結合層で全結合した機械学習モデルを生成する。具体的には、推定部132は、機械学習モデルに含まれる4つの深層ニューラルネットワークに対して、図4の上段に示すようなボイズシミュレーション画像、図4の中段に示すような魚の影を含むボイズシミュレーション画像、図4の下段に示すような魚の影のみのシミュレーション画像、および生簀にみたてた仮想空間の水面や壁面に映し出される魚の反射像(図示略)をそれぞれ入力データとして入力する。推定部132は、機械学習モデルの全結合層から出力された出力データと正解データとの誤差が小さくなるように機械学習モデルを学習させる。ここで、機械学習モデルの正解データは、ボイズシミュレーション画像に含まれる魚の尾数および魚の大きさであるが、これらはボイズシミュレーション画像の生成に用いたパラメータの値として取得することができる。
【0035】
また、推定部132は、群れの統計的性質に基づくシミュレーションモデルに設定される群れパラメータの値を取得する。具体的には、推定部132は、群れパラメータの一例として、ボイズシミュレーションに設定されるボイズパラメータの値を取得する。推定部132は、ボイズパラメータの値を取得すると、実際の生簀にいる多数魚群を撮影した撮影画像と多数魚群のボイズシミュレーション画像との差分が予め設定された条件を満たすまで、ボイズパラメータの値を補正し、条件を満たすまで補正された補正ボイズパラメータの値を取得する。
【0036】
図6は、実施形態に係るボイズパラメータの値の補正処理の一例を示す図である。図6に示すように、推定部132は、取得したボイズパラメータの値に基づいて、尾数の異なる多数魚群のボイズシミュレーション画像を生成する。例えば、推定部132は、コンピュータグラフィックスの技術を用いてボイズシミュレーション画像を生成する。続いて、推定部132は、生成したボイズシミュレーション画像と給餌時の多数魚群を撮影した撮影画像との差分を算出する。推定部132は、算出した差分が予め設定された条件を満たさない場合には、ボイズパラメータの値を補正してボイズシミュレーション画像を生成する。推定部132は、差分が予め設定された条件を満たすまでボイズパラメータの値の補正とボイズシミュレーション画像の生成とを繰り返す。推定部132は、差分が予め設定された条件を満たすまでボイズパラメータの値を補正すると、条件を満たすまで補正された補正ボイズパラメータの値を取得する。
【0037】
(生成部133)
生成部133は、取得部131によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値と給餌パラメータの値に基づいて、給餌時の多数魚群の群給餌シミュレーション画像を生成する。例えば、生成部133は、コンピュータグラフィックスの技術を用いて群給餌シミュレーション画像を生成する。続いて、生成部133は、生成した群給餌シミュレーション画像と給餌時の多数魚群を撮影した撮影画像との差分を算出する。生成部133は、算出した差分が予め設定された条件を満たさない場合には、パラメータの値を補正して群給餌シミュレーション画像を生成する。生成部133は、差分が予め設定された条件を満たすまでパラメータの値の補正と群給餌シミュレーション画像の生成とを繰り返す。生成部133は、差分が予め設定された条件を満たすまでパラメータの値を補正すると、条件を満たすまで補正されたパラメータの値を多数魚群捕食行動パラメータの値として取得する。
【0038】
例えば、生成部133は、多数魚群捕食行動パラメータの値として、多数魚群に属する魚の個体の大きさ、魚の個体によって捕食される餌の大きさ、魚の個体が餌を発見可能な範囲、餌発見時の魚の個体と餌との距離、魚の個体によって捕食される餌の水中落下速度と魚の個体によって1回あたりに捕食される餌の捕食量の関係、魚の個体によって捕食された餌の捕食量と魚の個体の大きさの関係、および種類の異なる複数の餌の中から魚の個体が捕食する餌の種類、魚の個体の周囲に位置する他の魚の個体の数、餌発見時に餌に向かって進む魚の個体の速度、魚の個体による餌の捕食の時間間隔、および魚の個体によって1回あたりに捕食される餌の捕食量を示す情報を取得する。
【0039】
また、生成部133は、推定部132によって取得されたボイズパラメータの値と生成部133によって取得された多数魚群捕食行動パラメータの値に基づいて、多数魚群に属する魚の個体それぞれの行動をシミュレーションする多数魚群シミュレーションプログラムを生成する。具体的には、生成部133は、多数魚群に属する魚の個体それぞれが餌を発見するまでの間は、魚の個体それぞれが推定部132によって取得されたボイズパラメータの値に基づいて行動するように設定された多数魚群シミュレーションプログラムを生成する。また、シミュレーション部134は、多数魚群に属する魚の個体それぞれが餌を発見した後は、魚の個体それぞれが生成部133によって取得された多数魚群捕食行動パラメータの値に基づいて行動するように設定された多数魚群シミュレーションプログラムを生成する。例えば、生成部133は、ボイズシミュレーションのプログラムを変更することにより、多数魚群シミュレーションプログラムを生成する。生成部133は、多数魚群シミュレーションプログラムを生成すると、生成した多数魚群シミュレーションプログラムを記憶部120に記憶する。
【0040】
(シミュレーション部134)
シミュレーション部134は、取得部131によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値と給餌パラメータの値とに基づいて、給餌パラメータの値に対応する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。具体的には、シミュレーション部134は、推定部132によって取得されたボイズパラメータの値と生成部133によって取得された多数魚群捕食行動パラメータの値と取得部131によって取得された給餌パラメータの値とに基づいて、給餌パラメータの値に対応する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。
【0041】
続いて、シミュレーション部134は、記憶部120に記憶された群れのシミュレーションモデルおよび多数魚群捕食行動のシミュレーションモデルを用いて、3次元のシミュレーション画像を生成する。シミュレーション画像は、シミュレーション結果を、CG技術を用いて、あるカメラアングルから見た画像として再現したものである。シミュレーション部134は、群れのシミュレーションモデルに基づいて、多数魚群に属する魚の個体それぞれが餌を発見するまでの間の多数魚群のシミュレーション画像を生成する。また、シミュレーション部134は、多数魚群捕食行動のシミュレーションモデルに基づいて、多数魚群に属する魚の個体それぞれが餌を発見した後の多数魚群のシミュレーション画像を生成する。
【0042】
また、シミュレーション部134は、多数魚群捕食行動のシミュレーションモデルに基づいて、多数魚群に属する魚の個体それぞれが捕食した餌の量に応じて魚の個体それぞれを成長させる。すなわち、シミュレーション部134は、多数魚群捕食行動のシミュレーションモデルに基づいて、多数魚群に属する魚の個体それぞれが捕食した餌の量に応じて魚の個体それぞれの大きさを時間経過とともに成長させる。
【0043】
図7は、実施形態に係る給餌シミュレーションの一例を示す図である。図7の左に示す「検討1:色々な大きさの餌を混ぜて撒く」では、シミュレーション部134が、複数の異なる大きさの餌を同時に給餌する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。また、図7の中央に示す「検討2:1回に撒く餌の量 集中して撒く VS 均等に撒く」では、シミュレーション部134が、1回の給餌で餌を集中して一度に撒く給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。また、シミュレーション部134が、1回の給餌で餌を小分けにして分割して撒く給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。また、図7の右に示す「検討3:撒く場所+速度 ドローンを使って下から撒く、真横から撒く」では、シミュレーション部134が、水中ドローンを使って多数魚群の下方から餌を撒く給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。また、シミュレーション部134が、水中ドローンを使って多数魚群の進行方向に対して真横から餌を撒く給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。図7に示す多様な給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションしたシミュレーション結果を比較することにより、最も早く成長した魚の個体の大きさのばらつきが最も小さい給餌方法を見つけることができる。
【0044】
〔4.効果〕
上述したように、実施形態に係る情報処理装置100は、取得部131とシミュレーション部134を備える。取得部131は、魚の個体による餌の捕食行動の特徴を示す個体捕食行動パラメータの値と、少数の魚の個体を含む少数魚群に属する魚の個体による餌の捕食行動の特徴を示す少数魚群捕食行動パラメータの値と、少数よりも多数の魚の個体を含む多数魚群に対する給餌方法の特徴を示す給餌パラメータの値と、を取得する。シミュレーション部134は、取得部131によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータの値と給餌パラメータの値とに基づいて、給餌パラメータの値に対応する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。
【0045】
これにより、情報処理装置100は、養殖場における給餌に関する様々な課題を解決する最適な給餌パラメータの値(すなわち給餌方法)を見つけることを可能とする。例えば、情報処理装置100は、最も短期間で成長後の魚の個体の大きさのばらつきが最小となる給餌方法を見つけることを可能とする。したがって、情報処理装置100は、魚の養殖技術を向上させることができる。
【0046】
また、取得部131は、個体捕食行動パラメータの値として、魚の個体の大きさ、魚の個体によって捕食される餌の大きさ、魚の個体が餌を発見可能な範囲、餌発見時の魚の個体と餌との距離、魚の個体によって捕食される餌の水中落下速度と魚の個体によって1回あたりに捕食される餌の捕食量の関係、魚の個体によって捕食された餌の捕食量と魚の個体の大きさの関係、および種類の異なる複数の餌の中から魚の個体が捕食する餌の種類を示す情報を取得する。
【0047】
これにより、情報処理装置100は、魚の個体による餌の捕食行動の特徴を考慮したうえで、多数魚群に属する魚の個体それぞれの成長をシミュレーションすることができるので、より精度の高いシミュレーション結果を得ることができる。
【0048】
また、取得部131は、少数魚群捕食行動パラメータの値として、魚の個体の周囲に位置する他の魚の個体の数、餌発見時に餌に向かって進む魚の個体の速度、魚の個体による餌の捕食の時間間隔、および魚の個体によって1回あたりに捕食される餌の捕食量を示す情報を取得する。
【0049】
一般的に、魚の個体が一匹のときの餌の捕食行動と、魚の個体の周囲に他の魚の個体が存在する場合とでは、餌を捕食する競争率が異なるため、餌の捕食行動も異なることが考えられる。これに対し、情報処理装置100は、魚の個体による餌の捕食行動の特徴に加えて、少数の魚の個体を含む少数魚群に属する魚の個体による餌の捕食行動の特徴を考慮したうえで、多数魚群に属する魚の個体それぞれの成長をシミュレーションすることができる。したがって、情報処理装置100は、より精度の高いシミュレーション結果を得ることができる。
【0050】
また、取得部131は、個体捕食行動パラメータの実測値および少数魚群捕食行動パラメータの実測値を魚種ごとに取得する。
【0051】
一般的に、魚による餌の捕食行動の特徴は、魚種ごとに異なる。これに対し、情報処理装置100は、魚による餌の捕食行動の特徴を魚種ごとに実測するので、より精度の高いシミュレーション結果を得ることができる。
【0052】
また、取得部131は、給餌パラメータの値として、多数魚群に対して給餌する餌の大きさ、餌の重さ、餌の形状、餌の水中落下速度、多数魚群が所在する生簀の水中における餌の初期位置、餌の初速度、餌の放出方向、餌放出時に餌を押し出す力の大きさ、1回の給餌で餌を分割して撒く回数、1回の給餌で餌を分割して撒く時間間隔、1回の給餌で餌を分割して撒く空間間隔、および1回の給餌で餌が分割して撒かれるときの1回あたりに撒かれる餌の量を示す情報を取得する。
【0053】
これにより、情報処理装置100は、養殖場における給餌に関する様々な課題を解決する最適な給餌方法を見つけることを可能とする。例えば、情報処理装置100は、最も短期間で成長後の魚の個体の大きさのばらつきが最小となる給餌方法を見つけることを可能とする。
【0054】
また、情報処理装置100は、生成部133をさらに備える。生成部133は、取得部131によって取得された個体捕食行動パラメータの値と少数魚群捕食行動パラメータに基づいて、給餌時の多数魚群の群給餌シミュレーション画像を生成し、生成した群給餌シミュレーション画像と給餌時の多数魚群を撮影した撮影画像との差分が予め設定された条件を満たすまで、多数魚群に属する魚の個体による餌の捕食行動の特徴を示す多数魚群捕食行動パラメータの値を補正し、条件を満たすまで補正された多数魚群捕食行動パラメータの値を取得する。シミュレーション部134は、生成部133によって取得された多数魚群捕食行動パラメータの値と給餌パラメータの値とに基づいて、給餌パラメータの値に対応する給餌方法によって給餌された多数魚群に属する魚の個体それぞれの成長をシミュレーションする。
【0055】
これにより、情報処理装置100は、実際の生簀における多数魚群の給餌の状態に近いシミュレーションのパラメータを用いて給餌シミュレーションを行うことができるので、より精度の高いシミュレーション結果を得ることができる。
【0056】
〔5.ハードウェア構成〕
また、上述してきた実施形態に係る情報処理装置100は、例えば図10に示すような構成のコンピュータ1000によって実現される。図10は、情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を備える。
【0057】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0058】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。
【0059】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0060】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0061】
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
【0062】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0063】
〔6.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0064】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0065】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0066】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、生成部は、生成手段や生成回路に読み替えることができる。
【符号の説明】
【0067】
100 情報処理装置
110 通信部
120 記憶部
130 制御部
131 取得部
132 推定部
133 生成部
134 シミュレーション部
図1
図2
図3
図4
図5
図6
図7
図8