Management device and management method
The management device and method for grid computing actively gather vehicles in proximity by offering rewards, thereby securing stable computing resources and enhancing processing efficiency.
Patent Information
- Application Number
- JP2021140647
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-08-31
- Publication Date
- 2025-06-23
- Estimated Expiration
- 2041-08-31
AI Technical Summary
Existing systems for grid computing using vehicles equipped with arithmetic units are unable to actively gather multiple vehicles in close proximity to secure stable computing resources.
A management device and method that allocates job data to computing devices on multiple vehicles, incentivizes users with rewards for executing grid computing, and increases rewards for vehicles in proximity, encouraging them to gather and participate in grid computing events.
Effectively secures stable computing resources by encouraging multiple vehicles to gather in close proximity for grid computing, enhancing the efficiency of job processing and promoting user participation through reward incentives.
Smart Images

Figure 0007696547000001 
Figure 0007696547000002 
Figure 0007696547000003
Abstract
Description
Technical Field
[0001] The present invention relates to a management device and a management method for managing grid computing realized in a plurality of computing devices mounted on a plurality of vehicles.
Background Art
[0002] This type of technology is disclosed in, for example, Patent Documents 1 and 2. Patent Document 1 discloses a system that realizes grid computing using in-vehicle devices mounted on vehicles in addition to a plurality of processing devices. In this system, when an engine-off operation or a power-off operation is performed in a vehicle equipped with an in-vehicle device, the in-vehicle device is made to participate in grid computing.
[0003] Further, Patent Document 2 discloses a system that realizes grid computing by in-vehicle terminals mounted on each of a group of vehicles that are present in the vicinity when the group of vehicles is traveling. In this system, grid computing is performed when in-vehicle terminals mounted on respective vehicles are present in the vicinity where they can perform wireless communication.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0005] Incidentally, in grid computing, depending on the content of a job, sequential processing such as having one arithmetic unit perform calculations using the calculation results of another arithmetic unit may be performed. Therefore, it is desirable for a plurality of arithmetic units to operate simultaneously for a relatively long and continuous period of time. For example, in order to perform grid computing, if a plurality of vehicles equipped with arithmetic units are gathered at a short distance, that is, if a group of vehicles is formed at a specific location by a plurality of vehicles, it is considered effective to keep a plurality of arithmetic units operating simultaneously for a relatively long time. Also, gathering a plurality of vehicles in this way at a short distance is also effective when communication between vehicles is required in grid computing.
[0006] As described above, when grid computing is performed by gathering a plurality of vehicles equipped with arithmetic units at a short distance, it is considered that stable computing resources (the computing power of the arithmetic units) for grid computing can be effectively secured. The systems described in Patent Documents 1 and 2 above were unable to actively gather a plurality of vehicles equipped with arithmetic units at a short distance in order to perform grid computing.
[0007] The present invention has been made to solve the above-described problems, and an object thereof is to provide a management device and a management method capable of appropriately performing grid computing in a state where a plurality of vehicles equipped with arithmetic units are located in proximity to each other, and securing stable computing resources.
Means for Solving the Problems
[0008] In order to achieve the above object, the present invention provides a management device for managing grid computing that causes a plurality of computing devices mounted on a plurality of vehicles to process job data, the management device including: a storage unit that stores information regarding the plurality of vehicles and / or the plurality of computing devices; and a control unit configured to allocate job data to each of the plurality of computing devices based on the information stored in the storage unit, and cause each of the plurality of computing devices to process the job data, thereby realizing grid computing. The control unit is configured to give a reward to the user of the vehicle on which the computing device is mounted when the computing device executes grid computing, and increase the reward given to the users of the plurality of vehicles when the computing devices mounted on the plurality of vehicles positioned in proximity execute grid computing.
[0009] In the present invention configured as described above, when grid computing is executed by the computing devices of a plurality of vehicles positioned in proximity, the management device for managing grid computing increases the reward given to the users. Thereby, a plurality of vehicles can be effectively gathered in close proximity when grid computing is executed. That is, it is possible to effectively prompt the user to execute grid computing by a group of vehicles gathered in close proximity. Therefore, according to the present invention, stable computing resources for grid computing can be effectively secured. Preferably, the reward given to the user by the control unit is stored and managed in the storage unit.
[0010] In the present invention, preferably, the control unit sets the reward given to the user according to the computing resources provided by the computing device for grid computing, and increases the reward set according to the computing resources according to the number of the plurality of vehicles when the computing devices mounted on the plurality of vehicles positioned in proximity execute grid computing. According to the present invention configured as described above, since the reward is increased according to the number of vehicles, it is possible to encourage the user to execute grid computing with as many vehicles as possible.
[0011] In the present invention, preferably, when the computing devices mounted on each of a plurality of vehicles located in proximity process job data corresponding to the same job and execute grid computing, the control unit is configured to increase the reward given to the users of the plurality of vehicles. According to the present invention configured as described above, it is possible to appropriately provide stable computing resources by the computing devices of a plurality of vehicles located in proximity for processing job data corresponding to the same job. Therefore, it becomes possible to efficiently process this job data by grid computing.
[0012] In the present invention, preferably, in a state where a plurality of vehicles are located in proximity, the control unit sets an event in order to cause the computing devices mounted on each of the plurality of vehicles to execute grid computing, transmits a participation request for the set event to the users of the vehicles on which the computing devices are mounted, and realizes grid computing by the computing devices mounted on each of the plurality of vehicles that are in a non-operating state at the venue where the event is held in response to the participation request. According to the present invention configured as described above, by holding an event for performing grid computing, a plurality of vehicles on which computing devices are mounted can be effectively gathered in the vicinity, and grid computing can be appropriately performed in a situation where these vehicles are in a non-operating state. Therefore, according to the present invention, it is possible to more effectively secure stable computing resources for grid computing. Further, in the present invention, by making the holding of grid computing an event, it is possible to actively create an opportunity for communication between users through grid computing.
[0013] From another perspective, in order to achieve the above object, the present invention provides a management method for a computer to manage grid computing in which a plurality of computing devices mounted on a plurality of vehicles process job data. The management method includes a storage step of storing information regarding the plurality of vehicles and / or the plurality of computing devices, and a control step of realizing grid computing by distributing job data to each of the plurality of computing devices based on the information stored in the storage step and causing each of the plurality of computing devices to process the job data. The control step includes a step of giving a reward to the user of the vehicle on which the computing device is mounted when the computing device executes grid computing, and a step of increasing the reward given to the users of the plurality of vehicles when the computing devices mounted on the plurality of vehicles positioned close to each other execute grid computing. Also according to the present invention configured as described above, since the reward is increased when grid computing is executed by the computing devices of a plurality of vehicles positioned close to each other, it is possible to effectively encourage the user to execute grid computing by a group of vehicles gathered in the short distance. Therefore, it is possible to effectively secure stable computing resources for grid computing.
Advantages of the Invention
[0014] According to the management device and the management method of the present invention, it is possible to appropriately perform grid computing in a state where a plurality of vehicles on which computing devices are mounted are positioned close to each other, and to secure stable computing resources.
Brief Description of the Drawings
[0015]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
[0016] Hereinafter, with reference to the accompanying drawings, a management device and a management method according to an embodiment of the present invention will be described.
[0017] [System] FIG. 1 illustrates the configuration of the system 1 according to this embodiment. This system 1 includes a plurality of vehicles 10, a plurality of user terminals 20, a client server 30, a facility server 40, and a management server 50. These components can communicate with each other via a communication network 5. An arithmetic unit 105 is installed in each of the plurality of vehicles 10. Note that a plurality of client servers 30 may be provided in the system 1. Similarly, a plurality of facility servers 40 may be provided in the system 1.
[0018] As shown in FIG. 2, in the system 1 of this embodiment, grid computing is configured by a plurality of arithmetic units 105, and grid computing processing is performed to cause an available arithmetic unit 105 among the plurality of arithmetic units 105 to process job data.
[0019] Note that when the computing power of the arithmetic unit 105 is required in the vehicle 10, the arithmetic unit 105 is in an operating state, and the computing power of the arithmetic unit 105 is utilized. For example, when the vehicle 10 is running, the computing power of the arithmetic unit 105 is required for running control of the vehicle 10, and the arithmetic unit 105 is in an operating state.
[0020] On the other hand, when the computing power of the arithmetic unit 105 is not required in the vehicle 10, the arithmetic unit 105 is in a stopped state, and the computing power of the arithmetic unit 105 is no longer utilized. For example, when the vehicle 10 stops and the power of the vehicle 10 is turned off, the starting ability of the arithmetic unit 105 is not required, and the arithmetic unit 105 is in a stopped state.
[0021] Here, when the computing power of the arithmetic unit 105 is not required in the vehicle 10, by providing the computing power of the arithmetic unit 105 for grid computing processing, it becomes possible to effectively utilize the computing power of the arithmetic unit 105.
[0022] [Vehicle] Vehicle 10 is owned by a user. The user drives vehicle 10. In this example, vehicle 10 is an automobile. Further, vehicle 10 is equipped with a battery (not shown). The power of the battery is supplied to in-vehicle devices such as arithmetic unit 105. Examples of such vehicle 10 include an electric vehicle and a plug-in hybrid vehicle.
[0023] As shown in FIG. 3, vehicle 10 includes actuator 11, sensor 12, input unit 101, output unit 102, communication unit 103, storage unit 104, arithmetic unit 105, and lighting device 110.
[0024] Actuator 11 includes actuators for the drive system, steering system, braking system, etc. Examples of actuators for the drive system include an engine, a transmission, and a motor. An example of an actuator for the braking system is a brake. An example of an actuator for the steering system is a steering.
[0025] Sensor 12 acquires various types of information used for controlling vehicle 10. Examples of sensor 12 include an external camera that images the outside of the vehicle, an in-vehicle camera that images the inside of the vehicle, a radar that detects an object outside the vehicle, a vehicle speed sensor, an acceleration sensor, a yaw rate sensor, an accelerator opening sensor, a steering sensor, a brake hydraulic pressure sensor, etc.
[0026] Input unit 101 inputs information and data. Examples of input unit 101 include an operation unit that inputs information corresponding to an operation when operated, a camera that inputs an image indicating information, a microphone that inputs a voice indicating information, etc. Examples of the operation unit include operation buttons and touch sensors of a car navigation device. The information and data input to input unit 101 are sent to arithmetic unit 105. For example, in the present embodiment, input unit 101 receives an instruction from the user to provide the computing power of arithmetic unit 105 of vehicle 10 for grid computing processing.
[0027] The output unit 102 outputs information and data. Examples of the output unit 102 include a display unit that outputs an image indicating information, a speaker that outputs a voice indicating information, and the like. Examples of the display unit include a display of a car navigation device. Examples of the speaker include a speaker of a car navigation device.
[0028] The communication unit 103 transmits and receives information and data. The information and data received by the communication unit 103 are sent to the arithmetic unit 105. The lighting device 110 includes exterior lamps (headlights, taillights, brake lights, turn signals, etc.) and room lamps.
[0029] As described above, the arithmetic unit 105 provides its computing power for grid computing processing. Specifically, the arithmetic unit 105 processes the allocated job data so as to implement grid computing. The arithmetic unit 105 is a computer having a processor, a memory, and the like. Examples of the processor include a CPU (Central Processing Unit), an MPU (Media Processing Unit), a GPU (Graphics Processing Unit), and the like. The memory stores a program for operating the processor, information and data indicating the processing result of the processor, and the like.
[0030] Note that the number of processors installed in the arithmetic unit 105 may be one or a plurality. Also, the processor installed in the arithmetic unit 105 may be only one of an MPU, a CPU, and a GPU, or may be two or more of an MPU, a CPU, and a GPU. In one example, the arithmetic unit 105 is composed of one or a plurality of ECUs (Electronic Control Units) and controls each part of the vehicle 10. In this example, in addition to processing job data for the above grid computing, the arithmetic unit 105 controls the actuator 11 and the lighting device 110 according to various information obtained by the sensor 12. In another example, the arithmetic unit 105 may be a computer different from such an ECU (i.e., a separate body from the ECU). In this example, the arithmetic unit 105 mainly processes job data for grid computing without controlling each part of the vehicle 10.
[0031] The storage unit 104 stores information and data. In this example, the storage unit 104 stores vehicle information D11, vehicle state information D12, driving history information D13, arithmetic unit information D14, and operation history information D15.
[0032] The vehicle information D11 is information regarding the vehicle 10. For example, the vehicle information D11 includes a vehicle ID set in the vehicle 10, vehicle performance information indicating the performance of the vehicle, an address registered for the vehicle 10, and the like. The vehicle ID is an example of vehicle identification information for identifying the vehicle 10. The user ID is an example of user identification information for identifying the user.
[0033] Vehicle state information D12 indicates the state of vehicle 10. For example, the vehicle state information D12 includes vehicle position information, vehicle communication information, vehicle power supply information, vehicle battery remaining amount information, vehicle charging information, etc. The vehicle position information indicates the position (latitude and longitude) of vehicle 10. For example, the vehicle position information can be obtained by GPS (Global Positioning System). The vehicle communication information indicates the communication state of vehicle 10. The vehicle power supply information indicates the state of the power supply of vehicle 10. For example, the vehicle power supply information indicates the on / off state of the ignition power supply, the on / off state of the accessory power supply, etc. The vehicle battery remaining amount information indicates the remaining amount of the battery (not shown) installed in vehicle 10. The vehicle charging information indicates whether vehicle 10 is being charged at a charging facility (not shown).
[0034] Note that information indicating the state in which vehicle 10 is set to a non-operating state for implementing grid computing (hereinafter referred to as the "grid computing standby state") may also be included in the vehicle state information D12. This grid computing standby state is set when the input unit 101 of vehicle 10 or the input unit 201 of the user terminal 20 receives an instruction from the user to provide the computing power of the arithmetic unit 105 for grid computing processing, and vehicle 10 enters a non-operating state (for example, a standby state such as the ignition power off or the accessory power off state, or a state where the doors are locked).
[0035] The driving history information D13 is information indicating the driving history of vehicle 10. For example, the driving history information D13 indicates the position and time of vehicle 10 in association with each other. Further, the driving history information D13 may include information such as the guidance route and destination set in the navigation (route guidance) of vehicle 10.
[0036] The computing device information D14 is information regarding the computing device 105. For example, the computing device information D14 includes a computing device ID set in the computing device 105, a vehicle ID set in the vehicle 10 on which the computing device 105 is mounted, computing device performance information indicating the performance of the computing device 105, and the like. The computing device ID is an example of computing device identification information for identifying the computing device 105. The performance of the computing device 105 indicated by the computing device performance information includes a computing ability (specifically, a maximum computing ability) indicating the computing ability of the computing device 105, a ratio between the CPU and the GPU in the computing device 105, and the like. Note that the computing ability of the computing device 105 is the amount of data that the computing device 105 can compute per unit time.
[0037] The operation history information D15 is information indicating the operation history of the computing device 105. For example, the operation history information D15 indicates the utilization rate of the computing ability of the computing device 105 in association with the time.
[0038] [User Terminal] The user terminal 20 is owned by the user. The user operates the user terminal 20 to utilize various functions. Also, the user can carry the user terminal 20 around. Examples of such a user terminal 20 include a smartphone, a tablet, a notebook personal computer, and the like.
[0039] As shown in FIG. 4, the user terminal 20 includes an input unit 201, an output unit 202, a communication unit 203, a storage unit 204, and a control unit 205.
[0040] The input unit 201 inputs information and data. Examples of the input unit 201 include an operation unit that inputs information corresponding to an operation when operated, a camera that inputs an image indicating information, a microphone that inputs voice indicating information, and the like. Examples of the operation unit include an operation button, a touch sensor, and the like. The information input to the input unit 201 is sent to the computing device 105. For example, in the present embodiment, the input unit 201 receives an instruction from the user to provide the computing ability of the computing device 105 of the vehicle 10 for grid computing processing.
[0041] The output unit 202 outputs information and data. Examples of the output unit 202 include a display unit that outputs an image indicating information, a speaker that outputs voice indicating information, and the like. The communication unit 203 transmits and receives information and data. The information and data received by the communication unit 303 are sent to the control unit 205.
[0042] The control unit 205 controls each part of the user terminal 20. The control unit 205 includes a processor, a memory, and the like. The memory stores a program for operating the processor, information and data indicating the processing result of the processor, and the like.
[0043] The storage unit 204 stores information and data. In this example, the storage unit 204 stores terminal information D21, terminal state information D22, and schedule information D23.
[0044] The terminal information D21 is information regarding the user terminal 20. For example, the terminal information D21 includes a user terminal ID set in the user terminal 20, user terminal performance information indicating the performance of the user terminal 20, and the like. The user terminal ID is an example of user terminal identification information for identifying the user terminal 20.
[0045] The terminal state information D22 is information indicating the state of the user terminal 20. The terminal state information D22 includes user terminal position information indicating the position of the user terminal 20, user terminal communication state information indicating the communication state of the user terminal 20, and the like.
[0046] The schedule information D23 indicates the action history and action plan of the user who owns the user terminal 20. For example, the schedule information D23 shows the user's position and stay period (or scheduled stay period) in association with each other. Note that the schedule information D23 can be obtained by the schedule function installed in the user terminal 20. Specifically, by the user using the schedule function to input his / her own action history and action plan into the user terminal 20, the schedule information D23 indicating the action history and action plan of that user can be obtained.
[0047] [Client Server] The client server 30 is owned by the client. The client requests the calculation of job data. Examples of such clients include companies, research institutions, educational institutions, etc.
[0048] As shown in FIG. 5, the client server 30 includes an input unit 301, an output unit 302, a communication unit 303, a storage unit 304, and a control unit 305.
[0049] The input unit 301 inputs information and data. Examples of the input unit 301 include an operation unit that inputs information corresponding to an operation when operated, a camera that inputs an image indicating information, a microphone that inputs a voice indicating information, etc. Examples of the operation unit include operation buttons, touch sensors, keyboards, mice, etc. The information and data input to the input unit 301 are sent to the control unit 305.
[0050] The output unit 302 outputs information and data. Examples of the output unit 302 include a display unit that outputs an image indicating information, a speaker that outputs a voice indicating information, etc. The communication unit 303 transmits and receives information and data. The information and data received by the communication unit 303 are sent to the control unit 305.
[0051] The control unit 305 controls each part of the client server 30. The control unit 305 has 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.
[0052] The storage unit 304 stores information and data. In this example, the storage unit 304 stores client information D31 and job data D1.
[0053] Client information D31 is information about the client. The client information D31 includes the client ID set for the client, the client server ID set for the client server 30 owned by the client, the name of the person in charge, the address, the phone number, and the like. The client ID is an example of client identification information for identifying the client. The client server ID is an example of client server identification information for identifying the client server 30.
[0054] Job data D1 is data corresponding to a job and is data processed for the execution of the job. The job data D1 can be classified by the type of calculation. Examples of the type of calculation include a CPU-based type of calculation and a GPU-based type of calculation. In the job data D1 of the CPU-based type of calculation, complex calculations with many conditional branches, such as simulation calculations, tend to be required. In the job data D1 of the GPU-based type of calculation, a huge amount of simple calculations, such as image processing and machine learning, tend to be required.
[0055] Also, the job data D1 can be classified by the processing conditions. Examples of the processing conditions include a processing condition that requires constant communication and a processing condition that does not require constant communication. In the job data D1 of the processing condition that requires constant communication, it is required that the arithmetic unit 105 can always communicate in grid computing processing. In the job data D1 of the processing condition that does not require constant communication, it is not required that the arithmetic unit 105 can always communicate in grid computing processing.
[0056] Note that job information related to the job may be stored in the storage unit 304. 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 the job data corresponding to the job, job due date information indicating the due date of the job, and the like. The job data information indicates the type of calculation, the processing conditions, the required computing power, and the like of the job data.
[0057] [Facility Server] The facility server 40 is owned by the facility. Users visit the facility. The user can make a reservation for a visit to the facility. Examples of such facilities include stadiums, theaters, supermarkets, restaurants, accommodation facilities, stores, and the like.
[0058] As shown in FIG. 6, the facility server 40 includes an input unit 401, an output unit 402, a communication unit 403, a storage unit 404, and a control unit 405. The configurations of the input unit 401, output unit 402, communication unit 403, storage unit 404, and control unit 405 of the facility server 40 are the same as those of the input unit 301, output unit 302, communication unit 303, storage unit 304, and control unit 305 of the client server 30.
[0059] In this example, the storage unit 404 stores facility information D41 and facility usage information D42. The facility information D41 is information about the facility. The facility information D41 includes a facility ID set for the facility, a facility server ID set for the facility server 40 owned by the facility, facility location information indicating the location (latitude and longitude) of the facility, the name of the person in charge, the address, the telephone number, and the like. The facility ID is an example of facility identification information for identifying the facility. The facility server ID is an example of facility server identification information for identifying the facility server 40.
[0060] The facility usage information D42 indicates the usage status (usage history and usage schedule) of the facility. Specifically, the facility usage information D42 shows the association between the users who visit the facility and the stay period (or the scheduled stay period).
[0061] [Management Server] The management server 50 manages the operation of the system 1 configured with grid computing. The management server 50 is owned by the operator who operates the system 1. The management server 50 is an example of the "management device" in the present invention and executes the "management method" in the present invention.
[0062] As shown in FIG. 7, 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 those of the input unit 301, output unit 302, communication unit 303, storage unit 304, and control unit 305 of the client server 30. The storage unit 504 and the control unit 505 are examples of components of a management device that manages grid computing processing in the present invention.
[0063] In this example, the storage unit 504 stores a user table D51, a computing device table D52, a client table D53, a job table D54, a resource table D55, a matching table D56, job data D1, and calculation result data D2.
[0064] The user table D51 is a table for managing users. In the user table D51, for each user, the user ID set for that user, the vehicle ID set for the vehicle 10 owned by that user, the computing device ID set for the computing device 105 owned by that user, the user terminal ID set for the user terminal 20 owned by that user, etc. are registered.
[0065] The computing device table D52 is a table for managing the computing device 105. In the computing device table D52, for each computing device 105, the computing device ID set for that computing device 105, the user ID set for the user who owns that computing device 105, the vehicle ID set for the vehicle 10 on which that computing device 105 is mounted, etc. are registered.
[0066] In addition, in the arithmetic unit table D52, for each arithmetic unit 105, its performance (such as computing power and the ratio of CPU to GPU), its operating status (operation history and operation schedule), etc. are registered. In other words, the arithmetic unit table D52 includes operation status information D5 indicating the operation status of each of the plurality of arithmetic units 105 and performance information D6 indicating the performance of each of the plurality of arithmetic units 105. The performance information D6 includes computing power information D7 indicating the computing power of each of the plurality of arithmetic units 105.
[0067] The client table D53 is a table for managing clients. In the client table D53, for each client, the client ID set for that client, the client server ID set for the client server 30 owned by the client, the name of the person in charge of that client, the address, the phone number, etc. are registered.
[0068] The job table D54 is a table for managing jobs requested from clients. In the job table D54, for each job, the reception number set for that job, the client ID set for the client that requested that job, the name and content of that job, etc. are registered. In addition, in the job table D54, for each job, the calculation type and processing conditions of the job data corresponding to that job, the required computing power that is required for the calculation of that job data, the due date set for that job, etc. are registered.
[0069] The resource table D55 is a table for managing the computing power in grid computing processing. Specifically, in the resource table D55, for each arithmetic unit 105, the arithmetic unit ID set for that arithmetic unit 105, the predicted result of the temporal change of the computing power available in the grid computing processing of that arithmetic unit 105, etc. are registered. In the matching table D56, for each job, the reception number set for that job, the job data corresponding to that job, the arithmetic unit ID set for the arithmetic unit 105 assigned to that job data, etc. are registered.
[0070] The job data D1 stored in the storage unit 504 is the job data D1 received by the job reception process described later. The calculation result data D2 stored in the storage unit 504 is the job data calculated by the grid computing process described later, and shows the result of the calculation.
[0071] Next, the update of the user table D51 will be described. The user table D51 is updated by the control unit 505 of the management server 50. For example, when a new user joins the system 1, the control unit 505 updates the user table D51 by registering the information related to the new user in the user table D51. Specifically, the control unit 505 newly sets a user ID for the new user, and associates the "user ID" set for the new user, the "vehicle ID" set for the vehicle 10 owned by the user, the "computing device ID" set for the computing device 105 mounted on the vehicle 10, and the "user terminal ID" set for the user terminal 20 owned by the new user, and registers them in the user table D51.
[0072] Note that it is possible to obtain the "vehicle ID" and "computing device ID" related to the new user through the communication between the vehicle 10 owned by the new user and the management server 50. Also, it is possible to obtain the "user terminal ID" related to the new user through the communication between the user terminal 20 owned by the new user and the management server 50.
[0073] [Update of Computing Device Table] Next, the update of the arithmetic unit table D52 will be described. The arithmetic unit table D52 is updated by the control unit 505 of the management server 50. For example, when a new arithmetic unit 105 joins the system 1, the control unit 505 updates the arithmetic unit table D52 by registering the information related to the new arithmetic unit 105 in the arithmetic unit table D52. Specifically, the control unit 505 associates the "arithmetic unit ID" set for the new arithmetic unit 105, the "user ID" set for the user who owns the arithmetic unit 105, the "vehicle ID" set for the vehicle 10 on which the arithmetic unit 105 is mounted, and the "performance" and "operating status" of the arithmetic unit 105, and registers them in the arithmetic unit table D52.
[0074] Note that it is possible to obtain the "arithmetic unit ID", "vehicle ID", "performance", and "operating status" related to the new arithmetic unit 105 through the communication between the vehicle 10 on which the new arithmetic unit 105 is mounted and the management server 50. Also, it is possible to obtain the "user ID" related to the new arithmetic unit 105 by referring to the user table D51.
[0075] [Periodic Update of Arithmetic Unit Table] In addition, the "operating status" of the arithmetic unit 105 registered in the arithmetic unit table D52 is updated periodically. In other words, the operating status information D5 included in the arithmetic unit table D52 is updated periodically. This periodic update is performed by the control unit 505 of the management server 50.
[0076] (First Update Process) For example, based on the "operation history information D15" of the vehicle 10, the "operating status" (in other words, the operating status information D5) of the arithmetic unit 105 in the arithmetic unit table D52 may be updated periodically. Specifically, the control unit 505 may execute the following first update process for each arithmetic unit 105 registered in the arithmetic unit table D52.
[0077] In the first update process, the control unit 505 requests access to the "operation history information D15" for the vehicle 10 equipped with the arithmetic unit 105. The arithmetic unit 105 of the vehicle 10 permits access to the "operation history information D15" in response to the request. The control unit 505 updates the "operation history", which is the past operation status among the "operation statuses" of the arithmetic unit 105 registered in the arithmetic unit table D52, based on the operation history of the arithmetic unit 105 shown in the operation history information D15.
[0078] (Second update process) Also, based on the "travel history information D13" of the vehicle 10, the "operation status" (in other words, the operation status information D5) of the arithmetic unit 105 in the arithmetic unit table D52 may be updated periodically. Specifically, the control unit 505 may execute the following second update process for each arithmetic unit 105 registered in the arithmetic unit table D52.
[0079] In the second update process, the control unit 505 requests access to the "travel history information D13" for the vehicle 10 equipped with the arithmetic unit 105. The arithmetic unit 105 of the vehicle 10 permits access to the "travel history information D13" in response to the request. The control unit 505 estimates the operation history of the arithmetic unit 105 based on the travel history of the vehicle 10 shown in the travel history information D13. Next, the control unit 505 updates the "operation history", which is the past operation status among the "operation statuses" of the arithmetic unit 105 registered in the arithmetic unit table D52, based on the estimated operation history of the arithmetic unit 105.
[0080] (Third update process) Also, based on the "schedule information D23" of the user terminal 20, the "operation status" (in other words, the operation status information D5) of the arithmetic unit 105 in the arithmetic unit table D52 may be updated periodically. Specifically, the control unit 505 may execute the following third update process for each arithmetic unit 105 registered in the arithmetic unit table D52.
[0081] In the third update process, the control unit 505 requests the user terminal 20 owned by the user who owns the arithmetic unit 105 to access the "schedule information D23". The control unit 205 of the user terminal 20 permits access to the "schedule information D23" in response to the request. The control unit 505 detects the behavior status (behavior history and behavior plan) related to the vehicle 10 equipped with the arithmetic unit 105 from among the behavior statuses of the user indicated in the schedule information D23. For example, from among the behavior histories that are past behavior statuses of the user's behavior status, a behavior history in which the user was on board the vehicle 10 is detected, and from among the behavior plans that are future behavior statuses of the user's behavior status, a behavior plan in which the user plans to board the vehicle 10 is detected.
[0082] Next, the control unit 505 estimates the driving status (driving history and driving plan) of the vehicle 10 based on the detected behavior status of the user. Next, the control unit 505 estimates the operating status (operating history and operating plan) of the arithmetic unit 105 based on the estimated driving status of the vehicle 10. Then, the control unit 505 updates the "operating status" of the arithmetic unit 105 registered in the arithmetic unit table D52 based on the estimated operating status of the arithmetic unit 105.
[0083] (Fourth update process) Also, based on the "facility usage information D42" of the facility server 40, the "operating status" (in other words, the operating status information D5) of the arithmetic unit 105 in the arithmetic unit table D52 may be updated periodically. Specifically, the control unit 505 may execute the following fourth update process for each arithmetic unit 105 registered in the arithmetic unit table D52.
[0084] In the fourth update process, the control unit 505 requests access to the "facility usage information D42" from the facility server 40. The facility server 40 permits access to the "facility usage information D42" in response to the request. The control unit 505 detects the usage status (usage history and usage plan) of the facility related to the vehicle 10 equipped with the arithmetic unit 105 from among the usage statuses (usage history and usage plan) of the facility indicated in the facility usage information D42. For example, from among the usage histories which are past usage statuses of the facility, a usage history in which the user was on board the vehicle 10 is detected, and from among the usage plans which are future usage statuses of the facility, a usage plan in which the user is scheduled to board the vehicle 10 is detected.
[0085] Next, the control unit 505 estimates the driving status (driving history and driving plan) of the vehicle 10 based on the detected usage status of the facility. Next, the control unit 505 estimates the operating status (operating history and operating plan) of the arithmetic unit 105 based on the estimated driving status of the vehicle 10. Next, the control unit 505 updates the "operating status" of the arithmetic unit 105 registered in the arithmetic unit table D52 based on the estimated operating status of the arithmetic unit 105.
[0086] [Update of Client Table] Next, the update of the client table D53 will be described. The client table D53 is updated by the control unit 505 of the management server 50. For example, when a new client joins the system 1, the control unit 505 updates the client table D53 by registering information related to the new client in the client table D53.
[0087] Specifically, the control unit 505 newly sets a client ID for the new client, and associates the "client ID" set for the new client, the "client server ID" set for the client server 30 owned by the new client, the "person in charge", "address", and "phone number" of the new client, and registers them in the client table D53.
[0088] Note that, through the communication between the client server 30 and the management server 50, it is possible to obtain the "client server ID", "person in charge", "address", and "phone number" regarding a new client.
[0089] [Processing by the management server] Next, in the present embodiment, the processing performed by the control unit 505 of the management server 50 will be specifically described. In the present embodiment, the control unit 505 of the management server 50 performs job reception processing, event holding processing, and grid computing processing.
[0090] (Job reception processing) Referring to FIG. 8, in the present embodiment, the job reception processing performed by the control unit 505 of the management server 50 will be described. In the job reception processing, job data D1 requested for calculation by the client is received. For example, every time the control unit 505 of the management server 50 is requested to calculate job data D1 from the client, it performs the following processing.
[0091] First, in step S11, the management server 50 receives a job request from the client. Specifically, the client server 30 transmits a job request application to the management server 50 in response to an operation by the person in charge of the client. The control unit 505 of the management server 50 performs the following processing in response to the application.
[0092] The control unit 505 requests the client server 30 to transmit information necessary for job reception (specifically, client information regarding the client that requests the job and job information regarding the job). In this example, the control unit 505 transmits the image data of the job reception screen to the client server 30. The control unit 305 of the client server 30 reproduces the image of the job reception screen from the image data and outputs (displays) the image to the output unit 302 (display unit).
[0093] As shown in FIG. 9, the job reception screen is a screen for inputting information necessary for job reception. On the job reception screen, there are 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 address of the client, a job name input field R111 for inputting the name of the job, a job content input field R112 for inputting an explanation regarding the content of the job, a calculation type input field R113 for inputting the calculation type of the job data corresponding to the job, a processing condition input field R114 for inputting the processing conditions of the job data, a required computing power input field R115 for inputting the required computing power of the job data, a due date input field R116 for inputting the due date of the job, and a registration button B100.
[0094] The person in charge of the client operates the input unit 301 (operation unit) of the client server 30 to input the information necessary for the job reception screen. Thereby, client information regarding the client requesting the job and job information regarding the job are input. Then, when the input of these information is completed, the person in charge of the client operates the input unit 301 (operation unit) of the client server 30 to press the registration button B100 on the job reception screen. When the registration button B100 is pressed, the control unit 305 of the client server 30 transmits the information (client information and job information) input on the job reception screen to the management server 50. The control unit 505 of the management server 50 receives the client information and the job information.
[0095] Next, the control unit 505 requests the client server 30 to transmit the job data D1 corresponding to the job. In response to the request, the control unit 305 of the client server 30 transmits the job data D1 corresponding to the job to the management server 50. The control unit 05 of the management server 50 receives the job data D1.
[0096] Next, in step S12, 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 computing power, etc. of the job data D1. Then, based on the result of the analysis of the job data D1, the control unit 505 corrects the job information received in step S11. Note that if the job information received in step S11 is sufficiently reliable, the process of step S12 may be omitted.
[0097] Next, in step S13, 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 it in the job table D54. Also, the control unit 505 stores the job data D1 received in step S11 in the storage unit 504.
[0098] (Event holding process) Next, with reference to FIG. 10, in this embodiment, the event holding process performed by the control unit 505 of the management server 50 will be described. In the event holding process, when the control unit 505 of the management server 50 receives an event holding request (event holding request) for performing grid computing from a user of the vehicle 10 equipped with the arithmetic unit 105, the control unit 505 sends an event participation request (event participation request) for this event to users of other vehicles 10 equipped with the arithmetic unit 105. Then, when users of other vehicles 10 respond to the event participation request, a plurality of vehicles 10 gather at the event venue to form a vehicle group, and when each vehicle 10 in the vehicle group is set to a non-operating state, the control unit 505 of the management server 50 registers this vehicle group as a grid for grid computing. For example, after the completion of the job reception process, the control unit 505 of the management server 50 performs the following processes.
[0099] First, in step S21, the control unit 505 of the management server 50 determines whether it has received vehicle state information D12 from a vehicle 10 that is in a non-operating state (grid computing standby state) for performing grid computing. When the control unit 505 receives the above-described vehicle state information D12 from a certain vehicle 10, it determines whether the vehicle 10 is in the grid computing standby state based on the information included in the vehicle state information D12. As a result, when the control unit 505 determines that it has received the vehicle state information D12 from a vehicle 10 in the grid computing standby state (step S21: Yes), it proceeds to step S22. When it determines that it has not received the vehicle state information D12 from a vehicle 10 in the grid computing standby state (step S21: No), it repeats the determination in step S21.
[0100] Next, in step S22, the control unit 505 determines whether it has received a request to hold an event for performing grid computing (event hold request) from the user of the vehicle 10 from which the vehicle state information D12 was received in step S21. In this case, the control unit 505 receives the event hold request from the vehicle 10 or the user terminal 20. Also, this event hold request is issued when the user operates the input unit 101 of the vehicle 10 or the input unit 201 of the user terminal 20 to request the holding of an event for performing grid computing. When the control unit 505 determines that it has received the event hold request (step S22: Yes), it proceeds to step S23. When it determines that it has not received the event hold request (step S22: No), it repeats the determination in step S22. Preferably, when the control unit 505 receives an event hold request from the user of the vehicle 10, it may set a location (typically a parking lot) corresponding to the current position of this vehicle 10 (the position where it is in the grid computing standby state) based on the vehicle position information included in the vehicle state information D12 received from this vehicle 10 in step S21 as the event holding location.
[0101] Next, in step S23, in response to the above event holding request, the control unit 505 sets an event for performing grid computing, and transmits a participation request for this event (event participation request) to users of other vehicles 10. Also in this case, the control unit 505 transmits the event participation request to the vehicle 10 and the user terminal 20. More specifically, the control unit 505 transmits the event participation request to users of vehicles 10 traveling in the vicinity of the event holding location (within a predetermined distance from the event holding location), users of vehicles 10 traveling with a point in the vicinity of the event holding location (within a predetermined distance from the event holding location) set as the destination of navigation (route guidance), users of vehicles 10 having registered the vicinity of the event holding location (within a predetermined distance from the event holding location) as their address, etc. The control unit 505 identifies these vehicles 10 based on the vehicle information D11, vehicle state information D12, driving history information D13, etc. acquired from the vehicle 10.
[0102] Further, when transmitting the above event participation request, the control unit 505 also transmits information indicating the outline of the event to the vehicle 10 and the user terminal 20. Specifically, the control unit 505 transmits (i) the event holding location, (ii) the event participation deadline, (iii) the scheduled event end date and time, (iv) information on incentives given to the user by participating in the event (participation incentive information), and (v) the current aggregation status of the vehicle 10. The event holding location is typically the name and address of the parking lot where the event is held. For example, the event holding location is set according to the location of the vehicle 10 that issued the event holding request (corresponding to the vehicle position information included in the vehicle state information D12 from the vehicle 10).
[0103] The event participation deadline is the date and time indicating the deadline for participating in the event (in other words, the recruitment deadline for the event), and the event scheduled end date and time is the scheduled date and time when the event ends, that is, the scheduled date and time when the execution of jobs in grid computing ends. The participation incentive information is information regarding the rate (remuneration rate) at which the remuneration usually given to the user by providing the computing power of the computing device 105 to grid computing increases by participating in the grid computing event.
[0104] The event participation deadline, the event scheduled end date and time, and the participation incentive information are determined and set by the control unit 505. In particular, a relatively long time is set with a margin for the event scheduled end date and time. For example, the event scheduled end date and time is obtained based on the computing power in the computing devices 105 of a relatively small number of vehicles 10, and the computing power required for the calculation of job data to be processed in grid computing. Note that the details of the participation incentive information will be described later (FIG. 14).
[0105] Also, the current aggregation status of the vehicles 10 is the number of vehicles 10 currently aggregated at the event venue. For example, the control unit 505 obtains the number of vehicles 10 currently aggregated at the event venue based on the location information of the event venue and the vehicle location information included in the vehicle state information D12 received from one or more vehicles 10.
[0106] Here, the information indicating the outline of such an event is displayed on the output unit 102 of the vehicle 10 or the output unit 202 of the user terminal 20 as an event participation request screen as shown in FIG. 11. FIG. 11 shows an event participation request screen according to the present embodiment. On this event participation request screen, the event venue, the event participation deadline, the event scheduled end date and time, the participation incentive information, and the current aggregation status are displayed. When the user of the vehicle 10 decides to participate in the event after viewing the event participation request screen, the vehicle 10 is moved to the event venue within a predetermined period, and when the vehicle 10 arrives at the event venue, the vehicle 10 is set to a non-operating state.
[0107] Next, in step S24, the control unit 505 determines whether it has received the vehicle state information D12 from the vehicle 10 that has newly entered the grid computing standby state in response to the above event participation request. When the control unit 505 receives the vehicle state information D12 from a certain vehicle 10, it determines whether the vehicle 10 is in the grid computing standby state based on the information included in the vehicle state information D12. As a result, when the control unit 505 determines that it has received the vehicle state information D12 from the vehicle 10 that has newly entered the grid computing standby state (step S24: Yes), it proceeds to step S25. When it determines that it has not received the vehicle state information D12 from the vehicle 10 that has newly entered the grid computing standby state (step S24: No), it repeats the determination in step S24.
[0108] Next, in step S25, the control unit 505 determines whether a plurality of vehicles 10 (for example, two or more) have gathered at the event venue, that is, whether a vehicle group has been formed at the event venue, based on the vehicle state information D12 of the vehicle 10 that has newly entered the standby state for grid computing obtained in step S24. Specifically, the control unit 505 determines whether each of the plurality of vehicles 10 that have entered the standby state for grid computing is located in the vicinity of the event venue based on the vehicle position information included in the vehicle state information D12. For example, the control unit 505 specifies a combination of the two vehicles 10 with the closest distance for all of the plurality of vehicles 10, and determines whether the distance between these two vehicles 10 is equal to or less than a predetermined distance. In this example, the control unit 505 detects a state in which each of the plurality of vehicles 10 is parked adjacent to each other in the lateral direction or the front-rear direction at the parking lot as the event venue as a state in which a vehicle group has been formed. As a result, when the control unit 505 determines that a vehicle group has been formed at the event venue (step S25: Yes), it proceeds to step S26. In this case, in step S26, the control unit 505 registers the formed vehicle group, specifically, the arithmetic units 105 mounted on each of the plurality of vehicles 10 constituting the vehicle group, in the arithmetic unit table D52 as a grid for grid computing. On the other hand, when the control unit 505 determines that a vehicle group has not been formed at the event venue (step S25: No), it returns to step S24 and repeats the determination in steps S24 and S25.
[0109] (Grid Computing Process) Next, with reference to FIG. 12, in the present embodiment, the grid computing process performed by the control unit 505 of the management server 50 will be described. In the grid computing process, the control unit 505 of the management server 50 causes the arithmetic units 105 registered in the grid in the event holding process of FIG. 10 (that is, the arithmetic units 105 mounted on each of the plurality of vehicles 10 constituting the vehicle group) to process the job data D1. For example, after the job reception process and the completion of the event holding process, the control unit 505 performs the following processes.
[0110] First, in step S31, the control unit 505 of the management server 50 predicts the computing power of the arithmetic units 105 mounted on each of the plurality of vehicles 10 that make up the vehicle group. Specifically, the control unit 505 predicts, as the computing power of each arithmetic unit 105 in the vehicle group, the computing power (computation amount), the type of computation, the computable schedule, etc., based on the arithmetic unit table D52 stored in the storage unit 504 of the management server 50, the vehicle state information D12 received from the vehicle 10, etc. The type of computation is, for example, the ratio of the CPU to the GPU included in the arithmetic unit table D52, and the computable schedule is defined by the computable time based on the state of the battery according to the remaining battery amount information and vehicle charging information included in the vehicle state information D12. Then, the control unit 505 registers information on the computing power of the entire vehicle group as computing grid information based on the computing power of each of the plurality of arithmetic units 105 predicted in this way.
[0111] Next, in step S32, the control unit 505 allocates the job data D1, which is the target of the grid computing process received in the above job reception process (FIG. 8), to each arithmetic unit 105 that constitutes the grid of the vehicle group, based on the computing power of each arithmetic unit 105 predicted in step S31. The job data D1 thus allocated to each arithmetic unit 105 is job data corresponding to the same job. Then, in step S33, the control unit 505 distributes (transmits) a part of the job data D1 to each arithmetic unit 105 based on the allocation result of step S32.
[0112] After that, each arithmetic unit 105 of the plurality of vehicles 10 constituting the vehicle group processes a part of the distributed job data D1. At this time, in a preferred example, the control unit 505 of the management server 50 may send a request to the vehicle 10 to turn on the lighting device 110 of the vehicle 10 on which the arithmetic unit 105 performing grid computing in the event is mounted. In response to this request, each of the plurality of vehicles 10 constituting the vehicle group turns on the lighting device 110 in a predetermined manner so that it can be seen that the process related to grid computing is currently being executed (that is, participating in the event), as shown in FIG. 13. FIG. 13 shows an example in which each of a plurality of vehicles 10 (vehicle group) parked adjacent to each other in a certain parking lot turns on the lighting device 110 as an exterior lamp. In one example, it is preferable to turn on the exterior lamp in a specific color (such as green). In another example, instead of the exterior lamp, the room lamp may be turned on in a specific color (such as blue).
[0113] Thereby, by a user participating in the event recognizing and greeting other users, communication between the users participating in the event can be achieved. As a result, the fun from the communication between users can be provided, and the willingness to participate in future events can be improved. Furthermore, even for users of vehicles 10 that are not participating in the current event, through the lighting of the lighting device 110 in a predetermined manner in the vehicle group as described above, an interest in the grid computing event can be given, and an opportunity to participate in future events can be provided. Note that the control unit 505 of the management server 50 sending a request to the vehicle 10 to turn on the lighting device 110 of the vehicle 10 participating in the event, and the vehicle 10 turning on the lighting device 110 in response to this request is not limited thereto, and the vehicle 10 participating in the event may autonomously turn on the lighting device 110 without depending on the request from the control unit 505.
[0114] Next, each of the arithmetic units 105 transmits the partial calculation result data obtained by the calculation to the management server 50 when the calculation of the data (a part of the job data D1) transmitted to the arithmetic unit 105 is completed. In step S34, the control unit 505 of the management server 50 receives the partial calculation result data transmitted from the arithmetic unit 105 and stores the partial calculation result data in the storage unit 504.
[0115] Next, in step S35, the control unit 505 determines whether or not all of the arithmetic units 105 to which the job data D1 was distributed in step S33 have completed the calculation. If the control unit 505 determines that all of the arithmetic units 105 have completed the calculation (step S35: Yes), the process proceeds to step S36. If the control unit 505 determines that not all of the arithmetic units 105 have completed the calculation (step S35: No), the process returns to step S34.
[0116] Next, in step S36, the control unit 505 generates the calculation result data D2 (the calculation result data D2 indicating the result 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 30 of the client that requested the calculation of the job data D1.
[0117] Next, in step S37, the control unit 505 calculates the reward to be given to the user who provided the computing power of the computing device 105 for the grid computing process from the operator who operates the system 1. Examples of rewards include points available in the system 1, virtual currency, discount benefits for products, and the like. First, the control unit 505 determines the basic reward to be given to the user according to the computing resources (computing volume, computing power) provided by the computing device 105 for the grid computing process. In this case, the more computing resources provided by the computing device 105 for the grid computing process, the greater the basic reward given to the user by the control unit 505. Then, the control unit 505 multiplies the thus obtained basic reward by the reward rate corresponding to the number of vehicles participating in the event as shown in FIG. 14 to obtain the final reward given to the user. FIG. 14 is a table showing the reward rate according to the present embodiment. According to this table of the reward rate, the greater the number of vehicles in the vehicle group, the greater the applicable reward rate. Therefore, the greater the number of vehicles in the vehicle group, the greater the final reward given to the user.
[0118] Next, in step S38, the control unit 505 performs a process for giving the reward calculated in step S37 to the user. Examples of the process for giving the reward include a process of registering in the user table D51 by associating the "user ID" set for the user with the "points" (or virtual currency) available in the system 1, and a process of transmitting information indicating the discount benefit of the product to the user terminal 20 owned by the user. Note that the information indicating the reward may be registered for each job in the job table D54. Also, a reward may be given to the user who provided the computing power of the computing device 105 for the grid computing process from the client. For example, the control unit 305 of the client server 30 may execute a process for giving a reward to the user who provided the computing power of the computing device 105 for the grid computing process.
[0119] [Operation and Effect] Next, the operations and effects of the present embodiment will be described. According to the present embodiment, when the arithmetic unit 105 of the vehicle 10 executes grid computing, the control unit 505 of the management server 50 gives a reward to the user of the vehicle 10 on which the arithmetic unit 105 is mounted. On the other hand, when the arithmetic units 105 mounted on each of the plurality of vehicles 10 located in the vicinity execute grid computing, the reward given to the users of the plurality of vehicles 10 is increased.
[0120] As described above, in the present embodiment, when grid computing is executed by the arithmetic units 105 of the plurality of vehicles 10 located in the vicinity, the reward to be given is increased. Therefore, the plurality of vehicles 10 can be effectively gathered in the vicinity at the time of executing grid computing. That is, it is possible to effectively encourage the execution of grid computing by the group of vehicles gathered in the vicinity. Therefore, according to the present embodiment, stable computing resources for grid computing can be effectively secured.
[0121] Further, according to the present embodiment, the control unit 505 sets the reward given to the user according to the computing resources (computing amount, computing power) provided by the arithmetic unit 105 for grid computing. When the arithmetic units 105 mounted on each of the plurality of vehicles 10 located in the vicinity execute grid computing, the reward set according to the computing resources is increased according to the number of the plurality of vehicles. Thereby, it is possible to effectively encourage the execution of grid computing by the arithmetic units 105 of as many vehicles 10 as possible.
[0122] Further, according to the present embodiment, when the computing devices 105 mounted on the plurality of vehicles 10 located in proximity execute grid computing by processing job data D1 corresponding to the same job, the control unit 505 increases the rewards given to the users of the plurality of vehicles 10. Thereby, stable computing resources of the computing devices 105 of the plurality of vehicles 10 located in proximity can be provided for processing the job data D1 corresponding to the same job. Therefore, it becomes possible to efficiently process this job data D1 by grid computing.
[0123] Further, according to the present embodiment, in a state where the plurality of vehicles 10 are located in proximity, the control unit 505 sets an event for executing grid computing by the computing devices 105 mounted on the respective ones of the plurality of vehicles 10, transmits a participation request for the event to the users of the vehicles 10 on which the computing devices 105 are mounted, and realizes grid computing by the computing devices 105 mounted on the respective ones of the plurality of vehicles 10 that are in a non-operating state at the event venue in response to the participation request.
[0124] By holding an event for performing grid computing in this way, the plurality of vehicles 10 on which the computing devices 105 are mounted can be effectively gathered in the vicinity, and grid computing can be appropriately performed in a situation where these vehicles 10 are in a non-operating state. Therefore, according to the present embodiment, stable computing resources for grid computing can be more effectively secured. Further, in the present embodiment, by making the holding of grid computing into an event, an opportunity for communication between users through grid computing can be actively created. Furthermore, in the present embodiment, by holding such an event in a parking lot or the like of a predetermined facility (such as an arena, a theater, a supermarket, a shopping mall, a restaurant, an accommodation facility, a store, etc.), it is also possible to lead to attracting customers to this facility and the like.
[0125] [Modification Example] In the above-described embodiment, in the event holding process, when the control unit 505 of the management server 50 receives a request to hold an event for performing grid computing from the user of the vehicle 10 equipped with the arithmetic unit 105, the control unit 505 sets an event and transmits a request to participate in this event to the users of other vehicles 10. However, the setting of the event is not limited to this. In another example, when a plurality of vehicles 10 equipped with the arithmetic unit 105 are located in proximity and are in a non-operating state, the control unit 505 may set an event for performing grid computing at the location where the plurality of vehicles 10 are located and transmit a request to participate in this event to the users of the vehicles 10. In this example, the control unit 505 realizes grid computing by causing the arithmetic unit 105 mounted on each of the plurality of vehicles 10 that have been set to the non-operating state at the event holding location to process the job data D1 in response to the event participation request.
[0126] In still another example, when the control unit 505 receives a request to hold an event for performing grid computing from a predetermined company that aims to attract customers by holding an event, the control unit 505 may set an event and transmit a request to participate in this event to the users of the vehicles 10. Also in this example, when, in response to the event participation request, a plurality of vehicles 10 gather at the event holding location to form a vehicle group and each vehicle 10 in the vehicle group is set to the non-operating state, the control unit 505 realizes grid computing by causing the arithmetic unit 105 of each vehicle 10 in the vehicle group to process the job data D1. Note that the above-mentioned predetermined company is basically a company that manages a parking lot capable of accommodating a plurality of vehicles 10, for example, a company that operates facilities such as a supermarket, a shopping mall, a restaurant, a sales store, and a stadium.
Description of Reference Numerals
[0127] 1 System 10 Vehicle 20 User Terminal 30 Client Server 40 Facility Server 50 Management Server 104 Memory unit 105 Arithmetic unit 110 Lighting device 504 Memory unit 505 Control unit D1 Job data
Claims
1. A management device for managing grid computing that causes a plurality of computing devices mounted on a plurality of vehicles to process job data, a storage unit that stores information regarding the plurality of vehicles and / or the plurality of computing devices; a control unit configured to distribute the job data to each of the plurality of computing devices based on the information stored in the storage unit and cause each of the plurality of computing devices to process the job data, thereby realizing the grid computing; and has, The control unit, when the computing device executes the grid computing, gives a reward to the user of the vehicle on which the computing device is mounted, when the computing devices mounted on the plurality of vehicles located in proximity execute the grid computing, the reward given to the users of the plurality of vehicles is increased. It is configured as, A management device characterized by that.
2. The control unit, sets the reward given to the user according to the computing resources provided by the computing device for the grid computing, when the computing devices mounted on each of the plurality of vehicles located in proximity execute the grid computing, the reward set according to the computing resources is increased according to the number of the plurality of vehicles. It is configured as, The management device according to claim 1.
3. The control unit, when the computing devices mounted on each of the plurality of vehicles located in proximity execute the grid computing by processing the job data corresponding to the same job, the reward given to the users of the plurality of vehicles is increased. The management device according to claim 1 or 2, which is configured as such.
4. The control unit, In a state where a plurality of vehicles are located in proximity to each other, an event is set so as to cause the computing devices mounted on each of the plurality of vehicles to execute the grid computing. A participation request for the set event is transmitted to the user of the vehicle on which the computing device is mounted. The grid computing is configured to be realized by the computing devices mounted on each of the plurality of vehicles that are in a non-operating state at the event venue in response to the participation request. The management device according to any one of claims 1 to 3.
5. A management method for a computer to manage grid computing for causing a plurality of computing devices mounted on a plurality of vehicles to process job data, comprising: a storage step of storing information regarding the plurality of vehicles and / or the plurality of computing devices; a control step of realizing the grid computing by distributing the job data to each of the plurality of computing devices based on the information stored in the storage step and causing each of the plurality of computing devices to process the job data. The control step includes: a step of giving a reward to the user of the vehicle on which the computing device is mounted when the computing device executes the grid computing; a step of increasing the reward given to the users of the plurality of vehicles when the computing devices mounted on the plurality of vehicles that are in proximity to each other execute the grid computing; and is characterized by having the above.
Citation Information
Patent Citations
Distributed processing system, in-vehicle terminal and management node decision method in distributed processing system
JP2007072801A
Distributed processing system, on-board terminal, and base station
JP2007089021A
Management server and program
JP2020160661A
A platform for collaborative task processing
JP2020522364A
Using predictive analytics to determine expected use patterns of vehicles to recapture under-utilized computational resources of vehicles
US20200128066A1