以下、自動給餌支援装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
図1は、本実施の形態における情報システムのブロック図である。情報システムは、自動給餌支援装置1、1または2以上の自動給餌器2、および1または2以上のユーザ端末3を備える。1以上の自動給餌器2および1以上のユーザ端末3の各々は、例えば、インターネットやLAN等のネットワーク、無線または有線の通信回線などを介して、自動給餌支援装置1と通信可能に接続される。
自動給餌支援装置1は、例えば、魚の養殖を行う企業や団体等の組織のサーバであるが、自動給餌器2の部品でもよし、ユーザ端末3と兼用でもよく、その所在やタイプは問わない。なお、自動給餌器2の部品とは、通常、自動給餌器2に内蔵された部品(例えば、後述するコントローラに設けられるモジュール)であるが、外付けの部品でも構わない。また、ユーザ端末3と兼用であることは、例えば、ユーザ端末3を実現する携帯端末に、後述するソフトウェア等のアプリをインストールすることで、当該携帯端末が自動給餌支援装置1としても動作することである。さらに、携帯端末とは、例えば、スマートフォン、タブレット端末、携帯電話機、ノートPC等であるが、その種類は問わない。
なお、魚とは、通常、魚類であるが、ハマグリやアサリなどの貝類、またはエビやカニなどの甲殻類も含むと考えてもよい。
自動給餌支援装置1は、例えば、衛星受信機を有する。なお、衛星受信機を有することは、衛星受信機が、自動給餌支援装置1に内蔵されていることでも、外付けされていることでもよいし、ネットワーク等を介して自動給餌支援装置1と通信可能であることでも構わない。また、かかる事項は、自動給餌器2が有する各種のセンサ(後述)にも当てはまる。
衛星受信機とは、人工衛星からの情報を受信する機器またはモジュールである。人工衛星とは、例えば、気象衛星等の地球観測衛星であるが、放送衛星や通信衛星などでもよく、その種類は問わない。気象衛星とは、気象観測を行う人工衛星である。気象観測とは、例えば、雲の観測、水蒸気の観測、雨や風の観測、気温や海水温の観測などである。気象衛星は、各種観測機器を備えており、各種観測機器を用いて気象観測を行い、気象情報を取得する。各種観測機器とは、例えば、可視光を用いたカメラ、赤外線カメラ、マイクロ波散乱計等であるが、その種類は問わない。こうして取得された気象情報は、例えば、当該気象衛星自身によって、または放送衛星や通信衛星を介して、地上に送信(放送も含む)される。
地球観測衛星とは、地球を観測する人工衛星である。観測とは、例えば、上述した気象観測であるが、地球の表面(例えば、地表や海面等)の撮影でもよい。地球観測衛星は、例えば、電波、赤外線、可視光といった各種の波長の電磁波を用いて、地球表面の撮影を行い、各種の波長による画像情報を取得する。取得された画像情報もまた、例えば、当該地球観測衛星自身によって又は放送衛星等を介して地上に送信される。
自動給餌器2は、魚が飼育されている生け簀に設けられ、魚への餌の給餌を自動的に行い得る機器である。給餌を自動的に行うことは、基本的には、予め設定されている量の餌を、予め設定されている時に、魚に対して給餌することである。
ただし、自動的に行うことは、例えば、予め又は現時点で設定されている給餌量または給餌タイミングを、ユーザの指示(例えば、変更指示)に応じて変更し得る場合も含むと考えてもよい。なお、給餌量とは、魚に給餌する餌の量(例えば、重量、数量等)であり、給餌タイミングとは、魚に給餌する時(例えば、1または2以上の時刻、周期等)である。さらに、自動的に行うことは、例えば、ユーザ端末3等の他の装置からの遠隔操作によっても、給餌を行い得る場合をも含むと考えても構わない。
生け簀とは、魚を飼育しておく場所である。生け簀は、例えば、海洋や湖沼などの水中に設置された網や籠の内部であるが、必ずしも網等で囲まれた範囲でなくてもよい。または、生け簀は、例えば、海岸の入り江でもよいし、河川の一部でもよいし、陸上に設営された人工の溜池やプールなどでもよく、魚を飼育できる領域であれば、その態様や設置場所は問わない。
餌は、例えば、生エサ、モイストペレット(MP)、ドライペレット(DP)、エクストルーダーペレット(EP)、魚粉代替飼料(Alternative Feed)などである。生エサとは、生の餌であり、例えば、生魚の切り身やミミズなどである。MPとは、半生のペレットタイプの餌であり、例えば、生エサ、魚粉、魚油等の混合物を粒状に固めて造られる。DPとは、乾燥したペレットタイプの餌であり、例えば、魚粉などを粒状に固めて造られる。EPとは、DPと同様のペレットタイプの餌であるが、高温高圧で加工することにより原料の消化吸収性を高めた飼料である。魚粉代替飼料とは、魚粉や魚油の代用となる飼料である。魚粉代替飼料は、例えば、大豆等の穀物、昆虫、藻類、酵母等の単細胞生物などから製造されるが、その原料は問わない。また、魚粉代替飼料は、例えば、DPやEP等のペレットタイプであるが、その固さや形状も問わない。ただし、餌の態様(例えば、固さ、形状等)や材料は問わない。
また、MPやDPには、例えば、大、中、小など、各種のサイズのものがあり、ペレットタイプの餌のサイズも問わない。さらに、餌には、例えば、タンパク質やビタミン等の各種の成分が含まれており、餌の成分も問わない。なお、餌は、例えば、2種類以上の材料から造られてもよく、その組み合わせや配合利率は問わない。
自動給餌器2は、餌が収納される容器、容器に収納されている餌を生け簀に放出するための放出機構、放出機構を駆動するモータ、モータを制御するコントローラ、ならびに、モータおよびコントローラ等の各々に電力を供給するソーラパネルまたはバッテリ等を有する。コントローラは、例えば、容器に収納されている餌のうち、予め設定されている量の餌が、予め設定されている1または2以上の時に放出されるように、モータを制御する。
また、自動給餌器2は、通常、容器に残存する餌の量(以下、残存量と記す場合がある)を検知するためのセンサ(以下、残存量センサ)、および残存量センサで検知された残存量等の情報を自動給餌支援装置1等に送信するための通信モジュールも有する。残存量センサは、例えば、レーザセンサ等の距離センサであるが、重量センサや赤外線センサでもよく、残存量情報の取得が可能な元情報を検知するセンサであれば、その種類は問わない。なお、残存量センサや通信モジュールへの電力も、上記ソーラパネル等から供給される。
また、コントローラは、例えば、予め又は現時点で設定されている、餌の量(給餌量)または1以上の給餌の時(給餌タイミング)のうち1以上を、外部からの情報に応じて変更可能である。外部からの情報とは、例えば、自動給餌支援装置1から送信される予測結果、またはユーザ端末3から送信される変更指示であるが、情報の送信元や種類は問わない。なお、予測結果、および変更指示については後述する。また、上記の通信モジュールは、かかる予測結果等を受信する受信機能をも有する。
さらに、自動給餌器2は、例えば、1または2以上の環境センサも有する。環境センサとは、環境情報を取得するためのセンサである。環境センサは、例えば、カメラ、マイクロフォン、温度センサ、溶存酸素センサ、流速センサ等であるが、その種類は問わない。環境情報とは、環境に関する情報である。環境とは、通常、魚が飼育されている環境である。環境は、例えば、生け簀内の環境であるが、生け簀が設置されている場所の環境でもよい。生け簀が設置されている場所とは、前述したように、例えば、海洋、湖沼、河川等の水中、または陸上の溜池などであるが、海洋等が存在する地域の環境でもよい。または、環境は、かかる局所的な環境に限らず、地球全体の環境も含むと考えてもよい。
環境情報は、例えば、水温、塩分濃度、溶存酸素量、透明度、流速などの値であるが、環境センサで検知し得る物理量や化学成分等であれば、その種類は問わない。また、環境情報は、例えば、現時点での値でもよいし、予め決められた期間の平均値でもよい。期間とは、例えば、一年間、3カ月間等であるが、その長短は問わない。また、期間とは、例えば、現時点までの期間(例えば、直近3カ月、当年等)であるが、過去の一定期間(例えば、先月までの3カ月間、前年等)でもよい。さらに、環境情報は、例えば、後述する1以上のパラメータの1つであってもよい。
ユーザ端末3は、ユーザの端末である。ユーザとは、例えば、魚の飼育者であるが、飼育者が所属する組織の他の職員でもよい。他の職員とは、例えば、餌の発注等を行う事務員などであるが、その職種は問わない。端末は、通常、携帯端末であるが、据え置き型のPC等でもよく、その所在やタイプは問わない。
ただし、情報システムは、例えば、一の自動給餌器2および一のユーザ端末3によっても実現可能であり、または、一の自動給餌器2のみによっても実現可能であり、その構成は問わない。なお、前者の場合、自動給餌器2の通信モジュールは、ユーザ端末3からの変更指示を受信できればよく、送信機能は有さなくてもよい。また、後者の場合の自動給餌器2は、通信モジュールを有さなくても構わない。
また、前者の場合の自動給餌器2は、例えば、自動給餌支援装置1が有する下記の構成要素群の全部または一部を備えていてもよいし、さらに、後者の場合の自動給餌器2は、例えば、ユーザ端末3が有する構成要素群の全部または一部をも備えていてもよい。
自動給餌支援装置1は、格納部11、処理部12、送信部13、および出力部14を備える。格納部11は、発注先情報格納部111、および飼育者情報格納部112を備える。処理部12は、残存量情報取得部121、判断部122、統計処理部123、魚状況情報取得部124、パラメータ取得部125、および予測部126を備える。出力部14は、統計処理結果出力部141、および魚状況情報出力部142を備える。
自動給餌器2は、給餌格納部21、給餌処理部22、給餌送信部23、および給餌受信部24を備える。
ユーザ端末3は、ユーザ格納部31、ユーザ受信部32、ユーザ処理部33、ユーザ出力部34、ユーザ受付部35、およびユーザ送信部36を備える。
自動給餌支援装置1を構成する格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、後述する発注先情報、後述する飼育者情報等である。なお、その他の情報については、適時説明する。
発注先情報格納部111には、1または2以上の発注先情報が格納される。発注先情報とは、餌の発注先を特定する情報である。発注先情報は、例えば、発注先のメールアドレスであるが、発注先の装置を特定するIPアドレスやURLなどでもよいし、メールアドレス等に対応付いたIDでもよく、餌の発注先を特定し得る情報であれば何でもよい。なお、発注先とは、例えば、餌を製造または販売する事業者(組織も含む)であるが、その店舗(ECサイトも含む)でもよく、餌の発注を受け得るものであれば、その種類や所在は問わない。
格納部11には、例えば、発注先情報格納部111に格納されている1以上の発注先情報の各々に対応付けて、1または2以上の餌種類情報が格納されてもよい。餌種類情報とは、餌の種類を示す情報である。餌の種類とは、例えば、生エサやMPやDP等の態様に関する種類でもよいし、生魚や魚粉等の材料に関する種類でもよいし、大や中や小等のサイズに関する種類でもよい。餌種類情報は、例えば、“生エサ”、“MP”、“DP,魚粉”、“EP,魚粉代替飼料”、“DP,魚粉,小”などであるが、その表現形式は問わない。
1以上の各発注先情報に対応付けて格納されている1以上の餌種類情報は、例えば、後述する処理部12が、当該発注先情報で特定される発注先のサーバ(図示しない)から受信し、格納部11に蓄積した情報であってもよい。
飼育者情報格納部112には、飼育者情報が格納される。飼育者情報とは、魚の飼育者を特定する情報である。飼育者情報は、例えば、飼育者のメールアドレスであるが、飼育者の携帯電話番号でもよい。携帯電話番号は、飼育者へのショートメッセージの宛先となる。または、飼育者情報は、飼育者のSNSのIDでもよく、魚の飼育者を特定し得る情報であれば何でもよい。なお、SNSは、例えば、LINE(登録商標)、Facebook(登録商標)等であるが、飼育者が利用可能なソーシャルネットワークサービスであれば、その種類は問わない。
処理部12は、各種の処理を行う。各種の処理とは、例えば、残存量情報取得部121、判断部122、統計処理部123、魚状況情報取得部124、パラメータ取得部125、および予測部126などの処理である。なお、各種の処理には、フローチャートで説明する各種の判別や判断等も含まれる。
また、処理部12は、通常、受信機能も有する。すなわち、処理部12は、例えば、自動給餌器2から、残存量情報、魚状況情報、パラメータなどを受信する。また、処理部12は、例えば、人工衛星からのデータも受信する。さらに、処理部12は、例えば、ユーザ端末3から、餌を発注する発注情報を受信することできる。
さらに、処理部12は、例えば、予測部126の予測結果を用いて、自動給餌器2による給餌の量または給餌の時の制御に関する処理を行うこともできる。制御に関する処理とは、例えば、予測結果に基づく給餌量または給餌タイミングの制御を、処理部12自身が行うことでもよいし、または、外部の装置からの情報を基にかかる制御を行い得る自動給餌器2への、予測結果の送信でも構わない。
予測結果に基づく給餌量または給餌タイミングの制御とは、例えば、予め又は現時点で自動給餌器2に設定されている給餌量または給餌タイミングを、予測結果を用いて変更することである。すなわち、処理部12は、例えば、予め又は現時点で自動給餌器2に設定されている給餌量または給餌タイミングを、予測部126が取得した予測結果を用いて変更することもできる。
残存量情報取得部121は、残存量情報を取得する。残存量情報とは、餌の残存量に関する情報である。残存量とは、自動給餌器2に残っている餌の量である。残存量に関する情報とは、例えば、残存量であるが、使用量でもよい。使用量とは、自動給餌器2から生け簀に投入された餌の量である。使用量は、例えば、予め決められた量から残存量を減算した結果である。予め決められた量とは、例えば、自動給餌器2が有する容器に収納可能な餌の量(以下、容量と記す場合がある)である。
残存量情報取得部121は、例えば、残存量センサから出力される情報を用いて、残存量を取得し、当該残存量を有する残存量情報を取得する。
また、残存量情報取得部121は、例えば、容量情報を保持していている。容量情報とは、上記のような容量を示す情報である。残存量情報取得部121は、例えば、残存量センサから出力される情報を用いて残存量を取得し、容量情報が示す容量から残存量を減算することにより使用量を取得し、当該残存量または当該使用量のうち1以上を有する残存量情報を取得することもできる。
残存量情報は、例えば、残存量または使用量のうち1以上と、時刻とを有していてもよい。時刻とは、当該残存量または当該使用量が取得された時刻である。
詳しくは、残存量情報取得部121は、例えば、タイミング情報を保持している。タイミング情報とは、残存量情報を取得するタイミングに関する情報である。タイミング情報は、例えば、1または2以上の時刻の集合であるが、周期でもよい。残存量情報取得部121は、例えば、MPUの内蔵時計やNTPサーバ等から取得さる現在時刻(以下、単に時刻と記す場合がある)が、このタイミング情報と所定の関係を満たす場合に、残存量センサから出力される情報を用いて、残存量または使用量を取得し、当該時刻と、当該残存量または当該使用量とを有する残存量情報を取得する。
なお、所定の関係を満たす場合とは、例えば、取得された時刻が、タイミング情報を構成する1以上の時刻のいずれかと一致した場合であるが、前回の取得からの経過時間が、タイミング情報が示す周期と一致した場合でもよい。
残存量センサは、前述したように、例えば、レーザセンサ等の距離センサであり、かかる場合における残存量センサからの情報は、距離データである。
距離データとは、例えば、矩形の容器内の上面に設けられた距離センサから、当該容器内の餌の表面までの距離を示す情報である。残存量情報取得部121は、例えば、容器の高さ(つまり、容器の底面から上面までの距離)から、かかる距離情報を減算し、その減算結果を、容器の底面積に乗算した乗算結果を、残存量として取得するが、かかる減算結果を、残存量に応じた数値として取得してもよい。
または、残存量情報取得部121は、例えば、上記のような距離データを、使用量に応じた数値として取得してもよいし、容器の底面積に距離情報を乗算した乗算結果を、使用量として取得しても構わない。
なお、残存量センサからの情報は、例えば、容器の底面に設けられた重量センサからの重量データでもよい。重量データとは、餌の重量に関する情報である。残存量情報取得部121は、例えば、容器の容量を示す容量データと、容器内の餌の比重を示す比重データとを保持しており、まず、当該容量データが示す容量と、当該比重データが示す比重とを乗算して、除算結果を取得する。次に、残存量情報取得部121は、取得した乗算結果で、重量センサからの重量データを除算し、その除算結果を使用量として取得してもよい。
または、なお、残存量センサからの情報は、例えば、容器の側面に設けられた1または2以上の各赤外線センサからのデータでもよい。1以上の各赤外線センサは、発光素子および受光素子で構成される。容器内の側面に、例えば、1以上の発光素子が縦一列に配置され、これらと対応するように、1以上の発光素子が縦一列に配置される。1以上の各受光素子は、当該受光素子に対応する発光素子から赤外線を受光している期間のみ、例えば、“受光”を示す受光データを出力する。残存量情報取得部121は、例えば、容器内の受光素子数を保持しており、1以上の受光素子から受信している受光データの数を、受光素子数で除算し、その除算結果を使用量として取得してもよい。ただし、残存量情報のデータ構造や取得方法は問わない。なお、残存量情報もまた、後述する1以上のパラメータの1つであってもよい。
残存量情報取得部121は、通常、1または2以上の各自動給餌器2から、機器識別子と対に残存量情報を受信する。機器識別子とは、自動給餌器2を識別する情報である。機器識別子は、例えば、IPアドレス、MACアドレス、IDなどであるが、位置情報でもよく、自動給餌器2を識別し得る情報であれば何でもよい。位置情報とは、自動給餌器2の位置を示す情報である。位置情報は、例えば、(緯度,経度)等の座標であるが、そのデータ形式は問わない。ただし、例えば、自動給餌支援装置1が自動給餌器2の部品である場合には、残存量情報取得部121は、当該自動給餌器2から残存量情報の引き渡しを受けてもよい。
判断部122は、残存量情報取得部121が取得した残存量情報が予め決められた条件を満たすほど餌の残存量が少ないか否かを判断する。条件とは、例えば、残存量に関する条件であるが、使用量に関する条件でもよい。すなわち、条件は、例えば、残存量が閾値より少ない又は以下である旨の“残存量<=閾値”であるが、使用量が閾値より多い又は以上である旨の“使用量>=閾値”でもよい。なお、等号“=”は、なくてもよい。
または、条件は、例えば、予測残存量が、予め決められた期間内に閾値よりも少なる又は以下となる旨の“期間<=第一閾値,予測残存量>=閾値”でもよい。予測残存量とは、例えば、残存量および予測情報から計算される、残存量と時刻との対の集合であるが、その表現形式は問わない。あるいは、条件は、予測使用量が、予め決められた期間内に閾値よりも多くなる又は以上となる旨の“期間<=第一閾値,予測使用量>=閾値”でもよい。予測使用量とは、使用量および予測情報から計算される、使用量と時刻との対の集合であるが、その表現形式は問わない。なお、判断部122は、通常、1または2以上の各機器識別子ごとに、上記のような判断を行う。
統計処理部123は、2以上の残存量情報を統計処理し、統計処理結果を取得する。統計処理部123による統計処理の対象となる2以上の残存量情報は、通常、2以上の自動給餌器2から受信された2以上の残存量情報である。統計処理とは、例えば、2以上の残存量の合計量を求める処理であるが、2以上の使用量の合計量を求める処理でもよい。または、統計処理とは、2以上の残存量等の平均値や中央値等の代表値を求める処理でもよいし、2以上の残存量等の分布(例えば、分散や標準偏差等)を求める処理でも構わない。
ただし、統計処理の対象は、一の自動給餌器2から受信された2以上の残存量情報でもよい。かかる場合の統計処理は、例えば、2以上の使用量の合計量を求める処理である。または、統計処理は、2以上の使用量の平均値や中央値等の代表値を求める処理でもよいし、2以上の使用量等の分布を求める処理でも構わない。
具体的には、例えば、格納部11に、価格情報が格納されている。価格情報とは、餌の価格に関する情報である。価格情報は、例えば、餌種類情報と単価との対の集合である。なお、単価とは、単位量当たりの価格であり、単位量は、例えば、1kg、1袋等である。餌種類情報と単価との対とは、例えば、“生エサ,1000円/kg”、“MP,2000円/袋”などである。
統計処理部123は、例えば、上記のような価格情報と、2以上の自動給餌器2から受信された2以上の残存量情報とを用いて、2以上の自動給餌器2ごとに、使用量に対応する餌の代金を求め、当該自動給餌器2での餌代を取得する。また、統計処理部123は、こうして求めた2以上の代金の合計を求め、2以上の自動給餌器2での餌代の総額を取得してもよい。
または、統計処理は、例えば、1または2以上の各地域ごとに、餌の使用量の合計量または餌の残存量の合計量を求める処理でもよい。
詳しくは、例えば、格納部11に、機器識別子と地域識別子との対の集合が格納されている。地域識別子とは、地域を識別する情報である。地域識別子は、例えば、地域名であるが、IDでもよいし、地域を識別し得る情報であれば何でもよい。統計処理部123は、例えば、残存量情報取得部121が2以上の自動給餌器2から受信した2以上の残存量情報を、1以上の各地域識別子ごとに合計し、各地域における餌の使用量等の合計量を求めてもよい。
または、統計処理は、例えば、餌の単位期間当たりの使用量等の変化を求める処理でもよい。単位期間とは、例えば、1日であるが、例えば、1週間、1カ月等でもよいし、一日のうちの予め決められた時刻からの1時間等でもよく、その長さは問わない。餌の単位期間当たりの使用量等(以下、「単位期間使用量等」と記す場合がある)とは、例えば、1以上の各自動給餌器2ごとの単位期間使用量等でもよいし、1以上の各地域ごとの単位期間使用量等の合計量でもよいし、1以上の全ての自動給餌器2での単位期間使用量等の合計量でもよい。
変化を求める処理とは、例えば、増加または減少を判定する処理であってもよい。統計処理部123は、例えば、1以上の各自動給餌器2から受信された2以上の残存量情報を用いて、当該自動給餌器2での単位期間使用量が増加しているか減少しているかを判定し、判定結果を取得してもよい。こうして取得された判定結果は、例えば、機器識別子と対に、送信部13に引き渡され、送信部13は、判定結果が“増加”を示す場合に、当該自動給餌器2に関する発注情報の送信タイミングを早める(または、発注情報中の発注量を増やす)一方、判定結果が“減少”を示す場合に、当該自動給餌器2に関する発注情報の送信タイミングを遅らせる(または、発注情報中の発注量を減らす)ようにしてもよい。こうして、1以上の各自動給餌器2での単位期間使用量等の変化を求め、求めた変化に応じて、当該自動給餌器2に関する発注情報の送信タイミング(または発注量)を変更することで、各自動給餌器2における餌の使用量等の変化に的確に対応できる。
または、統計処理部123は、例えば、2以上の各餌種類情報ごとに、餌の使用量の合計量の変化率(以下、「合計量変化率」)を取得し、餌種類情報と対に、送信部13に引き渡してもよい。送信部13は、2以上の各餌種類情報ごとに、当該餌種類情報と対になる合計量変化率に応じて、発注情報の送信タイミング(または発注量)を変更してもよい。
具体的には、例えば、合計量変化率がプラスの餌については、発注情報の送信タイミングを、例えば、当該合計量変化率の絶対値に応じた時間だけ早める(または、発注情報中の発注量を、例えば、当該合計量変化率の絶対値に応じた量だけ増やす)一方、合計量変化率がマイナスの餌については、発注情報の送信タイミングを、例えば、当該合計量変化率の絶対値に応じた時間だけ遅らせる(または、発注情報中の発注量を、例えば、当該合計量変化率の絶対値に応じた量だけ減らす)ようにしてもよい。こうして、2種類以上の餌ごとに、合計量変化率を求め、求めた合計量変化率に応じて、発注情報の送信タイミング(または発注量)を変更することで、各種の餌の価格変動に的確に対応できる。
または、例えば、パラメータ取得部125が、上記のような餌の成分に関する成分情報(例えば、タンパク質の含有率“100g当たりXg”等)を、餌のメーカーのサーバ等から取得し、統計処理部123は、2以上の自動給餌器2から受信された2以上の残存量情報と、パラメータ取得部125が取得した成分情報とを用いて、2以上の自動給餌器2ごとに、餌の使用量に対応する各種の成分量を求めてもよい。例えば、ある自動給餌器2での餌の使用量が“100kg”の場合、タンパク質の含有率に対応する“X/100”を“100kg”に乗算することにより、当該自動給餌器2で使用された餌“100kg”中のタンパク質の量“Xkg”が求まる。また、統計処理部123は、こうして2以上の自動給餌器2ごとに求めた2以上の成分量を合計し、2以上の自動給餌器2での餌の総使用量に対応する各種の総成分量(例えば、たんぱく質の総量等)を取得してもよい。
魚状況情報取得部124は、魚状況情報を取得する。魚状況情報とは、飼育対象の魚の状況に関する情報である。飼育対象の魚とは、1または2以上の各生け簀内に存在する魚である。魚の状況とは、例えば、魚の種類、市場に出る魚の数などである。魚の種類とは、生け簀内にいる魚の種類である。市場に出る魚とは、生け簀内にいる1または2以上の魚(以下、魚群)のうち、例えば、市場に出荷できるサイズに達した又はこれを超えたサイズを有する1以上の魚であるが、生け簀内の魚群の全部でもよい。ただし、魚の状況は、例えば、魚の健康状態などでもよく、飼育対象の魚の状況であれば何でもよい。
魚状況情報は、例えば、魚種類情報、または数情報のうち1以上を有する。魚種類情報とは、魚の種類を示す情報である。魚種類情報は、例えば、“鯛”や“ハマチ”等の種類名であるが、“M”や“特大”等のサイズに関する情報も含んでいてもよい。または、魚状況情報は、例えば、種類名等に対応付いたIDなどでもよく、魚の種類を示し得る情報であれば何でもよい。
数情報とは、市場に出る魚の数に関する情報である。数情報は、例えば“100匹”や“5千匹”等の個体数であるが、“20kg”や“1t”といった、個体数に対応する重量でもよく、その表現形式は問わない。
魚状況情報取得部124は、通常、残存量情報取得部121が取得した残存量情報を用いて魚状況情報を取得するが、これに代えて又はこれに加えて、前述した環境センサからの環境情報、人工衛星からの気象情報また画像情報のうち1種類以上の情報を用いて、魚状況情報を取得してもよい。
魚状況情報取得部124は、例えば、一の自動給餌器2に関して、残存量情報取得部121が取得した2以上の残存量情報を用いて、残存量の時間変化を取得し、当該時間変化を基に、魚状況情報を取得することは好適である。
具体的には、魚状況情報取得部124は、例えば、1以上の魚種類情報ごとに、残存量の時間変化を示す値(例えば、餌が減少する速度を示す餌減少速度“2kg/日”等)を変数とする増加関数である第一関数を保持している。魚状況情報取得部124は、一の自動給餌器2に関して残存量情報取得部121が取得した2以上の残存量情報から餌減少速度を求める。また、格納部11には、例えば、機器識別子と魚種類情報と対の集合である魚種類情報群が格納されている。魚状況情報取得部124は、魚種類情報群を用いて、当該一の自動給餌器2を識別する機器識別子と対になる魚種類情報(例えば、“鯛”)を取得する。そして、魚状況情報取得部124は、当該魚種類情報に対応する第一関数に、当該餌減少速度を代入して数情報(例えば、“100匹”)を取得し、当該魚種類情報および当該数情報を有する魚状況情報(例えば、“鯛,100匹”)を取得する。
なお、魚状況情報取得部124は、上記のような1以上の第一関数に代えて、これと同等の1以上の第一対応情報を保持していても、魚状況情報を取得できる。第一対応情報とは、例えば、餌減少速度と数情報との対の集合である。餌減少速度と数情報との対とは、例えば、餌減少速度“10kg/日”と“100匹”との対、餌減少速度“15kg/日”と“140匹”との対などである。
また、魚状況情報取得部124は、例えば、上記のようにして取得した時間変化を基に、環境センサからの環境情報や人工衛星からの気象情報等も加味して、魚状況情報を取得することは、より好適である。
具体的には、魚状況情報取得部124は、例えば、数補正情報をも保持している。数補正情報とは、残存量の時間変化を基に取得した数情報を、環境センサによる環境情報に応じて補正するための情報である。数補正情報は、例えば、平均水温と補正値との対の集合である。平均水温と補正値との対とは、例えは、平均水温“15度未満”と補正値“-5”との対、平均水温“15度以上20度未満と補正値“±0”との対、平均水温“15度超”と補正値“+3”との対などである。魚状況情報取得部124は、例えば、温度センサからの直近3カ月間の情報に基づく平均水温が“13度”である場合、数補正情報を用いて、“13度”に対応する平均水温“15度未満”と対になる補正値“-5”を取得し、前述のようにして取得した数情報“100匹”に対し、当該補正値を加算することにより、補正された数情報“95匹”を取得する。環境センサによって取得できる数補正情報には、平均水温の他に、例えば日照時間や潮流など、環境センサで取得できるデータであれば、その種類を問わない。
こうして、人工衛星などによる環境データを用いて、残存餌の減少速度を補正した結果、魚状況情報取得部124は、環境の変化によらず、魚状況情報を高い精度で取得できる。
なお、魚状況情報取得部124は、かかる第一関数または第一対応情報を、例えば、予め保持していているが、機械学習等の人工知能を用いてこれを取得または更新してもよい。
機械学習とは、例えば、環境センサや人工衛星等から取得されるデータの集合を入力として解析を行い、そのデータ集合から、規則、判断基準などを抽出し、解析のアルゴリズムを発展させる手法であるといってもよい。機械学習は、統計的な情報処理により解析を行う各種の解析技術に応用されている。機械学習以外の人工知能としては、例えば、パターン認識、自動推論等の技術も存在する。なお、機械学習等の人工知能、およびそれを応用した各種の解析技術については、公知であり、詳しい説明を省略する。
魚状況情報取得部124は、例えば、機械学習等の人工知能を応用した画像解析技術を用いて、カメラによる動画像から魚が映る領域を検出し、魚の数を推定してもよい。また、魚状況情報取得部124は、例えば、機械学習等の人工知能を応用した音響解析技術を用いて、マイクロフォンによる音響データから、魚が存在する座標を検出し、魚の数を推定してもよい。さらに、魚状況情報取得部124は、例えば、生簀の中の一部分を対象として環境センサにより取得したデータから、当該一部分における魚の数、行動パターンを取得し、機械学習等の人工知能を応用した解析技術を使いて、生簀全体の魚の数を推定してもよい。
こうして、機械学習等の人工知能を用いることで、魚状況情報取得部124は、個体数等の魚状況情報をより高い精度で取得できるようになる。なお、機械学習等の人工知能は、例えば、判断部122、統計処理部123、パラメータ取得部125、予測部126等の処理にも用いることができる。
パラメータ取得部125は、魚の動きに関する1以上のパラメータを取得する。魚の動きに関するパラメータとは、例えば、魚の動きを示すパラメータでもよいし、魚の動きに影響し得るパラメータでもよい。前者のパラメータは、例えば、魚群の遊泳量であり、後者のパラメータは、例えば、前述した環境情報である。なお、前述した残存量情報は、後者のパラメータであるが、前者のパラメータと考えてもよい。
パラメータを取得することは、例えば、環境センサや残存量センサ等の1以上の各センサから、パラメータの値である環境情報や残存量情報等の情報を受信すること又は情報の引き渡しを受けることである。
または、パラメータを取得することは、1以上の各センサから受信した又は受け取った1以上の情報を用いて計算を行い、計算結果を取得することでもよい。具体的には、パラメータ取得部125は、例えば、温度センサからの2以上の温度情報を用いて、水温の平均値を計算し、平均水温を取得する。また、パラメータ取得部125は、溶存酸素センサからの2以上の溶存酸素情報を用いて、溶存酸素の平均値を計算し、平均溶存酸素を取得してもよい。
または、パラメータ取得部125は、人工衛星からの情報を受信し、1以上のパラメータを取得してもよい。人口衛星からの情報とは、パラメータ自体でもよいし、パラメータを含む又は取得可能な情報でもよい。パラメータを含む又は取得可能な情報とは、例えば、前述した気象情報、前述した画像情報などであるが、その種類は問わない。
具体的には、パラメータ取得部125は、例えば、受信した気象情報を用いて、当該自動給餌器2が存在する海域の平均海水温、当該海域の海流、当該海域上空の水蒸気量、地球規模の海水温分布、地球規模の海流、地球規模の水蒸気分布などのパラメータを取得する。また、パラメータ取得部125は、例えば、受信した画像情報を用いて、当該自動給餌器2が存在する海域での赤潮の有無または規模、当該海域の海水の色などのパラメータを取得してもよい。
また、パラメータ取得部125は、例えば、1または2以上の各カメラで撮影された画像から、口、眼球、尾鰭等の特徴点を検出し、その検出結果を用いて、魚群の個体数、密度、2以上の各個体のサイズ、2以上の個体の平均サイズなどを取得する。
個体数は、例えば、口等の特徴点の数を計数することにより取得可能である。また、密度は、例えば、個体数を、生け簀の容積で除算することにより取得可能である。また、個体のサイズは、例えば、一のカメラからの画像に含まれる2以上の各個体の画像が有する口および尾鰭に対応する2つの特徴点の間の距離、および当該一のカメラから当該個体までの距離などの情報を用いて取得可能である。なお、当該一のカメラから当該個体までの距離は、例えば、当該一のカメラを含む2以上のカメラからの画像間の視差を基に計算可能である。また、平均サイズは、2以上の各個体のサイズの合計を個体数で除算することにより取得可能である。
さらに、パラメータ取得部125は、例えば、異なる時刻に取得された2以上の検出結果を用いて、1以上の各個体の動き量を取得し、その1以上の動き量を合計することにより、魚群の遊泳量を取得する。動き量とは、単位時間に移動した距離である。単位時間は、例えば、1秒であるが、1分等でもよく、時間の長さは問わない。なお、個体の動き量は、例えば、当該個体の画像が有する一の特徴点の移動距離として計算される。特徴点は、例えば、上顎の先端に対応する点であるが、尾鰭の後端に対応する点や、目の中心に対応する点などでもよく、個体のどの部分に対応する点でもよい。
または、個体の動き量は、例えば、魚身速度であってもよい。魚身速度とは、個体の移動速度(例えば、v[m/s])を当該個体の長さ(例えば、L[m/fish length])で除した無次元速度(例えば、v/L[fish length/s])である。なお、個体の長さとは、例えば、尾叉長(びさちょう)である。尾叉長とは、上顎の先端から、尾鰭が二叉する中央部の凹みの外縁(例えば、最も凹んだ点)までの距離をいう。または、個体の長さは、例えば、標準体長や全長でもよく、その種類は問わない。標準体長とは、上顎の先端から尾鰭の基底までの長さであり、全長とは、上顎の先端から尾鰭の後端までの長さである。
具体的には、例えば、遊泳中の個体の画像において、上顎の一点(例えば、先端)を始点、尾鰭の一点(例えば、上記の最も凹んだ点)を終点として、始点から終点までの距離を「1魚身」と定義する。さらに、始点の座標を(A,B)として、当該座標(A,B)に終点が到達するまでにかかった時間を「1魚身進むのに要した時間(T)」と定義すると、魚身速度は、かかる時間の逆数(1/T)として算出される。
パラメータ取得部125は、生け簀内を撮影した画像から、一の個体に対応する領域を検出し、当該領域において、例えば、上顎の先端に対応する始点、および尾鰭の最も凹んだ点に対応する終点を特定する。次に、パラメータ取得部125は、始点の座標を取得し、タイマーをスタートする。そして、パラメータ取得部125は、当該始点の座標に終点が到達したか否かを判断する動作を開始し、当該始点の座標に終点が到達したと判断すると、タイマーをストップする。その後、パラメータ取得部125は、タイマーの値Tを読み取り、当該値Tの逆数を算出することにより、当該個体の魚身速度(1/T)を取得する。
または、パラメータ取得部125は、例えば、時刻tにおける画像において、上記のようにして始点から終点までの距離(つまり「1魚身」)を求めた後、当該時刻tにおける画像と、時刻(t+Δt)における画像との間で、一の特徴点(例えば、始点)の移動距離を求め、当該移動距離をΔtで除算することにより移動速度を算出し、さらに、当該移動速度を「1魚身」で除算することにより魚身速度を取得してもよい。
パラメータ取得部125は、例えば、上記のような処理を、一の生け簀内の2以上の各個体ごとに行うことにより、各個体の魚身速度を取得してもよい。また、パラメータ取得部125は、こうして取得した1または2以上の魚身速度を合計し、当該生け簀内の魚群の遊泳量を取得してもよい。さらに、パラメータ取得部125は、取得した魚群の遊泳量を個体数で除算することにより、当該生け簀での魚身速度の平均値を取得してもよい。
こうして取得された魚身速度を用いることで、同じ生け簀内の、大きさの違う個体や、カメラからの距離の違う個体の動きを相対的に比較できる。また、異なる生け簀間での個体または魚群の動きについても、比較が可能になる。さらに、例えば、同じ生け簀内の魚群でも、その遊泳量は、各個体の成長に伴って変化するため、異なる時期の遊泳量を比較することは、通常、困難であるが、魚身速度を用いることで、異なる時期の遊泳量の比較も可能となる。
従って、後述する予測部126は、パラメータ取得部125が取得した魚身速度を用いて、魚の大きさに依存せずに、給餌の量または給餌の時のうち1以上を予測した結果である予測結果を取得することができる。
なお、パラメータ取得部125は、例えば、魚群行動解析によって、パラメータを取得してもよい。魚群行動解析とは、例えば、カメラからの画像、環境センサからの環境情報、人工衛星からの情報などを用いて、魚群の行動を解析する手法である。なお、魚群行動解析は公知であり、詳しい説明を省略する。パラメータ取得部125は、魚群行動解析による解析結果を用いて、魚の動きを示す1以上のパラメータを取得してもよい。
予測部126は、予測結果を取得する。予測結果とは、1以上のパラメータを用いて、給餌の量または給餌の時のうち1以上を予測した結果である。予測結果は、例えば、ユーザによる予測結果であってもよい。ユーザによる予測結果とは、ユーザが、1以上のパラメータを用いて、論理的または経験的に導き出した結果を、コンピュータで処理可能な態様に変換した情報であるといってもよい。
ユーザによる予測結果は、例えば、変更指示である。なお、詳細は後述するが、変更指示とは、ユーザが、ユーザ端末3で出力された1以上のパラメータを用いて、好適な給餌量または好適な給餌タイミングのうち1以上を予測し、自動給餌器2に予め又は現時点で設定されている給餌量または給餌タイミングのうち1以上を、当該予測結果を基に変更する旨の指示である。例えば、ユーザ端末3において、かかる変更指示が受け付けられ、自動給餌支援装置1に送信され、予測部126は、ユーザ端末3から送信された変更指示を予測結果として受信してもよい。
変更指示は、特に、例えば、給餌量変更情報、または給餌タイミング変更情報のうち1以上を有していてもよい。なお、給餌量変更情報、給餌タイミング変更情報については後述する。
または、変更指示は、給餌量変更情報を構成する、元の給餌量と新たな給餌量との対のうちの、新たな給餌量を有していてもよいし、新たな給餌量から元の給餌量を減算した結果を有していても構わない。
または、変更指示は、給餌タイミング変更情報を構成する、元の給餌タイミングと新たな給餌タイミングとの対のうちの、新たな給餌タイミングを有していてもよいし、新たな給餌タイミングから元の給餌タイミングを減算した結果を有していても構わない。
あるいは、変更指示は、例えば、1回当たりの給餌量と、1日のうちの1または2以上の給餌時刻とを有していてもよい。かかる給餌量および1以上の給餌時刻の各々は、ユーザが、1以上のパラメータを基に好適であると判断し、入力した値である。なお、かかる予測結果において、1以上の給餌時刻は、例えば、給餌の周期、または1日当たりの給餌の回数等に置き換えられてもよい。または、予測結果は、給餌量と給餌時刻との対の集合でもよい。
または、予測結果は、予測部126による予測結果(つまり、コンピュータが、1以上のパラメータを用いて計算を行い、取得した結果)でもよい。すなわち、予測部126は、例えば、パラメータ取得部125が取得した1以上のパラメータを用いて、給餌の量または給餌の時のうち1以上を予測し、予測結果を取得することもできる。また、予測部126は、取得された1以上のパラメータを用いて、例えば、当該自動給餌器2が設けられている生け簀内の魚に好適な餌の種類を予測し、予測結果を取得してもよい。
予測部126は、例えば、1以上のパラメータを入力とし、給餌量または給餌タイミングを出力とする第二関数を保持しており、パラメータ取得部125が取得した1以上のパラメータを、かかる第二関数に代入することにより、給餌量または給餌タイミングを予測する。
または、予測部126は、1以上のパラメータが取り得る1以上の値の組と、給餌量または給餌タイミングとの対の集合である第二対応情報を保持しており、当該第二対応情報を用いて、パラメータ取得部125が取得した1以上のパラメータに対応する給餌量または給餌タイミングを取得してもよい。
なお、予測部126は、かかる第二関数または第二対応情報を、例えば、予め保持していているが、機械学習等の人工知能を用いてこれを取得または更新してもよい。
具体的には、例えば、空腹時は魚身速度が速く、満腹になるほど魚身速度が遅くなることから、予測部126は、例えば、自動給餌器2による給餌中に、パラメータ取得部125が定期的または不定期に取得した2以上の魚身速度と、当該2以上の各魚身速度の取得時点での給餌量とを用いて、機械学習等の解析手法により、魚身速度と給餌の終了タイミングとの関係を示す情報(例えば、学習器)を取得してもよい。
以降、予測部126は、上記のようにして取得した学習器等の情報を用いて、次回以降の給餌中に、パラメータ取得部125によって取得された2以上の魚身速度から、給餌の終了タイミングを予測してもよい。また、予測部126は、例えば、給餌をしていない時間帯に取得された魚身速度を蓄積し、比較することにより、日次平均の魚身速度を取得してもよい。こうして取得した日時平均の魚身速度が前日よりも速い場合、予測部126は、次回の給餌時の給餌量の増加を予測してもよい。これにより、飼料の自動発注の精度を上げることができる。
送信部13は、各種の情報を送信する。各種の情報とは、例えば、発注情報である。発注情報とは、餌の発注に関する情報である。発注情報は、通常、餌を発注する情報である。発注情報は、例えば、発注量情報、および発注元情報を有する。発注量情報とは、発注する餌の量に関する情報である。発注量情報は、例えば、“50kg”等の重量でも、“20袋”等の数量でもよい。
なお、発注量情報は、例えば、前述した容量情報でもよい。かかる場合、格納部11には、機器識別子と容量情報と対の集合である容量情報群が格納されてもよい。
また、発注情報は、1または2以上の餌種類情報を有していてもよい。
または、発注情報は、例えば、餌種類情報と量情報との対の集合、および発注元情報を有していてもよい。餌種類情報と量情報との対とは、例えば、餌種類情報“生エサ”と量情報“10kg”との対、餌種類情報“MP”と量情報“5袋”との対などである。
発注元情報とは、発注元に関する情報である。発注元とは、前述したユーザである。すなわち、発注元は、例えば、飼育者であるが、その所属組織でも、当該組織の他の職員でも構わない。発注元情報は、例えば、住所、氏名、組織名、電話番号、メールアドレス、URLのうち1以上の情報を有する。
ただし、発注情報は、餌の発注をユーザに促す情報でもよい。この種の発注情報は、例えば、“餌を発注して下さい”という旨の情報であるあるが、餌種類情報を含む“生エサを発注して下さい”等の情報でもよいし、餌種類情報および量情報を含む“DP10袋の発注を行って下さい”等の情報でも構わない。また、この種の発注情報は、例えば、注意喚起情報を有していてもよい。注意喚起情報とは、ユーザの注意を喚起する情報である。注意喚起情報は、例えば、“餌が残り少なくなっています”や“生エサの残量は2日分です”等の旨の情報である。なお、餌の発注をユーザに促す発注情報は、例えば、文字列であるが、同様の旨を示すマークや記号等でもよく、その表現形式は問わない。
送信部13は、判断部122が予め決められた条件を満たすほど餌の残存量が少ないと判断した場合に、発注情報を送信する。
例えば、格納部11に、発注情報が格納されており、送信部13は、判断部122が予め決められた条件を満たすほど餌の残存量が少ないと判断した場合に、格納部11から発注情報を取得し、送信する。
または、格納部11に、2以上の発注情報が格納されており、送信部13は、判断部122が、予め決められた1または2以上の条件のうち、一の条件を満たすほど餌の残存量が少ないと判断した場合に、格納部11から、当該一の条件に対応する発注情報を取得し、送信してもよい。
または、格納部11には、機器識別子と発注情報との対の集合である発注情報群が格納されてもよい。この場合の発注情報は、例えば、当該機器識別子と対になる容量情報を予め有していてもよい。送信部13は、判断部122が、2以上の自動給餌器2のうち一の自動給餌器2に関して、予め決められた条件を満たすほど餌の残存量が少ないと判断した場合に、当該一の自動給餌器2を識別する機器識別子と対になる発注情報を、格納部11から取得し、送信することは好適である。
送信部13は、例えば、上記のようにして格納部11から取得した発注情報を、発注先情報格納部111の発注先情報により特定される発注先に送信する。
または、送信部13は、判断部122が予め決められた条件を満たすほど餌の残存量が少ないと判断した場合に、餌の発注を促す発注情報を、飼育者情報格納部112の飼育者情報により特定される飼育者に送信してもよい。かかる発注情報を閲覧した飼育者が、例えば、後述するユーザ端末3の入力デバイスを介して、餌を発注する発注情報を入力すると、ユーザ端末3から、自動給餌支援装置1または発注先に、その入力された発注情報が送信される。こうしてユーザ端末3から送信された発注情報は、例えば、自動給餌支援装置1の処理部12によって受信され、送信部13は、その受信された発注情報を、発注先情報格納部111の発注先情報により特定される発注先に送信する。
出力部14は、各種の情報を出力する。各種の情報とは、例えば、統計処理結果、魚状況情報などである。また、出力部14は、例えば、パラメータ取得部125が取得した1以上のパラメータも出力する。
なお、出力部14による出力は、通常、ユーザ端末3への送信であるが、例えば、ディスプレイへの表示、スピーカーからの音出力、プリンタでのプリントアウトといった、出力デバイスを介した出力でもよいし、記録媒体への蓄積でもよいし、他の機能や他のプログラムへの処理結果の引渡しでも構わない。なお、かかる事項は、統計処理結果出力部141等にも共通する。
統計処理結果出力部141は、統計処理部123が取得した統計処理結果を出力する。なお、出力される統計処理結果は、取得された統計処理結果と同じデータ形式を有さなくてもよい。統計処理結果出力部141は、統計処理部123が取得した統計処理結果を、例えば、表または図の形式で出力するが、テキスト形式で出力してもよい。なお、かかる事項は、パラメータ取得部125が取得した1以上のパラメータについても当てはまる。
これにより、ユーザは、取得された統計処理結果や1以上のパラメータを知得して、好適な給餌の量または給餌の時を判断することができ、その結果、自動給餌器2に予め又は現時点で設定されている給餌量または給餌タイミングのうち1以上を的確に変更できる。なお、設定を変更することは、初回の設定を行う場合も含むと考えてもよい。また、設定の変更については、後述する。
魚状況情報出力部142は、魚状況情報取得部124が取得した魚状況情報を出力する。なお、出力される魚状況情報は、取得された魚状況情報と同じデータ形式を有さなくてもよい。魚状況情報出力部142は、魚状況情報取得部124が取得した魚状況情報を、例えば、テキスト形式で出力するが、表または図の形式で出力してもよい。
これにより、ユーザは、取得された魚状況情報を知得して、好適な量の魚を出荷することができる。
自動給餌器2を構成する給餌格納部21には、例えば、機器識別子、魚種類情報、給餌量情報、タイミング情報などが格納される。格納される魚種類情報は、例えば、自動給餌器2が設けられた生け簀で飼育されている魚の種類を示す。給餌量情報とは、予め又は現時点で設定されている給餌量を示す情報である。タイミング情報とは、予め又は現時点で設定されている給餌タイミングに関す情報であり、例えば、前述した残存量情報を取得するタイミングに関するタイミング情報と同じでよい。格納されている給餌量情報または格納されているタイミング情報のうち1以上は、例えば、予測部126が取得した予測結果情報を用いて、処理部12により変更され得る。
給餌処理部22は、例えば、残存量センサを用いて、残存量情報を取得する。また、給餌処理部22は、例えば、環境センサを用いて、環境情報を取得する。なお、残存量情報や環境情報の取得方法については、前述したので繰り返さない。
給餌処理部22は、例えば、給餌受信部24がユーザ端末3から変更指示を受信した場合に、給餌の量または給餌の時のうち1以上に関する設定を変更する。
変更指示とは、予め又は現時点で設定されている給餌量または給餌タイミングのうち1以上を変更する指示である。変更指示は、例えば、給餌量変更情報または給餌タイミング変更情報のうち1以上を有する。給餌量変更情報とは、給餌量を変更するための情報である。給餌量変更情報は、例えば、元の給餌量と新たな給餌量との対でもよいし、新たな給餌量から元の給餌量を減算した結果(正負の符号を含む)でもよい。給餌タイミング変更情報とは、給餌タイミングを変更するための情報である。給餌量変更情報は、例えば、元の給餌タイミングと新たな給餌タイミングとの対でもよいし、新たな給餌タイミングから元の給餌タイミングを減算した結果(正負の符号を含む)でもよい。
給餌送信部23は、各種の情報を送信する。各種の情報とは、例えば、給餌処理部22が取得した残存量情報、給餌処理部22が取得した環境情報などである。給餌送信部23は、取得された残存量等の情報を、通常、自動給餌支援装置1に送信するが、例えば、ユーザ端末3など、他の装置に送信してもよい。
給餌受信部24は、例えば、ユーザ端末3から変更指示を受信する。
ユーザ端末3を構成するユーザ格納部31には、例えば、ユーザ識別子、端末識別子などの情報が格納される。ユーザ識別子とは、ユーザを識別する情報である。ユーザ識別子は、例えば、住所・氏名、携帯電話番号、メールアドレスなどであるが、IDでもよく、ユーザを識別し得る情報であれば何でもよい。端末識別子とは、ユーザ端末3を識別する情報である。端末識別子は、例えば、IPアドレスであるが、IDでもよいし、ユーザ識別子と兼用でもよく、ユーザ端末3を識別し得る情報であれば何でもよい。
ユーザ受信部32は、例えば、自動給餌支援装置1から、各種の情報を受信する。各種の情報とは、例えば、餌の発注を促す発注情報、統計処理結果、魚状況情報、1以上のパラメータなどである。
ユーザ処理部33は、各種の処理を行う。各種の処理とは、例えば、ユーザ受信部32が各種の情報を受信したか否かの判別などである。
ユーザ出力部34は、例えば、ユーザ受信部32が受信した各種の情報を出力する。なお、ユーザ出力部34による出力は、通常、ディスプレイ等の出力デバイスを介した出力であるが、例えば、記録媒体への蓄積でも、他の機能や他のプログラムへの処理結果の引渡しでもよいし、他の装置への送信でも構わない。
ユーザ受付部35は、例えば、ユーザ出力部34が餌の発注を促す発注情報を出力したことに応じて、餌を発注する発注情報を受け付ける。
また、ユーザ受付部35は、例えば、ユーザ出力部34が、統計処理結果、魚状況情報、1以上のパラメータなどを出力したことに応じて、変更指示等の予測結果を受け付ける。
ユーザ受付部35は、発注情報等の情報を、例えば、タッチパネル、キーボード、マウスなどの入力デバイスを介して受け付けるが、他の装置から受信でもよい。
ユーザ送信部36は、ユーザ受付部35が受け付けた、餌を発注する発注情報、変更指示等の予測結果を、自動給餌支援装置1に送信する。
格納部11、発注先情報格納部111、飼育者情報格納部112、給餌格納部21、およびユーザ格納部31は、例えば、ハードディスクやフラッシュメモリといった不揮発性の記録媒体が好適であるが、RAMなど揮発性の記録媒体でも実現可能である。
格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11等で記憶されるようになってもよく、ネットワークや通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。入力デバイスは、例えば、キーボード、マウス、タッチパネル等、何でもよい。
処理部12、残存量情報取得部121、判断部122、統計処理部123、魚状況情報取得部124、パラメータ取得部125、予測部126、給餌処理部22、およびユーザ処理部33は、通常、MPUやメモリ等から実現され得る。処理部12等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。ただし、処理手順は、ハードウェア(専用回路)で実現してもよい。
送信部13、給餌送信部23、およびユーザ送信部36は、通常、無線または有線の通信手段(例えば、NIC(Network interface controller)やモデム等の通信モジュール)で実現されるが、放送手段(例えば、放送モジュール)で実現されてもよい。
出力部14、統計処理結果出力部141、魚状況情報出力部142、およびユーザ出力部34は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えてもよい。出力部14等は、出力デバイスのドライバーソフトによって、または出力デバイスとそのドライバーソフトとで実現され得る。
給餌受信部24、ユーザ受信部32は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段(例えば、放送受信モジュール)で実現されてもよい。処理部12等の受信機能も同様である。
ユーザ受付部35は、入力デバイスを含むと考えても、含まないと考えてもよい。ユーザ受付部35は、入力デバイスのドライバーソフトによって、または入力デバイスとそのドライバーソフトとで実現され得る。
次に、情報システムの動作について図2のフローチャートを用いて説明する。図2は、自動給餌支援装置1の動作を説明するフローチャートである。
(ステップS201)処理部12は、残存量情報取得部121が残存量情報を取得したか否かを判別する。残存量情報取得部121が残存量情報を取得した場合はステップS202に進み、取得していない場合はステップS205に進む。
(ステップS202)処理部12は、ステップS201で取得された残存量情報を格納部11に蓄積する。
(ステップS203)魚状況情報取得部124は、格納部11に格納されている1以上の残存量情報を用いて、魚状況情報を取得する。
(ステップS204)魚状況情報出力部142は、ステップS203で取得された魚状況情報を出力する。その後、ステップS201に戻る。
(ステップS205)判断部122は、ステップS201で取得された残存量情報が予め決められた条件を満たすほど餌の残存量が少ないか否かを判断する。取得された残存量情報が予め決められた条件を満たすほど餌の残存量が少ない場合はステップS206に進み、そうでない場合はステップS207に進む。
(ステップS206)送信部13は、発注情報を送信する。その後、ステップS201に戻る。
(ステップS207)処理部12は、格納部11に2以上の残存量情報が格納されているか否かを判別する。格納部11に2以上の残存量情報が格納されている場合はステップS202に進み、そうでない場合はステップS210に進む。
(ステップS208)統計処理部123は、格納されている2以上の残存量情報を統計処理し、統計処理結果を取得する。
(ステップS209)統計処理結果出力部141は、ステップ208で取得された統計処理結果を出力する。その後、ステップS201に戻る。
(ステップS210)処理部12は、パラメータ取得部125が1以上のパラメータを取得したか否かを判別する。パラメータ取得部125が1以上のパラメータを取得した場合はステップS211に進み、取得していない場合はステップS212に進む。
(ステップS211)出力部14は、ステップS210で取得された1以上のパラメータを出力する。その後、ステップS201に戻る。
(ステップS212)処理部12は、予測部126が予測結果を取得したか否かを判別する。予測部126が予測結果を取得した場合はステップS211に進み、取得していない場合はステップS201に戻る。
(ステップS213)処理部12は、例えば、予め又は現時点で自動給餌器2に設定されている給餌量または給餌タイミングを、ステップS212で取得された予測結果を用いて変更する。その後、ステップS201に戻る。
なお、図2のフローチャートにおいて、自動給餌支援装置1の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
以下、情報システムの具体的な動作例について説明する。なお、以下の説明は、種々の変更が可能であり、本発明を限定するものではない。
図3は、本例における情報システムの概念図である。本例の情報システムは、自動給餌支援装置1、および2以上の自動給餌器2(例えば、2つの自動給餌器2aおよび2b)で構成される。
自動給餌支援装置1は、飼育者の携帯端末で実現され、ユーザ端末3としても機能する。2以上の各自動給餌器(2a,2b)は、海中の生け簀を海面上から支える筏に設けられる。自動給餌器2aが設けられた生け簀では、鯛が飼育されている。自動給餌器2bが設けられた生け簀では、ハマチが飼育されている。
自動給餌支援装置1と各自動給餌器(2a,2b)とは、ネットワークを介して通信可能である。ネットワークには、供給者のサーバが接続されており、自動給餌支援装置1は、各自動給餌器(2a,2b)が有する残存量センサからの残存量情報を用いて自動的に、または当該残存量情報を知得した飼育者の操作に応じて、供給者に対し餌を発注可能である。また、ネットワークには、衛星受信機も接続されており、自動給餌支援装置1は、各自動給餌器(2a,2b)が有する環境センサからの環境情報(例えば、水温、流速等の局所的なパラメータ)に加え、人工衛星からの情報(例えば、水温分布、海流等の広域的なパラメータ)も利用可能である。
自動給餌支援装置1の格納部11には、例えば、図4に示すように、機器識別子と対に、1または2以上の残存量情報が格納され得る。
図4は、残存量情報のデータ構造図である。残存量情報は、時刻、残存量、および使用量を有する。一の機器識別子と対に格納される1以上の各残存量情報には、ID(例えば、“1”,“2”等)が対応付いている。
例えば、機器識別子“2a”と対になる1以上の残存量情報のうち、1番目の残存量情報(以下、残存量情報1)は、時刻“2018年1月1日6:00”、残存量“20kg”、および使用量“0”を有する。また、2番目の残存量情報(残存量情報2)は、時刻“2018年1月1日18:00”、残存量“19kg”、および使用量“1kg”を有する。同様に、残存量情報mは、時刻“2018年1月5日18:00”、残存量“6kg”、および使用量“14kg”を有する。
また、機器識別子“2b”と対になる1以上の残存量情報のうち、残存量情報1は、時刻“2018年1月1日12:00”、残存量“10袋”、および使用量“2袋”を有する。同様に、残存量情報nは、時刻“2018年1月5日12:00”、残存量“5袋”、および使用量“7袋”を有する。
また、機器識別子“2a”には、魚種類情報“鯛”、および餌種情報“生エサ”も対応付いている。さらに、機器識別子“2b”には、魚種類情報“ハマチ”、および餌種情報“MP”も対応付いている。
さらに、格納部11には、価格情報も格納されている。価格情報は、例えば、“生エサ,1000円/kg”、“MP,2000円/袋”といった、餌種類情報と単価との対の集合である。
また、格納部11には、例えば、“2a,20kg”、“2b,12袋”といった、機器識別子と容量情報と対の集合である容量情報群も格納されている。
さらに、格納部11には、機器識別子と発注情報との対の集合である発注情報群も格納されている。この発注情報群において、ある機器識別子と対になる発注情報は、当該機器識別子に対応する容量情報および種類情報を予め有している。機器識別子と発注情報との対は、例えば、機器識別子“2a”と発注情報“生エサ,20kg”との対、機器識別子“2b”と発注情報“MP,12袋”との対などである。
自動給餌器2aの給餌格納部21には、機器識別子“2a”、給餌量情報“1kg/回”、タイミング情報“6:00,18:00”などが格納されている。また、自動給餌器2bの給餌格納部21には、機器識別子“2b”、給餌量情報“1袋/回”、タイミング情報“12:00”などが格納されている。なお、本例では、タイミング情報は固定であり、給餌量情報は、予測部126が取得した予測結果情報を用いて、処理部12により変更され得る。
現在の時刻は、2018年1月5日17:59である。このとき、自動給餌支援装置1の格納部11には、図4に示した、機器識別子“2a”と対になる残存量情報1~残存量情報mのうち、残存量情報1~残存量情報(m-1)が既に格納されているが、最後の残存量情報mは未だ格納されていない。また、格納部11には、同じく図4に示した、機器識別子“2b”と対になる残存量情報1~残存量情報nの全部が、既に格納されている。
いま、自動給餌器2aが設けられた生け簀内の海水の水温は15度、流速は1m/秒であり、自動給餌器2aには、7kgの餌が残っているとする。
現在の時刻が2018年1月5日18:00になると、自動給餌器2aから1kgの餌が生け簀内に排出される。
これに応じて、自動給餌器2aにおいて、給餌処理部22が、残存量センサ(例えば、レーザセンサ)からのデータ(例えば、距離データ)を用いて残存量“6kg”を取得し、また、環境センサ(例えば、温度センサ、流速センサ等)を用いて環境情報“15度,1m/秒”を取得し、さらに、MPUの内蔵時計等から時刻“2018年1月5日18:00”をも取得する。給餌送信部23は、こうして取得された、時刻“2018年1月5日18:00”、残存量“6kg”、および環境情報“15度,1m/秒”の組を、機器識別子“2a”と対に、自動給餌支援装置1に送信する。
自動給餌支援装置1において、残存量情報取得部121が、上記組のうち時刻および残存量を、機器識別子“2a”と対に、残存量情報として受信する。処理部12は、受信された残存量情報“2018年1月5日18:00,6kg,Null”を機器識別子“2a”に対応付けて格納部11に蓄積する。なお、Nullとは、当該情報(ここでは、使用量に対応する情報)が存在しないことを示すフラグである。
次に、処理部12は、機器識別子“2a”に対応する容量情報“20kg”から残存量情報“6kg”を減算することにより、使用量“6kg”を取得し、機器識別子“2a”に対応付けて格納部11に蓄積する。これにより、格納部11には、上記残存量情報mが新たに格納され、図4に示した全ての残存量情報が揃う結果となる。
魚状況情報取得部124は、格納部11の全残存量情報のうち、機器識別子“2a”と対に格納されている残存量情報1~残存量情報mを用いて、例えば、以下の手順で、魚状況情報を取得する。
すなわち、魚状況情報取得部124は、まず、残存量情報1~残存量情報mのうち、最初の残存量情報1と最後の残存量情報mとを用いて、各々が有する時刻の差分に対応する期間“5日”を取得する。次に、魚状況情報取得部124は、最後の残存量情報mが有する使用量“14kg”を、当該期間における餌の減少量として取得する。次に、魚状況情報取得部124は、当該減少量“14kg”を期間“5日”で除算することにより、餌減少速度“2.8kg/日”を取得する。
次に、魚状況情報取得部124は、魚種類情報“鯛”と対になる第一関数に、餌減少速度“2.8kg/日”を代入して、数情報を取得する。なお、本例では、数情報“100匹”が取得されたとする。そして、魚状況情報取得部124は、魚種類情報“鯛”と、こうして取得した数情報“100匹”とを有する魚状況情報“鯛,100匹”を取得する。
魚状況情報出力部142は、上記のようにして取得された魚状況情報“鯛,100匹”を用いて、文字列“鯛100が出荷可能です”を構成し、出力する。これにより、自動給餌支援装置1のディスプレイには、取得された魚状況情報に対応する文字列“鯛100匹が出荷可能です”が表示される。
他方、判断部122は、条件“残存量<=6kg”を保持しており、取得された残存量情報が当該条件を満たすほど餌の残存量が少ないか否かの判断を、例えば、タイミング情報に従って新たに取得された残存量情報が、格納部11に蓄積される度に実行している。本例では、残存量情報1~残存量情報(m-1)のいずれが蓄積された時点でも、判断部122の判断結果は否定的であったとする。
残存量情報mが蓄積された時点で、そこに含まれる残存量“6kg”が上記条件を満たすことから、判断部122は、餌の残存量が少ないと判断し、送信部13は、発注先情報格納部111の発注先情報で特定される発注先に、発注情報を送信する。その際、送信部13は、格納部11から、機器識別子“2b”と対になる発注情報“生エサ,20kg”を取得し、送信する。
発注先のサーバが上記発注情報を受信し、発注先から飼育者に生エサ20キロが発送される。飼育者は、受領した生エサ20キロの全部または一部を自動給餌器2aに補充することで、餌切れを防止しつつ、餌代の削減を図ることができる。
統計処理部123は、例えば、機器識別子“2a”に対応する残存量情報1~残存量情報mと、生エサの単価“1000円/kg”とを用いて、自動給餌器2aでの1日当たりの餌代を取得する。かかる餌代は、一日当たりの使用量“2.8kg/日”に単価“1000円/kg”を乗算することで、“2800円/日”のように計算される。
また、統計処理部123は、例えば、機器識別子“2b”に対応する残存量情報1~残存量情報nと、MPの単価“2000円/袋”とを用いて、自動給餌器2bでの1日当たりの餌代をも取得する。この餌代は、一日当たりの使用量“1.25袋/日”に単価“2000円/袋”を乗算することで、“2500円/日”のように計算される。さらに、統計処理部123は、2つの自動給餌器2aおよび2bでの1日当たりの餌代の総額をも取得する。この総額は、取得した2つの餌代“2800円/日”および“2500円/日”を合計することで、“5300円/日”のように計算される。統計処理結果出力部141は、こうして取得された統計処理結果を表形式で出力する。これによって、ディスプレイには、取得された統計処理結果を記載した表が、さらに表示される。
また、パラメータ取得部125は、環境センサからの環境情報を用いて、水温、流速などの局所的パラメータを取得し、さらに、人工衛星からの情報を用いて、水温分布、流速分布などの広域的パラメータをも取得する。出力部14は、取得された局所的パラメータを上記表の中に表示する一方、取得された広域的パラメータを色や矢印等で図的に表現した地図を出力する。
こうして、ディスプレイには、例えば、図5に示すような画面が表示される。図5は、魚状況情報、統計処理結果、およびパラメータの出力例を示す図である。この画面は、時刻に対応する“2018年1月5日18:00”と、統計処理結果および局所的パラメータを記載した表と、水温分布等の広域的パラメータを色等で表現した地図とを有する。なお、地図には、GPS衛星からの位置情報に基づく生け簀の位置が、星マークで示されている。
飼育者は、画面に示されている魚状況情報、統計処理結果、またはパラメータのうち1種類以上を用いて、最適な給餌量または最適な給餌タイミングのうち1以上を予測し、その予測結果に基づく変更指示を、タッチパネル等で入力する。飼育者は、例えば、魚群の遊泳量、海水の色、海水温、日照時間、潮流等の情報から、経験的に、最適な給餌量または最適な給餌タイミングのうち1以上を予測してもよい。予測部126は、かかる変更指示を予測結果として取得し、処理部12は、予め又は現時点で自動給餌器2aに設定されている給餌量または給餌タイミングを変更する。
例えば、急激な温度変化や植物性プランクトンの大量発生に関連する赤潮の原因とみなされる全てのパラメータの増減値が閾値を超えた場合に、飼育者は、給餌量または給餌タイミングのうち1以上の変更が必要と判断し、最適な給餌量または最適な給餌タイミングのうち1以上を予測して、その予測結果に基づく変更指示を入力する。予測部126は、かかる変更指示を予測結果として取得し、処理部12は、予め又は現時点で自動給餌器2aに設定されている給餌量または給餌タイミングを変更する。
なお、上記のようにして経験的に予測することは、例えば、飼育者が記憶している、過去の2以上の時点における魚状況情報等と給餌量等との関係から、画面に表示されている現在での魚状況情報等に対して好適な給餌量等を推測することである。従って、予測部126は、例えば、環境センサや人工衛星等から取得されるデータの集合を入力として、または、かかるデータの集合と、それを用いて人が判断した結果(例えば、飼育者による予測結果等)とを入力として、機械学習を行い、最適な給餌量または最適な給餌タイミングのうち1以上の情報を予測することも可能である。
以上、本実施の形態によれば、自動給餌支援装置1は、魚へ餌を与える自動給餌器2の餌の残存量に関する残存量情報を取得し、残存量情報が予め決められた条件を満たすほど餌の残存量が少ないか否かを判断し、予め決められた条件を満たすほど餌の残存量が少ないと判断した場合に、餌の発注に関する発注情報を送信することにより、自動給餌器2を用いて魚に与える餌を、好適なタイミングで発注できる又はユーザによる発注を支援できる。
また、発注先情報格納部111に、餌の発注先を特定する発注先情報が格納されており、自動給餌支援装置1は、発注情報を発注先情報により特定される発注先に送信することにより、自動給餌器2を用いて魚に与える餌を、好適なタイミングで発注できる。
また、飼育者情報格納部112に、魚の飼育者を特定する飼育者情報が格納されており、自動給餌支援装置1は、餌の発注を促す発注情報を飼育者情報により特定される飼育者に送信することにより、自動給餌器2を用いて魚に与える餌を、飼育者等のユーザが好適なタイミングで発注することを支援できる。
また、自動給餌支援装置1は、2以上の自動給餌器2から残存量情報を受信し、2以上の自動給餌器2から受信された2以上の残存量情報を統計処理し、統計処理結果を取得し、統計処理結果を出力することにより、ユーザは、2以上の各自動給餌器2での餌の残存量に関する統計処理結果(例えば、合計量、平均値、分布等)を知ることができ、また、その結果、2以上の自動給餌器2に関する一括的な又はその各々に関する個別的な、餌の発注を的確に行える。
また、自動給餌支援装置1は、取得した残存量情報を用いて、飼育対象の魚の状況である魚状況情報を取得し、魚状況情報を出力することにより、ユーザは、魚の状態を知ることができ、その結果、魚の管理(例えば、給餌、出荷等)を的確に行える。
また、上記の魚状況情報は、魚の種類を示す魚種情報、または市場に出る魚の数に関する数情報であることにより、ユーザは、魚の種類、または出荷対象となる魚の数を知ることができ、その結果、各種の魚を的確に出荷できる。
また、自動給餌支援装置1は、魚の動きに関する1以上のパラメータを取得し、1以上のパラメータを用いて、給餌の量または給餌の時のうち1以上を予測した結果である予測結果を取得することにより、自動給餌器2を用いて、好適な量の餌を好適なタイミングで魚に給餌できる又はユーザによる自動給餌器2への設定を支援できる。
また、上記構成において、1以上のパラメータの1つは、魚の移動速度を当該魚の長さで除した魚身速度であることにより、魚身速度を用いて、魚の大きさに依存せずに、給餌の量または給餌の時のうち1以上を予測した結果である予測結果を取得することができる。
さらに、本実施の形態における処理は、ソフトウェアで実現してもよい。そして、このソフトウェアをソフトウェアダウンロード等により配布してもよい。また、このソフトウェアをCD-ROMなどの記録媒体に記録して流布してもよい。なお、このことは、本明細書における他の実施の形態においても該当する。
本実施の形態における情報処理装置を実現するソフトウェアは、例えば、次のようなプログラムである。つまり、コンピュータがアクセス可能な記録媒体は、魚へ餌を与える自動給餌器2の餌の残存量に関する残存量情報を取得する残存量情報取得部121を具備し、このプログラムは、前記コンピュータを、前記残存量情報が予め決められた条件を満たすほど餌の残存量が少ないか否かを判断する判断部122と、前記判断部122が予め決められた条件を満たすほど餌の残存量が少ないと判断した場合に、餌の発注に関する発注情報を送信する送信部13として機能させるためのプログラムである。
図6は、本実施の形態におけるプログラムを実行して、自動給餌支援装置1等を実現するコンピュータシステム900の外観図である。本実施の形態は、コンピュータハードウェアおよびその上で実行されるコンピュータプログラムによって実現され得る。図6において、コンピュータシステム900は、ディスクドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、ディスプレイ904とを備える。なお、キーボード902やマウス903やディスプレイ904をも含むシステム全体をコンピュータと呼んでもよい。
図7は、コンピュータシステム900の内部構成の一例を示す図である。図7において、コンピュータ901は、ディスクドライブ905に加えて、MPU911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、およびデータを記憶するストレージ914と、MPU911、ROM912等を相互に接続するバス915と、外部ネットワークや内部ネットワーク等のネットワークへの接続を提供するネットワークカード916と、を備える。ストレージ914は、例えば、ハードディスク、SSD、フラッシュメモリなどである。
コンピュータシステム900に、自動給餌支援装置1等の機能を実行させるプログラムは、例えば、DVD、CD-ROM等のディスク921に記憶されて、ディスクドライブ905に挿入され、ストレージ914に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータ901に送信され、ストレージ914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、ディスク921、またはネットワークから直接、ロードされてもよい。また、ディスク921に代えて他の着脱可能な記録媒体(例えば、DVDやメモリカード等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。
プログラムは、コンピュータの詳細を示す901に、自動給餌支援装置1等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
なお、上述したコンピュータシステム900は、サーバまたは据え置き型のPCであるが、自動給餌支援装置1やユーザ端末3は、例えば、スマートフォンやタブレット端末やノートPCといった携帯端末で実現されてもよい。この場合、例えば、キーボード902およびマウス903はタッチパネルに、ディスクドライブ905はメモリカードスロットに、ディスク921はメモリカードに、それぞれ置き換えられることが望ましい。自動給餌器2のコントローラも、基本的なハードウェア構成は、PCや携帯端末と同様でよい。ただし、以上は例示であり、自動給餌支援装置1等を実現するコンピュータのハードウェア構成は問わない。
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(給餌送信部23、給餌受信部24など)は、物理的に一の媒体で実現されてもよいことは言うまでもない。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。