The 31st Annual Conference of the Japanese Society for Artificial Intelligence, 2017

2E4-OS-36b-5

農作業計画の最適化における候補選定
An Automatic Generation Method of Optimal Farming Plan
小牧真子

鈴木優中村哲

Komaki Masako

Suzuki YuNakamura Satoshi

奈良先端科学技術大学院大学情報科学研究科
Graduate School of Information Science, Nara Institute of Science and Technology

When we have a large number of farms, workers, equipments, and tasks for managing large farms, we shouldmake a best plan for efficient performance of the workers. The plan should satisfy several conditions. For example,if it rains, the workers do not need to provide watering to the outside farms, and if a worker is an elderly person,worktime of the worker should be limited. However, in some cases it is impossible to satisfy all conditions. In
this paper, we propose a method for making a plan which partially satisfies the conditions. We used dynamic
programming and grid search for making a plan. We confirmed that our proposed method can automatically makeappropriate plans.

1

はじめに

日本における農業の現場では農作業の従事者は平均年齢 67歳，高齢者の割合が 64.6%[1] と高齢化が進んでおり，従事者の身体への負担が大きい農作業の軽減が求められている．これ
らを解決するため，作業計画を最適化することにより不要な労働を減らすことにより労働力を削減する手法が考えられている．
農作業計画を立てる際，天候条件，田畑の位置関係，農作業の作業内容など，考慮すべき制約条件が多い．これらの制約条件は，大規模農業で用いられるビニールハウスや暖房器具の活用によって一部変数を取り除くことができ，温湿度などの条件がすべて管理された上での研究が進められている．本研究は，これまで不確定要素とされてきた気候・天候，また個人の作業能率などのデータを評価するための農作業計画の最適化における候補選定手法を示すために，目的関数を設定し計算量が膨大となることを確認したものである．これによって，今後の作業内容のみならず，農作業の候補選定条件を考えるための足がかりとして考案する．

2

関連研究

Fowler らは，灌漑の作業内容についての最適化 [2] を行っている．これは大規模農業での灌漑に関する研究であり，また大規模農業での農作業の最適化に関する研究であるといえる．また，農機具を用いた農作業最適化に関する研究として，野口ら
は [3] 圃場内での農機具の動きを数理モデル化した．農作業の数理モデルとして扱う研究が既になされている．また，大土井らの研究 [4] では，圃場間移動の最適化をおこなっており，遺伝的アルゴリズムを用いて最短経路を計算している．農機具の移動経路や圃場間移動の最適化が行われているにもかかわらず，作業スケジュール全体を数理モデルに適用した研究は未だに少ない．このような作業全体の最適化が難しい背景として，宮坂らは気象や天候，人的資源に関するデータが不確定要素であり，数理モデルを最適化する際に妨げとなるためであると述べている．
[5] 原因としてはこれらの要素を考慮する際に計算量が膨大となってしまうことに原因がある．これらを踏まえ，本研究ではこ

図1 処理の流れれまで不確定要素であるとされてきた気象や天候，人的資源に関するデータのうち，人的資源に関するデータを作業計画に用いることに焦点を当てる．本手法では作業可能時間や人間の作業可能強度を農作業計画の最適化における候補選定に役立てるための数理モデルを考案する．

3

提案手法

本研究では農作業計画に必要なパラメータを目的関数に適用し，そのときの値から最適な農作業計画を得るものである．このとき変更するパラメータは，グリッドサーチに基づいて変更

連絡先: 小牧真子，奈良先端科学技術大学院大学，

komaki.masako.kf9@is.naist.jp

1

表1 作業者情報と作業内容情報

作業者情報
作業人数

h(w = w1 · · ·作業可能時間
作業可能強度)
wn

S
作業内容

作業数

(

作業名nf name = name1(s = s1 · · ·作業強度···))

namen

sn
図2

r = 3, s = 1, P = 1, W = 2 で あ る と き の
f (w), a(w), b(w), c(w)した値である．全体図を図 1 に示す．
前提条件としてまずは一つの圃場，作業者 1 人，作業を 2 種類行う場合を考える．入力データを目的関数に適用し，グリッドサーチで変更した 2 つの作業時間を目的関数に適用し，目的関数が最小になったときの作業時間を最適な作業時間として出力する．入力データとして，作業者情報と作業情報を与える．それぞれ，作業者情報として作業可能時間，作業可能強度を与える．また，作業情報として，作業名，作業必要時間，作業強度を与える．目的関数を設定し，これを最小化する変数をグリットサーチにより求める．
3.1 入出力
入力は作業者の人数，作業内容，作業時間，作業者の作業可能時間とする．作業ごとに作業時間を出力する．
3.2 目的関数
最適な作業時間 w を求めるため，目的関数 f (w) を以下のように定める.

f (w) = a(w) + b(w) + c(w)るとき，a(w) = 3 − w1 ,b(w) = w1 − 3,c(w) = 2(3 − w1 ),f (w) = (3 − w1 ) + (w1 − 3) + 2(3 − w) = 2(−3 + w1 ) となる.
図 3より f (w) = 2(−3 + w1 ) となるとき，f (w) の値が最小となる w を判定するためにグリッドサーチで求める. こちらについては次節で述べる．
3.3 グリッドサーチ
本研究では設定した目的関数の最小値を見つけるためにグリッドサーチ法を用いた．グリッドサーチとは，取りうる範囲のパラメータを全て探索し，その中から最適なパラメータを算出する手法である．あるパラメータで値を分割し格子点を引き，その格子点の値を評価する．各作業の作業時間パラメータに対して，格子点を 0.5 時間刻みで引き，その格子点の目的関数の値を評価することで f (w) が最小となる値を導出し，出力として得た．
3.4 計算量
本手法では，グリットサーチ法で設定した格子点ごとに目的関数を算出する．そのため，作業時間とグリットサーチで設定した格子点に比例して計算量が大きくなる．そのため，グリッドサーチで設定した格子点の数を k としたとき本手法の計算量は O(k n ) となる．実際に計算した場合を考えてみると，例えばレタスの作業を例に挙げると 25 程度の作業がある．合計８時間の作業をするとして 0.5 時間刻みでグリッドを引いた際，格子点の数 k は (8/0.5) ∗ (8/0.5) = 256 となる．このすべての作業について計算した際，O(25625 ) となる．このとき，さらに圃場を複数とすると計算量は O((256· 圃場数 )25 ) となる．さらに複数人で作業を進めていた場合，より大きな計算量となるため作業計画を立てる際に膨大な処理時間がかかることになってしまうことが予想される．次の実験で計算時間の算出と，農作業の最適な作業時間を求める．

(1)

なお a(w), b(w), c(w) は以下のようにおく．

{ ∑∑( n|(r − w)| > 0)∑i=0(2)0( ni=0 | (r − w)| ≤ 0){∑0
( n|(r − w)| ≤ 0)∑n∑i=0b(w) =(3)n|(w−r)|·S(i=0i=0 |(r − w)| > 0)
{ ∑∑n( n|(r − w)| > 0)i=0 |(r–w)| · W∑i=0c(w) =(4)0( ni=0 |(r − w)| ≤ 0)a(w) =ni=0 |(r–w)| · P

P は作物ごとの一定時間当たりに生じるロス，W は作業者ごとの一定時間当たりに生じるロスを示す. また，ここで示すロスとは，作業をしなかった場合に生じる経済的損失を想定している．なお，式 ( 2 ) は作業必要時間に対して作業時間が短い場合に生じる作物にかかるロスを算出するものである．作業必要時間と作業時間の差に作物毎に定義したロスを重みとして付ける．式 ( 3 ) は作業者が耐えうる作業強度が実際の作業強度を下回った場合にかかる荷重労働の度合いを算出したものである．ここで示す作業強度とは作業毎に生じる身体的な負担を示す．算出した作業時間に対して作業の度合いを示したものである．式 ( 4 ) は作業できたにも関わらずしなかったために生じた人件費の損失を人員毎に表す．作業必要時間に対して作業者ごとに生じる人件費のロスを算出する．以上，式 ( 2 )(3) ( 4 ) の 3 式の和を目的関数とし，この値が最小になる場合の w を最適解として算出する．
例えば，n = 1, h = 1, r = 3, s1 = 1P = 1, W = 2 であ4

評価実験

本節では提案手法の計算手順とその計算時間をまとめる．今回は最適値を出力するための実験と作業数ごとの計算時間を出力する実験を行った．
4.1 実験内容
実験内容について本節ではまとめる.

• 実験環境作業者情報と作業内容情報の二つのデータセットを表 2 のように与えた．
• アルゴリズムpython で目的関数を実装した．また a(w),b(w),c(w) で得られた値に対して，取りうる値の範囲を調整するために，スケーリングを行った．グリッドサーチ法で各パラメータ2から得られた値に対して，a(w) であれば a(w) の最小値をa(w)min ,a(w) の最大値を a(w)max としたとき，â(w) =a(w) − a(w)mina(w)max − a(w)min(5)の式から各格子点の â(w), b̂(w), ĉ(w) を求めその和をf (w) とした．以上の操作から関数から得られた値を標準化し，N (0, 1) の正規分布に従った値を使用した．
• グリッドサーチ
グリットサーチにおける格子点の 刻み幅を 0.5 時間とし，最も f (w) の値が小さくなる格子点を最小の組み合わせであるとして最適な作業毎の作業時間を求める．各格子点の座標の組み合わせの出力において 2 次元配列であるとし，行を A，列を B の 0.5 刻みの格子点ごとに f (w) の値を出力した．

図3 作業数と計算時間示す．3では作業数ごとの計算時間を算出している．このときの計算時間の推移を点線で示しており，この関数は y =0.6x4 − 5.6x3 + 18.2x2 − 24.1x + 11.54 である．これより，決定係数 R2 = 1.0 となっていることから，この関数と農作業数毎の計算時間は強い相関があるといえる．以上の結果より，作業数ごとに，計算時間を算出した結果，グリッドサーチで設定した格子点の数を k としたとき，計算量 O(k n ) に比例して作業数が増加していることが見て取れた．

4.2 実験結果
ここに今回行った実験結果とその考察について述べる．
実行結果は表 3のようになった．作業可能時間に近い時間でかつ作業強度が最大となる作業分の作業を行うことができたとき，最適な作業時間であるといえる．2で示した入力データでは作業者のデータでは作業可能時間 w = 3，作業強度 S = 3 とし，作業強度を {A�B} = {1�2} と与えている．作業者が何時間でも作業ができる場合は，すべての作業必要時間を行うことができるが，作業者が 3 時間のみしか作業が出来ず，作業強度が３までしか耐えられないため，作業時間に制約がある．これより，本手法では制約条件を考慮して最適な作業時間は A = 1，B = 2であると予想できる．表 3 では，A と B のそれぞれの作業時間毎に目的関数 f (w) の値を出力している．実行結果から A が 1時間，B が 2 時間のときの f (w) = −2.25 が最小値となっている．以上の結果からこの時が最適な時間であると示すことが出来た．
4.3 計算量
また今回の目的関数において作業数 n = 2, 3, · · · , 6 の場合において各計算時間を算出した．3.2 節で用意した目的関数で作業スケジューリングを行った場合の計算時間を図 3に5

本研究は，これまで不確定要素とされてきた気候・天候，また個人の作業能率などのデータを評価するための農作業計画の最適化における候補選定手法を示すために，目的関数を設定し計算量が膨大となることを確認したものである．これによって，今後の作業内容のみならず，農作業の候補選定条件を考えるための足がかりとして考案する．天候，人的資源などの要素を考慮する際に計算量が膨大となってしまうことを原因としてこれらを踏まえ，本研究ではこれまで不確定要素であるとされてきた気象や天候，人的資源に関するデータのうち，人的資源に関するデータを作業計画に用いることに焦点を当てる．本手法では作業可能時間や人間の作業可能強度を農作業計画の最適化における候補選定に役立てるための数理モデルを考案する．手法として，作業内容と作業選定方法，作業強度などの入力を用いて目的関数を設定，これをある制約条件に基づいて候補を選定できる意思決定システムとして考案した．この農作業計画の最適化における候補選定アルゴリズムを用いることで農作業の身体的な負荷の軽減，人件費などの人的コストの削減を期待することができる．今後の課題として以下の点を挙げる．

表2 作業者情報と作業内容情報

作業者情報
作業人数
作業可能時間
作業可能強度

h=1
w=3
S=3

入力データ 本研究では，作業者 1 人と作業内容 2 つというアルゴリズムを構築した，これを実データにて応用する際には複数の作業者とより多くの作業内容が必要になる．また，実際の農作業は 1 日のうち複数個の田畑で作業することは多いため，それらの状況を考慮した実験をする必要があるといえる．
計算量削減の削減
本手法では，人的資源を作業数の中に組み込む際に，計算量が膨大となることを確認した．計算量を減らすためには制約条件を設けることが考えられる．
検証実験の必要性 本研究では実現の可能性を見つけるためのものであり，検証実験は行っていない．この研究を実現するためには，本研究がアルゴリズムとして適切であることを確かめるために実際の農作業にて適用する必要がある．

作業内容
作業数
作業名
作業強度

表3A\B00.5
1.0
1.52.02.5

00.35
-0.43
-1.21-0.43
0.35
1.13

n = (1)
f name = A B()
s= 1 2

実行結果 (小数点第 2 位で切り捨て)

0.5
0.09
-0.69
-1.47
-0.69
0.09
0.87

1.0
-0.17
-0.95
-1.73
-0.95
-0.17
4.56

1.5
-0.43
-1.21
-1.99
-1.21
1.91
3.44

2-0.69
-1.47
-2.25
-0.72
0.80
2.33

おわりに

2.5
-0.43
-1.21
-1.14
0.39
1.92
3.44

3

謝辞
本研究の一部は，NAIST ビッグデータプロジェクトの助成を受けたものである. ここに謝意を示す.

参考文献[1] 2015 年農林業センサス報告書, http://www.maff.go.
jp/j/tokei/census/afc/[2] K.R. Fowler, E.W. Jenkins, M. Parno, J.C. Chrispell,A.I. Colón, R.T. Hanson. Development and Use ofMathematical Models and Software Frameworks for Integrated Analysis of Agricultural Systems and Associated Water Use Impacts. AIMS Agriculture and Food,
2016, 1(2): 208-226.
[3] 野口伸, 石井一暢, 寺尾日出男,「ニューラルネットワークによる農用車両の最適制御（第 2 報）遺伝的アルゴリズムを用いた作業経路計画」，農作業学会誌，1994,Vol56:83-92[4] 大 土 井 克 明, 笈 田 昭,「農 作 業 計 画 の 最 適 化 に 関 す る 研
究 (第 2 報) 圃 場 割 り 当 て の 最 適 化」, 農 業 機 械 学 会
誌,Vol63,No.2:100-108[5] M.Jurou , Modelling and optimization for agricultural
production systems, Systems, control and information,
2010,54(4):138-143[6] K．Kenzo ，H．Keiichi，K．Takashi，S．Tatsunori,”Work
Scheduling Method by Applying Knowlege Engineering Supported by Mathematical Programming Technique”,1989. 30(8):976 - 989

4