WO2022249486A1 - 情報処理システム、作業機及びプログラム - Google Patents

情報処理システム、作業機及びプログラム Download PDF

Info

Publication number
WO2022249486A1
WO2022249486A1 PCT/JP2021/020544 JP2021020544W WO2022249486A1 WO 2022249486 A1 WO2022249486 A1 WO 2022249486A1 JP 2021020544 W JP2021020544 W JP 2021020544W WO 2022249486 A1 WO2022249486 A1 WO 2022249486A1
Authority
WO
WIPO (PCT)
Prior art keywords
work
route
information processing
processing system
area
Prior art date
Application number
PCT/JP2021/020544
Other languages
English (en)
French (fr)
Inventor
智弘 林田
一郎 西崎
大祐 石平
Original Assignee
株式会社やまびこ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社やまびこ filed Critical 株式会社やまびこ
Priority to PCT/JP2021/020544 priority Critical patent/WO2022249486A1/ja
Priority to JP2023523940A priority patent/JPWO2022249486A1/ja
Priority to EP21943123.6A priority patent/EP4350463A4/en
Publication of WO2022249486A1 publication Critical patent/WO2022249486A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/648Performing a task within a working area or space, e.g. cleaning
    • G05D1/6484Performing a task within a working area or space, e.g. cleaning by taking into account parameters or characteristics of the working area or space, e.g. size or shape
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/247Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/648Performing a task within a working area or space, e.g. cleaning
    • G05D1/6482Performing a task within a working area or space, e.g. cleaning by dividing the whole area or space in sectors to be processed separately
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2101/00Details of software or hardware architectures used for the control of position
    • G05D2101/10Details of software or hardware architectures used for the control of position using artificial intelligence [AI] techniques
    • G05D2101/15Details of software or hardware architectures used for the control of position using artificial intelligence [AI] techniques using machine learning, e.g. neural networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2105/00Specific applications of the controlled vehicles
    • G05D2105/15Specific applications of the controlled vehicles for harvesting, sowing or mowing in agriculture or forestry
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2107/00Specific environments of the controlled vehicles
    • G05D2107/20Land use
    • G05D2107/23Gardens or lawns
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/10Land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2111/00Details of signals used for control of position, course, altitude or attitude of land, water, air or space vehicles
    • G05D2111/30Radio signals
    • G05D2111/36Radio signals generated or reflected by cables or wires carrying current, e.g. boundary wires or leaky feeder cables

Definitions

  • the present invention relates to an information processing system, a work machine and a program.
  • Patent Document 1 discloses a technique in which a virtual marker in an image is identified, boundary data indicating the boundary of the work area is generated, and the boundary data is generated within the work area of a robot lawnmower. A technique for controlling the operation of the is disclosed.
  • the present invention provides an information processing system etc. that can improve the possibility of setting a route with high work quality in the work area.
  • an information processing system In the acquisition step in this information processing system, boundary information indicating the boundary of the work area targeted by the work machine capable of autonomous travel is acquired. In the setting step, a work machine path is set to eliminate an unreached area from the work area based on the obtained boundary information, and the work quality when using the path set by the first method does not meet a predetermined standard. If the conditions are not satisfied, the route is set by the second method.
  • FIG. 1 is a diagram showing the appearance of a lawnmower robot 1.
  • FIG. 4 is a diagram showing an example of a travel route of the lawnmower robot 1.
  • FIG. 2 is a diagram showing the hardware configuration of the lawnmower robot 1.
  • FIG. 1 is a diagram showing a functional configuration of a lawnmower robot 1;
  • FIG. It is a figure which shows the operation
  • FIG. 4 is a diagram illustrating a first example of a work target area;
  • FIG. 4 is a diagram showing an example of a route set by a first route setting method;
  • FIG. 10 is a diagram showing an example of a route set by a second route setting method;
  • FIG. 10 is a diagram showing the processing load in the work target area A10;
  • FIG. 10 is a diagram illustrating a second example of a work target area;
  • FIG. 4 is a diagram showing an example of a route set by a first route setting method;
  • FIG. 10 is a diagram showing an example of a route set by a second route setting method;
  • FIG. It is a figure which shows an example of the route set by route setting processing.
  • FIG. 10 is a diagram showing the processing load in the second example;
  • the program for realizing the software appearing in this embodiment may be provided as a non-transitory computer-readable medium (Non-Transitory Computer-Readable Medium), or may be downloaded from an external server. It may be provided as possible, or may be provided so that the program is activated on an external computer and the function is realized on the client terminal (so-called cloud computing).
  • the term “unit” may include, for example, a combination of hardware resources implemented by circuits in a broad sense and software information processing that can be specifically realized by these hardware resources.
  • various information is handled in the present embodiment, and these information are, for example, physical values of signal values representing voltage and current, and signal values as binary bit aggregates composed of 0 or 1. It is represented by high and low, or quantum superposition (so-called quantum bit), and communication and operation can be performed on a circuit in a broad sense.
  • a circuit in a broad sense is a circuit realized by at least appropriately combining circuits, circuits, processors, memories, and the like.
  • Application Specific Integrated Circuit ASIC
  • Programmable Logic Device for example, Simple Programmable Logic Device (SPLD), Complex Programmable Logic Device (CPLD), and field It includes a programmable gate array (Field Programmable Gate Array: FPGA)).
  • the hardware configuration of the self-propelled lawnmower robot which is the work machine according to the present embodiment, will be described. That is, in this embodiment, the work performed by the work machine is lawn mowing. Further, the work machine is a work machine capable of autonomous travel, and includes each part of an information processing system for controlling operations related to work (lawn mowing).
  • FIG. 1 is a diagram showing the appearance of the lawnmower robot 1.
  • the lawn mowing robot 1 includes a blade disk, tires, a motor for rotating them, a battery, and the like inside a housing.
  • the lawn mowing robot 1 cuts the lawn to a predetermined height by rotating the blade disk by the work motor while traveling on a grassy field by means of a drive motor.
  • the lawn-mowing robot 1 sets its own running route in the field by the above-described information processing system provided in its own device, and mows the lawn while traveling along the set running route.
  • FIG. 2 is a diagram showing an example of the travel route of the lawnmower robot 1.
  • FIG. FIG. 2 shows a rectangular work area A1.
  • FIG. 2 shows a direction D1 and a direction D3 along the short sides of the work area A1, and a direction D2 and a direction D4 along the long sides of the work area A1.
  • the work target area A1 has a boundary B1 that serves as a boundary between the inside and outside of the own area. It is assumed that wires are embedded along the boundary B1 in the work target area A1.
  • the lawnmower robot 1 By recognizing the position of the wire in a two-dimensional or three-dimensional space, the lawnmower robot 1 recognizes the shape and size formed by the boundary B1, that is, the shape and size of the outer periphery of the work area A1. The lawnmower robot 1 sets a travel route based on the recognized shape and size of the work area A1. The lawnmower robot 1 sets a work path C1 in the example of FIG. The work route C1 has a starting point P1 at the corner of the direction D1 and the direction D4 of the work target area A1.
  • the work path C1 starts from the starting point P1 in the direction D2, and when it reaches the boundary B1, it changes direction in the direction D3, moves by the width of the lawnmower robot 1, and then changes direction again in the direction D4. It is the route to The work route C1 is a route that turns back along the route that has been advanced due to the direction change of two degrees in this way.
  • the direction of movement during folding (here, direction D3) is hereinafter referred to as the "folding direction".
  • the work route C1 is a route that travels in the direction D4 and turns back in the direction D2 with the direction D3 as the turning direction when reaching the boundary B1.
  • the work path C1 is thus a reciprocating path that repeats movements in the directions D2 and D4 while gradually deviating in the direction D3, which is the turn-back direction. The details of how to set the work path will be described later.
  • FIG. 3 is a diagram showing the hardware configuration of the lawnmower robot 1. As shown in FIG.
  • the lawn mowing robot 1 includes a control section 11 , a storage section 12 , a communication section 13 , a sensor section 14 , a traveling section 15 and a working section 16 .
  • control unit 11 The control unit 11 is, for example, a central processing unit (CPU) (not shown).
  • the control unit 11 implements various functions related to the lawnmower robot 1 by reading a predetermined program stored in the storage unit 12 . That is, information processing by software stored in the storage unit 12 can be specifically realized by the control unit 11 which is an example of hardware, and can be executed as each function unit included in the control unit 11 . These are further detailed in the next section. Note that the control unit 11 is not limited to a single unit, and a plurality of control units 11 may be provided for each function. A combination thereof may also be used.
  • the storage unit 12 stores various information defined by the above description. This may be, for example, a storage device such as a solid state drive (SSD) that stores various programs related to the lawnmower robot 1 executed by the control unit 11, or a temporary storage device related to program calculation. It can be implemented as a memory such as a Random Access Memory (RAM) that stores information (arguments, arrays, etc.) required for the .
  • the storage unit 12 stores various programs, variables, etc. related to the lawnmower robot 1 executed by the control unit 11 .
  • the communication unit 13 is configured to be able to transmit various electrical signals from the lawnmower robot 1 to external components. Also, the communication unit 13 is configured to be capable of receiving various electrical signals from external components to the lawnmower robot 1 . More preferably, the communication unit 13 has a network communication function, so that various information can be communicated between the lawnmower robot 1 and an external device via a network such as the Internet.
  • the sensor unit 14 has a group of sensors that measure various values used by the lawnmower robot 1 as processing parameters.
  • the sensor unit 14 includes, for example, a positioning sensor, an orientation sensor, an angular velocity sensor, an acceleration sensor, a blade disk torque sensor, a wire detection sensor, an object detection sensor, and the like.
  • the positioning sensor measures the position of its own device by GPS (Global Positioning System) or the like.
  • the orientation sensor measures the orientation of the device itself.
  • the angular velocity sensor measures the angular velocity when the device rotates.
  • the acceleration sensor measures the acceleration of its own device.
  • a torque sensor on the blade disc detects the load on the motor as the mowing blade rotates.
  • the aforementioned control section 11 calculates the estimated work amount of the blade disk.
  • the wire detection sensor detects wires embedded in the boundary B1 or the like in FIG.
  • the object detection sensor emits millimeter waves or the like and detects objects that reflect them.
  • the running unit 15 includes tires, a motor, and the like, and runs the own device.
  • the traveling unit 15 is controlled by the control unit 11 to move straight, reverse, change directions, and the like.
  • the working unit 16 includes a blade disk, a motor, etc., and is controlled by the control unit 11 to rotate the blade disk to mow the lawn.
  • FIG. 4 is a diagram showing the functional configuration of the lawnmower robot 1.
  • the lawn mowing robot 1 includes a boundary detection unit 111 , an object detection unit 112 , a setting unit 113 , a determination unit 114 , a travel control unit 115 and a work control unit 116 .
  • the boundary detection unit 111 detects the boundary of the work target area on which the own device performs work. For example, in the example of FIG. 2, the boundary detection unit 111 first detects wires embedded along the outer circumference of the work target area A1.
  • the boundary detection unit 111 detects a wire using, for example, a well-known technique used in wire-based autonomous traveling described in Japanese Unexamined Patent Application Publication No. 2016-208950.
  • the boundary detection unit 111 detects the boundary B1 of the work target area A1 by running along the detected wire on the outer circumference.
  • the boundary detection unit 111 acquires detection result data represented by a set of coordinates on the two-dimensional or three-dimensional space of the detected boundary B1.
  • the boundary detection unit 111 is an example of a function that executes the "acquisition step", and the detection result data is an example of "boundary information”.
  • the boundary detection unit 111 (acquisition unit) in the information processing system acquires boundary information indicating the boundary of the work area targeted by the autonomously traveling lawnmower robot 1 (working machine).
  • the boundary detection unit 111 supplies the acquired detection result data to the setting unit 113 .
  • the object detection unit 112 detects objects existing in the work area.
  • the object detection unit 112 is an example of a function that executes a "detection step".
  • Objects that is, obstacles
  • Obstacles are, for example, natural objects such as stones and rocks, and artificial objects such as tools left behind by people.
  • the object detection unit 112 also detects a wire embedded along the boundary B1 as an obstacle.
  • the object detection unit 112 can detect the object even if the distance from the object is somewhat long.
  • the object detection unit 112 supplies object information indicating the position and direction of the detected object (obstacle) to the setting unit 113 and the travel control unit 115 .
  • the setting unit 113 Based on the boundary information acquired by the boundary detection unit 111, the setting unit 113 sets the route of the work machine to eliminate the unreached area from the work area.
  • the setting unit 113 is an example of a function that executes a “setting step”.
  • the setting unit 113 sets the work path by two methods, a first path setting method and a second path setting method, which will be described below. Both the first route setting method and the second route setting method are methods of setting a route based on a learned model learned by a machine learning technique.
  • NN Neural Network
  • NN is a learning model having a multi-layered network structure such as an input layer, an intermediate layer, and an output layer.
  • a learning model is acquired by optimizing multiple model parameters inside the network using an algorithm such as error backpropagation using learning data that indicates the relationship between input data and output data. can be done.
  • the first route setting method is a method of learning a model for selecting the optimum one from a plurality of predetermined action rules by the NN technique and setting a route based on the learned model. be.
  • a classifier system is a set of rules (classifiers) consisting of a condition part and an action part, and learns the appropriateness of the rules based on the results of outputting actions in response to input from the environment according to those rules.
  • the second route setting method acquires environmental information each time a certain distance is traveled and learns a model that sets an optimal route using an NXCS (Neural-network eXtended Classifier System).
  • NXCS Neuro-network eXtended Classifier System
  • the first route setting method it is possible to simplify processing related to route selection within relatively simple terrain and improve work efficiency.
  • learning by the classifier system as the second route setting method, it is possible to set the optimum route even in situations where it is difficult to respond with the first route setting method, maintaining efficiency and work quality in various terrains. work is performed. It should be noted that it is desirable to switch to the first route setting method when it is determined that the work by the second route setting method is completed. By combining them in this manner, the respective features of the first and second learning methods are utilized to the maximum extent, unnecessary processing load and processing time are eliminated, and work efficiency is further improved.
  • the first route setting method is an example of the "first method”
  • the second route setting method is an example of the "second method”.
  • the first method and the second method are, as described above, methods of setting routes based on learned models learned by different machine learning methods, NN and NXCS in this embodiment, respectively. By using machine learning in this way, the more the route setting is repeated, the more desirable the work route is set.
  • the setting unit 113 When setting a route using the first route setting method, the setting unit 113 first sets the route using the boundary information supplied from the boundary detection unit 111 . Specifically, the setting unit 113 sets a route using a method of setting a continuous route as a first method according to a rule that the working machine repeats movement and direction change at the boundary of the work area. By using such a rule, even if the size of the work target area changes, even if the distance traveled increases or the number of turnarounds increases slightly, the processing load when setting the work route changes. can be suppressed.
  • the setting unit 113 has a plurality of rules in which at least one of the initial direction of travel and the direction after direction change is different, and selects the rule with the highest work quality from among the plurality of rules to set the route. method as the first method to set the route.
  • the work quality is the quality of work performed by the lawnmower robot 1, which is a work machine. For example, when the lawnmower robot 1 has been working for a certain period of time, it can be said that the more areas where the work is completed, the higher the quality of the work is.
  • the work quality when mowing the entire area is completed after working for 30 minutes and the work quality when mowing only half of the area is completed the former work quality is higher.
  • the work quality evaluation method is not limited to this.
  • the shorter the time required to complete the work for the entire area the higher the work quality, or the shorter the distance traveled to complete the work for the entire area, the higher the work quality. good.
  • the work route can be determined by the first route setting method compared to the case where only one rule is fixed. It is possible to improve the work quality when it is set.
  • the work quality selected and set in order to improve the work quality in this way is much higher than the work quality in the case of random travel without the travel rule or learning function.
  • the plurality of rules are, for example, when the work target area is rectangular, a rule that uses the direction along the long side and the direction along the short side as the initial traveling direction and turning direction, respectively, as in the example of FIG. is.
  • the setting unit 113 uses the following four rules in this embodiment.
  • the setting unit 113 sets the route according to the obstacle avoidance rule when the lawnmower robot 1 travels along the work route set before work.
  • the setting unit 113 uses the object information supplied from the object detection unit 112 to recognize that there is an obstacle on the work route. If the recognized obstacle can be bypassed, the setting unit 113 resets the work route that bypasses the obstacle and returns to the original work route. Further, when the recognized obstacle cannot be detoured (for example, when the boundary of the work target area is reached before detouring and returning to the original work route), the setting unit 113 returns to the point where the detour was started and Reconfigure the work route for turning back.
  • the setting unit 113 uses any one of the rules 1 to 4 and the obstacle avoidance rule when resetting the work route in the first route setting method.
  • the setting unit 113 also resets the work path when using the second path setting method, but differs from the first path setting method in that it is not restricted by a specific rule.
  • the setting unit 113 sets the route based on the boundary information acquired by the boundary detection unit 111 and the position of the object detected by the object detection unit 112 each time the working machine travels a predetermined distance.
  • a route is set using the healing method as the second route setting method.
  • the setting unit 113 sets a new optimum route when, for example, an obstacle is found in the middle of the route and the route up to that point becomes impassable. In other words, there is a possibility that an area once inaccessible due to an obstacle or the like can be reached by a newly set route. In this way, when the second route setting method is used, it is possible to reduce areas that cannot be reached compared to the first route setting method, in which the route once set is not changed during driving. can.
  • the setting unit 113 supplies route information indicating the set route to the determination unit 114 .
  • the determination unit 114 determines whether or not a switching condition for switching the route setting method from the first route setting method to the second route setting method is satisfied. Specifically, the determination unit 114 determines, as a switching condition, whether or not the work quality when using the route set by the first route setting method satisfies a predetermined standard.
  • the determination unit 114 determines that a predetermined criterion is satisfied when the difference between the determined turnaround position on the set route and the position where the vehicle actually runs and bumps into some object is less than a threshold. Conversely, the determination unit 114 determines that the work quality does not meet the predetermined criteria when the aforementioned difference is equal to or greater than the threshold. If the position is greatly deviated from the position when traveling according to the set route, for example, there are obstacles on the route, or the route is not flat and sloped or uneven, making it impossible to travel straight. Conceivable.
  • the determination unit 114 determines that the work quality does not meet the predetermined criteria. If the determining unit 114 determines that the work quality does not satisfy the predetermined standard, it notifies the setting unit 113 of that effect.
  • the setting unit 113 receives the notification from the determination unit 114, that is, when the work quality when using the route set by the first route setting method does not satisfy a predetermined standard, the setting unit 113 sets the second route. Set route by method.
  • the running control unit 115 controls the motion of the own device (the lawn mowing robot 1) when running.
  • the traveling control unit 115 acquires the position and orientation of the own device, and controls the traveling operation of the own device so as to move forward, backward, and change direction in a predetermined direction.
  • the work control unit 116 controls the operation of the own device (the lawn mowing robot 1) during work. In this embodiment, the work control unit 116 controls the operation of rotating the blade disc to mow the lawn while the vehicle is running.
  • the lawnmower robot 1 executes the route setting process for setting the route of the work target area using the functions described above.
  • FIG. 5 is a diagram showing the operating procedure in the route setting process.
  • the route setting process is started, for example, when the lawnmower robot 1 is arranged at the start point of the work area.
  • the lawnmower robot 1 acquires boundary information indicating the boundary of the work area by detecting, for example, wires embedded along the outer periphery of the work area using the boundary detection unit 111 (step S11).
  • the lawnmower robot 1 recognizes, for example, a portion where the distance between facing boundaries in the work target area is less than a threshold value as a "passage".
  • step S12 the lawnmower robot 1 recognizes the areas separated by the passages as "partial areas" (step S12).
  • step S21 the lawnmower robot 1 travels and reaches one of the recognized partial regions by the travel control unit 115 (step S21).
  • the point reached by the lawnmower robot 1 is the starting point of the work in that partial area.
  • step S22 the lawnmower robot 1 determines whether or not the reached partial area is the target area for the second route setting method by the setting unit 113 (step S22).
  • the lawnmower robot 1 determines by the setting unit 113 that the reached partial area is not the target area for the second route setting method (NO), and the boundary information acquired in step S11 , a work path is set for that partial area by the first path setting method (step S31).
  • the lawnmower robot 1 travels along the work route set in step S21 by the travel control unit 115 (step S32).
  • the lawnmower robot 1 determines whether or not it has traveled a certain distance (step S33).
  • the lawnmower robot 1 determines that it has traveled the predetermined distance (YES)
  • it selects one of the rules 1 to 4 according to the first route setting method and resets the work route (step S34).
  • the constant distance may be set to infinity or a very large number so that resetting is not performed during work in the partial area.
  • the lawnmower robot 1 repeatedly detects an object by the object detection unit 112, and determines whether or not it has approached an obstacle (step S35).
  • An obstacle is an object that approaches the lawnmower robot 1 excluding wires.
  • the lawnmower robot 1 makes a determination in step S35 even when it is determined in step S32 that it has not traveled the predetermined distance (NO).
  • the setting unit 113 and the travel control unit 115 reset the work route that bypasses the obstacle in accordance with the obstacle avoidance rule (step S36). ).
  • the lawn mowing robot 1 determines whether or not it has reached the end point of the work path set in the current partial area (step S37).
  • the lawnmower robot 1 makes the determination in step S37 even when it determines NO in step S35. If the lawnmower robot 1 determines in step S37 that it has not reached the end point of the work path (NO), it returns to step S32 and repeats the operation. If the lawnmower robot 1 determines in step S37 that it has reached the end point of the work path (YES), it next determines whether or not a switching condition for switching the current partial area setting method is satisfied. It judges (step S41).
  • the switching condition is expressed by whether or not the work quality when using the route set by the first route setting method satisfies a predetermined standard.
  • the condition that is satisfied when the number of locations where the difference between the determined turn-around position on the set route and the actually traveled turn-back position is greater than or equal to the distance threshold is greater than or equal to the number threshold is switched. Used as a condition. For example, if the number threshold is 1, the switching condition is satisfied if there is at least one point where the difference between the set turn-back position and the actual turn-back position is greater than or equal to the distance threshold.
  • step S41 When the lawnmower robot 1 determines that the switching condition is satisfied (YES) in step S41, it switches the setting method of the work path for the current partial area (step S42). For example, when the lawnmower robot 1 determines to switch in the first operation, it memorizes that the current partial area setting method has been switched from the first route setting method to the second route setting method. After step S42, or when it is determined that the switching condition is not satisfied (NO) in step S41, the lawnmower robot 1 determines whether or not the work end condition is satisfied (step S43).
  • the work end condition is a condition for ending the work in the work target area by the lawnmower robot 1 .
  • the work end condition is satisfied, for example, when the area of the unreached area in the work target area becomes less than 5% of the entire area. This work end condition is used to prevent an extreme increase in the difficulty of machine learning due to minute uncutting.
  • the work target area has a simple shape as in the examples shown in FIGS. 2 and 6, there is almost no uncutting. It may be 0%.
  • a method of setting the value used as the work end condition to, for example, 10% as an initial value and decreasing it gradually or step by step as the amount of learning increases can also be adopted. According to this method, the optimum end condition is set according to the contents of learning without requiring manual setting of detailed conditions prior to work.
  • step S43 When the lawnmower robot 1 determines that the work end condition is satisfied (YES) in step S43, it ends this operation procedure.
  • the setting unit 113 and the travel control unit 115 determine the movement path to move toward the next partial area through the passage leading to the current partial area. , and moves to the next partial area along the set moving route (step S44).
  • the lawnmower robot 1 specifically sets the movement route using Rule 5 or Rule 6 for movement.
  • Rule 5 Proceed clockwise around the perimeter of the work target area, and when reaching the entrance of the passage, proceed toward that passage, and when reaching the next partial area, turn left or right and proceed to the corner of that partial area.
  • Rule 6 Replace “clockwise” in rule 5 with "counterclockwise”
  • the setting unit 113 selects the rule 5 or rule 6, whichever has the shorter travel distance to reach the passage, and uses it for route setting.
  • the lawn mowing robot 1 After moving to the next partial area, the lawn mowing robot 1 returns to step S21 and continues its operation. A series of work from the start in step S11 to the end of work in step S43 is called an "episode". Even if one episode ends, the lawnmower robot 1 starts the next episode if the grass grows over time. In the second and subsequent episodes, there may be partial areas that have been switched as target areas for the second route setting method.
  • the lawnmower robot 1 determines by the setting unit 113 that the reached partial area is the target area for the second route setting method (YES), and based on the boundary information acquired in step S11, determines that partial area.
  • a work path is set for the area by the second path setting method (step S51).
  • the lawnmower robot 1 travels along the work path set in step S51 by the travel control unit 115 (step S52).
  • the lawnmower robot 1 repeatedly detects an object by the object detection unit 112 while traveling along the work path.
  • step S53 the lawn mowing robot 1 determines whether or not it has traveled a certain distance (step S53), and repeats the operation of step S53 until it determines that it has traveled (YES). Then, when the lawnmower robot 1 determines that it has traveled a certain distance, the robot 1 resets the work path by the second path setting method, taking into consideration the information on the objects detected so far (step S54). In the lawnmower robot 1, in step S53, it is determined whether or not the approach of an object has been detected. You may
  • the lawnmower robot 1 determines whether or not it has reached the end point of the work path set in the current partial area (step S55). If the lawnmower robot 1 determines in step S55 that it has not reached the end point of the work path (NO), it returns to step S52 and repeats the operation. When the lawnmower robot 1 determines that the end point of the work path has been reached (YES) in step S55, it next determines whether or not the switching condition is satisfied in the current partial area (step S61). A condition for switching from the second route setting method to the first route setting method is satisfied, for example, when all obstacles detected as objects other than boundaries have shapes, positions, and sizes that allow detours. Conditions are used.
  • step S61 determines in step S61 that the switching condition is satisfied (YES)
  • step S62 switches the setting method of the current work path for the partial area (step S62).
  • step S62 determines whether or not the work end condition is satisfied (step S63).
  • step S63 When the lawnmower robot 1 determines that the work end condition is satisfied (YES) in step S63, it ends this operation procedure.
  • the setting unit 113 and the travel control unit 115 determine the movement path to move toward the next partial area through the passage leading to the current partial area. , and moves to the next partial area along the set moving route (step S64).
  • An example of setting a work route by route setting processing will be described below.
  • FIG. 6 is a diagram showing a first example of the work target area.
  • FIG. 6 shows a work target area A10 including a rectangular partial area A11 and a partial area A13 connected to the partial area A11 by a path E12.
  • directions D1 to D4 similar to those in FIG. 2 are represented.
  • FIG. 7 is a diagram showing an example of routes set by the first route setting method.
  • the setting unit 113 sets the work route using the corner of the direction D1 and the direction D4 of the partial area A11 as the starting point P11-1.
  • the end point P12-1 at the end of the partial area A11 is set as the end point of the work route.
  • the setting unit 113 sets the movement route using Rule 5 or Rule 6 above.
  • rule 5 requires a shorter travel distance to the passage E12 than rule 6. Therefore, the setting unit 113 uses rule 5 to determine the route from the end point P12-1 to the passage E12.
  • a movement path C12-1 is set that advances to the position and passes through the path E12 from there. Further, the setting unit 113 sets a moving path C12-1 that, when reaching the boundary of the partial area A13, turns to the right and proceeds to the corners of the directions D2 and D3 of the partial area A13.
  • the lawnmower robot 1 travels along the movement path C12-1 thus set by the travel control unit 115 to move to the partial area A13.
  • the end point of the movement route C12-1 is the start point P13-1 of the next work route.
  • the lawnmower robot 1 determines that the work end condition is satisfied when the area of the unreached area in the work target area is less than 5% of the entire area.
  • FIG. 8 shows an example of a work route set using the second route setting method in the work target area A10.
  • FIG. 8 is a diagram showing an example of routes set by the second route setting method.
  • the setting unit 113 departs from the departure point P11-2, which is the same as in the example of FIG.
  • a work path C11-2 is set that deviates in the direction D2 while reciprocating to and ends at the end point P12-2.
  • the setting unit 113 sets a movement route C12-2 from the end point P12-2 to the start point P13-2 of the partial area A13 through the path E12, and sets the work route C13-2 in the partial area A13. ing.
  • the object detection unit 112 resets the work route each time the vehicle travels a certain distance.
  • the processing load is compared between the case where the route is set by the first route setting method and the case where the route is set by the second route setting method for the entire work target area A10. do.
  • FIG. 9 is a diagram showing the processing load in the work target area A10.
  • FIG. 9 shows the number of steps and the processing time when the process of setting the work path is performed in the work target area A10. In both cases, the larger the numerical value, the larger the processing load. More specifically, the period from the start point of the entire work path in the work target area to the satisfaction of the work end condition is called one episode, and the NN used in the first and second route setting methods from an unlearned state. and 500 episodes while learning for NXCS.
  • the results for the best (minimum number of steps) and worst (maximum number of steps) trials among the 10 trials and the average value of the number of steps for the 10 trials are shown.
  • the number of steps was minimum 2353.0, maximum 8139.0, average 2752.3, and average processing time was 984.7 seconds.
  • the number of steps was minimum 2366.0, maximum 30076.0, average 17243.6, and processing time averaged 1406.8 seconds.
  • the second route setting method it is difficult to set the movement route to the next partial area, and the average number of steps and average processing time are longer than in the first route setting method.
  • the first route setting method since rules 1 to 10 allow the vehicle to travel efficiently, both the average number of steps and the average processing time are smaller than in the second route setting method. In this way, the first route setting method tends to have a smaller processing load than the second route setting method.
  • the lawnmower robot 1 sets the work route only by the first route setting method. It's getting smaller. In this manner, the lawnmower robot 1 basically uses the first route setting method with a low processing load, and uses the second route setting method with a high processing load only when the switching condition is satisfied. By using this method, it is possible to reduce the processing load when setting the work route, compared to the case where the second route setting method is used for the basic processing.
  • FIG. 10 is a diagram showing a second example of the work target area.
  • FIG. 10 shows a work target area A20 including a rectangular partial area A21 and a partial area A23 connected to the partial area A21 by a path E22.
  • a spiral wall F23 exists in the partial area A23, and an inner area A24 of the wall F23 is included.
  • FIG. 10 shows directions D1 to D4 similar to FIG.
  • FIG. 11 is a diagram showing an example of routes set by the first route setting method.
  • the setting unit 113 sets the work route using the corner of the direction D1 and the direction D4 of the partial area A21 as the starting point P21-1.
  • the end point P22-1 at the end of the partial area A21 is set as the end point of the work route.
  • the setting unit 113 sets a movement route C22-1 passing through the path E22, and sets a work route C23-1 for the partial area A23 from the starting point P23-1 for the partial area A23. As shown in FIG. 11, in the first route setting method, the route cannot be set to the depth of the inner region A24 of the spiral wall F23. On the other hand, in the second route setting method, the route can be set to the depth of the internal area A24.
  • FIG. 12 is a diagram showing an example of routes set by the second route setting method.
  • the setting unit 113 sets a work path C21-2 that travels throughout the partial area A21 from the starting point P21-2 at the corner of the directions D1 and D4. Further, the setting unit 113 sets a movement route C22-2 from the partial area A21 to the partial area A23 through the path E22, and sets a work route C23-2 in the partial area A23. Furthermore, the setting unit 113 sets a work path C24-2 leading to the inner region A24 of the spiral wall F23.
  • FIG. 13 is a diagram showing an example of the route set by the route setting process.
  • the work path C21-3 is set by
  • the setting unit 113 also sets a movement path C22-3 that moves from the end point of the work path C21-3 to the partial area A23.
  • the setting unit 113 uses the second path setting method to set a work path C23-3 in the partial area A23 and a work path C24-3 leading to the inner area A24 of the wall F23.
  • the setting unit 113 sets the work path for both the partial area A21 and the partial area A23 by the first path setting method for the first time, and sets the work path for the partial area A23 by the second path setting method for the second and subsequent times. set.
  • FIG. 14 is a diagram showing the processing load in the second example.
  • FIG. 14 shows the number of steps and the processing time when the process of setting the work path is performed in the work target area A20.
  • FIG. 14 also shows the results for the best (minimum number of steps) and worst (maximum number of steps) out of 10 trials, and the average value of the number of steps for 10 trials, with 500 episodes performed as one trial.
  • the number of steps was minimum 2433.0, maximum 8059.8, average 2908.3, and average processing time was 7458.3 seconds.
  • the minimum number of steps was 2386.7
  • the maximum was 30054.7
  • the average was 17131.2
  • the average processing time was 85616.8 seconds.
  • the minimum number of steps is 2460.7, the maximum number is 12881.7, and the average number is 5580.8.
  • the average time was 50605.1 seconds.
  • the first route setting method is basically used, but the second route setting method is used depending on the area.
  • the processing load it is possible to reduce the processing load while reducing the unreachable area.
  • the amount of resources is limited and the upper limit of the load that can be processed is likely to occur.
  • the first route setting method and the second route setting method are used properly to reduce the unreached area and improve the work quality in the work area. It is possible to improve the possibility that a route will be set.
  • NN Neuron
  • NXCS Neuro-network XCS
  • Other machine learning methods include, for example, XCS (eXtended Classifier System), SVM (Support Vector Machine), Deep Learning, CNN (Convolutional Neural Network), RNN (Recurrent Neural Network, etc.), PCA (Private Computer) may be used.
  • the setting unit 113 uses a route setting method of setting a route based on a learned model learned by a machine learning method.
  • a route setting method include a method of setting a route using an algorithm devised by humans and a method of setting a route created by a method other than machine learning among AI (Artificial Intelligence) methods.
  • AI Artificial Intelligence
  • the determination unit 114 may use a switching condition different from the embodiment.
  • the determination unit 114 may determine, for example, whether or not the switching condition is satisfied according to the length of the set work path. In general, the shorter the work path, the lower the power consumption of the work machine and the higher the work quality. Therefore, the determining unit 114 calculates, for example, the total length of an ideal working path that does not overlap at all, and calculates the ratio of the length of the set working path to the total length. The closer the ratio is to 1, the higher the work quality, and the farther from 1, the lower the work quality. The determination unit 114 determines that the switching condition is satisfied when the calculated ratio is equal to or greater than the threshold.
  • the determination unit 114 may determine whether or not the switching condition is satisfied according to the number of times of direction change in the set work route. In general, the smaller the number of direction changes, the less time lost during direction changes and the higher the work quality. Therefore, the determining unit 114 calculates, for example, the number of direction changes on the work route that minimizes the number of direction changes, and calculates the ratio of the number of direction changes on the set work route to the number of times. This ratio also indicates that the closer to 1, the higher the work quality, and the farther from 1, the lower the work quality. The determination unit 114 determines that the switching condition is satisfied when the calculated ratio is equal to or greater than the threshold.
  • the determination unit 114 may determine whether or not the switching condition is satisfied according to the ratio of the reached areas included in the set work route.
  • the percentage of the reached area is the area where the work has actually been reached by the working machine that has traveled all of the set work paths. The smaller the ratio of the reached area, the less wasted travel and the higher the work quality.
  • the determination unit 114 calculates the ratio of the reached area by detecting the load amount of the motor that rotates the blade disk provided in the self-machine.
  • the amount of load on the motor is maximized when the grass is cut to the full width of the blade disc, and becomes smaller as the width of the blade disc includes more areas that have already been reached.
  • the determining unit 114 creates a graph in which the travel distance and the load amount of the motor are associated with each other, and determines that the switching condition is satisfied when the area obtained by collecting the differences from the maximum value of the load amount of the motor is equal to or greater than the threshold value. to decide. It should be noted that it may be determined that the switching condition is satisfied when the distance for traveling the reached area again is accumulated and the accumulated distance reaches a threshold value.
  • the determining unit 114 may reduce the accumulated distance according to the distance traveled in the unreached area.
  • the determination unit 114 calculates the distance traveled in the unreached area by detecting the load amount of the motor described above. Unreached Area By doing so, it is less likely that the route setting method will be switched in the middle even though the quality of the work route is gradually improving, compared to the case where the accumulated distance is not reduced.
  • the determination unit 114 may similarly determine by accumulating the time to travel the reached area again instead of the distance described above. Further, the determination unit 114 may determine that the switching condition is satisfied when the degree of complexity of the shape of the boundary detected by the boundary detection unit 111 exceeds a predetermined criterion. This is because the more complicated the shape of the boundary, the more difficult it becomes to set a route with good work quality under the rules used in the first route setting method.
  • the determination unit 114 should use, as the switching condition, a condition that is satisfied in a situation where it is highly likely that it is difficult to set a good route using the first route setting method. Furthermore, the determination unit 114 preferably uses, as a switching condition, a condition that is satisfied in a situation where it is difficult to set a good route using the first route setting method but is likely to be able to set a good route using the second route setting method. By using such a switching condition, it is possible to improve the possibility of setting a route with high work quality in the work area, as in the embodiment.
  • the setting unit 113 may use work end conditions different from those in the embodiment.
  • the setting unit 113 may use, for example, a condition that is satisfied when a predetermined amount of time has passed or a condition that is satisfied when the battery of the working machine has decreased to a predetermined amount as the work end condition.
  • the setting unit 113 may use, as the work end condition, a condition that is satisfied when the work in the work target area is almost completed.
  • the work performed by the working machine is not limited to lawn mowing, and may be, for example, tillage, fertilizer spreading, or chemical spraying by an autonomously traveling agricultural robot, or an autonomously traveling vacuum cleaner robot. Cleaning by
  • the first method tends to have a smaller processing load than the second method.
  • the first method is a method of setting a continuous route according to a rule that the working machine repeats movement and direction change at the boundary of the working area.
  • the first method includes a plurality of rules in which at least one of the initial direction of travel and the direction after direction change is different, and the work quality is the best among the plurality of rules. The one that is the way to choose and set the route.
  • the work quality is represented by any one of the set length of the route, the number of directional changes in the route, and the ratio of reached areas included in the route.
  • the percentage of the unreached area or the reached area is calculated by detecting the load amount of a motor provided in the working machine.
  • the detection step detects an object existing in the work area
  • the second method includes detecting the acquired boundary information and the detected object each time the work machine travels a predetermined distance. a method of resetting said path based on the position of said object.
  • the first method and the second method are methods of setting a route based on learned models respectively learned by different machine learning techniques.
  • the first method uses a machine learning method using a neural network that can be selected from a plurality of types of patterned paths
  • the second method uses a machine learning method using a classifier system.
  • the work performed by the work machine is lawn mowing.
  • a work machine capable of autonomous travel which is configured to execute each step of the information processing system.
  • control unit 12 storage unit 13: communication unit 14: sensor unit 15: running unit 16: working unit 111: boundary detection unit 112: object detection unit 113: setting unit 114: determination unit 115: running Control unit 116: work control unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

【課題】作業領域において作業品質が高い経路が設定される可能性を向上させることができる情報処理システム等を提供すること。 【解決手段】本発明の一態様によれば、情報処理システムが提供される。この情報処理システムにおける取得ステップでは、自律走行可能な作業機が対象とする作業領域の境界を示す境界情報を取得する。設定ステップでは、取得された境界情報に基づき作業領域から未到達領域をなくすための作業機の経路を設定し、第1の方法により設定される経路を用いたときの作業品質が所定の基準を満たさない場合は第2の方法により経路を設定する。

Description

情報処理システム、作業機及びプログラム
 本発明は、情報処理システム、作業機及びプログラムに関する。
 所定の領域に芝刈り等の作業を行う技術として、特許文献1には、画像内の仮想マーカーを識別して作業領域の境界を示す境界データを生成してロボット芝刈り機の作業領域内での動作を制御する技術が開示されている。
米国特許出願公開第2021/0018927号明細書
 特許文献1に記載のロボット芝刈り機のように自律走行可能な作業機においては、作業を行う際に走行する経路も自動的に設定されると人の手間が省かれる。しかし、作業領域の形状、大きさ及び障害物の配置等には様々なものがあるので、作業経路によっては作業品質が大きく下がることが起こりうる。例えば、作業領域の形状が複雑に入り組んでいる場合などにおいては経路の設定が複雑化するため、最適経路を学習する処理装置部分に大きな負担がかかることがある。しかし、処理装置の負担を軽減させて処理速度を優先すると、経路設定を単純化せざるを得ず、結果として、経路設定の精度が落ちることになる。具体的には、無駄な重複経路を辿って作業機の未達領域(刈残し領域)が増大する、又は、同じ領域の作業を完了させるための時間が長くかかる、等のおそれがある。
 本発明では上記事情を鑑み、作業領域において作業品質が高い経路が設定される可能性を向上させることができる情報処理システム等を提供することとした。
 本発明の一態様によれば、情報処理システムが提供される。この情報処理システムにおける取得ステップでは、自律走行可能な作業機が対象とする作業領域の境界を示す境界情報を取得する。設定ステップでは、取得された境界情報に基づき作業領域から未到達領域をなくすための作業機の経路を設定し、第1の方法により設定される経路を用いたときの作業品質が所定の基準を満たさない場合は第2の方法により経路を設定する。
 このような一態様によれば、作業領域において作業品質が高い経路が設定される可能性を向上させることができる。
芝刈りロボット1の外観を示す図である。 芝刈りロボット1の走行経路の一例を示す図である。 芝刈りロボット1のハードウェア構成を示す図である。 芝刈りロボット1の機能構成を示す図である。 経路設定処理における動作手順を示す図である。 作業対象領域の第1の例を示す図である。 第1の経路設定方法により設定された経路の一例を示す図である。 第2の経路設定方法により設定された経路の一例を示す図である。 作業対象領域A10における処理の負荷を示す図である。 作業対象領域の第2の例を示す図である。 第1の経路設定方法により設定された経路の一例を示す図である。 第2の経路設定方法により設定された経路の一例を示す図である。 経路設定処理により設定された経路の一例を示す図である。 第2の例における処理の負荷を示す図である。
 以下、図面を用いて本発明の実施形態について説明する。以下に示す実施形態中で示した各種特徴事項は、互いに組み合わせ可能である。
 ところで、本実施形態に登場するソフトウェアを実現するためのプログラムは、コンピュータが読み取り可能な非一時的な記録媒体(Non-Transitory Computer-Readable Medium)として提供されてもよいし、外部のサーバからダウンロード可能に提供されてもよいし、外部のコンピュータで当該プログラムを起動させてクライアント端末でその機能を実現(いわゆるクラウドコンピューティング)するように提供されてもよい。
 また、本実施形態において「部」とは、例えば、広義の回路によって実施されるハードウェア資源と、これらのハードウェア資源によって具体的に実現されうるソフトウェアの情報処理とを合わせたものも含みうる。また、本実施形態においては様々な情報を取り扱うが、これら情報は、例えば電圧・電流を表す信号値の物理的な値、0又は1で構成される2進数のビット集合体としての信号値の高低、又は量子的な重ね合わせ(いわゆる量子ビット)によって表され、広義の回路上で通信・演算が実行されうる。
 また、広義の回路とは、回路(Circuit)、回路類(Circuitry)、プロセッサ(Processor)、及びメモリ(Memory)等を少なくとも適当に組み合わせることによって実現される回路である。すなわち、特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)、プログラマブル論理デバイス(例えば、単純プログラマブル論理デバイス(Simple Programmable Logic Device:SPLD)、複合プログラマブル論理デバイス(Complex Programmable Logic Device:CPLD)、及びフィールドプログラマブルゲートアレイ(Field Programmable Gate Array:FPGA))等を含むものである。
1.ハードウェア構成
 本節では、本実施形態に係る作業機である自走式の芝刈りロボットのハードウェア構成について説明する。すなわち、本実施形態においては、作業機によって行われる作業は、芝刈りである。また、作業機は、自律走行可能な作業機であり、作業(芝刈り)に関する動作を制御するための情報処理システムの各部を備える。
 図1は、芝刈りロボット1の外観を示す図である。芝刈りロボット1は、筐体の内部にブレードディスク、タイヤ、それらを回転させるモータ及びバッテリー等を備える。芝刈りロボット1は、芝の生えたフィールドを駆動モータによって走行しながら、ブレードディスクを作業モータによって回転させて芝を所定の高さに刈り揃える。芝刈りロボット1は、自装置が備える前述した情報処理システムによりフィールド内の走行経路を自ら設定し、設定した走行経路を走行しながら芝刈りを行う。
 図2は、芝刈りロボット1の走行経路の一例を示す図である。図2では、長方形の形状をした作業対象領域A1が表されている。図2では、作業対象領域A1の短辺に沿った方向D1及び方向D3と、作業対象領域A1の長辺に沿った方向D2及び方向D4とが表されている。作業対象領域A1は、自領域の内外の境目となる境界B1を有する。作業対象領域A1においては、境界B1に沿ってワイヤーが埋設されているものとする。
 芝刈りロボット1は、2次元又は3次元空間におけるワイヤーの位置を認識することで、境界B1が形作る形状及び大きさ、すなわち作業対象領域A1の外周の形状及び大きさを認識する。芝刈りロボット1は、認識した作業対象領域A1の形状及び大きさに基づいて走行経路を設定する。芝刈りロボット1は、図2の例では、作業経路C1を設定している。作業経路C1は、作業対象領域A1の方向D1及び方向D4の角を出発地点P1としている。
 作業経路C1は、出発地点P1から方向D2に向けて出発し、境界B1に到達すると、方向D3に方向変換して芝刈りロボット1の幅の長さだけ移動してから方向D4に再度方向変換する経路となっている。作業経路C1は、このように2度の方向変換により、進行してきた経路に沿って折り返す経路となっている。折り返しの際に移動する方向(ここでは方向D3)のことを以下では「折返し方向」と言う。
 そして、作業経路C1は、方向D4に向けて進行し、境界B1に到達すると、方向D3を折返し方向として方向D2に折り返す経路となっている。作業経路C1は、このように折返し方向である方向D3に少しずつずれながら方向D2及び方向D4への移動を繰り返して往復する経路となっている。作業経路の設定方法の詳細は後ほど詳しく説明する。
 図3は、芝刈りロボット1のハードウェア構成を示す図である。芝刈りロボット1は、制御部11と、記憶部12と、通信部13と、センサ部14と、走行部15と、作業部16とを備える。
(制御部11)
 制御部11は、例えば不図示の中央処理装置(Central Processing Unit:CPU)である。制御部11は、記憶部12に記憶された所定のプログラムを読み出すことによって、芝刈りロボット1に係る種々の機能を実現する。すなわち、記憶部12に記憶されているソフトウェアによる情報処理が、ハードウェアの一例である制御部11によって具体的に実現されることで、制御部11に含まれる各機能部として実行されうる。これらについては、次節においてさらに詳述する。なお、制御部11は単一であることに限定されず、機能ごとに複数の制御部11を有するように実施してもよい。またそれらの組合せであってもよい。
(記憶部12)
 記憶部12は、前述の記載により定義される様々な情報を記憶する。これは、例えば、制御部11によって実行される芝刈りロボット1に係る種々のプログラム等を記憶するソリッドステートドライブ(Solid State Drive:SSD)等のストレージデバイスとして、あるいは、プログラムの演算に係る一時的に必要な情報(引数、配列等)を記憶するランダムアクセスメモリ(Random Access Memory:RAM)等のメモリとして実施されうる。記憶部12は、制御部11によって実行される芝刈りロボット1に係る種々のプログラムや変数等を記憶している。
(通信部13)
 通信部13は、芝刈りロボット1から種々の電気信号を外部の構成要素に送信可能に構成される。また、通信部13は、外部の構成要素から芝刈りロボット1への種々の電気信号を受信可能に構成される。さらに好ましくは、通信部13がネットワーク通信機能を有し、これによりインターネット等のネットワークを介して、芝刈りロボット1と外部機器との間で種々の情報を通信可能に実施してもよい。
(センサ部14)
 センサ部14は、芝刈りロボット1が処理のパラメータとして用いる各種の値を測定するセンサ群を有する。センサ部14は、例えば、測位センサ、方位センサ、角速度センサ、加速度センサ、ブレードディスクのトルクセンサ、ワイヤー検出センサ及び物体検知センサ等を備える。測位センサは、GPS(Global Positioning System)等により自装置の位置を測定する。方位センサは、自装置の向きを測定する。角速度センサは、自装置が回転する際の角速度を測定する。加速度センサは、自装置の加速度を測定する。ブレードディスクのトルクセンサは、芝刈りブレードの回転に伴うモータの負荷を検出する。この検出値に基づいて、前述した制御部11がブレードディスクの推定仕事量を算出する。ワイヤー検出センサは、図2の境界B1等に埋設されたワイヤーを検出する。物体検知センサは、ミリ波等を照射し、それを反射する物体を検知する。
(走行部15)
 走行部15は、タイヤ及びモータ等を備え、自装置を走行させる。走行部15は、制御部11により制御され、直進、後進及び方向転換等を行う。
(作業部16)
 作業部16は、ブレードディスク及びモータ等を備え、制御部11により制御され、ブレードディスクを回転させて芝を刈り込む。
2.機能構成
 本節では、本実施形態の機能構成について説明する。前述の通り、記憶部12に記憶されているソフトウェアによる情報処理がハードウェアの一例である制御部11によって具体的に実現されることで、制御部11に含まれる各機能部が実行されうる。
 図4は、芝刈りロボット1の機能構成を示す図である。芝刈りロボット1は、境界検知部111と、物体検知部112と、設定部113と、判定部114と、走行制御部115と、作業制御部116とを備える。境界検知部111は、自装置が作業を行う対象である作業対象領域の境界を検知する。境界検知部111は、例えば、図2の例であれば、まず、作業対象領域A1の外周に沿って埋設されたワイヤーを検知する。境界検知部111は、例えば、特開2016-208950号公報等に記載されているワイヤー方式での自律走行で用いられている周知技術を用いてワイヤーを検知する。
 そして、境界検知部111は、検知したワイヤーに沿って外周を走行することで、作業対象領域A1の境界B1を検知する。境界検知部111は、検知した境界B1の2次元又は3次元空間上の座標の集合で表された検知結果データを取得する。境界検知部111は「取得ステップ」を実行する機能の一例であり、検知結果データは「境界情報」の一例である。このようにして、情報処理システムにおける境界検知部111(取得部)は、自律走行可能な芝刈りロボット1(作業機)が対象とする作業領域の境界を示す境界情報を取得する。境界検知部111は、取得した検知結果データを設定部113に供給する。
 物体検知部112は、作業領域に存在する物体を検知する。物体検知部112は「検知ステップ」を実行する機能の一例である。作業対象領域には、芝刈りロボット1の進行を阻害する物体(すなわち障害物)が存在する場合がある。障害物は、例えば、石や岩などの自然物や、人が置き忘れた道具等の人工物である。物体検知部112は、境界B1に沿って埋設されたワイヤーも障害物として検知する。物体検知部112は、物体との距離が多少離れていてもその物体を検知することが可能である。物体検知部112は、検知した物体(障害物)の位置及び方向を示す物体情報を設定部113及び走行制御部115に供給する。
 設定部113は、境界検知部111により取得された境界情報に基づき、作業領域から未到達領域をなくすための作業機の経路を設定する。設定部113は「設定ステップ」を実行する機能の一例である。設定部113は、本実施形態では、次に述べる第1の経路設定方法及び第2の経路設定方法という2通りの方法で作業経路を設定する。第1の経路設定方法及び第2の経路設定方法は、いずれも、機械学習手法によって学習された学習済みモデルに基づいて経路を設定する方法である。
 第1の経路設定方法では、パターン化された複数種類の経路から選択可能なニューラルネットワーク(NN:Neural Network)を利用した機械学習方法が用いられる。NNとは、入力層、中間層、出力層といった多層のネットワーク構造を有する学習モデルである。NNによれば、入力データと出力データとの関係を示す学習データを用いて、誤差逆伝搬法等のアルゴリズムでネットワーク内部の複数のモデルパラメータが最適化されることにより、学習モデルを取得することができる。本実施形態では、第1の経路設定方法は、予め決められた複数の行動ルールから最適なものを選択するモデルをNNの手法により学習し、学習済みのモデルに基づいて経路を設定する方法である。
 第2の経路設定方法では、クラシファイアシステムを利用した機械学習方法が用いられる。クラシファイアシステムとは、条件部と行動部によって構成されるルール(クラシファイア)の集合であり、それらのルールに従い環境からの入力に対して行動を出力した結果に基づいてルールの適切さを学習するものである。本実施形態では、第2の経路設定方法は、一定距離走行するたびに環境情報を取得して最適な経路を設定するモデルをNXCS(Neural-network eXtended Classifier System)により学習し、学習済みのモデルに基づいて経路を設定する方法である。NXCSとは、条件部のマッチ判定にニューラルネットワークを用いることで,連続値環境に対応可能なクラシファイアシステムである。
 このように、第1の経路設定方法としてニューラルネットワークを用いることで、比較的単純な地形内での経路選択に関わる処理を簡便化でき、作業効率を向上できる。また、第2の経路設定方法としてクラシファイアシステムによる学習を併用することで、第1の経路設定方法では対応が困難な場面でも最適経路を設定でき、多様な地形で効率と作業品質を維持して作業が実行される。なお、第2の経路設定方法による作業が完了したと判断すると、第1経路設定方法に切り替わるように設定されることが望ましい。このように組み合わせることで、第1、第2の学習方法のそれぞれの特長が最大限に活かされ、無駄な処理負荷、処理時間を取り除き、作業効率が一層向上する。
 第1の経路設定方法は「第1の方法」の一例であり、第2の経路設定方法は「第2の方法」の一例である。第1の方法及び第2の方法は、上記の通り、異なる機械学習手法、本実施形態ではNN及びNXCSによってそれぞれ学習された学習済みモデルに基づいて、経路を設定する方法である。このように機械学習を用いることで、経路の設定を繰り返すほどより望ましい作業経路が設定されるようになる。
 設定部113は、第1の経路設定方法で経路を設定する場合、まず、境界検知部111から供給された境界情報を用いて経路を設定する。詳細には、設定部113は、作業機が進行と作業領域の境界における方向変換とを繰り返すルールにより、連続する経路を設定する方法を第1の方法として用いて経路を設定する。このようなルールを用いることで、作業対象領域の大きさが変化しても、進行する距離が長くなったり折返しの数が少し増えたりするだけで、作業経路の設定時の処理の負荷の変化を抑制することができる。
 また、設定部113は、初期の進行方向及び方向変換後の方向の少なくとも1つが異なる複数のルールを有し、当該複数のルールのうち作業品質が最も良好になるものを選んで経路を設定する方法を第1の方法として用いて経路を設定する。作業品質とは、作業機である芝刈りロボット1が行う作業の品質のことである。例えば、芝刈りロボット1が一定時間作業を行った場合に、作業が完了する領域が多いほど、作業の品質が高いと言える。
 つまり、例えば30分間作業し、領域面積全体の草刈り作業が完了した場合の作業品質と領域面積の半分しか草刈り作業が完了しない作業品質とでは、前者の作業品質の方が高いということである。なお、作業品質の評価方法はこれに限らない。例えば、領域面積全体の作業を完了するまでに要する時間が短いほど作業品質が高いものとしてもよいし、領域面積全体の作業を完了するまでに走行する距離が短いほど作業品質が高いものとしてもよい。いずれにしても、本実施形態では、前述したように複数のルールからいずれかを選べるようにすることで、ルールを1つに固定する場合に比べて、第1の経路設定方法で作業経路を設定した場合の作業品質を向上させることができる。もちろん、このように作業品質を向上させるべく選択設定された作業品質が、走行ルールや学習機能を備えずランダムに走行する場合の作業品質に比して各段に高い。
 複数のルールとは、例えば、作業対象領域が長方形である場合に、図2の例のように長辺に沿った方向及び短辺に沿った方向を初期の進行方向及び折返し方向としてそれぞれ用いるルールである。設定部113は、本実施形態では、以下の4つのルールを用いる。
ルール1:初期方向=方向D1、折返し方向=方向D4、折り返し後の進行方向=D3、障害物回避
ルール2:初期方向=方向D2、折返し方向=方向D3、折り返し後の進行方向=D4、障害物回避
ルール3:初期方向=方向D3、折返し方向=方向D2、折り返し後の進行方向=D1、障害物回避
ルール4:初期方向=方向D4、折返し方向=方向D1、折り返し後の進行方向=D2、障害物回避
 設定部113は、作業機の作業の開始地点において選択すると作業品質が最も高くなるルールを選択し、選択したルールに則って経路を設定する。例えば図2に示す作業対象領域A1において出発地点P1とする場合、ルール2(初期方向=方向D2、折返し方向=方向D3)であればA1の中を隅々まで進行可能なので作業品質が最も高くなる。そこで、設定部113は、ルール2を選択して作業経路C1を設定している。設定部113は、設定した作業経路を走行中にも例えば所定の距離を走行する度に作業品質が最も高くなるルールを選択し、選択するルールが作業経路の途中の位置で変化した場合は、その位置から新たなルールで作業経路を再設定する。
 設定部113は、作業前に設定した作業経路を芝刈りロボット1が走行するときに、障害物の回避ルールに則り経路設定を行う。設定部113は、物体検知部112から供給された物体情報を用いて、作業経路上に障害物があることを認識する。設定部113は、認識した障害物を迂回可能な場合は、その障害物を迂回して元の作業経路に戻る作業経路を再設定する。また、設定部113は、認識した障害物を迂回不可な場合(例えば迂回して元の作業経路に戻る前に作業対象領域の境界に達する場合)、迂回を開始した地点に戻ってその地点で折り返しを行う作業経路を再設定する。
 上記のとおり、設定部113は、第1の経路設定方法において作業経路の再設定を行う場合は、上記のルール1~4及び障害物の回避ルールのいずれかのルールを用いる。一方、設定部113は、第2の経路設定方法を用いた場合も作業経路の再設定を行うが、特定のルールに制限されることがない点で第1の経路設定方法と異なる。具体的には、設定部113は、作業機が所定の距離走行するたびに、境界検知部111により取得された境界情報及び物体検知部112により検知された物体の位置に基づいて経路を設定し直す方法を第2の経路設定方法として用いて経路を設定する。
 設定部113は、第2の経路設定方法を用いた場合、例えば経路の途中に障害物が見つかりそれまでの経路が通れなくなると、新たに最適な経路を設定する。つまり、障害物等により一旦到達できなくなった領域も、新たに設定される経路により到達することができるようになる可能性が生じる。このように、第2の経路設定方法を用いると、一度設定された経路は走行中に変更されない第1の経路設定方法が用いられる場合に比べて、到達することができない領域を減少させることができる。
 設定部113は、第1の経路設定方法で経路を設定した場合、設定した経路を示す経路情報を判定部114に供給する。判定部114は、経路の設定方法を第1の経路設定方法から第2の経路設定方法に切り替えるための切替条件が満たされているか否かを判定する。具体的には、判定部114は、第1の経路設定方法により設定される経路を用いたときの作業品質が所定の基準を満たすか否かを、切替条件として判定する。
 判定部114は、例えば、設定された経路において決まっている折り返す位置と、実際に走行して何らかの物体に突き当たった位置との差が閾値未満である場合に、所定の基準を満たすと判定する。判定部114は、反対に、前述した差が閾値以上である場合に、作業品質が所定の基準を満たさないと判定する。設定された経路のとおり走行した場合の位置から大きくずれるということは、例えば、経路上に障害物がある、又は、経路が平らではなく傾斜又は凹凸がありまっすぐ走行することができない等の理由が考えられる。
 いずれの場合も、設定された経路での作業品質が良好であることを期待することができないので、判定部114は、作業品質が所定の基準を満たさないと判定する。判定部114は、作業品質が所定の基準を満たさないと判定した場合は、その旨を設定部113に通知する。設定部113は、判定部114から通知を受け取った場合、すなわち、第1の経路設定方法により設定される経路を用いたときの作業品質が所定の基準を満たさない場合は、第2の経路設定方法により経路を設定する。
 走行制御部115は、自装置(芝刈りロボット1)の走行時の動作を制御する。走行制御部115は、自装置の位置及び向きを取得して、所定の方向に前進、後進及び方向転換等させるように自装置の走行動作を制御する。作業制御部116は、自装置(芝刈りロボット1)の作業時の動作を制御する。作業制御部116は、本実施形態では、走行中にブレードディスクを回転させて芝を刈る動作を制御する。芝刈りロボット1は、上述した各機能により、作業対象領域の経路を設定する経路設定処理を実行する。
 図5は、経路設定処理における動作手順を示す図である。経路設定処理は、例えば、芝刈りロボット1を作業対象領域の開始地点に配置することを契機に開始される。まず、芝刈りロボット1は、境界検知部111によって、例えば、作業対象領域の外周に沿って埋設されたワイヤーを検知することで、作業対象領域の境界を示す境界情報を取得する(ステップS11)。次に、芝刈りロボット1は、例えば、作業対象領域において向かい合う境界同士の距離が閾値未満である部分を「通路」として認識する。
 そして、芝刈りロボット1は、通路で区切られた領域を「部分領域」として認識する(ステップS12)。次に、芝刈りロボット1は、走行制御部115によって、認識した部分領域のうちの1つまで走行し、到達する(ステップS21)。芝刈りロボット1が到達した地点は、その部分領域における作業の開始地点となる。続いて、芝刈りロボット1は、設定部113によって、到達した部分領域が第2の経路設定方法の対象領域であるか否かを判断する(ステップS22)。
 作業対象領域における初回の作業においては、全ての部分領域が第1の経路設定方法の対象領域となっているものとする。よって、初回の作業においては、芝刈りロボット1は、設定部113によって、到達した部分領域が第2の経路設定方法の対象領域ではない(NO)と判断し、ステップS11において取得された境界情報に基づき、その部分領域について、第1の経路設定方法で作業経路を設定する(ステップS31)。
 続いて、芝刈りロボット1は、走行制御部115によって、ステップS21において設定された作業経路に沿って走行する(ステップS32)。次に、芝刈りロボット1は、一定距離を走行したか否かを判断する(ステップS33)。そして、芝刈りロボット1は、一定距離を走行した(YES)と判断すると、第1の経路設定方法によりルール1~4のいずれかを選択して作業経路を再設定する(ステップS34)。なお、芝刈りロボット1においては、一定距離を無限大又は非常に大きな数と設定することで、部分領域での作業中は再設定が行われないようにしてもよい。
 次に、芝刈りロボット1は、物体検知部112による物体の検知を繰り返し行い、障害物に接近したか否かを判断する(ステップS35)。障害物とは、芝刈りロボット1に接近する物体のうちワイヤーを除いた物である。芝刈りロボット1は、ステップS32で一定距離を走行していない(NO)と判断した場合もステップS35の判断を行う。芝刈りロボット1は、障害物に接近した(YES)と判断すると、設定部113及び走行制御部115によって、障害物の回避ルールに則り、障害物を迂回する作業経路を再設定する(ステップS36)。
 そして、芝刈りロボット1は、現在の部分領域において設定された作業経路の終点に到達したか否かを判断する(ステップS37)。芝刈りロボット1は、ステップS35でNOと判断した場合も、ステップS37の判断を行う。芝刈りロボット1は、ステップS37で作業経路の終点に到達していない(NO)と判断した場合、ステップS32に戻って動作を繰り返す。芝刈りロボット1は、ステップS37で作業経路の終点に到達した(YES)と判断した場合、次に、現在の部分領域の設定方法を切り替えるための条件である切替条件が満たされたか否かを判断する(ステップS41)。
 切替条件は、第1の経路設定方法により設定される経路を用いたときの作業品質が所定の基準を満たすか否かによって表される。本実施形態では、設定された経路において決まっている折り返す位置と、実際に走行して折り返した位置との差が距離閾値以上である箇所の数が個数閾値以上である場合に満たされる条件が切替条件として用いられる。例えば、個数閾値が1であれば、設定された折り返し位置と実際の折り返し位置との差が距離閾値以上である箇所が1つでもあれば、切替条件が満たされる。
 芝刈りロボット1は、ステップS41において切替条件が満たされた(YES)と判断した場合、現在の部分領域の作業経路の設定方法を切り替える(ステップS42)。芝刈りロボット1は、例えば、初回の作業で切り替えると判断した場合、現在の部分領域の設定方法を第1の経路設定方法から第2の経路設定方法に切り替えた旨を記憶しておく。芝刈りロボット1は、ステップS42の次に、又は、ステップS41において切替条件が満たされない(NO)と判断した場合、作業終了条件が満たされたか否かを判断する(ステップS43)。
 作業終了条件とは、芝刈りロボット1による作業対象領域での作業を終了させるための条件である。作業終了条件は、例えば、作業対象領域のうち未到達の領域の面積が全体の5%未満になった場合に満たされるものとする。この作業終了条件は、微小な刈り残しのために機械学習の難易度が極端に増大することを防ぐために用いられる。
 なお、図2及び図6に示す例のように作業対象領域が単純な形状である場合は、刈り残しがほとんど生じないので、作業終了条件として用いる値を5%より小さくしてもよいし、0%としてもよい。また、作業終了条件として用いる値を、初期値として例えば10%に設定しておき、学習量の増加に伴って徐々に、または段階的に減少させていく方法も採用できる。この方法によれば、作業に先んじて人的に詳細な条件設定を行うことを要さずに、学習内容に応じて最適な終了条件が設定される。
 芝刈りロボット1は、ステップS43において作業終了条件が満たされた(YES)と判断すると、この動作手順を終了する。芝刈りロボット1は、作業終了条件が満たされない(NO)と判断すると、設定部113及び走行制御部115によって、現在の部分領域に繋がる通路を通って次の部分領域に向けて移動する移動経路を設定し、設定した移動経路に沿って次の部分領域まで移動する(ステップS44)。
 芝刈りロボット1は、具体的には、移動のためのルール5又はルール6を用いて移動経路を設定する。
ルール5:作業対象領域の外周を右回りに進行し、通路の入り口に到達したらその通路に向けて進行し、次の部分領域に到達したら左右いずれかに曲がってその部分領域の角まで進行。
ルール6:ルール5の「右回り」を「左回り」に置き換え
 設定部113は、ルール5及びルール6のうち、通路に到達するまでの走行距離が短い方を選んで経路設定に用いる。
 芝刈りロボット1は、次の部分領域まで移動した後は、ステップS21に戻って動作を続ける。ステップS11で開始されステップS43で作業が終了するまでの一連の作業を「エピソード」と言う。1つのエピソードが終了しても、時間が経過して草が伸びてくれば芝刈りロボット1による次のエピソードが開始される。2回目以降のエピソードにおいては、第2の経路設定方法の対象領域として切り替えられた部分領域が存在する場合がある。
 その場合、芝刈りロボット1は、設定部113によって、到達した部分領域が第2の経路設定方法の対象領域である(YES)と判断し、ステップS11において取得された境界情報に基づき、その部分領域について、第2の経路設定方法で作業経路を設定する(ステップS51)。続いて、芝刈りロボット1は、走行制御部115によって、ステップS51において設定された作業経路に沿って走行する(ステップS52)。芝刈りロボット1は、作業経路を走行中、物体検知部112による物体の検知を繰り返し行う。
 次に、芝刈りロボット1は、一定距離を走行したか否かを判断し(ステップS53)、走行した(YES)と判断するまでステップS53の動作を繰り返す。そして、芝刈りロボット1は、一定距離を走行したと判断すると、それまでに検知した物体の情報を加味して、第2の経路設定方法で作業経路を再設定する(ステップS54)。なお、芝刈りロボット1においては、ステップS53において、物体の接近を検知したか否かを判断し、物体が接近した(YES)と判断した場合に第2の経路設定方法で作業経路を再設定してもよい。
 芝刈りロボット1は、現在の部分領域において設定された作業経路の終点に到達したか否かを判断する(ステップS55)。芝刈りロボット1は、ステップS55で作業経路の終点に到達していない(NO)と判断した場合、ステップS52に戻って動作を繰り返す。芝刈りロボット1は、ステップS55で作業経路の終点に到達した(YES)と判断した場合、次に、現在の部分領域において切替条件が満たされたか否かを判断する(ステップS61)。第2の経路設定方法から第1の経路設定方法への切替条件としては、例えば、境界以外の物体として検知された障害物が全て迂回可能な形状、位置、大きさであった場合に満たされる条件が用いられる。
 作業の実施日が異なれば、障害物の状況も変化することがあるので、この切替条件が満たされることが起こりうる。芝刈りロボット1は、ステップS61において切替条件が満たされた(YES)と判断した場合、現在の部分領域の作業経路の設定方法を切り替える(ステップS62)。芝刈りロボット1は、ステップS62の次に、又は、ステップS61において切替条件が満たされない(NO)と判断した場合、作業終了条件が満たされたか否かを判断する(ステップS63)。
 芝刈りロボット1は、ステップS63において作業終了条件が満たされた(YES)と判断すると、この動作手順を終了する。芝刈りロボット1は、作業終了条件が満たされない(NO)と判断すると、設定部113及び走行制御部115によって、現在の部分領域に繋がる通路を通って次の部分領域に向けて移動する移動経路を設定し、設定した移動経路に沿って次の部分領域まで移動する(ステップS64)。以下、経路設定処理による作業経路の設定例を説明する。
 図6は、作業対象領域の第1の例を示す図である。図6では、長方形の部分領域A11と、部分領域A11に通路E12で接続された部分領域A13とを備える作業対象領域A10が表されている。図6には図2と同様の方向D1~D4が表されている。
 図7は、第1の経路設定方法により設定された経路の一例を示す図である。図7の例では、設定部113は、部分領域A11の方向D1及び方向D4の角を出発地点P11-1として作業経路を設定している。設定部113は、出発地点P11-1から上述したルール3(初期方向=方向D3、折返し方向=方向D2)に基づき作業経路C11-1を設定している。作業経路C11-1においては、部分領域A11の端の終了地点P12-1が作業経路の終点として設定されている。
 設定部113は、このように作業経路の終点に到達した場合、上記のルール5又はルール6を用いて移動経路を設定する。図7の例の場合、ルール6よりもルール5の方が通路E12までの走行距離が短くて済むので、設定部113は、ルール5を用いて、終了地点P12-1から通路E12に隣接する位置まで進行してそこから通路E12を通過する移動経路C12-1を設定する。また、設定部113は、部分領域A13の境界に到達したら右に曲がって部分領域A13の方向D2及び方向D3の角まで進行する移動経路C12-1を設定している。
 芝刈りロボット1は、走行制御部115によって、こうして設定された移動経路C12-1に沿って走行して部分領域A13に移動する。移動経路C12-1の終点は、次の作業経路の開始地点P13-1となる。図7の例では、芝刈りロボット1は、設定部113によって、ルール1(初期方向=方向D1、折返し方向=方向D4)を用いて開始地点P13-1からの作業経路C13-1を設定している。本実施形態では、芝刈りロボット1は、作業対象領域のうち未到達の領域の面積が全体の5%未満になった場合に作業終了条件が満たされたと判断する。
 作業対象領域A10において第2の経路設定方法を用いて設定された作業経路の例を図8に示す。
 図8は、第2の経路設定方法により設定された経路の一例を示す図である。図8の例では、設定部113は、図7の例と同じ出発地点P11-2から、方向D3に向かって出発して境界に到達したあとに方向D2にずれて折返し、方向D1及び方向D3に往復しながら方向D2にずれていって終了地点P12-2に至る作業経路C11-2を設定している。
 また、設定部113は、終了地点P12-2から通路E12を通って部分領域A13の開始地点P13-2に至る移動経路C12-2を設定し、部分領域A13における作業経路C13-2を設定している。物体検知部112は、第2の経路設定方法を用いた場合、一定距離を走行する度に作業経路を設定し直している。ここで、参考のため、作業対象領域A10の全体について第1の経路設定方法で経路設定が行われた場合と第2の経路設定方法で経路設定が行われた場合との処理の負荷を比較する。
 図9は、作業対象領域A10における処理の負荷を示す図である。図9では、作業対象領域A10において作業経路を設定する処理が行われた場合のステップ数と処理時間とが表されている。いずれも数値が大きい方が処理の負荷が大きいことを表している。より詳細には、作業対象領域の全体の作業経路の開始地点から作業終了条件を満たすまでを1エピソードと呼び,未学習の状態から第1の経路設定方法及び第2の経路設定方法に用いるNN及びNXCSに対して学習しながら500エピソードを実施した。
 そして、500エピソードの実施を1試行とし、10試行のうち最良(ステップ数最小)、最悪(ステップ数最大)の試行に対する結果と、10試行のステップ数の平均値とを示した。第1の経路設定方法の場合、ステップ数が最小で2353.0、最大で8139.0、平均で2752.3であり、処理時間が平均で984.7秒であった。第2の経路設定方法の場合、ステップ数が最小で2366.0、最大で30076.0、平均で17243.6であり、処理時間が平均で1406.8秒であった。
 第2の経路設定方法では、次の部分領域への移動経路の設定が難しく、第1の経路設定方法に比べて平均ステップ数及び平均処理時間が大きくなっている。一方、第1の経路設定方法では、ルール1~10により効率よく走行できているため、第2の経路設定方法に比べて平均ステップ数及び平均処理時間が共に小さくなっている。このように、第1の経路設定方法は、第2の経路設定方法よりも処理の負荷が小さくなりやすくなっている。
 そして、芝刈りロボット1は、作業対象領域A10の場合、第1の経路設定方法だけで作業経路を設定するので、第2の経路設定方法を用いる場合に比べて、経路設定の処理の負荷が小さくなっている。このように、芝刈りロボット1は、基本的には処理の負荷が小さい第1の経路設定方法を用いておき、切替条件が満たされた場合だけ処理の負荷が大きい第2の経路設定方法を用いることで、基本の処理に第2の経路設定方法を用いる場合に比べて、作業経路を設定する際の処理の負荷を抑制することができる。
 次に、第2の経路設定方法への切り替えが行われる場合を説明する。
 図10は、作業対象領域の第2の例を示す図である。図10では、長方形の部分領域A21と、部分領域A21に通路E22で接続された部分領域A23とを備える作業対象領域A20が表されている。部分領域A23には、渦巻状の壁F23が存在し、壁F23の内部領域A24が含まれている。図10には図2と同様の方向D1~D4が表されている。
 図11は、第1の経路設定方法により設定された経路の一例を示す図である。図11の例では、設定部113は、部分領域A21の方向D1及び方向D4の角を出発地点P21-1として作業経路を設定している。設定部113は、出発地点P21-1から上述したルール3(初期方向=方向D3、折返し方向=方向D2)に基づき作業経路C21-1を設定している。作業経路C21-1においては、部分領域A21の端の終了地点P22-1が作業経路の終点として設定されている。
 設定部113は、通路E22を通る移動経路C22-1を設定し、部分領域A23における開始地点P23-1から部分領域A23の作業経路C23-1を設定している。図11に表すように、第1の経路設定方法では、渦巻状の壁F23の内部領域A24の奥までは経路が設定できていない。これに対し、第2の経路設定方法では、内部領域A24の奥まで経路の設定が可能である。
 図12は、第2の経路設定方法により設定された経路の一例を示す図である。図12の例では、設定部113は、方向D1及び方向D4の角の出発地点P21-2から、部分領域A21の内部をくまなく走行する作業経路C21-2を設定している。また、設定部113は、通路E22を通って部分領域A21から部分領域A23に至る移動経路C22-2を設定し、部分領域A23における作業経路C23-2を設定している。さらに、設定部113は、渦巻状の壁F23の内部領域A24の奥に至る作業経路C24-2を設定している。
 図13は、経路設定処理により設定された経路の一例を示す図である。図13の例では、設定部113は、方向D1及び方向D4の角の出発地点P21-3から、第1の経路設定方法におけるルール2(初期方向=方向D2、折返し方向=方向D3)を用いて作業経路C21-3を設定している。また、設定部113は、作業経路C21-3の終了地点から部分領域A23に移動する移動経路C22-3を設定している。そして、設定部113は、第2の経路設定方法を用いて部分領域A23における作業経路C23-3と、壁F23の内部領域A24の奥に至る作業経路C24-3を設定している。
 作業対象領域A20の場合、部分領域A23に障害物となる壁F23が存在するため、部分領域A23においては第1の経路設定方法から第2の経路設定方法への切替条件が満たされるものとする。そのため、設定部113は、初回は部分領域A21及び部分領域A23の両方を第1の経路設定方法で作業経路を設定し、2回目以降は部分領域A23を第2の経路設定方法で作業経路を設定する。このように経路設定方法を切り替えることで、切り替えを行わない場合に比べて、未到達の領域を減らすことができる。
 図14は、第2の例における処理の負荷を示す図である。図14では、作業対象領域A20において作業経路を設定する処理が行われた場合のステップ数と処理時間とが表されている。図14においても、500エピソードの実施を1試行とし、10試行のうち最良(ステップ数最小)、最悪(ステップ数最大)の試行に対する結果と、10試行のステップ数の平均値とを示した。第1の経路設定方法の場合、ステップ数が最小で2433.0、最大で8059.8、平均で2908.3であり、処理時間が平均で7458.3秒であった。第2の経路設定方法の場合、ステップ数が最小で2386.7、最大で30054.7、平均で17131.2であり、処理時間が平均で85616.8秒であった。
 また、部分領域A21が第1の経路設定方法で部分領域A23が第2の経路設定方法の場合、ステップ数が最小で2460.7、最大で12881.7、平均で5580.8であり、処理時間が平均で50605.1秒であった。以上の通り、第1の経路設定方法だけを用いれば処理の負荷は小さくなるが未到達の領域が残りやすい。また、第2の経路設定方法だけを用いれば未到達の領域は少なくなるが処理の負荷が大きくなる。そこで、本実施形態では、基本は第1の経路設定方法を用いるが領域によっては第2の経路設定方法を用いている。
 これにより、未到達領域を少なくしつつ、処理の負荷が増大することを抑制している。特に、芝刈りロボット1のように自律走行が可能な作業機に情報処理のハードウェア資源を搭載する場合、資源の量に制限があり処理可能な負荷の上限が生じやすい。本実施形態では、そのように処理の負荷に上限がある場合でも、第1の経路設定方法及び第2の経路設定方法を使い分けることで、未到達領域を少なくし、作業領域において作業品質が高い経路が設定される可能性を向上させることができる。
4.その他
 芝刈りロボット1に例示される作業機に関して、以下のような態様を採用してもよい。
(1)以上の実施形態では、芝刈りロボット1の構成として説明したが、コンピュータに、情報処理システムの各ステップ(図5に表す各ステップ)を実行させるプログラムが提供されてもよい。また、そのコンピュータは、芝刈りロボット1が備えていてもよいし、芝刈りロボット1とは別のサーバ又はクラウドコンピューティングのリソース等の外部装置が備えていてもよい。
(2)実施形態では、最適な経路を設定するモデルの機械学習の手法としてNN(Neural Network)及びNXCS(Neural-network XCS)が用いられたが、他の機械学習の手法が用いられてもよい。他の機械学習の手法としては、例えば、XCS(eXtended Classifier System)、SVM(Support Vector Machine)、Deep Learning、CNN(Convolutional Neural Network)、RNN(Recurrent Neural Network)、PCA(Principal Component Analysis)等が用いられてもよい。
(3)設定部113は、実施形態では、機械学習手法によって学習された学習済みモデルに基づいて経路を設定する経路設定方法を用いたが、機械学習を用いずに定められた経路設定方法を用いてもよい。そのような経路設定方法としては、例えば、人が考えたアルゴリズムにより経路を設定する方法や、AI(Artificial Intelligence)のうち機械学習以外の手法により作成された経路設定方法などである。
(4)判定部114は、実施形態とは異なる切替条件を用いてもよい。判定部114は、例えば、設定された作業経路の長さに応じて切替条件を満たすか否かを判定してもよい。一般的には、作業経路の長さが短いほど作業機の消費電力が少なくなり作業品質が高いことを表す。そこで、判定部114は、例えば、作業経路の重なりが全くない理想の作業経路の全長を算出しておき、その全長に対する設定された作業経路の長さの割合を算出する。この割合は、1に近いほど作業品質が高く、1から離れるほど作業品質が低いことを表す。判定部114は、算出された割合が閾値以上である場合に切替条件を満たすと判断する。
 また、判定部114は、設定された作業経路における方向変換の回数に応じて切替条件を満たすか否かを判定してもよい。一般的には、方向変換の回数が少ないほど方向変換時の時間のロスが少なくなり作業品質が高いことを表す。そこで、判定部114は、例えば、方向変換の回数が最小になる作業経路における方向変換の回数を算出しておき、その回数に対する設定された作業経路における方向変換の回数の割合を算出する。この割合も、1に近いほど作業品質が高く、1から離れるほど作業品質が低いことを表す。判定部114は、算出された割合が閾値以上である場合に切替条件を満たすと判断する。
 また、判定部114は、設定された作業経路に含まれる到達済領域の割合に応じて切替条件を満たすか否かを判定してもよい。上記の到達済領域の割合とは、設定された作業経路を全て走行した作業機が実際に到達した作業済みの領域のことである。到達済領域の割合が小さいほど無駄な走行が少なくなり作業品質が高いことを表す。判定部114は、例えば、自機に設けられたブレードディスクを回転させるモータの負荷量を検出することによって到達済領域の割合を算出する。
 モータの負荷量は、ブレードディスクの幅一杯に草を刈っている状態で最大となり、ブレードディスクの幅に対して到達済領域が多く含まれるほど小さくなる。判定部114は、例えば、走行距離とモータの負荷量とを対応付けたグラフを作成し、モータの負荷量の最大値との差分を集めた面積が閾値以上である場合に切替条件を満たすと判断する。なお、到達済領域を再度走行する距離を累積して、累積した距離が閾値に達した場合に切替条件が満たされると判定してもよい。
 また、判定部114は、そうして累積した距離を、未到達領域を走行した距離に応じて減少させてもよい。判定部114は、前述したモータの負荷量を検出することによって未到達領域を走行した距離を算出する。未到達領域そうすることで、累積した距離を減少させない場合に比べて、作業経路の品質が次第に向上しているのに途中で経路設定方法が切り替わるということが生じにくくなる。
 なお、判定部114は、前述した距離の代わりに到達済領域を再度走行する時間を累積して同様に判定を行ってもよい。また、判定部114は、境界検知部111により検知された境界の形状の複雑さの度合いが所定の基準を超える場合に切替条件が満たされると判定してもよい。これは、境界の形状が複雑であるほど、第1の経路設定方法で用いるルールでは作業品質が良好な経路を設定することが困難になると思われるからである。
 判定部114は、要するに、第1の経路設定方法では良好な経路を設定することが困難である可能性が高い状況において満たされる条件を切替条件として用いればよい。さらに言えば、判定部114は、第1の経路設定方法では困難だが、第2の経路設定方法では良好な経路を設定することができそうな状況において満たされる条件を切替条件として用いるとよい。そのような切替条件が用いられることで、実施形態と同様に、作業領域において作業品質が高い経路が設定される可能性を向上させることができる。
(5)設定部113は、実施形態と異なる作業終了条件を用いてもよい。設定部113は、例えば、所定の時間が経過した場合に満たされる条件又は作業機のバッテリーが所定の量まで減少した場合に満たされる条件を作業終了条件として用いてもよい。設定部113は、要するに、作業対象領域における作業が概ね完了したと言える状況になった場合に満たされる条件を作業終了条件として用いればよい。
(6)作業機によって行われる作業は、芝刈りに限らず、例えば、自律走行可能な農業用ロボットによる耕運、肥料散布又は薬剤散布等であってもよいし、自律走行可能な掃除機ロボットによる掃除であってもよい。
 さらに、次に記載の各態様で提供されてもよい。
 前記情報処理システムにおいて、前記第1の方法は、前記第2の方法よりも処理の負荷が小さくなりやすい、もの。
 前記情報処理システムにおいて、前記第1の方法は、前記作業機が進行と前記作業領域の境界における方向変換とを繰り返すルールにより、連続する経路を設定する方法である、もの。
 前記情報処理システムにおいて、前記第1の方法は、初期の進行方向及び方向変換後の方向の少なくとも1つが異なる複数の前記ルールを有し、当該複数のルールのうち作業品質が最も良好になるものを選んで経路を設定する方法である、もの。
 前記情報処理システムにおいて、前記作業品質が、設定された前記経路の長さ、当該経路における方向変換の回数、当該経路に含まれる到達済領域の割合のいずれかで表される、もの。
 前記情報処理システムにおいて、未到達領域又は到達済領域の割合は、作業機に設けられたモータの負荷量を検出することによって算出される、もの。
 前記情報処理システムにおいて、検知ステップでは、前記作業領域に存在する物体を検知し、前記第2の方法は、前記作業機が所定の距離を走行するたびに、取得された前記境界情報及び検知された前記物体の位置に基づいて前記経路を設定し直す方法である、もの。
 前記情報処理システムにおいて、前記第1の方法及び前記第2の方法は、異なる機械学習手法によってそれぞれ学習された学習済みモデルに基づいて、経路を設定する方法である、もの。
 前記情報処理システムにおいて、前記第1の方法では、パターン化された複数種類の経路から選択可能なニューラルネットワークを利用した機械学習方法が用いられ、前記第2の方法では、クラシファイアシステムを利用した機械学習方法が用いられる、もの。
 前記情報処理システムにおいて、前記作業機によって行われる作業は、芝刈りである、もの。
 自律走行可能な作業機であって、前記情報処理システムの各ステップを実行するように構成される、もの。
 プログラムであって、コンピュータに、前記情報処理システムの各ステップを実行させる、もの。
 もちろん、この限りではない。
 最後に、本発明に係る種々の実施形態を説明したが、これらは、例として提示したものであり、発明の範囲を限定することは意図していない。当該新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。当該実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1     :芝刈りロボット
11    :制御部
12    :記憶部
13    :通信部
14    :センサ部
15    :走行部
16    :作業部
111   :境界検知部
112   :物体検知部
113   :設定部
114   :判定部
115   :走行制御部
116   :作業制御部

Claims (12)

  1.  情報処理システムであって、
     取得ステップでは、自律走行可能な作業機が対象とする作業領域の境界を示す境界情報を取得し、
     設定ステップでは、取得された前記境界情報に基づき前記作業領域から未到達領域をなくすための前記作業機の経路を設定し、第1の方法により設定される前記経路を用いたときの作業品質が所定の基準を満たさない場合は第2の方法により前記経路を設定する、もの。
  2.  請求項1に記載の情報処理システムにおいて、
     前記第1の方法は、前記第2の方法よりも処理の負荷が小さくなりやすい、もの。
  3.  請求項2に記載の情報処理システムにおいて、
     前記第1の方法は、前記作業機が進行と前記作業領域の境界における方向変換とを繰り返すルールにより、連続する経路を設定する方法である、もの。
  4.  請求項3に記載の情報処理システムにおいて、
     前記第1の方法は、初期の進行方向及び方向変換後の方向の少なくとも1つが異なる複数の前記ルールを有し、当該複数のルールのうち作業品質が最も良好になるものを選んで経路を設定する方法である、もの。
  5.  請求項1~請求項4の何れか1つに記載の情報処理システムにおいて、
     前記作業品質が、設定された前記経路の長さ、当該経路における方向変換の回数、当該経路に含まれる到達済領域の割合のいずれかで表される、もの。
  6.  請求項5に記載の情報処理システムにおいて、
     未到達領域又は到達済領域の割合は、作業機に設けられたモータの負荷量を検出することによって算出される、もの。
  7.  請求項1~請求項6の何れか1つに記載の情報処理システムにおいて、
     検知ステップでは、前記作業領域に存在する物体を検知し、
     前記第2の方法は、前記作業機が所定の距離を走行するたびに、取得された前記境界情報及び検知された前記物体の位置に基づいて前記経路を設定し直す方法である、もの。
  8.  請求項1~請求項7の何れか1つに記載の情報処理システムにおいて、
     前記第1の方法及び前記第2の方法は、異なる機械学習手法によってそれぞれ学習された学習済みモデルに基づいて、経路を設定する方法である、もの。
  9.  請求項8に記載の情報処理システムにおいて、
     前記第1の方法では、パターン化された複数種類の経路から選択可能なニューラルネットワークを利用した機械学習方法が用いられ、前記第2の方法では、クラシファイアシステムを利用した機械学習方法が用いられる、もの。
  10.  請求項1~請求項9の何れか1つに記載の情報処理システムにおいて、
     前記作業機によって行われる作業は、芝刈りである、もの。
  11.  自律走行可能な作業機であって、
     請求項1~請求項10の何れか1つに記載の情報処理システムの各ステップを実行するように構成される、もの。
  12.  プログラムであって、
     コンピュータに、請求項1~請求項10の何れか1つに記載の情報処理システムの各ステップを実行させる、もの。
PCT/JP2021/020544 2021-05-28 2021-05-28 情報処理システム、作業機及びプログラム WO2022249486A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2021/020544 WO2022249486A1 (ja) 2021-05-28 2021-05-28 情報処理システム、作業機及びプログラム
JP2023523940A JPWO2022249486A1 (ja) 2021-05-28 2021-05-28
EP21943123.6A EP4350463A4 (en) 2021-05-28 2021-05-28 INFORMATION PROCESSING SYSTEM, WORKING MACHINE AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/020544 WO2022249486A1 (ja) 2021-05-28 2021-05-28 情報処理システム、作業機及びプログラム

Publications (1)

Publication Number Publication Date
WO2022249486A1 true WO2022249486A1 (ja) 2022-12-01

Family

ID=84229592

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/020544 WO2022249486A1 (ja) 2021-05-28 2021-05-28 情報処理システム、作業機及びプログラム

Country Status (3)

Country Link
EP (1) EP4350463A4 (ja)
JP (1) JPWO2022249486A1 (ja)
WO (1) WO2022249486A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10234634A (ja) * 1997-02-26 1998-09-08 Fujitsu General Ltd 床清掃ロボットの制御方法
WO2002023297A1 (fr) * 2000-09-11 2002-03-21 Kunikatsu Takase Systeme de commande de mouvement de corps mobiles
JP2016208950A (ja) 2015-05-13 2016-12-15 シャープ株式会社 ガード機構及び芝刈機
JP2019121364A (ja) * 2018-01-05 2019-07-22 アイロボット・コーポレーション 状況認識のためのモバイル清掃ロボット人工知能
WO2020012944A1 (ja) * 2018-07-09 2020-01-16 ソニー株式会社 制御装置、制御方法、およびプログラム
JP2020524330A (ja) * 2017-06-14 2020-08-13 ズークス インコーポレイテッド ボクセルベースのグランド平面推定およびオブジェクト区分化
US20210018927A1 (en) 2019-07-15 2021-01-21 Deere & Company Robotic mower boundary detection system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110312418B (zh) * 2017-11-16 2022-05-10 南京泉峰科技有限公司 智能割草系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10234634A (ja) * 1997-02-26 1998-09-08 Fujitsu General Ltd 床清掃ロボットの制御方法
WO2002023297A1 (fr) * 2000-09-11 2002-03-21 Kunikatsu Takase Systeme de commande de mouvement de corps mobiles
JP2016208950A (ja) 2015-05-13 2016-12-15 シャープ株式会社 ガード機構及び芝刈機
JP2020524330A (ja) * 2017-06-14 2020-08-13 ズークス インコーポレイテッド ボクセルベースのグランド平面推定およびオブジェクト区分化
JP2019121364A (ja) * 2018-01-05 2019-07-22 アイロボット・コーポレーション 状況認識のためのモバイル清掃ロボット人工知能
WO2020012944A1 (ja) * 2018-07-09 2020-01-16 ソニー株式会社 制御装置、制御方法、およびプログラム
US20210018927A1 (en) 2019-07-15 2021-01-21 Deere & Company Robotic mower boundary detection system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4350463A4

Also Published As

Publication number Publication date
EP4350463A1 (en) 2024-04-10
JPWO2022249486A1 (ja) 2022-12-01
EP4350463A4 (en) 2024-04-10

Similar Documents

Publication Publication Date Title
US11175670B2 (en) Robot-assisted processing of a surface using a robot
Galceran et al. A survey on coverage path planning for robotics
US8306659B2 (en) Autonomous robot
US8498788B2 (en) Method and system for determining a planned path of a vehicle
JP7220285B2 (ja) 経路計画
CN113064408B (zh) 自主机器人及其控制方法、计算机存储介质
JP6722302B2 (ja) 無人作業システム、サーバーコンピューター、及び無人作業機
CN113766825B (zh) 节能草坪养护车辆
KR102315678B1 (ko) 잔디 깎기 로봇 및 그 제어 방법
US20220248599A1 (en) Lawn mower robot and method for controlling the same
US20230384795A1 (en) Robot localization and mapping accommodating non-unique landmarks
Wasif Design and implementation of autonomous Lawn-Mower Robot controller
Taïx et al. Path planning for complete coverage with agricultural machines
Abdulazeez et al. Vision-based mobile robot controllers: a scientific review
WO2022249486A1 (ja) 情報処理システム、作業機及びプログラム
CN114937258A (zh) 割草机器人的控制方法、割草机器人以及计算机存储介质
Zhang et al. Intelligent in-orchard bin-managing system for tree fruit production
US11457558B1 (en) Autonomous vehicle navigation
Cheng et al. Distributed area coverage using robot flocks
Barak et al. Two Dimensional Mapping by using Single Ultrasonic Sensor.
CN115298633A (zh) 控制装置、控制方法以及计算机程序
WO2024045357A1 (zh) 自移动设备的控制方法、装置和自移动设备
Majdi et al. AGV path planning in unknown environment using fuzzy inference systems
US20220330477A1 (en) Control device and work machine
Verma Safe Navigation of a Non-Holonomic Robot with Low Computational-power in a 2D Dynamic Environment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21943123

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023523940

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 18563231

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2021943123

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2021943123

Country of ref document: EP

Effective date: 20240102