Programs, information processing devices, methods, and systems
The program uses a Kalman filter to correct productivity coefficients based on actual measurements, improving the accuracy of estimating the completion time for pesticide spraying tasks.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- OPTIM
- Filing Date
- 2024-12-27
- Publication Date
- 2026-07-09
Smart Images

Figure 2026115324000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a program, an information processing apparatus, a method, and a system.
Background Art
[0002] The application of small helicopters (multi-copters), generally called drones, is progressing. For example, drones are used for spraying chemicals in farmland (fields) and inspecting facilities such as bridges, buildings, and tunnels.
[0003] For example, Patent Document 1 discloses a technique for assisting a user in grasping the progress of work based on the work efficiency of work performed by a drone in a field. The technique disclosed in Patent Document 1 calculates the work efficiency representing the amount of work performed by the drone per unit time based on information representing the work performed by the drone in the field. Further, the technique disclosed in Patent Document 1 estimates the time when the work will be completed based on the calculated work efficiency and the total amount of work to be performed by the work device, and outputs a signal representing the estimated time.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] The technique disclosed in Patent Document 1 only estimates the completion time of work and does not update the estimated completion time using work efficiency corrected based on measured values. Therefore, with the technique disclosed in Patent Document 1, the completion time of work cannot be grasped in more detail.
[0006] An object of the present disclosure is to grasp the end time of chemical spraying in more detail. [Means for solving the problem]
[0007] To solve the aforementioned problems, a program according to one aspect of the present disclosure is a program to be executed by a computer having a processor and memory. The program causes the processor to perform the following steps: predict the end time of pesticide spraying when an operator operates an aircraft to spray pesticides on multiple fields, based on productivity set in advance for the operator; acquire completion information for each of the multiple fields, indicating that pesticide spraying on that field has been completed; use a Kalman filter on a preset first productivity coefficient and an actual second productivity coefficient obtained from the completion information to correct the first productivity coefficient based on the second productivity coefficient; and re-predict the end time based on the corrected first productivity coefficient. [Effects of the Invention]
[0008] According to this disclosure, the completion time of pesticide application can be determined in more detail. [Brief explanation of the drawing]
[0009] [Figure 1] This is a block diagram showing an example of the overall configuration of System 1. [Figure 2] This block diagram shows an example configuration of the first terminal device 10 shown in Figure 1. [Figure 3] This block diagram shows an example configuration of server 20 as shown in Figure 1. [Figure 4] This block diagram shows an example configuration of the second terminal device 30 shown in Figure 1. [Figure 5] This figure shows the data structure of the progress table 2021, as shown in Figure 3. [Figure 6] This figure shows the data structure of the operator table 2022, as shown in Figure 3. [Figure 7] This flowchart shows an example of how server 20 operates when calculating the predicted completion time for corrections. [Figure 8]This is a schematic diagram showing example screens of displays 141 and 341. [Figure 9] A block diagram showing the basic hardware configuration of Computer 90. [Modes for carrying out the invention]
[0010] The embodiments of this disclosure will be described below with reference to the drawings. In all the drawings illustrating the embodiments, common components are denoted by the same reference numerals, and repeated explanations are omitted. The following embodiments are not intended to unduly limit the content of this disclosure as described in the claims. Not all components shown in the embodiments are necessarily essential components of this disclosure. Also, each drawing is a schematic diagram and is not necessarily a strict illustration.
[0011] [1. Overview] The server according to this embodiment predicts the completion time when an operator (pilot) operates a drone to spray pesticides on multiple fields, based on a productivity setting pre-configured for the operator. Productivity indicates the work efficiency of a series of tasks related to pesticide spraying using a drone and is an operator-specific indicator. For each of the multiple fields, the server according to this embodiment acquires completion information indicating that pesticide spraying has been completed for that field. The server according to this embodiment uses a Kalman filter on a pre-configured first productivity coefficient and the actual second productivity coefficient obtained from the completion information to correct the first productivity coefficient based on the second productivity coefficient. Based on the corrected first productivity coefficient, the server according to this embodiment re-predicts the completion time of pesticide spraying.
[0012] The aforementioned processes performed by the server according to this embodiment are intended for the application of pesticides by aerial vehicles such as drones, but there is potential for their application to other applications. For example, they may be applicable to seeding, fertilization, etc., instead of pesticide spraying. Also, for example, they may be applicable to ground-based mobile vehicles such as seeders and fertilizer spreaders, instead of aerial vehicles.
[0013] [2. Overall System Configuration] Figure 1 is a block diagram showing an example of the overall configuration of System 1. System 1 is a system for providing a service (hereinafter referred to as the pesticide spraying service) that involves spraying pesticides by drone on fields requested by a client. System 1 shown in Figure 1 includes, for example, a first terminal device 10, a server 20, a second terminal device 30, and a drone (not shown). The first terminal device 10, the server 20, the second terminal device 30, and the drone communicate with each other via, for example, a network 80.
[0014] In Figure 1, an example is shown in which System 1 includes one first terminal device 10 and one second terminal device 30. However, for example, System 1 may include two or more first terminal devices 10 and second terminal devices 30. Also, in Figure 1, an example is shown in which System 1 includes one server 20. However, for example, a collection of multiple devices may be considered as one server 20. The method of distributing the multiple functions required to realize Server 20 to one or more hardware can be appropriately determined according to the processing capacity of each hardware and / or the specifications required for Server 20. Furthermore, in Figure 1, it is assumed that System 1 includes drones equal to the number of operators.
[0015] The first terminal device 10 is, for example, an information processing device operated by the administrator of System 1 (the provider of the pesticide spraying service). The first terminal device 10 is implemented by, for example, a mobile terminal such as a smartphone or tablet. In this embodiment, the first terminal device 10 is assumed to be a tablet. The first terminal device 10 may also be implemented by, for example, a stationary PC (Personal Computer), a laptop PC, etc.
[0016] The first terminal device 10 includes a communication IF (Interface) 12, an input device 13, an output device 14, a memory 15, a storage 16, and a processor 19. The input device 13 is a device for receiving input operations from a management operator (for example, a pointing device such as a touch panel, a touch pad, a mouse, etc., a keyboard, etc.). The output device 14 is a device for presenting information to the management operator (a display, a speaker, etc.). In this embodiment, it is assumed that the first terminal device 10 includes a touch panel in which the input device 13 and the output device 14 are integrated.
[0017] The server 20 is, for example, an information processing device for managing / operating a chemical spraying service, and is an information processing device realized by a computer connected to the network 80. As shown in FIG. 1, the server 20 includes a communication IF 22, an input / output IF 23, a memory 25, a storage 26, and a processor 29. The input / output IF 23 functions as an interface for an input device for receiving input operations from a management operator and an output device for outputting information to the management operator.
[0018] In this embodiment, the information processing devices used by the management operator are separated into the first terminal device 10 and the server 20, but it is not limited to this case. For example, the server 20 may have the functions of the first terminal device 10. In this case, the first terminal device 10 becomes unnecessary in the system 1, and the system 1 includes the server 20, the drone, and the second terminal device 30.
[0019] The drone is a small unmanned aerial vehicle (UAV: Unmanned Aerial Vehicle) that sprays chemicals on at least one or more of a plurality of farms to be sprayed with chemicals, and is an example of a flying object according to one aspect of the present disclosure. Note that the flying object according to one aspect of the present disclosure is not limited to a drone, and may be, for example, a helicopter, a radio control aircraft, etc.
[0020] The second terminal device 30 is, for example, an information processing device operated by an operator. The hardware configuration of the second terminal device 30 is the same as that of the first terminal device 10 shown in Figure 1, so its explanation is omitted.
[0021] Each information processing device, such as the first terminal device 10, the server 20, and the second terminal device 30, is composed of a computer 90 (see Figure 9) equipped with an arithmetic unit and a memory device. The basic hardware configuration of the computer 90 and the basic functional configuration of the computer 90 realized by this basic hardware configuration will be described later. Note that explanations of the first terminal device 10 and the server 20 that overlap with the basic hardware configuration of the computer 90 and the basic functional configuration of the computer will be omitted.
[0022] <2.1 Configuration of the First Terminal Device> Figure 2 is a block diagram showing an example configuration of the first terminal device 10 shown in Figure 1. As shown in Figure 2, the first terminal device 10 includes a communication unit 120, an input device 13, an output device 14, an audio processing unit 170, a microphone 171, a speaker 172, a camera 160, a position information sensor 150, an acceleration sensor 155, a storage unit 180, and a control unit 190. Each block included in the first terminal device 10 is electrically connected, for example, by a bus.
[0023] The communication unit 120 performs modulation and demodulation processing for the first terminal device 10 to communicate with an external device (for example, a server 20). The communication unit 120 performs transmission processing on the signal generated by the control unit 190 and transmits it to the external device. The communication unit 120 performs reception processing on the signal received from the external device and outputs it to the control unit 190.
[0024] The input device 13 is a device for the administrator to input instructions or information. The input device 13 is implemented, for example, by a touch-sensitive device 131 on which instructions are input by touching the operating surface. If the first terminal device 10 is a PC or the like, the input device 13 may be implemented by a reader, keyboard, mouse, etc. The input device 13 converts the instructions input by the administrator into electrical signals and outputs them to the control unit 190. The input device 13 may also include, for example, a receiving port that accepts electrical signals input from an external input device.
[0025] The output device 14 is a device for presenting information to the administrator. The output device 14 is implemented, for example, by a display 141. The display 141 displays various information according to the control of the control unit 190. The display 141 is implemented, for example, by an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display.
[0026] The audio processing unit 170 performs, for example, digital-to-analog conversion processing of the audio signal. The audio processing unit 170 converts the signal provided from the microphone 171 into a digital signal and provides the converted signal to the control unit 190. The audio processing unit 170 also provides the audio signal to the speaker 172. The audio processing unit 170 is implemented, for example, by an audio processing processor. The microphone 171 receives an audio input and provides the audio signal corresponding to the audio input to the audio processing unit 170. The speaker 172 converts the audio signal provided from the audio processing unit 170 into audio and outputs the audio to the outside of the first terminal device 10.
[0027] Camera 160 is an imaging device that captures images using visible light. In other words, camera 160 is a device that receives visible light using a photodetector and outputs image data as a shooting signal. Camera 160 captures subjects in a certain direction and within a certain shooting range relative to the first terminal device 10 and outputs image data as a result of the capture. If camera 160 has a function that allows adjustment of the shooting range, or more precisely, the angle of view, camera 160 also outputs information regarding this angle of view. Such a function is called a zoom function.
[0028] The position information sensor 150 is a sensor that detects the position of the first terminal device 10, and is generally a GNSS device, such as a GPS module. A GPS module is a receiving device used in a satellite positioning system. In a satellite positioning system, signals are received from at least three or four satellites, and based on the received signals, the current position of the first terminal device 10, which is equipped with a GPS module, is detected in coordinate values. The position information sensor 150 may also detect the current position of the first terminal device 10 from the position of a wireless base station to which the first terminal device 10 is connected via the communication unit 120.
[0029] The acceleration sensor 155 is a sensor that detects the acceleration applied to the first terminal device 10. Preferably, the acceleration sensor 155 has the function of detecting the tilt around each axis (X axis, Y axis, Z axis) of a three-dimensional coordinate system with the position of the first terminal device 10 as the origin. An acceleration sensor 155 having such a function can detect the orientation of the first terminal device 10, that is, its direction with respect to the X axis, Y axis, and Z axis, by detecting the gravitational acceleration of the Earth's gravity.
[0030] The storage unit 180 is implemented by the memory 15 and storage 16 shown in Figure 1, and stores data and programs used by the first terminal device 10. The storage unit 180 stores, for example, administrator information 181 and application programs 182.
[0031] Administrator information 181 includes, for example, various information about the administrator. This information includes, for example, the administrator's name, age, address, date of birth, contact information, etc.
[0032] The application program 182 may, for example, be pre-stored in the memory unit 180, or it may be downloaded from a web server or the like via the communication IF 12. The application program 182 includes, for example, an interpreter-type programming language that runs on a web browser application (not shown) stored in the memory unit 180.
[0033] The control unit 190 is implemented, for example, by the processor 19 reading the application program 182 stored in the memory unit 180 and executing the instructions contained in the application program 182. The control unit 190 controls the operation of the first terminal device 10. By operating according to the application program 182, the control unit 190 performs the functions of an operation reception unit 191, a transmission / reception unit 192, and a presentation control unit 193.
[0034] The operation reception unit 191 processes instructions or information input from the input device 13. Specifically, the operation reception unit 191 receives instructions or information input from the touch-sensitive device 131. The transmission / reception unit 192 processes data for the first terminal device 10 to send and receive data with an external device according to a communication protocol. Specifically, the transmission / reception unit 192 transmits instructions or information input from the administrator to the server 20. The transmission / reception unit 192 receives information transmitted from the server 20. The presentation control unit 193 controls the output device 14 to present various information to the administrator.
[0035] <2.2 Server Configuration> Figure 3 is a block diagram showing an example configuration of the server 20 shown in Figure 1. As shown in Figure 3, the server 20 performs the functions of a communication unit 201, a storage unit 202, and a control unit 203.
[0036] The communication unit 201 performs processing for the server 20 to communicate with external devices (e.g., the first terminal device 10, the second terminal device 30). The storage unit 202 is implemented by memory 25 and storage 26 and stores data and programs used by the server 20. The storage unit 202 stores, for example, a progress table 2021 and an operator table 2022.
[0037] Progress Table 2021 is a table that stores progress information regarding the progress of pesticide application for pesticide application services contracted by clients (hereinafter referred to as "contracted projects"). Hereafter, each of the multiple fields targeted for pesticide application in a contracted project will be referred to as a "target field." In other words, the progress information for a contracted project includes progress information regarding the progress of pesticide application for each target field. Details of the progress information will be described later.
[0038] Progress Table 2021 stores completion information for each of the multiple target fields, indicating that drone-based pesticide spraying on that field has been completed. In other words, the progress information per target field includes completion information.
[0039] In this embodiment, the completion information includes the time when the drone-based pesticide application to the target field was actually completed (hereinafter referred to as the actual completion time). Furthermore, in this embodiment, the actual completion time for a certain target field is simultaneously the time when the pesticide application to the next target field scheduled to be applied to that field actually began (hereinafter referred to as the actual start time). In other words, in this embodiment, the completion information includes both the actual completion time and the actual start time. In addition to the actual completion time, the completion information may also include information regarding changes in the status of pesticide application to the target field.
[0040] Progress Table 2021 stores progress information for each target field as the operator's performance each time the operator finishes spraying the target field. In other words, Progress Table 2021 stores progress information for each target field for each operator responsible for a single contract.
[0041] Operator Table 2022 is a table that stores information about the operators (hereinafter referred to as operator information) who were in charge of the pesticide spraying work for the contracted project. Operator information is entered, for example, from an input device provided by Server 20, and the input device that received the input stores it in Operator Table 2022. Details of operator information will be described later.
[0042] The control unit 203 is realized when the processor 29 reads the application program 2023 stored in the memory unit 202 and executes the instructions contained in the application program 2023. The control unit 203 controls the operation of the server 20. By operating according to the application program 2023, the control unit 203 performs the functions of a receive control module 2031, a transmit control module 2032, a presentation control module 2033, a correction processing module 2034, and a prediction processing module 2035.
[0043] The receive control module 2031 controls the process by which the server 20 receives signals from external devices according to a communication protocol. For example, the receive control module 2031 receives termination information transmitted from the second terminal device 30 and stores it in the progress table 2021.
[0044] The transmission control module 2032 controls the process by which the server 20 transmits signals to external devices according to a communication protocol. The presentation control module 2033 controls the process of presenting various information to administrators, operators, etc.
[0045] The correction processing module 2034 corrects the first productivity coefficient based on the second productivity coefficient by applying a Kalman filter to the first and second productivity coefficients.
[0046] The productivity coefficient is the value obtained by dividing the actual productivity of the operator when they operate the drone (hereinafter referred to as "actual productivity") by the operator's productivity planned in advance by the management and operation team (hereinafter referred to as "planned productivity"). Planned productivity may be stored in, for example, operator table 2022. Here, the operator's planned productivity and actual productivity are concepts calculated by taking into account the drone's movement speed and spraying speed, as well as the operator's unit flight preparation time and unit base preparation time (and, in some cases, the difficulty level of the target field).
[0047] The first productivity coefficient is a preset productivity coefficient that assumes the operator sprays the pesticide with the productivity as initially planned. In other words, the first productivity coefficient is a value that assumes the planned productivity and the actual productivity are the same. In this embodiment, the first productivity coefficient set to "1" is pre-stored in the storage unit 202, but the first productivity coefficient may be set to a value other than "1".
[0048] The second productivity coefficient is the actual productivity coefficient obtained from the completion information. Specifically, for example, the correction processing module 2034 calculates the time required for pesticide application to the target field (hereinafter referred to as the actual required time) from the actual completion time included in the completion information. The correction processing module 2034 calculates the second productivity coefficient by dividing the area of the target field where pesticide application was actually performed (hereinafter referred to as the applied area) by the calculated actual required time. In this embodiment, the applied area is assumed to be the same as the area of the target field for which pesticide application was requested by the client of the contracted project (hereinafter referred to as the declared area).
[0049] The declared area may be stored in, for example, at least one of the request management table and the work management table (both not shown). The request management table is a table that stores various information related to the ordered project. The work management table is a table that stores, for example, the schedule and man-hours for the work related to the spraying of pesticides for the ordered project. The schedule stored in the work management table is, for example, the work schedule set by the operator for pesticide spraying. The man-hours stored in the work management table are, for example, the number of working days, reserve days, and spraying area set by the operator for pesticide spraying. The request management table and the work management table may be stored in, for example, the storage unit 202.
[0050] The Kalman filter is an algorithm for predicting a given state (productivity coefficient) based on predicted and observed values of that state. The Kalman filter uses Kalman gains to predict a given state. Kalman gains are coefficients that determine the importance of both the predicted and observed values of a given state, weighting the predicted and observed values accordingly.
[0051] In this embodiment, the correction processing module 2034 calculates the first predicted productivity coefficient and the second predicted dispersion coefficient by correcting the first productivity coefficient based on the second productivity coefficient using a Kalman filter. In other words, in this embodiment, the correction result of the first productivity coefficient based on the second productivity coefficient using a Kalman filter becomes the first predicted productivity coefficient and the second predicted dispersion coefficient.
[0052] The first predicted productivity coefficient is a predicted value of the productivity coefficient used to predict the time required for completed pesticide application. The correction processing module 2034 calculates the first predicted productivity coefficient using, for example, equations (1) and (2) below.
[0053] (Formula 1) First predicted productivity coefficient = First productivity coefficient + Kalman gain × (Second productivity coefficient - First productivity coefficient) = 1 + Kalman gain × Second productivity coefficient - Kalman gain × 1 ... (1)
[0054] (Formula 2) Kalman gain = Variance of coefficient / (Variance of coefficient + Variance of prediction) ... (2)
[0055] In equation (2), the variance of the coefficients is the variance of the prediction error between the first productivity coefficient and the second productivity coefficient, and can be calculated once the first and second productivity coefficients are determined. The prediction variance is the so-called noise variance. In this embodiment, the administrator inputs a numerical value related to the prediction variance into the input device of the server 20 based on their own experience, etc.
[0056] The second predicted productivity coefficient is a predicted value of the productivity coefficient used to predict the time required for incomplete pesticide application. The correction processing module 2034 calculates the second predicted productivity coefficient using, for example, equation (2) and equation (3) below.
[0057] (Formula 3) Second predicted productivity coefficient = First productivity coefficient + Kalman gain × (Average value of second productivity coefficient - First productivity coefficient) = 1 + Kalman gain × Average value of second productivity coefficient - Kalman gain × 1 ... (3)
[0058] In equation (3), the average value of the second productivity coefficient may be, for example, the average value of the second productivity coefficients corresponding to all target fields for which the actual required time has been calculated (per target field). Alternatively, for example, the average value of the second productivity coefficient may be the average value of the second productivity coefficients of a group of fields for which the actual required time has been calculated (per group of fields). In this embodiment, the correction processing module 2034 calculates the average value of the second productivity coefficient on a group of fields basis. Details of the group of fields will be described later.
[0059] The prediction processing module 2035 predicts the completion time of pesticide application when an operator operates a drone to spray pesticides on multiple target fields covered by a contracted project, based on the productivity settings pre-configured for the operator.
[0060] Productivity is an indicator of the efficiency of a series of tasks related to pesticide spraying using a drone, and is an operator-specific metric. Operator productivity can be evaluated using various parameters. In this embodiment, the parameters used to evaluate operator productivity are the drone's movement speed and spraying speed, the unit flight preparation time, and the unit base preparation time.
[0061] The drone's movement speed and spraying speed are, for example, the measured values of the drone's movement speed and spraying speed operated by the operator in past projects that were commissioned prior to the current project (hereinafter referred to as "past projects"). Unit flight preparation time is, for example, the preparation time required by the operator for the pesticide spraying work in past projects during one flight. A flight represents one flight from takeoff to landing of the drone. Unit base preparation time is, for example, the preparation time required by the operator for the pesticide spraying work in past projects during one base. A base represents an area that the operator cannot move within during a single drone flight, but can move by flying the drone separately from a single flight. For example, the operator may perform multiple flights within a single base.
[0062] Other examples of parameters for evaluating operator productivity include, for example, base diameter, flight cycle area, flight unit preparation / cleanup time, base unit preparation / cleanup time, and travel time by vehicle. Alternatively, for example, the sum of unit flight preparation time and unit base flight preparation time may be treated as a single parameter.
[0063] The base diameter is the minimum distance between fields (included in the first field) that the operator can treat as a base unit. The flight cycle area is an indicator of how many hectares (ha) of the assigned field the operator can spray pesticide on in a single flight without landing the drone.
[0064] In this embodiment, the prediction processing module 2035 calculates a predicted time required for pesticide application (hereinafter referred to as "predicted time required") based on, for example, the total area to be sprayed by the operator, the distance between target fields, the distance of the route the operator travels by drone, the total amount of pesticide to be sprayed by the operator, the planned number of flights and base sprays by the operator, and parameters for evaluating the operator's productivity (drone movement speed and spraying speed, unit flight preparation time, unit base preparation time).
[0065] The prediction processing module 2035 reads, for example, the scheduled start time for pesticide spraying in a contracted project from the storage unit 202. Here, the scheduled start time is transmitted in advance from, for example, the first terminal device 10 or the second terminal device 30 and stored in the storage unit 202. The prediction processing module 2035 calculates the predicted end time of pesticide spraying (hereinafter referred to as the predicted end time) by, for example, adding the predicted required time to the read scheduled start time.
[0066] The prediction processing module 2035 may calculate the predicted required time on an individual target field basis, a field group basis, or a project basis. A field group is a group of target fields formed when multiple target fields that are the subject of a project are grouped together. A project basis is defined as a single unit consisting of multiple target fields that are the subject of pesticide spraying for one day of the operator's workday. In this embodiment, the prediction processing module 2035 calculates the predicted required time on a field group basis, and then adds these predicted required times to the scheduled start time to calculate the predicted end time for a project basis.
[0067] Regarding the formation of field groups, there are no particular limitations on the method of grouping the target fields. In this embodiment, the prediction processing module 2035 groups multiple target fields that are the subject of a contracted project in two stages within the range of movement of a drone, without the use of a mobile vehicle. The mobile vehicle can be anything capable of transporting a drone, such as a transport vehicle.
[0068] Specifically, the prediction processing module 2035 first groups the multiple target fields that are the subject of the order into flight unit fields. A flight unit refers to a group of target fields where the distance between them is such that the operator can cover it in a single drone flight. Next, the prediction processing module 2035 groups two or more flight unit fields into base unit fields. A base unit refers to a group of target fields where the distance between them is such that the operator cannot cover it in a single drone flight, but it is such that the drone can cover it by flying it separately from a single flight.
[0069] Furthermore, the grouping units are not limited to flight units or base units. Moreover, in both cases where grouping is done by flight units and by base units, the grouping may result in the formation of a field group consisting of only one target field.
[0070] The prediction processing module 2035 re-predicts the completion time of pesticide application when an operator uses a drone to spray pesticides on multiple target fields covered by a contracted project, based on the corrected first productivity coefficient.
[0071] In this embodiment, for example, for a group of fields where pesticide spraying has been completed, the prediction processing module 2035 calculates a revised prediction of the required time for pesticide spraying (hereinafter referred to as the first revised prediction required time) by dividing the total sprayed area of the multiple target fields constituting the group of fields by the value obtained by multiplying the planned productivity of the drone that performed the pesticide spraying by the first prediction productivity coefficient.
[0072] For example, for a group of fields where pesticide spraying has not yet been completed, the prediction processing module 2035 calculates a revised prediction of the time required for pesticide spraying (hereinafter referred to as the second revised prediction time) by dividing the total sprayed area of the multiple target fields constituting the group of fields by the value obtained by multiplying the planned productivity of the drone scheduled to spray the pesticide by the second prediction productivity coefficient.
[0073] The prediction processing module 2035 performs the following processing for a group of fields where pesticide application has been completed for some of the target fields (but not for some of the target fields): Specifically, it calculates a revised prediction of the time required for pesticide application (hereinafter referred to as the third revised prediction time) by dividing the total applied area of the target fields where pesticide application has been completed by the value obtained by multiplying the planned productivity of the drone scheduled to perform pesticide application by the first prediction productivity coefficient. It also calculates a revised prediction of the time required for pesticide application (hereinafter referred to as the fourth revised prediction time) by dividing the total applied area of the target fields where pesticide application has not been completed by the value obtained by multiplying the planned productivity of the drone scheduled to perform pesticide application by the second prediction productivity coefficient.
[0074] The prediction processing module 2035 reads, for example, the start time of pesticide application in an ordered project from the storage unit 202. Here, the start time is transmitted in advance from, for example, the first terminal device 10 or the second terminal device 30 and stored in the storage unit 202. However, the prediction processing module 2035 may also obtain, for example, the start time of pesticide application in an ordered project from the completion information. In other words, the completion information in this case includes the aforementioned start time as information regarding the change in the status of pesticide application to the target field.
[0075] The prediction processing module 2035 calculates a revised predicted end time for pesticide application per order (one day's work for the operator) by, for example, adding the first revised predicted required time to the fourth revised predicted required time to the read start time (hereinafter referred to as the revised predicted end time). The prediction processing module 2035 may calculate the first revised required time to the fourth revised required time on an individual target field basis, a field group basis, or an order per order.
[0076] <2.3 Configuration of the second terminal device> Figure 4 is a block diagram showing an example configuration of the second terminal device 30 shown in Figure 1. As shown in Figure 5, the second terminal device 30 includes a communication unit 320, an input device 33, an output device 34, an audio processing unit 370, a microphone 371, a speaker 372, a camera 360, a position information sensor 350, an acceleration sensor 355, a storage unit 380, and a control unit 390. Each block included in the second terminal device 30 is electrically connected, for example, by a bus.
[0077] The communication unit 320 performs modulation and demodulation processing for the second terminal device 30 to communicate with an external device. The communication unit 320 performs transmission processing on the signal generated by the control unit 390 and transmits it to the external device. The communication unit 320 performs reception processing on the signal received from the external device and outputs it to the control unit 390.
[0078] The input device 33 is a device for the operator to input instructions or information. The input device 33 is implemented, for example, by a touch-sensitive device 331 on which instructions are input by touching the operating surface. If the second terminal device 30 is a PC or the like, the input device 33 may be implemented by a reader, keyboard, mouse, etc. The input device 33 converts the instructions input by the operator into electrical signals and outputs them to the control unit 390. The input device 33 may also include, for example, a receiving port that accepts electrical signals input from an external input device.
[0079] The output device 34 is a device for presenting information to the operator. The output device 34 is implemented, for example, by a display 341. The display 341 displays various information according to the control of the control unit 490. The display 341 is implemented, for example, by an LCD or an organic EL display.
[0080] The audio processing unit 370 performs, for example, digital-to-analog conversion processing of the audio signal. The audio processing unit 370 converts the signal provided from the microphone 371 into a digital signal and provides the converted signal to the control unit 390. The audio processing unit 370 also provides the audio signal to the speaker 372. The audio processing unit 370 is implemented, for example, by an audio processing processor. The microphone 371 receives an audio input and provides the audio signal corresponding to the audio input to the audio processing unit 370. The speaker 372 converts the audio signal provided from the audio processing unit 370 into audio and outputs the audio to the outside of the first terminal device 10.
[0081] Camera 360 is an imaging device that captures images using visible light. In other words, Camera 360 is a device that receives visible light using a photodetector and outputs image data as a shooting signal. Camera 360 captures subjects in a certain direction and within a certain shooting range for the second terminal device 30 and outputs image data as a result of the capture.
[0082] The position information sensor 350 is a sensor that detects the position of the second terminal device 30, and is generally a GNSS device, such as a GPS module. A GPS module is a receiving device used in a satellite positioning system. In a satellite positioning system, signals are received from at least three or four satellites, and based on the received signals, the current position of the second terminal device 30, which is equipped with a GPS module, is detected in coordinate values. The position information sensor 350 may also detect the current position of the second terminal device 30 from the position of the radio base station to which the second terminal device 30 is connected via the communication unit 320.
[0083] The acceleration sensor 355 is a sensor that detects the acceleration applied to the second terminal device 30. Preferably, the acceleration sensor 355 has the function of detecting the tilt around each axis (X axis, Y axis, Z axis) of a three-dimensional coordinate system with the position of the second terminal device 30 as the origin.
[0084] The memory unit 380 is implemented by memory and storage (not shown) and stores data and programs used by the second terminal device 30. The memory unit 380 stores, for example, operator information 381 and application programs 382.
[0085] Operator information 381 includes, for example, various information about the operator. This information includes, for example, the operator's name, age, address, date of birth, contact information, etc.
[0086] The application program 382 may, for example, be pre-stored in the memory unit 380, or it may be downloaded from a web server or the like via a communication interface (not shown). The application program 382 includes, for example, an interpreted programming language that runs on a web browser application (not shown) stored in the memory unit 380.
[0087] The control unit 390 is implemented, for example, by a processor (not shown) reading an application program 382 stored in the memory unit 380 and executing instructions contained in the application program 382. The control unit 390 controls the operation of the second terminal device 30. By operating according to the application program 382, the control unit 390 performs the functions of an operation reception unit 391, a transmission / reception unit 392, and a presentation control unit 393.
[0088] The operation reception unit 391 processes instructions or information input from the input device 33. Specifically, the operation reception unit 391 receives instructions or information input from the touch-sensitive device 331. The transmission / reception unit 392 processes data for the second terminal device 30 to send and receive data with an external device according to a communication protocol. Specifically, the transmission / reception unit 392 transmits instructions or information input from the operator to the server 20. The transmission / reception unit 392 receives information transmitted from the server 20. The presentation control unit 393 controls the output device 44 to present various information to the operator.
[0089] [3 Data Structure] Figures 5 and 6 show the data structure of the tables stored by server 20. Note that Figures 5 and 6 are merely examples and do not exclude data not shown. Furthermore, even data listed in the same table may be stored in separate memory areas within the storage unit 202.
[0090] Figure 5 shows the data structure of the progress table 2021. The progress table 2021 shown in Figure 5 is a table that has columns for field group name, field name, predicted completion time, sprayed update time, corrected predicted completion time, and operator, with the case ID as the key. In other words, progress information includes some or all of the information stored in these items. The progress information may also include, for example, the first corrected required time to the fourth corrected required time. In other words, the progress table 2021 may store, for example, the first corrected required time to the fourth corrected required time.
[0091] The "Project ID" field stores identification information (identifier) to uniquely identify the project. The "Field Group Name" field stores the name of each field group when multiple target fields covered by the project are grouped together. The "Field Name" field stores the name of the target field.
[0092] The "Predicted Completion Time" field stores the predicted completion time for pesticide application, calculated based on the productivity of each operator responsible for a contracted project. In the example in Figure 5, the predicted completion time for each contracted project (one day's work for an operator) is stored in the "Predicted Completion Time" field. The "Predicted Completion Time" field may also store the predicted completion time for a single field, or for a group of fields.
[0093] The item "Spraying Update Time" is used to record the actual completion time for each target field.
[0094] The item "Revised Predicted End Time" stores the revised predicted end time of pesticide application, calculated based on the correction of the first productivity coefficient using the Kalman filter. In the example in Figure 5, the revised predicted end time for each contract (one day's work for the operator) is stored in the item "Revised Predicted End Time". The item "Revised Predicted End Time" may also store the revised predicted end time for each target field, or for each group of fields.
[0095] The "Operator" field stores the name of the operator who handled the order. In addition to the name, the "Operator" field may also store other information about the operator, such as their registered address, productivity level, and grade (described below).
[0096] Among the various pieces of information included in the progress information, for example, the name of the field group, the name of the target field, and the name of the operator are input from an input device (not shown) provided by the server 20, and the receiving control module 2031 receives this input and stores it in the items "Field Group Name", "Field Name", and "Operator", respectively. Also, for example, the predicted end time and the revised predicted end time are stored in the items "Predicted End Time" and "Revised Predicted End Time" by the prediction processing module 2035, which calculated them. Also, for example, the actual end time is stored in the item "Spreading Update Time" by the receiving control module 2031 when the receiving control module 2031 receives the end information transmitted from the second terminal device 30.
[0097] Figure 6 shows the data structure of the Operator Table 2022. The Operator Table 2022 shown in Figure 6 is a table that has columns for name, address, drone information, contract type, grade, and productivity, with Operator ID as the key. In other words, the operator information includes some or all of the information stored in these items.
[0098] The various types of information included in the operator information are, for example, input from the input device of the server 20, and when the receiving control module 2031 receives the input, it is stored in each item of the operator table 2022.
[0099] Furthermore, operator information may include information other than that stored in each item of operator table 2022. For example, operator table 2022 may have columns that store the area of scattering handled by the operator, the history of cases undertaken in the past, the organization (company) to which the operator belongs, etc. Also, the operator information stored in operator table 2022 may be updated as needed, for example, by inputting new operator information from an input device provided by server 20.
[0100] The "Operator ID" field stores identification information to uniquely identify the operator. The "Name" field stores the operator's name. The "Address" field stores the operator's registered address. The "Drone Information" field stores the type and specifications of the drone operated by the operator.
[0101] The "Contract Type" field stores the type of contract related to pesticide spraying services concluded between the operator and the pesticide spraying service provider (manager / operator).
[0102] There are no particular limitations on the types of contracts that can be stored in the "Contract Type" field. Examples of contracts that can be stored in the "Contract Type" field include contracts in which the remuneration and contract period vary depending on the operator's skills, track record, years of experience, the area of the first field they are responsible for, etc. Examples of contracts that can be stored in the "Contract Type" field include fixed-term contracts (priority allocation for fixed term, remuneration: medium), individual contracts (spot allocation, remuneration: high), helper contracts (part-time, remuneration: low), etc. It is also possible to include highly professional contracts (permanent employment contract, remuneration: high).
[0103] Fixed-term contracts include, for example, contracts that stipulate a predetermined daily rate for work performed during the contract period, and contracts that stipulate that a predetermined minimum area is allocated preferentially to the operator over other operators during the contract period, while the unit price is slightly lower than that of other operators. Individual contracts, on the other hand, include, for example, contracts that stipulate a unit price and request work on a spot basis.
[0104] Individual contracts are agreements concluded only with specific operational candidates, and the terms of the contract may be determined on a case-by-case basis according to the circumstances / needs of those specific operational candidates.
[0105] The "Grade" field stores a grade that indicates the operator's skill level. The operator's grade is determined, for example, based on the operator's productivity. When determining the operator's grade, factors such as the operator's track record and years of experience are also taken into consideration. There are no particular restrictions on how the grade is displayed; for example, it may be displayed as "A, B, C, ...", "1, 2, 3, ...", "Superior, Superior, Medium, ...", etc. In the operator table 2022 shown in Figure 6, the grades are displayed in descending order of skill level as "HighClass, Standard, Basic, ...".
[0106] The "Productivity" item stores parameters that evaluate the operator's productivity. In the example in Figure 6, the parameters stored in the "Productivity" item are movement speed, spraying speed, unit flight preparation time, and unit base preparation time. However, the "Productivity" item may also store parameters such as base diameter and flight cycle area.
[0107] The "Productivity" item, like the "Grade" item, may be used as an indicator representing the operator's skill level. For example, the "Productivity" item may store actual values such as flight cycle area stored for the operator, normalized to fields of normal difficulty. Furthermore, the parameters stored in the "Productivity" item are not limited to numerical values, but may also be represented by indicators such as "A, B, C, ...", "1, 2, 3, ...", or "Superior, Good, Medium, ...".
[0108] [4 actions] Referring to Figure 7, an example of the operation of server 20 when calculating the predicted completion time for corrections will be explained. Figure 7 is a flowchart showing an example of the operation of server 20 when calculating the predicted completion time for corrections.
[0109] As a prerequisite, it is assumed that server 20 receives the scheduled start time transmitted from the first terminal device 10 or the second terminal device 30 and stores it in the storage unit 202. It is also assumed that server 20 accepts the input of operator information from each operator in charge of the order and stores said operator information in the operator table 2022.
[0110] In step S11 shown in Figure 7, the server 20 calculates the predicted completion time for each order (one day's work for the operator) based on the productivity set in advance for the operator (prediction step).
[0111] Specifically, for example, the prediction processing module 2035 reads parameters from the operator table 2022 to evaluate the productivity of each operator in charge of a contracted project (drone movement speed and spraying speed, unit flight preparation time, unit base preparation time). Based on the read parameters and other considerations (total spraying area handled by the operator, distance between target fields, etc.), the prediction processing module 2035 calculates the predicted required time per field group.
[0112] The prediction processing module 2035 reads, for example, the scheduled start time for pesticide application in a contracted project from the storage unit 202. The prediction processing module 2035 calculates the predicted completion time for each contracted project by, for example, adding the predicted required time for each field group to the read scheduled start time. The prediction processing module 2035 stores, for example, the calculated predicted completion time in the progress table 2021.
[0113] In the example shown in Figure 7, the server 20 executes the processes in step S11 and step S12 consecutively, but this is not the only case. For example, the server 20 may execute the processes in step S11 and the processes from step S12 onward separately. This is because, basically, the process in step S11 is executed before the application of pesticides to the target field, and the processes from step S12 onward are executed after the start of the application of pesticides to the target field.
[0114] In step S12, the server 20 obtains completion information for each of the multiple target fields that are the subject of the order (acquisition step).
[0115] Specifically, the operation reception unit 391 receives completion information input from the operator each time pesticide application to a target field is completed. The transmission / reception unit 392, for example, receives a transmission request from the operator and sends the input completion information for each target field to the server 20. The transmission / reception unit 392 may, for example, store the input completion information for each target field in the storage unit 380.
[0116] The receiving control module 2031 receives, for example, completion information for each target field transmitted from the second terminal device 30. The server 20 then acquires the completion information. The receiving control module 2031 stores the received completion information for each target field in the progress table 2021.
[0117] In step S13, the server 20 uses a Kalman filter to correct the first productivity coefficient based on the second productivity coefficient (correction step).
[0118] Specifically, for example, the correction processing module 2034 reads the operator's first productivity coefficient "1" from the storage unit 202. In this embodiment, it is assumed that the first productivity coefficient of all operators in charge of the ordered project is set to "1". The first productivity coefficient may be stored in the operator table 2022, linked to each operator.
[0119] The correction processing module 2034 calculates the actual required time based, for example, on the actual completion time included in the completion information corresponding to the target field handled by the operator. The correction processing module 2034 also calculates the second productivity coefficient by, for example, reading the declared area (spread area) from the request management table or the work management table and dividing the declared area by the actual required time.
[0120] The correction processing module 2034 calculates the first predicted productivity coefficient by, for example, substituting the first and second productivity coefficients into the aforementioned equations (1) and (2) and solving them. The correction processing module 2034 calculates the second predicted productivity coefficient by, for example, substituting the first and second productivity coefficients into the aforementioned equations (2) and (3) and solving them. As a result, the server 20 corrects the first productivity coefficient using a Kalman filter.
[0121] In step S14, the server 20 calculates the revised predicted completion time for each order (one day's work for the operator) based on the corrected first productivity coefficient (re-prediction step).
[0122] Specifically, for example, the prediction processing module 2035 calculates the first revised predicted time required for a group of fields where pesticide application has been completed by dividing the total sprayed area of the multiple target fields constituting the group by the value obtained by multiplying the planned productivity of the drone that performed the pesticide application by the first predicted productivity coefficient.
[0123] For example, for a group of fields where pesticide spraying has not yet been completed, the prediction processing module 2035 calculates the second revised predicted required time by dividing the total sprayed area of the multiple target fields constituting the group by a value obtained by multiplying the planned productivity of the drone scheduled to spray the pesticide by the second predicted productivity coefficient.
[0124] The prediction processing module 2035 performs the following processing for a group of fields where pesticide application has been completed for some of the target fields (but not for some of the target fields): Specifically, it calculates the third revised predicted time by dividing the total applied area of the target fields where pesticide application has been completed by the value obtained by multiplying the planned productivity of the drone scheduled to perform pesticide application by the first predicted productivity coefficient. It also calculates the fourth revised predicted time by dividing the total applied area of the target fields where pesticide application has not been completed by the value obtained by multiplying the planned productivity of the drone scheduled to perform pesticide application by the second predicted productivity coefficient.
[0125] The prediction processing module 2035 reads, for example, the start time of pesticide spraying for a contracted project from the storage unit 202. The prediction processing module 2035 calculates the revised predicted end time for each contracted project by adding the first revised predicted required time to the fourth revised predicted required time to the read start time. The prediction processing module 2035 stores the calculated revised predicted end time in the progress table 2021.
[0126] The server 20 may, for example, present the predicted completion time for corrections stored in the progress table 2021 to the administrator. Specifically, for example, the presentation control module 2033 may present the predicted completion time for corrections stored in the progress table 2021 to the administrator. The transmission control module 2032 may, for example, read the predicted completion time for corrections from the progress table 2021. The transmission control module 2032 may, for example, transmit display information for displaying the predicted completion time for corrections read from the progress table 2021 to the first terminal device 10.
[0127] The transmitting / receiving unit 192 may, for example, receive display information from the server 20. The display control unit 193 may, for example, receive a display request and display the revised predicted completion time on the display 141. This makes it easier for the administrator to grasp and manage the progress of pesticide spraying in contracted projects. Furthermore, if the display request comes from the operator, the operator can increase their motivation for efficient and rapid pesticide spraying because others (the administrator) will be aware of the revised prediction results based on their actual completion time.
[0128] For example, the server 20 may present the operator with the predicted completion time for corrections stored in the progress table 2021. Specifically, for example, the presentation control module 2033 may present the operator with the predicted completion time for corrections stored in the progress table 2021. The transmission control module 2032 may, for example, read the predicted completion time for corrections from the progress table 2021. The transmission control module 2032 may, for example, send display information to the second terminal device 30 to display the predicted completion time for corrections read from the progress table 2021.
[0129] The transmitting / receiving unit 392 may, for example, receive display information from the server 20. The display control unit 393 may, for example, receive a display request and display the revised predicted completion time on the display 341. This allows the operator to easily grasp the progress of their pesticide spraying and to increase their own motivation for efficient and rapid pesticide spraying.
[0130] If the output devices 14 and 34 are printers, the presentation control module 2033 may, for example, control the presentation control units 193 and 393 to print out paper media with the parameters printed on them from the output devices 14 and 34.
[0131] The following describes examples of the screens of displays 141 and 341 when displaying the predicted completion time for corrections stored in progress table 2021, with reference to Figure 8. Figure 8 shows examples of the screens of displays 141 and 341.
[0132] In the example screen shown in Figure 8, for example, Table 40, which shows the progress of pesticide spraying in an ordered project, is displayed on at least one of displays 141 and 341. Table 40 has the same structure as Progress Table 2021, except that the item "Project ID" is replaced with the item "Project Name". The item "Project Name" is an item that stores the name of the ordered project. In other words, the various information displayed in Table 40 is the same as the various information stored in Progress Table 2021, including the revised predicted completion time, except for the name of the ordered project (see Figure 5).
[0133] In other words, in the example screen shown in Figure 8, the presentation control module 2033 presents various information, such as the predicted completion time for corrections, stored in the progress table 2021, to at least one of the administrator and the operator in the format of table 40.
[0134] The transmission control module 2032 reads various information, such as the revised predicted completion time, from the progress table 2021, and transmits display information for displaying this information to at least one of the first terminal device 10 and the second terminal device 30. The transmission control module 2032 also reads the name of an order from the request management table or the work management table, and transmits display information for displaying the name of the order to at least one of the first terminal device 10 and the second terminal device 30.
[0135] At least one of the transmitting / receiving units 192 and 392 receives, for example, the aforementioned display information from the server 20. At least one of the presentation control units 193 and 393 displays the revised predicted end time on the display 341, for example, by receiving a presentation request.
[0136] It should be noted that the screen example shown in Figure 8 is merely an example, and various variations are conceivable regarding the display of the revised forecast completion time. For example, Table 40 may also display information such as the area progress rate, the first predicted productivity coefficient, and the second predicted productivity coefficient. The area progress rate is, for example, the ratio of the total area where pesticides were actually applied to the total declared area of multiple target fields constituting the field group. Furthermore, for example, some of the information other than the revised forecast completion time displayed in Table 40 may not be displayed. Moreover, the revised forecast completion time may be displayed in a format other than that of Table 40.
[0137] [5 Summary] As described above, in this embodiment, the prediction processing module 2035 calculates the predicted required time for each field group based on productivity-related parameters and other considerations read from the operator table 2022. The prediction processing module 2035 calculates the predicted completion time for each order by adding the predicted required time for each field group to the scheduled start time read from the storage unit 202. The transmitting / receiving unit 392 receives a transmission request from the operator and transmits the completion information for each target field, which has been received as input by the operation reception unit 391, to the server 20. The receiving control module 2031 receives the completion information for each target field transmitted from the second terminal device 30.
[0138] The correction processing module 2034 reads the operator's first productivity coefficient "1" from the memory unit 202. The correction processing module 2034 calculates the second productivity coefficient based on the actual completion time included in the completion information corresponding to the target field handled by the operator. The correction processing module 2034 calculates the first predicted productivity coefficient and the second predicted productivity coefficient by correcting the first productivity coefficient using a Kalman filter with the second productivity coefficient. The prediction processing module 2035 calculates the corrected predicted completion time for each order unit using the first corrected predicted required time to the fourth corrected predicted required time calculated based on the first predicted productivity coefficient and the second predicted productivity coefficient.
[0139] This allows server 20 to re-predict the previously estimated end time of pesticide spraying in a timely manner, based on the latest pesticide spraying status of each operator in charge of the contracted project. As a result, administrators (and operators, in some cases) can have a more detailed understanding of the end time of pesticide spraying.
[0140] [6 Variations] <6.1 First Variation> In this embodiment, an example was described in which the server 20 calculates the first and third revised estimated completion times for target fields where pesticide application has been completed, and the second and fourth revised estimated completion times for target fields where pesticide application has not yet been completed. However, the method by which the server 20 calculates the revised estimated completion time is not limited to this example.
[0141] That is, for example, server 20 may calculate the predicted completion time after calculating only the first and third predicted completion times. Alternatively, for example, server 20 may calculate the predicted completion time after calculating only the second and fourth predicted completion times.
[0142] Specifically, for example, when calculating only the first revised predicted required time and the third revised predicted required time, the prediction processing module 2035 may use the predicted required time for fields where pesticide application is not yet complete and for target fields, and calculate the revised predicted end time by adding the first revised predicted required time, the third revised predicted required time, and the predicted required time to the start time. Alternatively, for example, when calculating only the second revised predicted required time and the fourth revised predicted required time, the prediction processing module 2035 may use the actual required time (or predicted required time) for fields where pesticide application is complete and for target fields, and calculate the revised predicted end time by adding the second revised predicted required time, the fourth revised predicted required time, and the actual required time (or predicted required time) to the start time.
[0143] <6.2 Second Variation> In this embodiment, an example was described in which the server 20 calculates and presents the revised predicted completion time to the administrator, etc. However, the calculated revised predicted completion time can be used in various situations in the pesticide spraying service, in addition to being presented to the administrator, etc. For example, the server 20 may change the assignment of fields to the operator based on the revised predicted completion time. The assigned fields are multiple target fields that have been assigned to the operator from among all target fields that are the subject of the contracted project.
[0144] Specifically, for example, the prediction processing module 2035 may calculate the predicted end time and the revised predicted end time on a field-by-field or field-by-field basis. If the revised predicted end time is later than the predicted end time by a standard time or more, the prediction processing module 2035 may compare it with the actual time taken by each operator during pesticide application. The actual time taken is the difference between the actual start time and the actual end time. The prediction processing module 2035 may, for example, remove the operators with the longest actual time taken from their assigned fields and reassign them to a different field-by-field or a different contracted project. The standard time and standard number of operators can be arbitrarily set according to the difficulty of the assigned fields, the productivity of the operators, the number of operators assigned to the fields, etc.
[0145] Alternatively, if the revised predicted completion time is later than the predicted completion time by a standard time or more, the prediction processing module 2035 may compare the actual time taken by each operator during pesticide application with the standard time. The prediction processing module 2035 may, for example, remove operators whose actual time taken is longer than the standard time from their assigned field and reassign them to a different group of fields or a different contract. The standard time can be arbitrarily set according to the difficulty of the assigned field, the productivity of the operators, the number of operators assigned to the field, etc.
[0146] As a result, server 20 can use the calculated revised predicted completion time to timely and accurately change the assignment of each operator to their assigned field according to the latest pesticide application status of each operator. Therefore, the management and operation operators can manage contracted projects flexibly and accurately.
[0147] Furthermore, the prediction processing module 2035 may calculate the predicted completion time and the revised predicted completion time based, for example, on the productivity of the operator who was newly added as the person in charge of the order after the assignment change.
[0148] [7. Basic Computer Hardware Configuration] Figure 9 is a block diagram showing the basic hardware configuration of computer 90. Computer 90 includes at least a processor 901, main memory 902, auxiliary memory 903, and a communication interface 991. These are electrically connected to each other by a communication bus 921.
[0149] The processor 901 is hardware for executing the instruction set written in a program. The processor 901 consists of an arithmetic unit, registers, peripheral circuits, etc.
[0150] Main memory 902 is used to temporarily store programs and data processed by programs, etc. For example, it is a volatile memory such as DRAM (Dynamic Random Access Memory).
[0151] Auxiliary storage device 903 refers to a storage device for saving data and programs. Examples include flash memory, HDD (Hard Disk Drive), magneto-optical disk, CD-ROM, DVD-ROM, and semiconductor memory.
[0152] The IF991 communication interface is an interface for inputting and outputting signals for communication with other computers via a network using wired or wireless communication standards.
[0153] A network consists of various mobile communication systems, such as the internet, LANs, and wireless base stations. For example, a network includes 3G, 4G, and 5G mobile communication systems, LTE (Long Term Evolution), and wireless networks that can connect to the internet via designated access points (e.g., Wi-Fi®). When connecting wirelessly, communication protocols include, for example, Z-Wave®, ZigBee®, and Bluetooth®. When connecting via a wired connection, the network also includes connections made directly via USB (Universal Serial Bus) cables, etc.
[0154] Furthermore, by distributing all or part of each hardware configuration across multiple computers 90 and connecting them to each other via a network, a computer 90 can be virtually realized. Thus, the concept of computer 90 includes not only a computer 90 housed in a single enclosure or case, but also a virtualized computer system.
[0155] [8. Basic Functional Configuration of a Computer] The functional configuration of the computer realized by the basic hardware configuration of computer 90 (Figure 9) will be explained. The computer comprises at least one functional unit: a control unit, a memory unit, and a communication unit.
[0156] Furthermore, the functional units of computer 90 can also be realized by distributing all or part of each functional unit across multiple computers 90 interconnected via a network. The concept of computer 90 includes not only a single computer 90 but also a virtualized computer system.
[0157] The control unit is realized when the processor 901 reads various programs stored in the auxiliary storage device 903, loads them into the main memory device 902, and executes processing according to those programs. The control unit can realize various functional units that perform information processing depending on the type of program. In this way, the computer is realized as an information processing device that performs information processing.
[0158] The memory unit is implemented by the main memory 902 and the auxiliary memory 903. The memory unit stores data, various programs, and various databases. The processor 901 can also reserve memory areas corresponding to the memory unit in the main memory 902 or the auxiliary memory 903 according to the program. The control unit can also cause the processor 901 to perform operations such as adding, updating, and deleting data stored in the memory unit according to the various programs.
[0159] A database, specifically a relational database, is used to manage and link together tabular data sets called masters, which are structurally defined by rows and columns. In a database, tables are called tables, masters are called masters, the columns of tables are called columns, and the rows of tables are called records. In a relational database, relationships can be established and linked between tables and masters.
[0160] Typically, each table and master has a primary key column to uniquely identify records, but setting a primary key column is not mandatory. The control unit can instruct the processor 901 to add, delete, or update records in specific tables and masters stored in the memory unit, according to various programs.
[0161] Furthermore, by storing data, various programs, and various databases in the memory unit, the information processing device and information processing system related to this disclosure can be considered to have been manufactured.
[0162] Furthermore, the databases and masters in this disclosure may include any data structures (lists, dictionaries, associative arrays, objects, etc.) in which information is structurally defined. Data structures also include data that can be considered as data structures by combining data with functions, classes, methods, etc., written in any programming language.
[0163] The communication unit is implemented by the communication IF991. The communication unit provides the functionality to communicate with other computers 90 via the network. The communication unit can receive information transmitted from other computers 90 and input it to the control unit. The control unit can cause the processor 901 to perform information processing on the received information according to various programs. The communication unit can also transmit information output from the control unit to other computers 90.
[0164] Furthermore, each of the above-mentioned configurations, functions, processing units, processing means, etc., may be implemented in hardware, in whole or in part, for example, by designing them as integrated circuits. The present invention can also be implemented by software program code that realizes the functions of the embodiments. In this case, a storage medium on which the program code is recorded is provided to a computer, and the processor of that computer reads the program code stored in the storage medium. In this case, the program code read from the storage medium itself realizes the functions of the embodiments described above, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media used to supply such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, SSDs, optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, ROMs, and the like.
[0165] Furthermore, the program code that implements the functions described in this embodiment can be implemented in a wide range of programming or scripting languages, such as assembler, C / C++, Perl, Shell, PHP, Java®, JavaScript, and TypeScript.
[0166] Furthermore, the program code of the software that realizes the functions of the embodiment may be distributed via a network and stored on a storage means such as a computer's hard disk or memory, or on a storage medium such as a CD-RW or CD-R, and the computer's processor may read and execute the program code stored on the storage means or storage medium.
[0167] The functions realized by the components described herein may be implemented in a circuit or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), CPUs (Central Processing Units), conventional circuits, and / or combinations thereof, programmed to realize the functions described herein. A processor is considered to be a circuit or processing circuitry, including transistors and other circuits. A processor may be a programmed processor that executes a program stored in memory.
[0168] In this specification, circuitry, unit, and means are hardware programmed to perform or execute the functions described herein. Such hardware may be any hardware disclosed herein, or any hardware known to be programmed to perform or execute the functions described herein.
[0169] If the hardware is a processor that is considered to be a type of circuitry, then the circuitry, means, or unit is a combination of hardware and software used to constitute the hardware and / or processor.
[0170] While several embodiments of this disclosure have been described above, these embodiments can be implemented in a variety of other forms, and various omissions, substitutions, and modifications are permitted without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims and their equivalents.
[0171] [9. Addendum] The details described in each of the above embodiments are noted below.
[0172] <Note 1> A program for execution on a computer having a processor and memory, the program causing the processor to perform the following steps: predict the completion time of pesticide spraying when an operator operates an aircraft to spray pesticides on multiple fields, based on productivity settings set in advance for the operator; acquire completion information for each of the multiple fields, indicating that pesticide spraying on that field has been completed; use a Kalman filter on a pre-set first productivity coefficient and an actual second productivity coefficient obtained from the completion information to correct the first productivity coefficient based on the second productivity coefficient; and re-predict the completion time based on the corrected first productivity coefficient.
[0173] <Note 2> The second productivity coefficient is the value obtained by dividing the actual productivity acquired from the completion information by a predetermined productivity, and in the correction step, the program multiplies the second productivity coefficient by the Kalman gain (see Appendix 1).
[0174] <Note 3> The program described in (Appendix 1) or (Appendix 2) includes a correction step in which multiple fields are divided into groups, the first productivity coefficient is corrected for each group, and a re-prediction step in which the end time is re-predicted for each group.
[0175] <Note 4> A program as described in any of (Appendix 1) to (Appendix 3) that causes the processor to perform an additional step of changing the assignment of multiple fields to the operator based on the re-predicted end time.
[0176] <Note 5> An information processing device comprising a control unit and a storage unit, wherein the control unit executes all steps in any of the programs described in (Appendix 1) to (Appendix 4).
[0177] <Note 6> A method to be executed on a computer having a processor and memory, wherein the processor executes all steps in any of the programs described in (Appendix 1) to (Appendix 4).
[0178] <Note 7> A system comprising means for executing all steps in any of the programs described in (Appendix 1) to (Appendix 4). [Explanation of symbols]
[0179] 1... System 10…First terminal device 120... Communications Department 13…Input device 14…Output device 15…Memory 16…Storage 19… Processor 20... Server 22...Communication IF 23…Input / Output Interface 25…Memory 2 hours… storage 29… Processor 30…Second terminal device
Claims
1. A program to be executed on a computer having a processor and memory, The program is provided to the processor: A step of predicting the completion time of pesticide application when the operator operates the aircraft to spray pesticides on multiple fields, based on a productivity setting set in advance for the operator, For each of the aforementioned multiple fields, the step of obtaining completion information indicating that the application of the pesticide to that field has been completed, A step of correcting the first productivity coefficient based on the second productivity coefficient by using a Kalman filter on a pre-set first productivity coefficient and an actual second productivity coefficient obtained from the completion information, A step of re-predicting the completion time based on the corrected first productivity coefficient, A program that executes the command.
2. The second productivity coefficient is the value obtained by dividing the actual productivity obtained from the completion information by the preset productivity. The program according to claim 1, wherein in the correction step, the second productivity coefficient is multiplied by the Kalman gain.
3. In the correction step, the multiple fields are divided into groups, and the first productivity coefficient is corrected for each group. The program according to claim 1, wherein the re-prediction step involves re-predicting the end time for each group.
4. The program according to claim 1, which causes the processor to further perform the step of changing the assignment of the plurality of fields to the operator based on the re-predicted end time.
5. An information processing device comprising a control unit and a storage unit, wherein the control unit executes all steps in the program described in any one of claims 1 to 4.
6. A method to be performed on a computer comprising a processor and memory, wherein the processor performs all steps of a program according to any one of claims 1 to 4.
7. A system comprising means for executing all steps in the program described in any one of claims 1 to 4.