Management device and management method

The management device accurately predicts and adjusts computational resources for mobile vehicles in grid computing, addressing inefficiencies by optimizing resource allocation based on behavior patterns and availability probabilities.

JP7782205B2Active Publication Date: 2025-12-09MAZDA MOTOR CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2021176537
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-10-28
Publication Date
2025-12-09
Estimated Expiration
2041-10-28

AI Technical Summary

Technical Problem

Existing systems fail to accurately derive the available computational volume for mobile vehicles participating in grid computing due to unpredictable movement patterns, leading to inefficiencies in resource utilization.

Method used

A management device that predicts the behavior patterns of mobile objects, derives availability probabilities, and adjusts the computational complexity of a grid group by modifying the number or capacity of participating vehicles to ensure accurate computational volume estimation.

Benefits of technology

Enables precise calculation of available computational resources for grid groups, optimizing resource allocation and utilization by compensating for reduced availability through capacity adjustments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007782205000001
    Figure 0007782205000001
  • Figure 0007782205000002
    Figure 0007782205000002
  • Figure 0007782205000003
    Figure 0007782205000003
Patent Text Reader

Abstract

To accurately derive available amount of computation of a grid group.SOLUTION: In accuracy derivation processing, a control unit 505 derives availability accuracy in accordance with a result of comparing a prediction pattern with an actual behavior pattern of a mobile body 10. In computation amount derivation processing, the control unit 505 derives an expected computation amount of the mobile body 10 in accordance with a product of available computation power, available time, and the availability accuracy of the mobile body 10, and derives an expected computation amount of a grid group in accordance with the sum of the expected computation amount of each of the mobile bodies 10 constituting the grid group.SELECTED DRAWING: Figure 17
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology disclosed herein relates to the management of grid computing. [Background technology]

[0002] Patent Document 1 discloses a system including multiple communication devices each mounted on a vehicle and a management server that manages grid computing. The management server includes a signal receiving unit, a status determining unit, and a response transmitting unit. The signal receiving unit receives a signal from a communication device indicating that the communication device is able to participate in grid computing. The status determining unit determines whether each of the multiple processing devices has insufficient processing capacity based on the usage status of the computational resources of each of the multiple processing devices. If the processing capacity of at least one of the multiple processing devices is insufficient, the response transmitting unit transmits an instruction to the communication device to participate in grid computing based on the signal. This configuration makes effective use of the computational resources of the multiple communication devices. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2020-160661 Summary of the Invention [Problem to be solved by the invention]

[0004] In the system of Patent Document 1, vehicles equipped with communication devices may move without stopping as scheduled. When a vehicle moves, there is a possibility that the communication device of the vehicle may not be able to participate in grid computing as scheduled. Therefore, it is not possible to accurately derive the available computational volume (a volume corresponding to the product of computational capacity and computation time) of a group of vehicles participating in grid computing.

[0005] The technology disclosed here has been developed in consideration of these points, and its purpose is to accurately derive the available computational volume for a grid group made up of multiple mobile bodies, each of which has its own computing device. [Means for solving the problem]

[0006] The technology disclosed herein relates to a management device that manages a grid group that is composed of a plurality of mobile objects, each having a calculation device, and that can be used for grid computing processing. The management device includes a control unit, and the control unit performs the following steps: an information acquisition process that acquires, for each of the plurality of mobile objects that make up the grid group, a prediction pattern that indicates the predicted behavior pattern of the mobile object, an available computing capacity that is the predicted computing capacity that can be used for the grid computing processing of the mobile object, and an available time that is the predicted time that can be used for the grid computing processing of the mobile object; a probability derivation process that derives, for each of the plurality of mobile objects that make up the grid group, an availability probability that indicates the likelihood that available time for the mobile object can be secured, based on a result of comparing the actual behavior pattern of the mobile object with the prediction pattern; and a computational complexity derivation process that derives, for each of the plurality of mobile objects that make up the grid group, an expected computational complexity for the mobile object based on the product of the predicted available computing capacity, the predicted available time, and the availability probability for the mobile object, and derives the expected computational complexity of the grid group based on the sum of the expected computational complexity of each of the plurality of mobile objects.

[0007] With the above configuration, the expected computational volume of a grid group can be derived according to the actual behavioral patterns of each of the multiple mobile objects that make up the grid group, thereby enabling the available computational volume of the grid group to be derived with high accuracy.

[0008] In the management device, the predicted pattern may be a predicted movement route of the moving object, and may include a movement pattern indicating a movement route toward a movement stopping location where the moving object is to be stopped.

[0009] In the above configuration, the expected computational complexity of the grid group can be derived according to the actual movement path of the moving object.

[0010] In addition, in the management device, the prediction pattern may include a movement stop pattern indicating the relationship between the predicted movement stop status of the mobile body and the availability probability of the mobile body, and the movement stop status of the mobile body may include at least one of the charging status of the mobile body while it is stopped, the time period when the mobile body stops moving, and the type of movement stop location where the mobile body stops moving.

[0011] In the above configuration, the expected computational complexity of the grid group can be derived according to the actual movement and stopping situation of the moving object.

[0012] In addition, in the management device, the control unit may perform a calculation amount adjustment process to change the multiple moving bodies that make up the grid group so that the available computing capacity of the grid group derived based on the available computing capacity of each of the multiple moving bodies that make up the grid group becomes higher as the availability probability of the grid group derived based on the availability probability of each of the multiple moving bodies that make up the grid group becomes smaller.

[0013] In the above configuration, a decrease in the expected calculation volume of a grid group due to a decrease in the availability probability of the grid group can be compensated for by an increase in the expected calculation volume of the grid group due to an increase in the available calculation capacity of the grid group. Also, it is possible to prevent the expected calculation volume of the grid group from becoming too high. This makes it possible to appropriately ensure the expected calculation volume of the grid group.

[0014] In addition, in the management device, the control unit may, in the calculation amount adjustment process, increase the number of multiple moving bodies that make up the grid group to increase the available calculation capacity of the grid group, or may decrease the number of multiple moving bodies that make up the grid group to decrease the available calculation capacity of the grid group.

[0015] In the above configuration, the available computational capacity of the grid group can be appropriately adjusted by adjusting the number of multiple mobile objects that make up the grid group.

[0016] Furthermore, in the management device, in the calculation amount adjustment process, the control unit may increase the available calculation capacity of the grid group by changing at least one of the multiple moving bodies that make up the grid group to a moving body having an available calculation capacity higher than the available calculation capacity of the mobile body, or may decrease the available calculation capacity of the grid group by changing at least one of the multiple moving bodies that make up the grid group to a moving body having an available calculation capacity lower than the available calculation capacity of the mobile body.

[0017] In the above configuration, the available computing capacity of the grid group can be appropriately adjusted by changing at least one of the multiple mobile bodies that make up the grid group to a mobile body that has available computing capacity different from the available computing capacity of the mobile body.

[0018] The technology disclosed herein also relates to a management method for managing a grid group that is composed of a plurality of mobile objects, each having a computing device, and that can be used for grid computing processing. This management method includes an information acquisition step of acquiring, for each of the plurality of mobile objects that make up the grid group, a prediction pattern that indicates a predicted behavior pattern of the mobile object, an available computing capacity that is the predicted computing capacity that can be used for the grid computing processing of the mobile object, and an available time that is the predicted time that can be used for the grid computing processing of the mobile object; a probability derivation step of deriving, for each of the plurality of mobile objects that make up the grid group, an availability probability that indicates the likelihood that available time for the mobile object can be secured, based on a result of comparing the actual behavior pattern of the mobile object with the prediction pattern; and a computational complexity derivation step of deriving, for each of the plurality of mobile objects that make up the grid group, an expected computational complexity for the mobile object based on the product of the predicted available computing capacity, the predicted available time, and the availability probability for the mobile object, and deriving the expected computational complexity of the grid group based on the sum of the expected computational complexity of each of the plurality of mobile objects.

[0019] The above method can derive the expected computational complexity of a grid group based on the actual behavior patterns of each of the multiple mobile objects that make up the grid group, thereby enabling the usable computational complexity of the grid group to be derived with high accuracy. [Effects of the Invention]

[0020] According to the technology disclosed herein, the computational complexity available for a grid group can be derived with high accuracy. [Brief explanation of the drawings]

[0021] [Figure 1] FIG. 1 is a schematic diagram illustrating a configuration of a system according to an embodiment. [Figure 2] FIG. 1 is a conceptual diagram illustrating grid computing. [Figure 3] FIG. 1 is a block diagram illustrating a configuration of a vehicle. [Figure 4] FIG. 2 is a block diagram illustrating an example of a client server configuration. [Figure 5] FIG. 2 is a block diagram illustrating a configuration of a management server. [Figure 6] 1 is a graph for explaining a driving pattern. [Figure 7] 10 is a table for explaining stopping patterns. [Figure 8] 10 is a flowchart illustrating a job reception process. [Figure 9] FIG. 10 is a schematic diagram illustrating an example of an image of a job reception screen. [Figure 10] 10 is a flowchart illustrating a position prediction process. [Figure 11] 10 is a flowchart illustrating an example of a capability prediction process. [Figure 12] 10 is a flowchart illustrating a communication prediction process. [Figure 13] 10 is a flowchart illustrating a driving pattern generation process. [Figure 14] 10 is a flowchart illustrating a grid organization process. [Figure 15] 10 is a flowchart illustrating a matching process. [Figure 16] 1 is a flowchart illustrating a grid computing process. [Figure 17] 10 is a flowchart illustrating a grid management process. [Figure 18] 10 is a flowchart illustrating a grid management process according to a second modification of the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0022] Hereinafter, the embodiments will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are designated by the same reference numerals and their description will not be repeated.

[0023] (Embodiment) FIG. 1 illustrates the configuration of a system 1 according to an embodiment. The system 1 includes a plurality of vehicles 10, a client server 20, and a management server 50. These components can communicate with each other via a communication network 5 (communication line). These components also communicate with each other to transmit and receive various information and data as necessary. Each of the plurality of vehicles 10 is equipped with a computing device 105. The system 1 may also include a plurality of client servers 20.

[0024] [Grid Computing] As shown in Figure 2, in the embodiment of the system 1, a grid computing (distributed processing system) is formed by vehicles 10 selected from a plurality of vehicles 10, and a grid computing process is performed in which job data is processed by an available vehicle 10 (more specifically, a computing device 105 installed in the vehicle 10) among the plurality of vehicles 10.

[0025] When the vehicle 10 needs the computing power of the arithmetic device 105, the arithmetic device 105 enters an operating state and uses the computing power of the arithmetic device 105. For example, when the vehicle 10 is traveling, the computing power of the arithmetic device 105 is required for traveling control of the vehicle 10, and the arithmetic device 105 enters an operating state.

[0026] On the other hand, when the computing power of the arithmetic device 105 becomes unnecessary in the vehicle 10, the arithmetic device 105 enters a stopped state, and the computing power of the arithmetic device 105 is not used. For example, when the vehicle 10 stops and the power supply of the vehicle 10 is turned off, the computing power of the arithmetic device 105 becomes unnecessary, and the arithmetic device 105 enters a stopped state.

[0027] Here, when the computing power of the computing device 105 is not needed in the vehicle 10, the computing power of the computing device 105 can be provided for grid computing processing, thereby making effective use of the computing power of the computing device 105. For example, it is desirable to provide the computing power of the computing device 105 for grid computing processing while the vehicle 10 is stopped.

[0028] In the following description, the computational capacity available for grid computing processing of the vehicle 10 is referred to as "available computational capacity." The time available for grid computing processing of the vehicle 10 is referred to as "available time." The likelihood that available time for the vehicle 10 can be secured is referred to as "availability probability."

[0029] 〔vehicle〕 The vehicle 10 is owned by a user. The user drives the vehicle 10. In this example, the vehicle 10 is a four-wheeled automobile. The vehicle 10 is equipped with a battery (not shown). Power from the battery is supplied to on-board devices such as the computing device 105. Examples of such vehicles 10 include electric vehicles and plug-in hybrid vehicles. The vehicle 10 is capable of communication using vehicle-to-network (V2N) communication and vehicle-to-vehicle (V2V) communication.

[0030] As shown in FIG. 3, the vehicle 10 includes an actuator 11, a sensor 12, an input unit 101, an output unit 102, a communication unit 103, a storage unit 104, and a computing device 105.

[0031] The actuators 11 include drive system actuators, steering system actuators, braking system actuators, etc. Examples of drive system actuators include an engine, a transmission, and a motor. Examples of braking system actuators include a brake. Examples of steering system actuators include a steering wheel.

[0032] The sensor 12 acquires various types of information used to control the vehicle 10. Examples of the sensor 12 include an exterior camera that captures images outside the vehicle, an interior camera that captures images inside the vehicle, radar that detects objects outside the vehicle, a vehicle speed sensor, an acceleration sensor, a yaw rate sensor, an accelerator opening sensor, a steering sensor, and a brake oil pressure sensor.

[0033] The input unit 101 inputs information and data. Examples of the input unit 101 include an operation unit that is operated to input information corresponding to the operation, a camera that inputs an image showing information, and a microphone that inputs audio showing information. Examples of the operation unit include operation buttons and touch sensors of a car navigation device. The information and data input to the input unit 101 are sent to the calculation device 105.

[0034] The output unit 102 outputs information and data. Examples of the output unit 102 include a display unit that outputs an image representing information, and a speaker that outputs sound representing information. An example of a display unit is the display of a car navigation device, and an example of a speaker is the speaker of a car navigation device.

[0035] The communication unit 103 transmits and receives information and data. The information and data received by the communication unit 103 are sent to the calculation device 105.

[0036] The storage unit 104 stores information and data.

[0037] The arithmetic device 105 controls each part of the vehicle 10. In this example, the arithmetic device 105 controls the actuator 11 in accordance with various information obtained by the sensor 12. The arithmetic device 105 communicates with external devices (such as components of the system 1) via the communication unit 103. The arithmetic device 105 updates the information and data stored in the memory unit 104 as appropriate, based on the information and data input to the input unit 101 and the information and data received via the communication unit 103.

[0038] The arithmetic device 105 includes a processor, a memory, etc. Examples of the processor include a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit). The memory stores programs for operating the processor, information and data indicating the processing results of the processor, etc. The processor (computer) executes the programs stored in the memory to realize various functions of the arithmetic device 105.

[0039] The number of processors installed in the arithmetic device 105 may be one or more. The processor installed in the arithmetic device 105 may be either a CPU or a GPU, or both a CPU and a GPU. In this example, the arithmetic device 105 has both a CPU and a GPU. For example, the arithmetic device 105 is configured by one or more ECUs (Electronic Control Units).

[0040] In this example, the memory unit 104 stores vehicle basic information D11, calculation device information D12, vehicle status information D13, driving management information D14, operation management information D15, communication management information D16, charging management information D17, and function management information D18.

[0041] <Vehicle basic information> The vehicle basic information D11 is basic information related to the vehicle 10. For example, the vehicle basic information D11 includes a vehicle ID set for the vehicle 10, a user ID set for the user who owns the vehicle, vehicle performance information indicating the performance of the vehicle, etc. The ID is information for identification (identification information).

[0042] <Calculation device information> The arithmetic unit information D12 is information related to the arithmetic unit 105 mounted on the vehicle 10. For example, the arithmetic unit information D12 includes an arithmetic unit ID set in the arithmetic unit 105, arithmetic unit performance information indicating the performance of the arithmetic unit 105, etc. The performance of the arithmetic unit 105 indicated in the arithmetic unit performance information includes the computational capacity (specifically, maximum computational capacity) of the arithmetic unit 105, the ratio of CPU to GPU in the arithmetic unit 105, the communication performance of the arithmetic unit 105, the computational performance of the arithmetic unit 105, etc. For example, the computational capacity of the arithmetic unit 105 is the amount of data that the arithmetic unit 105 can calculate per unit time.

[0043] <Vehicle status information> The vehicle state information D13 indicates the state (actual state) of the vehicle 10. In this example, the vehicle state information D13 includes vehicle position information, vehicle calculation information, vehicle communication information, vehicle power supply information, vehicle battery remaining capacity information, vehicle charging information, vehicle function information, and the like.

[0044] Vehicle position information indicates the position of the vehicle 10 (specifically, latitude and longitude). For example, vehicle position information can be obtained by a GPS (Global Positioning System). Vehicle calculation information indicates the operating status of the calculation device 105 installed in the vehicle 10. Vehicle communication information indicates the communication status of the vehicle 10. Vehicle power supply information indicates the power supply status of the vehicle 10. For example, the vehicle power supply information indicates whether the ignition power is on or off, whether the accessory power is on or off, etc.

[0045] The vehicle battery remaining information indicates the remaining charge of a battery (not shown) installed in the vehicle 10. The vehicle charging information indicates whether the vehicle 10 is being charged at a charging facility (not shown) capable of charging the battery of the vehicle 10. The vehicle function information indicates the usage status of various functions of the vehicle 10. Examples of functions of the vehicle 10 include OTA (Over The Air), sunshade, and alcohol detection. The vehicle function information also indicates the results of the usage of various functions of the vehicle 10 (for example, the results of alcohol detection).

[0046] The computing device 105 monitors the state (actual state) of the vehicle 10, and updates the vehicle state information D13 appropriately (for example, periodically) based on the results of the monitoring.

[0047] <Driving management information> The driving management information D14 indicates the driving history (past driving conditions) and driving schedule (future driving conditions) of the vehicle 10. In other words, the driving management information D14 indicates the position (or planned position) of the vehicle 10 on the driving route at the time. For example, the driving management information D14 indicates the driving route, position, and time of the vehicle 10 in association with each other.

[0048] The arithmetic device 105 updates the driving management information D14 as appropriate (for example, periodically). For example, the arithmetic device 105 monitors the driving conditions of the vehicle 10, and updates the driving history of the vehicle 10 indicated in the driving management information D14 based on the results of the monitoring.

[0049] Furthermore, when the arithmetic device 105 acquires information that can be used to estimate the driving status of the vehicle 10, the arithmetic device 105 updates the driving status of the vehicle 10 indicated in the driving management information D14 based on the acquired information. Examples of information that can be used to estimate the driving status of the vehicle 10 include car navigation information that indicates the driving history and driving schedule of the vehicle 10.

[0050] The driving management information is an example of location management information that indicates the movement history (past locations) and movement schedule (future location) of the vehicle 10. The location management information indicates where the vehicle 10 was (or where it is scheduled to be) at what time. For example, the location management information indicates the location of the vehicle 10 in association with the time.

[0051] <Operation management information> The operation management information D15 indicates the operation history (past utilization rate of computing capacity) and operation schedule (future utilization rate of computing capacity) of the arithmetic device 105 mounted on the vehicle 10. In other words, the operation management information D15 indicates what the utilization rate of the computing capacity of the vehicle 10 was (or what the utilization rate is expected to be) at what time. For example, the operation management information D15 indicates the utilization rate of the computing capacity of the arithmetic device 105 in association with time.

[0052] The operation status (computing capacity utilization rate) of the arithmetic device 105 of the vehicle 10 indicated in the operation management information D15 is the operation status for purposes other than use for grid computing processing. Examples of such purposes of use include driving the vehicle 10 and controlling various functions of the vehicle 10.

[0053] The computing device 105 updates the operation management information D15 as appropriate (for example, periodically). For example, the computing device 105 monitors the operation rate (utilization rate of the computing capacity) of the computing device 105, and updates the past operation rate of the computing device 105 indicated in the operation management information D15 based on the results of the monitoring.

[0054] Furthermore, when the arithmetic device 105 acquires information that can be used to estimate the operating status of the arithmetic device 105, the arithmetic device 105 updates the operating status of the arithmetic device 105 indicated in the operation management information D15 based on the acquired information. Examples of information that can be used to estimate the operating status of the arithmetic device 105 include car navigation information indicating the driving history and driving schedule of the vehicle 10, driving management information D14, and function management information D18.

[0055] <Communication Management Information> The communication management information D16 indicates the communication history (past communication state) and communication schedule (future communication state) of the vehicle 10. In other words, the communication management information D16 indicates what the communication state of the vehicle 10 was at what time (or what state it is expected to be). Specifically, the communication management information D16 indicates, for each device with which the vehicle 10 communicates, the communication state (past communication state and future communication state) between the device and the vehicle 10. For example, for each device with which the vehicle 10 communicates, the communication management information D16 indicates, in association with each other, the "communication state between the device and the vehicle 10 (whether communication is possible)," the "location of the vehicle 10," and the "time." Examples of devices with which the vehicle 10 communicates include the management server 50 and other vehicles 10.

[0056] The arithmetic device 105 updates the communication management information D16 as appropriate (for example, periodically). For example, the arithmetic device 105 monitors the communication status of the vehicle 10 in which the arithmetic device 105 is installed, and updates the communication history of the vehicle 10 indicated in the communication management information D16 based on the results of the monitoring.

[0057] Furthermore, when the arithmetic device 105 acquires information that can be used to estimate the communication state of the vehicle 10, the arithmetic device 105 updates the communication state of the vehicle 10 indicated in the communication management information D16 based on the acquired information. Examples of information that can be used to estimate the communication state of the vehicle 10 include car navigation information indicating the driving history and driving schedule of the vehicle 10, driving management information D14, and function management information D18.

[0058] <Charging management information> The charging management information D17 indicates the charging history (past charging status) and charging schedule (future charging status) of the vehicle 10. In other words, the charging management information D17 indicates at which charging facility and at what time the battery of the vehicle 10 has been charged (or is scheduled to be charged). For example, the charging management information D17 indicates whether charging has occurred at the charging facility and the time in association with each other.

[0059] The arithmetic device 105 updates the charging management information D17 as appropriate (for example, periodically). For example, the arithmetic device 105 monitors the charging status of the vehicle 10 in which the arithmetic device 105 is installed, and updates the charging history of the vehicle 10 indicated in the charging management information D17 based on the results of the monitoring.

[0060] Furthermore, when the arithmetic device 105 acquires information that can be used to estimate the charging status of the vehicle 10, the arithmetic device 105 updates the charging status of the vehicle 10 indicated in the charging management information D17 based on the acquired information. Examples of information that can be used to estimate the charging status of the vehicle 10 include car navigation information that indicates the driving history and driving schedule of the vehicle 10, driving management information D14, and the like.

[0061] <Function management information> The function management information D18 indicates the usage history (past usage) and planned usage (future usage) of various functions of the vehicle 10. In other words, the function management information D18 indicates, for each function of the vehicle 10, the time at which the function was used (or is planned to be used). For example, the function management information D18 indicates, for each function of the vehicle 10, whether or not the function was used, in association with the time. The function management information D18 also indicates, for each function of the vehicle 10, the results obtained by the function (e.g., the results of alcohol detection), in association with the time.

[0062] The arithmetic device 105 updates the function usage information D14 as appropriate (for example, periodically). For example, when the arithmetic device 105 receives information on the usage status of various functions of the vehicle 10, it updates the function usage information D14 based on that information. Examples of information on the usage history or usage schedule of various functions of the vehicle 10 include car navigation information indicating the driving history and driving schedule of the vehicle 10, driving management information D14, and the like.

[0063] [Client Server] The client server 20 is owned by a client. The client requests the calculation of job data. Examples of the client include companies, research institutes, and educational institutions.

[0064] As shown in FIG. 4, the client server 20 includes an input unit 201, an output unit 202, a communication unit 203, a storage unit 204, and a control unit 205.

[0065] The input unit 201 inputs information and data. Examples of the input unit 201 include an operation unit that is operated to input information corresponding to the operation, a camera that inputs an image showing information, and a microphone that inputs audio showing information. Examples of the operation unit include an operation button, a touch sensor, a keyboard, and a mouse. The information and data input to the input unit 201 are sent to the control unit 205.

[0066] The output unit 202 outputs information and data. Examples of the output unit 202 include a display unit that outputs an image representing information, and a speaker that outputs sound representing information.

[0067] The communication unit 203 transmits and receives information and data. The information and data received by the communication unit 203 are sent to the control unit 205.

[0068] The storage unit 204 stores information and data.

[0069] The control unit 205 controls each unit of the client server 20. The control unit 205 communicates with external devices (such as components of the system 1) via the communication unit 203. The control unit 205 updates the information and data stored in the storage unit 204 as appropriate, based on the information and data input to the input unit 201 and the information and data received via the communication unit 203.

[0070] The control unit 205 includes a processor, a memory, etc. The memory stores a program for operating the processor, information and data indicating the processing results of the processor, etc. The various functions of the control unit 205 are realized by the processor (computer) executing the program stored in the memory.

[0071] In this example, the storage unit 204 stores client information D21 and job data D1.

[0072] <Client Information> The client information D21 is information about the client, and includes a client ID set for the client, a client server ID set for the client server 20 owned by the client, a person in charge's name, address, telephone number, and the like.

[0073] <Job Data> The job data D1 is data corresponding to a job and is processed to execute the job. The job data D1 can be classified into a plurality of types.

[0074] For example, job data D1 can be classified by calculation type. Examples of calculation types include CPU-based calculation types and GPU-based calculation types. Job data D1 of the CPU-based calculation type tend to require complex calculations with many conditional branches, such as simulation calculations. Job data D1 of the GPU-based calculation type tend to require a huge amount of simple calculations, such as image processing and machine learning.

[0075] Furthermore, the job data D1 can be classified by processing conditions. Examples of processing conditions include processing conditions that require constant communication and processing conditions that do not require constant communication. Job data D1 with processing conditions that require constant communication requires that the vehicle 10 be able to communicate at all times in the grid computing process. Job data D1 with processing conditions that do not require constant communication does not require that the vehicle 10 be able to communicate at all times in the grid computing process.

[0076] <Job Information> Note that job information related to a job may be stored in the storage unit 204. The job information includes job name information indicating the name of the job, job content information explaining the content of the job, job data information related to job data corresponding to the job, job deadline information indicating the deadline for the job, etc. The job data information indicates the type of job data (e.g., the calculation type and processing conditions of the job data), the required calculation amount (e.g., the data amount of the job data) which is the amount of calculation required to calculate the job data, etc.

[0077] [Management Server] The management server 50 manages the operation of the system 1 in which grid computing is configured. The management server 50 is owned by the business operator that operates the system 1. The management server 50 is an example of a management device that manages grid computing.

[0078] 5, the management server 50 includes an input unit 501, an output unit 502, a communication unit 503, a storage unit 504, and a control unit 505. The configurations of the input unit 501, output unit 502, communication unit 503, storage unit 504, and control unit 505 of the management server 50 are the same as the configurations of the input unit 201, output unit 202, communication unit 203, storage unit 204, and control unit 205 of the client server 20.

[0079] In this example, the storage unit 504 stores a user table D50, a vehicle table D51, a client table D52, a job table D53, a predicted pattern table D57, a position prediction table D54, a capacity prediction table D55, a communication prediction table D56, a grid table D58, a matching table D59, job data D1, and calculation result data D2.

[0080] <User table> The user table D50 is a table for managing users. For each user, the user table D50 registers a user ID set for that user, a vehicle ID set for the vehicle 10 owned by that user, a calculation device ID set for the calculation device 105 owned by that user, and the like. The control unit 505 updates the user table D50 as appropriate.

[0081] <Vehicle Table> The vehicle table D51 is a table for managing the vehicle 10. In this example, the vehicle table D51 registers, for each vehicle 10, basic vehicle information D11, calculation device information D12, vehicle state information D13, driving management information D14, operation management information D15, communication management information D16, charging management information D17, function management information D18, and the like related to the vehicle 10.

[0082] The control unit 505 appropriately updates the vehicle table D51. Specifically, the control unit 505 communicates with each vehicle 10 appropriately (for example, periodically) to acquire information about the vehicle 10 (in this example, vehicle basic information D11, computing device information D12, vehicle state information D13, driving management information D14, operation management information D15, communication management information D16, charging management information D17, and function management information D18), and updates the vehicle table D51 based on the acquired information.

[0083] <Client Table> The client table D52 is a table for managing clients. For each client, the client table D52 registers a client ID set for that client, a client server ID set for the client server 20 owned by that client, the name, address, telephone number, etc. of the person in charge of that client. The control unit 505 updates the client table D52 as appropriate.

[0084] <Job Table> The job table D53 is a table for managing jobs requested by clients. For each job, the job table D53 registers the reception number set for that job, the client ID set for the client that requested the job, the name and content of the job, etc. The job table D53 also registers for each job the calculation type and processing conditions of the job data corresponding to that job, the required calculation amount for that job data, the delivery date set for that job, etc.

[0085] <Position Prediction Table> The position prediction table D54 is a table for managing the predicted results of the position of the vehicle 10. In this example, the position prediction table D54 registers position prediction information D4 for each vehicle 10. The position prediction information D4 indicates the predicted results of changes in the position of the vehicle 10 over time. For example, the position prediction information D4 indicates the predicted value of the position of the vehicle 10 in association with the time. The process for predicting changes in the position of the vehicle 10 over time (position prediction process) will be described in detail later.

[0086] Ability Prediction Table The capacity prediction table D55 is a table for managing the predicted results of the available computational capacity of the vehicle 10. In this example, the capacity prediction table D55 registers capacity prediction information D5 for each vehicle 10. The capacity prediction information D5 indicates the predicted results of the change over time in the available computational capacity of the vehicle 10. For example, the capacity prediction information D5 indicates the predicted value of the available computational capacity of the vehicle 10 in association with the time. The process for predicting the change over time in the available computational capacity of the vehicle 10 (capacity prediction process) will be described in detail later.

[0087] <Communication Prediction Table> The communication prediction table D56 is a table for managing the predicted results of the communication state of the vehicle 10. In this example, the communication prediction table D56 registers communication prediction information D6 related to each vehicle 10. The communication prediction information D6 indicates the predicted results of the change over time in the communication state of the vehicle 10. For example, the communication prediction table D56 indicates the predicted value of the communication state of the vehicle 10 in association with the time. The process for predicting the change over time in the communication state of the vehicle 10 (communication prediction process) will be described in detail later.

[0088] <Prediction Pattern Table> The prediction pattern table D57 is a table for managing prediction patterns. In this example, the prediction pattern table D57 registers the prediction pattern of each vehicle 10.

[0089] Prediction Pattern The predicted pattern indicates a predicted behavior pattern of the vehicle 10. By comparing the actual behavior pattern of the vehicle 10 with the predicted pattern, it is possible to derive the availability probability (the probability that the available time can be secured) of the vehicle 10. The process for deriving the availability probability (the probability derivation process) will be described in detail later.

[0090] The prediction pattern includes a travel pattern relating to the travel route of the vehicle 10 and a stopping pattern relating to the stopping state of the vehicle 10 (the state while the vehicle is stopped).

[0091] <Driving pattern> The driving pattern is a predicted future driving route of the vehicle 10, and indicates a "predicted route" which is a driving route leading to a stopping location where the vehicle 10 will be stopped. Examples of stopping locations include the home of the user of the vehicle 10, the company where the user of the vehicle 10 works, supermarkets, restaurants, commercial facilities, stadiums, theaters, and parking lots of accommodation facilities. The process for generating a driving pattern (driving pattern generation process) will be described in detail later.

[0092] Furthermore, in this example, the availability probability of the vehicle 10 can be determined according to the degree of match between the actual driving route of the vehicle 10 and the predicted route of the driving pattern. Specifically, the availability probability of the vehicle 10 becomes higher. For example, when the actual driving route of the vehicle 10 matches the predicted route, as shown in FIG. 6, the shorter the distance from the vehicle 10 to the "stop location that is the destination on the predicted route," the higher the availability probability (arrival probability) of the vehicle 10 becomes.

[0093] <Stopping pattern> The stopping pattern indicates the relationship between the predicted stopping situation of vehicle 10 and the availability probability of vehicle 10. Specifically, the stopping pattern indicates the relationship between the "predicted stopping situation of vehicle 10" and the "availability probability of vehicle 10 when the predicted stopping situation of vehicle 10 matches the actual stopping situation of vehicle 10." Note that the relationship between the stopping situation of vehicle 10 and the availability probability of vehicle 10 can be derived through experiments, etc. For example, the generation of the stopping pattern may be realized by machine learning. The stopping pattern may be updated as appropriate (for example, periodically).

[0094] The stopping status of the vehicle 10 indicated in the stopping pattern includes at least one of the charging status of the vehicle 10 while it is stopped, the time period during which the vehicle 10 is stopped, and the type of stopping location at which the vehicle 10 is stopped. In this example, as shown in Fig. 7 , the stopping status of the vehicle 10 indicated in the stopping pattern includes the charging status of the vehicle 10 while it is stopped, the time period during which the vehicle 10 is stopped, the type of stopping location, the use status of the sunshade, and the alcohol detection result.

[0095] In the example of FIG. 7, the charging status "Not charging" indicates that the parked vehicle 10 is not being charged. "Charging (first half)" indicates that the parked vehicle 10 is being charged and is in the first half of the charging period. "Charging (second half)" indicates that the parked vehicle 10 is being charged and is in the second half of the charging period. "Charging completed" indicates that charging of the parked vehicle 10 has completed.

[0096] 7, the sunshade usage status "Yes" indicates that the sunshade is in use (the sunshade is closed) in the parked vehicle 10. The sunshade usage status "No" indicates that the sunshade is not in use (the sunshade is open) in the parked vehicle 10.

[0097] In the example of FIG. 7, the alcohol detection result "Yes" indicates that alcohol was detected in the user of the stopped vehicle 10. If alcohol is detected in the user, the vehicle 10 is prohibited from starting up to travel. The alcohol detection result "No" indicates that alcohol was not detected in the user of the stopped vehicle 10.

[0098] In this example, the stopping pattern indicates the relationship between the "predicted stopping status of vehicle 10" and the "certainty coefficient according to the availability probability of vehicle 10." The higher the availability probability of vehicle 10 when the predicted stopping status of vehicle 10 matches the actual stopping status of vehicle 10, the larger the certainty coefficient corresponding to the predicted stopping status of vehicle 10. For example, in the example of FIG. 7, a certainty coefficient indicating "10" is set for a stopping status indicating that the stopping time period is "holiday morning."

[0099] Grid Table The grid table D58 is a table for managing grid groups that are made up of multiple vehicles 10 and that can be used for grid computing processing. For each grid group, the grid table D58 registers the registration number set for that grid group, the vehicle IDs set for each of the multiple vehicles 10 that make up that grid group, the available computational capacity (predicted value) and available time (predicted value) of each of the multiple vehicles 10 that make up that grid group, the expected computational volume of that grid group, etc. The process for organizing grid groups (grid organization process) will be described in detail later.

[0100] Matching Table The matching table D59 is a table for managing the results of the matching process described below. For each job, the matching table D59 registers the reception number set for that job, the job data D1 corresponding to that job, the registration number of the grid group assigned to that job data D1 by the matching process, the vehicle ID set for each of the multiple vehicles 10 that make up that grid group, and the like.

[0101] <Job Data> The job data D1 stored in the storage unit 504 is job data D1 accepted by a job acceptance process, which will be described later.

[0102] <Calculation result data> The calculation result data D2 stored in the storage unit 504 indicates the calculation result of the job data D1 by the grid computing process described later.

[0103] [Processing by the control unit (management method)] The control unit 505 of the management server 50 performs a predicted pattern generation process, a job reception process, a position prediction process, a capacity prediction process, a communication prediction process, a grid organization process, a matching process, a grid computing process, and a grid management process. These processes are an example of a management method for managing grid computing.

[0104] [Job acceptance processing] Next, the job reception process will be described with reference to Fig. 8. In the job reception process, job data D1 for which a calculation is requested by a client is received. For example, the control unit 505 performs the following process each time a calculation of job data D1 is requested by a client.

[0105] <Step S11> First, the management server 50 accepts a job request from a client. Specifically, in response to an operation by a person in charge of the client, the client server 20 transmits a job request application to the management server 50. In response to the application, the control unit 505 of the management server 50 performs the following processing.

[0106] The control unit 505 requests the client server 20 to transmit information required to accept the job (specifically, client information related to the client requesting the job and job information related to the job). In this example, the control unit 505 transmits image data of the job acceptance screen to the client server 20. The control unit 205 of the client server 20 reproduces the image of the job acceptance screen from the image data, and causes the output unit 202 (display unit) to output (display) the image.

[0107] 9, the job reception screen is a screen for inputting information required to receive a job. The job reception screen has a client name input field R101 for inputting the client name, a person in charge name input field R102 for inputting the name of the person in charge of the client, an address input field R104 for inputting the client's address, a job name input field R111 for inputting the name of the job, a job content input field R112 for inputting an explanation of the job content, a calculation type input field R113 for inputting the calculation type of job data corresponding to the job, a processing condition input field R114 for inputting the processing conditions of the job data, a required calculation amount input field R115 for inputting the required calculation amount of the job data, a delivery date input field R116 for inputting the delivery date of the job, and a register button B100.

[0108] The person in charge of the client operates the input unit 201 (operation unit) of the client server 20 to input the necessary information into the job reception screen. This inputs client information about the client requesting the job and job information about the job. After completing input of this information, the person in charge of the client operates the input unit 201 (operation unit) of the client server 20 to press the registration button B100 on the job reception screen. When the registration button B100 is pressed, the control unit 205 of the client server 20 transmits the information (client information and job information) input into the job reception screen to the management server 50. The control unit 505 of the management server 50 receives the client information and job information.

[0109] Next, the control unit 505 requests the client server 20 to transmit job data D1 corresponding to the job. In response to the request, the control unit 205 of the client server 20 transmits the job data D1 corresponding to the job to the management server 50. The control unit 505 of the management server 50 receives the job data D1.

[0110] <Step S12> Next, the control unit 505 of the management server 50 analyzes the job data D1 received in step S11. Specifically, the control unit 505 analyzes the calculation type, processing conditions, required calculation amount, etc. of the job data D1. Then, the control unit 505 modifies the job information received in step S11 based on the results of the analysis of the job data D1.

[0111] If the job information received in step S11 is sufficiently reliable, the process of step S12 may be omitted.

[0112] <Step S13> Next, the control unit 505 of the management server 50 associates the client information received in step S11 with the job information corrected as necessary in step S12 (or the job information received in step S11), and registers them in the job table D53. The control unit 505 also stores the job data D1 received in step S11 in the storage unit 504.

[0113] [Position Prediction Processing] Next, the position prediction process will be described with reference to Fig. 10. In the position prediction process, the control unit 505 predicts a change in the position of the vehicle 10 over time based on the driving management information D14 of the vehicle 10 registered in the vehicle table D51. For example, when the driving management information D14 of the vehicle 10 registered in the vehicle table D51 is updated, the control unit 505 performs the following process for the vehicle 10.

[0114] <Step S21> First, the control unit 505 acquires the driving management information D14 of the vehicle 10 registered in the vehicle table D51. As in "updating driving management information," the control unit 505 may update the driving management information D14 of the vehicle 10 registered in the vehicle table D51 based on information that can be used to estimate the position of the vehicle 10, and acquire the updated driving management information D14.

[0115] <Step S22> Next, the control unit 505 predicts a change in the position of the vehicle 10 over time based on the "driving management information D14" of the vehicle 10 acquired in step S21.

[0116] Specifically, the control unit 505 predicts a trend (pattern) of changes in the position of the vehicle 10 from the vehicle position indicated in the driving management information D14. This prediction of the trend of changes in the position of the vehicle 10 may be realized by machine learning. Then, the control unit 505 predicts changes in the position of the vehicle 10 over time (where the vehicle 10 is at what time) based on the trend of changes in the position of the vehicle 10.

[0117] <Step S23> Next, the control unit 505 registers (overwrites) the position prediction information D4 indicating the "change over time in the position of the vehicle 10" predicted in step S22 in the position prediction table D54. This updates the position prediction table D54. Note that if the future position (estimated value) of the vehicle 10 indicated in the travel management information D14 is sufficiently reliable, the future position of the vehicle 10 may be registered in the position prediction information D4.

[0118] [Ability Prediction Processing] Next, the capacity prediction process will be described with reference to Fig. 11. In the capacity prediction process, the control unit 505 predicts the available computational capacity of the vehicle 10 based on the operation management information D15 of the vehicle 10 registered in the vehicle table D51. For example, when the operation management information D15 of the vehicle 10 registered in the vehicle table D51 is updated, the control unit 505 performs the following process for the vehicle 10.

[0119] <Step S31> First, the control unit 505 acquires the calculation device information D12 and operation management information D15 of the vehicle 10 registered in the vehicle table D51. As in "updating the operation management information," the control unit 505 may update the operation management information D15 of the vehicle 10 registered in the vehicle table D51 based on information that can be used to estimate the operation status of the calculation device 105 of the vehicle 10, and acquire the updated operation management information D15.

[0120] <Step S32> Next, the control unit 505 predicts a change over time in the available computing capacity of the vehicle 10 based on the "computing device information D12" and "operation management information D15" of the vehicle 10 acquired in step S31.

[0121] Specifically, the control unit 505 predicts a trend (pattern) of changes in the utilization rate of the computing capacity of the computing device 105 of the vehicle 10, based on the operating status of the computing device 105 of the vehicle 10 indicated in the operation management information D15. This prediction of the trend of changes in the utilization rate of the computing capacity of the computing device 105 may be achieved by machine learning. Then, based on the trend of changes in the utilization rate of the computing capacity of the computing device 105 of the vehicle 10, the control unit 505 predicts a period during which the computing capacity of the computing device 105 of the vehicle 10 has spare capacity (a period during which the utilization rate of the computing capacity is less than 100%), and defines this period as a "period during which the computing capacity of the computing device 105 of the vehicle 10 can be used for grid computing processing." For example, the control unit 505 defines a period during which the utilization rate of the computing capacity of the computing device 105 of the vehicle 10 is "30%" as a period during which "70%" of the computing capacity of the computing device 105 of the vehicle 10 can be used for grid computing processing.

[0122] <Step S33> Next, the control unit 505 registers (overwrites) the capacity prediction information D5 indicating the "change over time in the available computing capacity of the vehicle 10" predicted in step S32 in the capacity prediction table D55. This updates the capacity prediction table D55.

[0123] [Communication prediction processing] Next, the communication prediction process will be described with reference to Fig. 12. In the communication prediction process, the control unit 505 predicts a change over time in the communication state of a vehicle 10 based on the communication management information D16 of the vehicle 10 registered in the vehicle table D51. For example, when the communication management information D16 of the vehicle 10 registered in the vehicle table D51 is updated, the control unit 505 performs the following process for the vehicle 10.

[0124] <Step S41> First, the control unit 505 acquires the communication management information D16 of the vehicle 10 registered in the vehicle table D51. As in "updating the communication management information," the control unit 505 may update the communication management information D16 of the vehicle 10 registered in the vehicle table D51 based on information that can be used to estimate the communication status of the vehicle 10, and acquire the updated communication management information D16.

[0125] <Step S42> Next, the control unit 505 predicts a change over time in the communication state of the vehicle 10 based on the communication management information D16 of the vehicle 10 acquired in step S41.

[0126] Specifically, the control unit 505 predicts a trend (pattern) of changes in the communication state of the vehicle 10 from the communication state of the vehicle indicated in the communication management information D16. This prediction of the trend of changes in the communication state of the vehicle 10 may be realized by machine learning. Then, the control unit 505 predicts a change over time in the communication state of the vehicle 10 (what state the communication state of the vehicle 10 will be at what time) based on the trend of changes in the communication state of the vehicle 10.

[0127] <Step S43> Next, the control unit 505 registers (overwrites) the communication prediction information D6 indicating the "change over time in the communication state of the vehicle 10" predicted in step S42 in the communication prediction table D56. This updates the communication prediction table D56. Note that if the future communication state (estimated value) of the vehicle 10 indicated in the communication management information D16 is sufficiently reliable, the future communication state of the vehicle 10 may be registered in the communication prediction information D6.

[0128] [Driving pattern generation process] Next, the driving pattern generation process will be described with reference to Fig. 13. In this example, the control unit 505 performs the following process for each vehicle 10 as appropriate (for example, periodically).

[0129] <Step S51> The control unit 505 acquires information that can be used to generate a driving pattern. In this example, the control unit 505 acquires position prediction information D4 of the vehicle 10 registered in the position prediction table D54.

[0130] <Step S52> Next, the control unit 505 generates a travel pattern indicating a travel route (predicted route) to a stop location where the vehicle 10 will be stopped, based on the information acquired in step S51 (information that can be used to generate a travel pattern). In this example, the control unit 505 predicts a stop location where the vehicle 10 will be stopped, based on the change over time in the position of the vehicle 10 (predicted position value) indicated in the position prediction information D4 acquired in step S51, and predicts a travel route (future travel route) to the stop location. Then, the control unit 505 generates a travel pattern indicating a predicted route, which is the predicted travel route.

[0131] <Step S53> Next, the control unit 505 associates the "driving pattern" generated in step S52 with the vehicle 10 and registers (overwrites) it in the predicted pattern table D57, thereby updating the predicted pattern table D57.

[0132] [Grid organization process] Next, the grid formation process will be described with reference to Fig. 14. The grid formation process is a process for forming a grid group made up of a plurality of vehicles 10. The grid group can be used for grid computing processing, which will be described later. For example, the control unit 505 periodically performs the following process.

[0133] <Step S61> First, the control unit 505 acquires information necessary for organizing a grid group. In this example, the control unit 505 acquires capacity prediction information D5 of the multiple vehicles 10 registered in a capacity prediction table D55 and communication prediction information D6 of the multiple vehicles 10 registered in a communication prediction table D56.

[0134] <Step S62> Next, the control unit 505 organizes a grid group based on the information acquired in step S61.

[0135] In this example, the control unit 505 derives an available period for each of the multiple vehicles 10 based on the capacity prediction information D5 of the multiple vehicles 10 and the communication prediction information D6 of the multiple vehicles 10. The available period is a period during which the computational capacity of the arithmetic device 105 of the vehicle 10 is available and the vehicle 10 is capable of communication. Next, the control unit 505 selects, from the multiple vehicles 10, multiple vehicles 10 whose available periods overlap in part or in whole, and organizes grid groups using the selected multiple vehicles 10. In this way, multiple grid groups are organized. Then, the control unit 505 performs the following process for each grid group.

[0136] The control unit 505 derives a calculation period, which is a period during which grid computing processing (specifically, calculation of job data D1) can be performed by the grid group, based on the available period of each of the multiple vehicles 10 that make up the grid group.

[0137] Next, for each of the multiple vehicles 10 that make up the grid group, the control unit 505 derives the available computational capacity (predicted value) and available time (predicted value) for the vehicle 10 during the computational period based on the capacity prediction information D for that vehicle 10.

[0138] Next, the control unit 505 derives the available computational volume (predicted value) for each of the multiple vehicles 10 constituting the grid group, according to the product of the available computational capacity and available time of that vehicle 10. Then, the control unit 505 derives the available computational volume (predicted value) of the grid group, according to the sum of the available computational volumes of each of the multiple vehicles 10 constituting the grid group. In this example, the available computational volume of a vehicle 10 corresponds to the product of the available computational capacity and available time of the vehicle 10, and the available computational volume of a grid group corresponds to the sum of the available computational volumes of each of the multiple vehicles 10.

[0139] Through the above processing, the calculation period for each grid group, the available capacity and available time for each of the multiple vehicles 10 that make up the grid group, and the available calculation amount for the grid group are derived.

[0140] <Step S63> Next, for each grid group organized in step S62, the control unit 505 registers information about the grid group in the grid table D58. This updates the grid table D58. The information about the grid group includes the registration number set for the grid group, the calculation period and available calculation amount for the grid group, the vehicle ID, available capacity, and available time for each of the multiple vehicles 10 that make up the grid group, etc.

[0141] [Matching process] Next, the matching process will be described with reference to Fig. 15. The matching process is a process of assigning a grid group organized in the grid organization process to the job data D1 accepted in the job acceptance process. For example, the control unit 505 performs the following process after the job acceptance process and the grid organization process are completed.

[0142] <Step S71> First, the control unit 505 selects a job to be subjected to the matching process from among the jobs registered in the job table D53. Then, the control unit 505 selects job data D1 corresponding to the job to be subjected to the matching process from among the job data D1 stored in the storage unit 504.

[0143] <Step S72> Next, the control unit 505 selects grid groups that can be used for grid computing processing for the job data D1 from among the grid groups registered in the grid table D58, and allocates the selected grid groups to the job data D1.

[0144] Specifically, the control unit 505 selects a grid group having an available calculation amount equal to or greater than the calculation amount required for the job data D1 (the calculation amount required for calculating the job data D1) from among the grid groups registered in the grid table D58.

[0145] <Step S73> Next, the control unit 505 registers matching information indicating which grid group is assigned to which job data D1 in the matching table D59. This updates the matching table D59. For example, the matching information includes the reception number set for the job corresponding to the job data D1 and the registration number set for the grid group.

[0146] [Grid Computing Processing] Next, the grid computing process will be described with reference to Fig. 16. In the grid computing process, the job data D1 is processed by a plurality of vehicles 10 that make up a grid group assigned to the job data D1 in the matching process. For example, after the matching process is completed, the control unit 505 performs the following process.

[0147] <Step S81> First, the control unit 505 refers to the grid table D58 and the matching table D59, and distributes the job data D1 to be subjected to the grid computing process to the plurality of vehicles 10 that make up the grid group assigned to that job data D1 in the matching process. Specifically, the control unit 505 transmits a portion of the job data D1 (partial job data) to each of the vehicles 10 assigned to that job data D1. As a result, the job data D1 is processed in parallel by the plurality of vehicles 10 assigned to that job data D1.

[0148] <Step S82> Next, when each vehicle 10 completes the calculation of the partial job data (part of job data D1) transmitted to that vehicle 10, it transmits the partial calculation result data (part of calculation result data D2) obtained by the calculation to the management server 50. The control unit 505 of the management server 50 receives the partial calculation result data transmitted from the vehicle 10 and stores the partial calculation result data in the memory unit 504.

[0149] <Step S83> The control unit 505 determines whether or not all of the vehicles 10 to which the job data D1 has been distributed in step S81 have completed the calculations. If all of the vehicles 10 have completed the calculations, the process of step S84 is performed; if not, the process of step S82 is performed.

[0150] <Step S84> When all of the multiple vehicles 10 have completed the calculations, the control unit 505 generates calculation result data D2 (calculation result data D2 indicating the results of the calculation of the job data D1) corresponding to the job data D1 that is the target of the grid computing process by combining the partial calculation result data stored in the storage unit 504. Then, the control unit 505 transmits the calculation result data D2 corresponding to the job data D1 that is the target of the grid computing process to the client server 20 of the client that requested the calculation of the job data D1.

[0151] <Step S85> Next, the user who provided the computing power of the computing device 105 of the vehicle 10 for grid computing processing is given a reward by the operator of the system 1. Examples of rewards given to the user include points that can be used in the system 1, virtual currency, product discount benefits, etc.

[0152] For example, the control unit 505 of the management server 50 performs processing to provide a reward to a user who provides the computing power of the arithmetic device 105 of the vehicle 10 for grid computing processing. Examples of the processing to provide a reward include processing to associate a "user ID" set for the user with "points" (or virtual currency) that can be used in the system 1 and register them in the user table D50, and processing to send information indicating a product discount benefit to a user terminal (not shown) owned by the user. Note that the information indicating the reward may be registered for each job in the job table D53.

[0153] Furthermore, a reward may be given by the client to a user who provides the computing power of the computing device 105 of the vehicle 10 for grid computing processing. For example, the control unit 205 of the client server 20 may execute processing for giving a reward to a user who provides the computing power of the computing device 105 of the vehicle 10 for grid computing processing.

[0154] [Grid management process] Next, the grid management process will be described with reference to Fig. 17. The grid management process is a process for managing grid groups organized in the grid organization process. For example, the control unit 505 performs the following process as appropriate (for example, periodically) for each grid group registered in the grid table D58, during a predetermined period (for example, one day) before the start of the computation period of the grid group (the period during which grid computing processing can be performed by the grid group) and during the computation period.

[0155] Note that step S91 is an example of an information acquisition process and an information acquisition step. Step S92 is an example of a likelihood derivation process and an likelihood derivation step. Step S93 is an example of a calculation amount derivation process and a calculation amount derivation step. Step S95 is an example of a calculation amount increase process and a calculation amount increase step.

[0156] <Step S91> First, the control unit 505 obtains, for each of the multiple vehicles 10 that make up the grid group, the predicted pattern of that vehicle 10, the predicted available computing capacity of that vehicle 10, and the predicted available time of that vehicle 10.

[0157] In this example, the control unit 505 detects the predicted patterns (driving patterns and stopping patterns) of each of the multiple vehicles 10 that make up the grid group from the predicted pattern table D57. The control unit 505 also detects the available computing capacity (predicted value) and available time (predicted value) of each of the multiple vehicles 10 that make up the grid group from the grid table D58.

[0158] Furthermore, the control unit 505 acquires vehicle state information D13, driving management information D14, charging management information D17, and function management information D18 from each of the plurality of vehicles 10 that make up the grid group.

[0159] The vehicle state information indicates the current state (actual state) of the vehicle 10. The "current state of the vehicle 10" refers to the latest state of the vehicle 10 obtained by the vehicle 10. The vehicle state information D13 includes vehicle position information, vehicle calculation information, vehicle communication information, vehicle power source information, vehicle battery remaining capacity information, vehicle charging information, vehicle function information, etc.

[0160] The driving management information D14 indicates the driving history and driving schedule of the vehicle 10. The charging management information D17 indicates the charging history and charging schedule of the vehicle 10. The function management information D18 indicates the usage history and usage schedule of various functions of the vehicle 10, and the results obtained by the various functions of the vehicle 10 (for example, the results of alcohol detection).

[0161] <Step S92> Next, the control unit 505 compares the actual behavior pattern of each of the multiple vehicles 10 that make up the grid group with the predicted pattern of that vehicle 10, and derives the availability probability of that vehicle 10 based on the results of the comparison.

[0162] In this example, the control unit 505 performs the following processing for each of the multiple vehicles 10 that make up the grid group. The processing by the control unit 505 includes processing that is performed based on the driving pattern when the vehicle 10 is driving, and processing that is performed based on the stopping pattern when the vehicle 10 is stopped. For example, the control unit 505 determines whether the vehicle 10 is driving or stopped based on the vehicle position information in the vehicle state information D13 and the driving management information D14.

[0163] When the vehicle 10 is traveling, the control unit 505 derives the actual traveling route of the vehicle 10 based on the vehicle position information of the vehicle state information D13 and the traveling management information D14. Then, the control unit 505 determines the availability probability of the vehicle 10 according to the degree of match between the actual traveling route of the vehicle 10 and the predicted route indicated in the traveling pattern. The higher the degree of match between the actual traveling route of the vehicle 10 and the predicted route in the traveling pattern, the higher the availability probability of the vehicle 10.

[0164] Furthermore, when the vehicle 10 is stopped, the control unit 505 derives the actual stopping status of the vehicle 10 based on the vehicle state information D13 and the driving management information D14. Then, the control unit 505 detects the availability probability of the vehicle 10 corresponding to the actual stopping status of the vehicle 10 from among stopping patterns indicating the relationship between the stopping status of the vehicle 10 and the availability probability of the vehicle 10.

[0165] As shown in Figure 7, in this example, five stopping conditions (charging status, stopping time period, stopping location type, sunshade usage status, and alcohol detection results) are registered in the stopping pattern, and a probability coefficient is set for each item (option) provided for each of the five stopping conditions.

[0166] The control unit 505 derives the "actual charging status of the vehicle 10" based on the vehicle charging information of the vehicle state information D13 and the charging management information D17. The control unit 505 derives the "actual stopping time period of the vehicle 10" based on the reception time of the vehicle state information D13 including the vehicle position information and the driving management information D14. The control unit 505 refers to map information (shown) in which location types are registered, and derives the type of the position of the vehicle 10 indicated in the vehicle state information D13 as the "actual stopping place type of the vehicle 10." The control unit 505 derives the "actual sunshade usage status of the vehicle 10" and the "actual alcohol detection result of the vehicle 10" based on the vehicle function information of the vehicle state information D13 and the function management information D18.

[0167] The control unit 505 detects an item corresponding to the actual stopping situation of the vehicle 10 from among the items provided for each of the five stopping situations indicated in the stopping pattern, and acquires a probability coefficient corresponding to the detected item. Then, the control unit 505 derives the availability probability of the vehicle 10 based on the acquired probability coefficient. For example, the larger the sum of the probability coefficients, the higher the availability probability of the vehicle 10. Specifically, if the sum of the probability coefficients is "S", the availability probability of the vehicle 10 may be "1-1 / (S^0.5)".

[0168] <Step S93> Next, the control unit 505 derives the expected computational volume of each of the multiple vehicles 10 that make up the grid group, in accordance with the product of the "predicted available computational capacity," the "predicted available time," and the "availability probability" of the vehicle 10. Next, the control unit 505 derives the expected computational volume of the grid group in accordance with the sum of the expected computational volumes of each of the multiple vehicles 10.

[0169] In this example, the expected computational amount of the vehicle 10 corresponds to the product of the "predicted value of available computational capacity" of the vehicle 10 acquired in step S91, the "predicted value of available time" of the vehicle 10 acquired in step S91, and the "availability probability" of the vehicle 10 derived in step S92. The expected computational amount of the grid group corresponds to the sum of the expected computational amounts of each of the multiple vehicles 10 that make up the grid group.

[0170] Then, the control unit 505 associates the expected calculation amount of the grid group with the grid group and registers it in the grid table D58. As a result, the expected calculation amount of the grid group is registered in the grid table D58 for each grid group.

[0171] <Step S94> Next, the control unit 505 determines whether the expected calculation amount of the grid group derived in step S93 is below a predetermined reference amount. If the expected calculation amount of the grid group is below the reference amount, the process of step S95 is performed; if not, the grid management process is terminated. For example, the reference amount may be set to an empirically derived required calculation amount. Alternatively, the reference amount may be set to the required calculation amount of job data D1 to be processed by the grid group.

[0172] <Step S95> If the expected calculation volume of the grid group falls below the reference volume, the control unit 505 changes the multiple vehicles 10 that make up the grid group so that the expected calculation volume of the grid group increases to equal to or greater than the reference volume. Then, the control unit 505 registers (overwrites) information about the changed grid group in the grid table D58. This updates the grid table D58. Note that the information about the changed grid group includes the vehicle ID, available capacity, and available time of each of the multiple vehicles 10 that make up the changed grid group, the available calculation volume of the changed grid group, etc.

[0173] In this example, in the calculation amount increasing process (step S95), the control unit 505 changes the multiple vehicles 10 that make up the grid group so that the "available calculation capacity of the grid group" derived based on the available calculation capacity of each of the multiple vehicles 10 that make up the grid group becomes higher. In this way, by increasing the available calculation capacity of the grid group, it is possible to increase the expected calculation amount of the grid group.

[0174] Specifically, in the calculation amount increasing process, the control unit 505 increases the number of vehicles 10 that make up the grid group, thereby increasing the available calculation capacity of the grid group. In this way, by increasing the number of vehicles 10 that make up the grid group, the available calculation capacity of the grid group can be increased, and as a result, the expected calculation amount of the grid group can be increased.

[0175] Alternatively, in the calculation amount increasing process, the control unit 505 increases the available calculation capacity of the grid group by changing at least one vehicle 10 of the multiple vehicles 10 that make up the grid group to a vehicle 10 that has available calculation capacity higher than the available calculation capacity of that vehicle. In this way, by changing at least one vehicle 10 of the multiple vehicles 10 that make up the grid group to a vehicle 10 that has available calculation capacity higher than the available calculation capacity of that vehicle 10, the available calculation capacity of the grid group can be increased, and as a result, the expected calculation amount of the grid group can be increased.

[0176] The available computing capacity of a grid group may be the average value of the available computing capacity of each of the multiple vehicles 10 that make up the grid group.

[0177] Alternatively, the available computing capacity of a grid group may be the average value of values ​​obtained by multiplying the available computing capacity of each of the multiple vehicles 10 that make up the grid group by a weighting factor according to the available time (or availability probability) of that vehicle 10. The longer the available time of a vehicle 10, the larger the weighting factor of that vehicle 10. The higher the availability probability of a vehicle 10, the larger the weighting factor of that vehicle 10.

[0178] Alternatively, the available computing capacity of a grid group may be the average value of values ​​obtained by multiplying the available computing capacity of each of the multiple vehicles 10 that make up the grid group by a weighting coefficient according to the product of the available time and availability probability of that vehicle 10. The larger the product of the available time and availability probability of a vehicle 10, the larger the weighting coefficient of that vehicle 10.

[0179] In addition, when the plurality of vehicles 10 constituting the grid group performing the grid computing processing are changed during the execution of the grid computing processing (when the grid group is reorganized), the control unit 505 may control the vehicles 10 that are not included in the changed grid group so that job data D1 (specifically, partial job data) is sent from "vehicles 10 that are not included in the changed grid group" among the vehicles 10 constituting the grid group before the change to "one of the vehicles 10 that constitute the changed grid group."

[0180] Alternatively, when the plurality of vehicles 10 constituting the grid group performing the grid computing processing are changed while the grid computing processing is being executed, the control unit 505 of the management server 50 may control the vehicles 10 that are not included in the changed grid group so that the remaining uncalculated job data D1 (specifically, partial job data) and the intermediate calculation data showing the intermediate calculation results of the job data D1 are sent from "vehicles 10 that are not included in the changed grid group" among the vehicles 10 constituting the grid group before the change to "one of the vehicles 10 constituting the changed grid group."

[0181] [Effects of the embodiment] As described above, in the embodiment, the grid management method (see FIG. 18) can derive the expected computational volume of the grid group in accordance with the actual behavior pattern of each of the plurality of vehicles 10 that make up the grid group. This makes it possible to accurately derive the available computational volume of the grid group.

[0182] In the embodiment, the prediction pattern includes a driving pattern. The driving pattern indicates a predicted driving route of the vehicle 10, which is a driving route leading to a stopping location where the vehicle 10 is to be stopped. This makes it possible to derive the expected computational amount of the grid group according to the actual driving route of the vehicle 10.

[0183] In the embodiment, the prediction pattern includes a stopping pattern. The stopping pattern indicates the relationship between the predicted stopping status of the vehicle 10 and the availability probability of the vehicle 10. The stopping status of the vehicle includes at least one of the charging status while the vehicle 10 is stopped, the time period when the vehicle 10 is stopped, and the type of stopping location where the vehicle 10 is stopped. This makes it possible to derive the expected computational amount of the grid group according to the actual stopping status of the vehicle 10.

[0184] Furthermore, in the embodiment, in the grid management method (see FIG. 18), when the expected calculation volume of the grid group falls below a reference volume, the control unit 505 changes the plurality of vehicles 10 that make up the grid group so that the expected calculation volume of the grid group increases to equal to or exceeds the reference volume. This makes it possible to accurately ensure the calculation volume available for the grid group.

[0185] (Modification 1 of the embodiment) The system 1 of the first modification of the embodiment differs from the system 1 of the embodiment in the calculation amount increasing process (step S95). The other configurations of the system 1 of the first modification of the embodiment are the same as those of the system 1 of the embodiment.

[0186] In a first modification of the embodiment, in the calculation amount increasing process (step S95), the control unit 505 changes the multiple vehicles 10 that make up the grid group so that the usable computational capacity of the grid group derived based on the usable computational capacity of each of the multiple vehicles 10 that make up the grid group increases as the usable availability probability of the grid group derived based on the usable availability probability of each of the multiple vehicles 10 that make up the grid group decreases. Then, the control unit 505 registers (overwrites) information about the changed grid group in the grid table D58.

[0187] In this example, the control unit 505 increases the increase in the number of vehicles 10 that make up the grid group in the calculation amount increase process, thereby increasing the increase in the available calculation capacity of the grid group. Also, the control unit 505 decreases the increase in the number of vehicles 10 that make up the grid group in the calculation amount increase process, thereby decreasing the increase in the available calculation capacity of the grid group. In this way, by adjusting the increase in the number of vehicles 10 that make up the grid group, it is possible to appropriately adjust the increase in the available calculation capacity of the grid group.

[0188] Alternatively, in the calculation amount increasing process, the control unit 505 increases the available computational capacity of the grid group by changing at least one of the multiple vehicles 10 constituting the grid group to a vehicle 10 having a higher available computational capacity than the vehicle 10. Furthermore, the control unit 505 increases the increase in the available computational capacity of the grid group by increasing the difference between the available computational capacity of the vehicle 10 before the change and the available computational capacity of the vehicle 10 after the change, and decreases the increase in the available computational capacity of the grid group by decreasing the difference between the available computational capacity of the vehicle 10 before the change and the available computational capacity of the vehicle 10 after the change. In this way, by adjusting the "difference between the available computational capacity of the vehicle 10 before the change and the available computational capacity of the vehicle 10 after the change" when changing at least one of the multiple vehicles 10 constituting the grid group to a vehicle 10 having a higher available computational capacity than the vehicle 10, the increase in the available computational capacity of the grid group can be appropriately adjusted.

[0189] The availability probability of a grid group may be the average value of the availability probabilities of each of the multiple vehicles 10 that make up the grid group.

[0190] Alternatively, the availability probability of a grid group may be the average value of values ​​obtained by multiplying the availability probability of each of the multiple vehicles 10 that make up the grid group by a weighting factor according to the availability time (or availability probability) of that vehicle 10. The longer the availability time of a vehicle 10, the larger the weighting factor of that vehicle 10. The higher the availability probability of a vehicle 10, the larger the weighting factor of that vehicle 10.

[0191] Alternatively, the availability probability of a grid group may be the average value of values ​​obtained by multiplying the availability probability of each of the multiple vehicles 10 that make up the grid group by a weighting coefficient according to the product of the availability time and the availability probability of that vehicle 10. The larger the product of the availability time and the availability probability of a vehicle 10, the larger the weighting coefficient of that vehicle 10.

[0192] [Effects of Modification 1 of the Embodiment] As described above, in the first variant of the embodiment, in the calculation amount increase process (step S85), the control unit 505 changes the multiple vehicles 10 that make up the grid group so that the available calculation capacity of the grid group increases as the availability probability of the grid group decreases.

[0193] With this configuration, a decrease in the expected calculation volume of the grid group due to a decrease in the availability probability of the grid group can be compensated for by an increase in the expected calculation volume of the grid group due to an increase in the available calculation capacity of the grid group. Also, it is possible to prevent the expected calculation volume of the grid group from becoming too high. This makes it possible to appropriately ensure the expected calculation volume of the grid group.

[0194] (Modification 2 of the embodiment) The system 1 of the second modification of the embodiment differs from the system 1 of the embodiment in the grid management process. The other configurations of the system 1 of the first modification of the embodiment are the same as those of the system 1 of the embodiment.

[0195] Fig. 18 illustrates a grid management process in Modification 2 of the embodiment. In the grid management process in Modification 2 of the embodiment, steps S96 and S97 are performed instead of steps S94 and S95 shown in Fig. 17. Note that step S97 is an example of a calculation amount adjustment process and a calculation amount adjustment step.

[0196] <Step S96> The control unit 505 determines whether the expected calculation volume of the grid group derived in step S93 is outside a predetermined allowable range. The allowable range is a range from a first reference amount to a second reference amount. The first reference amount corresponds to the "reference amount" in step S94 of the embodiment. The second reference amount is an amount greater than the first reference amount. If the expected calculation volume of the grid group is outside the allowable range, the process of step S97 is performed; if not, the grid management process is terminated.

[0197] <Step S97> If the expected computational volume of the grid group is outside the allowable range, the control unit 505 changes the multiple vehicles 10 that make up the grid group so that the smaller the "availability probability of the grid group" derived based on the availability probability of each of the multiple vehicles 10 that make up the grid group, the higher the "available computational capacity of the grid group" derived based on the available computational capacity of each of the multiple vehicles 10 that make up the grid group. Then, the control unit 505 registers (overwrites) information about the changed grid group in the grid table D58.

[0198] In this example, the control unit 505 increases the number of vehicles 10 that make up the grid group in the calculation amount adjustment process (step S97), thereby increasing the available calculation capacity of the grid group. Also, the control unit 505 decreases the number of vehicles that make up the grid group in the calculation amount adjustment process, thereby decreasing the available calculation capacity of the grid group. In this way, by adjusting the number of vehicles 10 that make up the grid group, the available calculation capacity of the grid group can be appropriately adjusted.

[0199] Alternatively, in the calculation amount adjustment process (step S97), the control unit 505 increases the available computational capacity of the grid group by changing at least one vehicle 10 of the multiple vehicles 10 that make up the grid group to a vehicle 10 that has available computational capacity higher than the available computational capacity of that vehicle 10. Also, in the calculation amount adjustment process, the control unit 505 decreases the available computational capacity of the grid group by changing at least one vehicle 10 of the multiple vehicles 10 that make up the grid group to a vehicle 10 that has available computational capacity lower than the available computational capacity of that vehicle 10. In this way, by changing at least one vehicle of the multiple vehicles 10 that make up the grid group to a vehicle 10 that has available computational capacity different from the available computational capacity of that vehicle 10, the available computational capacity of the grid group can be appropriately adjusted.

[0200] The calculation amount adjustment process (step S97) performed when the expected calculation amount of the grid group falls below a first reference amount that defines the lower limit of the allowable range is an example of calculation amount increase process. The calculation amount increase process is a process of changing the multiple vehicles 10 that make up the grid group so that the expected calculation amount of the grid group increases to be equal to or greater than the reference amount (in this example, the first reference amount). Furthermore, the calculation amount adjustment process (step S97) performed when the expected calculation amount of the grid group exceeds a second reference amount that defines the upper limit of the allowable range is an example of calculation amount decrease process. The calculation amount decrease process is a process of changing the multiple vehicles 10 that make up the grid group so that the expected calculation amount of the grid group decreases to be equal to or less than the reference amount (in this example, the second reference amount).

[0201] [Effects of Modification 2 of the Embodiment] As described above, in the second modification of the embodiment, by performing the calculation amount adjustment process (step S97), the decrease in the expected calculation amount of the grid group due to the decrease in the availability probability of the grid group can be compensated for by an increase in the available calculation capacity of the grid group. Also, it is possible to prevent the expected calculation amount of the grid group from becoming too high. This makes it possible to appropriately ensure the expected calculation amount of the grid group.

[0202] (Other embodiments) In the above description, an example has been given in which the control unit 505 of the management server 50 performs the position prediction process, but the present invention is not limited to this. For example, the position prediction process may be performed by the arithmetic device 105 of the vehicle 10. In this case, the arithmetic device 105 may transmit position prediction information D4 obtained by the position prediction process to the management server 50. The control unit 505 of the management server 50 may update the position prediction table D54 by registering (overwriting) the position prediction information D4 transmitted from the vehicle 10 in the position prediction table D54. The same applies to the operation prediction process and the communication prediction process.

[0203] In addition, in the above description, the control unit 505 is aggregated in a single management server 50, but this is not limiting. For example, the control unit 505 may be distributed among a plurality of management servers 50 (not shown) that communicate with each other via the communication network 5.

[0204] In the above description, the storage unit 504 may be configured by a single storage device or may be configured by multiple storage devices. The multiple storage devices may be consolidated into a single management server 50, or may be distributed among multiple management servers 50 (not shown) that communicate with each other via the communication network 5.

[0205] In the above description, the control unit 505 may be configured by a single control unit or may be configured by multiple control units. The multiple control units may be aggregated in a single management server 50, or may be distributed among multiple management servers 50 (not shown) that communicate with each other via the communication network 5.

[0206] In the above description, the arithmetic device 105 may be configured with a single arithmetic unit, or may be configured with multiple arithmetic units.

[0207] In the above description, the vehicle 10 (specifically, a four-wheeled motor vehicle) is given as an example of a moving body on which the arithmetic device 105 is mounted, but this is not limiting. "Running" is an example of "moving", and "stopping" is an example of "stopping moving". The arithmetic device 105 may be mounted on a moving body other than the vehicle 10. Examples of such moving bodies include transportation machinery and mobile information terminals. Examples of transportation machinery include motorcycles, railroad vehicles, ships, aircraft, drones, etc. A vehicle is an example of transportation machinery. Examples of mobile information terminals include notebook personal computers, tablets, smartphones, etc.

[0208] In the above description, the grid computing process may be provided with the computing power of not only the computing device 105 mounted on the vehicle 10 but also that of another computing device (not shown). Such another computing device may be a stationary computing device (for example, a desktop personal computer).

[0209] The above embodiments may be combined as appropriate. The above embodiments are essentially preferred examples and are not intended to limit the scope of the technology disclosed herein, its applications, or its uses. [Industrial Applicability]

[0210] As described above, the technology disclosed herein is useful as a grid computing technology. [Explanation of symbols]

[0211] 1 System 10 Vehicles (moving objects) 105 Arithmetic equipment 20 Client Server 50 Management Server (Management Device) 501 Input section 502 Output section 503 Communications Department 504 Storage section 505 Control Unit

Claims

1. A management device that manages a group of grids that are configured by a plurality of mobile objects each having a computing device and that can be used for grid computing processing, comprising: A control unit is provided, The control unit an information acquisition process for acquiring, for each of a plurality of mobile objects constituting the grid group, a predicted pattern indicating a predicted behavior pattern of the mobile object, an available computing capacity which is a computing capacity which can be used for the grid computing process of the predicted mobile object, and an available time which is a time which can be used for the grid computing process of the predicted mobile object; a probability derivation process for deriving an availability probability indicating the likelihood that available time for each of a plurality of moving objects constituting the grid group can be secured in accordance with a comparison result between the actual behavior pattern of the moving object and the predicted pattern; and performing a calculation amount derivation process for deriving an expected calculation amount for each of a plurality of moving bodies constituting the grid group in accordance with the product of the predicted available calculation capacity of the moving body, the predicted available time, and the availability probability, and deriving an expected calculation amount for the grid group in accordance with the sum of the expected calculation amounts for each of the plurality of moving bodies. A management device characterized by:

2. 2. The management device of claim 1, The prediction pattern is a predicted movement route of the moving object, and includes a movement pattern indicating a movement route toward a movement stopping place where the moving object is to be stopped. A management device characterized by:

3. 3. The management device according to claim 1, the prediction pattern includes a movement stop pattern indicating a relationship between a predicted movement stop situation of the moving object and an availability probability of the moving object; The stoppage status of the moving body includes at least one of a charging status while the moving body is stopped, a time period when the moving body is stopped, and a type of stop location where the moving body is stopped. A management device characterized by:

4. In any one of claims 1 to 3, the management device The control unit A calculation amount adjustment process is performed to change the plurality of moving bodies constituting the grid group so that the available computational capacity of the grid group derived based on the available computational capacity of each of the plurality of moving bodies constituting the grid group increases as the availability probability of the grid group derived based on the availability probability of each of the plurality of moving bodies constituting the grid group decreases. A management device characterized by:

5. 5. The management device of claim 4, In the calculation amount adjustment process, the control unit increases the number of the plurality of moving objects constituting the grid group to increase the available calculation capacity of the grid group, and decreases the number of the plurality of moving objects constituting the grid group to decrease the available calculation capacity of the grid group. A management device characterized by:

6. 5. The management device of claim 4, In the calculation amount adjustment process, the control unit increases the available calculation capacity of the grid group by changing at least one of the multiple moving bodies constituting the grid group to a moving body having an available calculation capacity higher than the available calculation capacity of the mobile body, and decreases the available calculation capacity of the grid group by changing at least one of the multiple moving bodies constituting the grid group to a moving body having an available calculation capacity lower than the available calculation capacity of the mobile body. A management device characterized by:

7. A management method in which a computer manages a group of grids that are configured by a plurality of mobile objects each having a computing device and that can be used for grid computing processing, comprising the steps of: an information acquisition step of acquiring, for each of a plurality of mobile objects constituting the grid group, a predicted pattern indicating a predicted behavior pattern of the mobile object, an available computing capacity which is a computing capacity which can be used for the grid computing process of the predicted mobile object, and an available time which is a time which can be used for the grid computing process of the predicted mobile object; a probability derivation step of deriving an availability probability indicating the likelihood that available time for each of a plurality of moving objects constituting the grid group can be secured in accordance with a comparison result between the actual behavior pattern of the moving object and the predicted pattern; a calculation amount derivation step of deriving an expected calculation amount for each of a plurality of moving bodies constituting the grid group in accordance with a product of the predicted available calculation capacity of the moving body, the predicted available time, and the availability probability of the moving body, and deriving an expected calculation amount for the grid group in accordance with a sum of the expected calculation amounts for each of the plurality of moving bodies. A management method characterized by:

Citation Information

Patent Citations

  • System and method for distributed processing using internet

    JP2003016043A

  • Application program prediction method and mobile terminal

    JP2005198345A

  • Network system and mobile communication node

    JP2006201896A

  • Management device, resource management method, resource management program and information processing system

    JP2013206321A

  • Multi-tenant identity and data security management cloud service

    JP2018142332A