Patent Description:
A system is known that checks whether delivery can be made by an autonomous moving body when package delivery by an autonomous moving body is designated (see, for example, <CIT> (<CIT>)). <CIT> and <CIT> disclose systems and methods for assembling devices.

When producing articles, items necessary to produce the articles are typically collected at one location such as a factory. In this case, a place to store the items is required, and it is costly to collect the items. When producing a predetermined article, the locations of items necessary to produce the article can be set in advance as destinations and a vehicle can be controlled to autonomously travel through the locations of the items by using related art. In this case, articles that can be produced may be restricted by the destinations set in advance, or change of destinations may be required every time the article to be produced is changed.

The invention provides an information processing device, an information processing method, and a storage medium that are used to produce an article using an autonomous moving body.

A first aspect of the invention relates to an information processing device as defined in appended claim <NUM>.

In the first aspect, the control unit may be configured to perform functions including obtaining information on the maker and information on the item. The control unit may be configured to perform functions including specifying the maker and the item based on the obtained information on the maker and the obtained information on the item.

In the above aspect, the control unit is configured to perform functions including specifying parts that constitute the article as the item to be used to produce the article.

In the above aspect, the control unit may be s configured so that, when the parts include a part that is suppliable from a plurality of locations, the control unit performs functions including selecting one of the same parts from the plurality of locations according to a predetermined rule.

In the above aspect, the control unit may be configured to perform functions including specifying a tool to be used to produce the article as the item to be used to produce the article.

In the above aspect, the control unit may be configured to perform functions including generating the operation command to cause the moving body to travel through the location of the maker and the location of the item in an order in which the article is produced.

In the above aspect, the control unit may be configured so that, when there are a plurality of combinations of the maker and the item corresponding to the article for specifying the maker and the item, the control unit makes an inquiry to the user about which combination to select and specifies the maker and the item based on the combination selected by the user.

In the above aspect, the control unit may be configured to perform functions including including the user in the maker based on the request received from the user, or including an item provided by the user in the item to be used to produce the article based on the request received from the user.

In the above aspect, the control unit may be configured so that, when there is no combination of the maker and the item corresponding to the article for specifying the maker and the item, the control unit notifies the user that the article is not producible.

A second aspect of the invention relates to an information processing method as defined in appended claim <NUM>.

In the second aspect, information on the maker and information on the item may be obtained, and the maker and the item may be specified based on the obtained information on the maker and the obtained information on the item.

In the above aspect, parts that constitute the article are specified as the item to be used to produce the article.

In the above aspect, when the parts include a part that is suppliable from a plurality of locations, one of the same parts from the plurality of locations may be selected according to a predetermined rule.

In the above aspect, a tool to be used to produce the article may be specified as the item to be used to produce the article.

In the above aspect, the operation command may be generated to cause the moving body to travel through the location of the maker and the location of the item in an order in which the article is produced.

In the above aspect, when there are a plurality of combinations of the maker and the item corresponding to the article for specifying the maker and the item, the user may be inquired for which combination to select, and the maker and the item may be specified based on the combination selected by the user.

In the above aspect, the information processing method may further include including the user in the maker or including an item provided by the user in the item to be used to produce the article based on the request received from the user.

In the above aspect, the information processing method may further include notifying the user that the article is not producible when there is no combination of the maker and the item corresponding to the article for specifying the maker and the item.

A third aspect of the invention relates to a non-transitory storage medium as defined in appended claim <NUM>.

According to the invention, an article is produced using an autonomous moving body.

A moving body that is controlled by an information processing device that is one aspect of the invention is a vehicle that autonomously travels based on an operation command. An article can be produced as the moving body travels according to the operation command. For example, the moving body can be loaded with an article that is being produced, an article that has been finished, and any part, tool, facility etc. that are necessary to produce an article. Examples of the article include automobiles, engines, transmissions, seats, chassis, vehicle interiors, and vehicle exteriors.

A control unit is configured to specify a maker of the article. The maker is a maker that handles a production request from the user, and especially a maker that deals with an article requested by the user. The maker of the article is a person or machine (e.g., a robot) that brings the article being produced close to completion, and for example, is a person or machine that attaches a part to the article being produced, processes the article being produced, processes a part to be attached to the article being produced, etc. The maker of the article may be, for example, a person or machine having specific techniques, specific skills, specific abilities, specific proficiency, etc. The maker of the article rides in the moving body and moves move with the moving body. The maker of the article may ride in the moving body from departure. There may be a plurality of makers of the article.

The control unit is configured to specify an item to be used to produce the article. The item is an item corresponding to the production request from the user, and especially an item corresponding to the article requested by the user. The "article" in the invention is produced in response to a request from the user, but the "item" in the invention is not something that is produced in response to a request from the user. The item to be used to produce the article may include parts that constitute the article or a tool to be used to produce the article. That is, the control unit may be configured to specify parts that constitute the article as the item to be used to produce the article. The control unit may be configured to specify a tool to be used to produce the article as the item to be used to produce the article. The item to be used to produce the article is an item that brings the article being produced close to completion, and for example, is an item that is to be attached to the article being produced, that is to be attached to a part to be attached to the article being produced, that processes the article being produced, etc. The "item" may include any tool, material, etc. that are necessary to attach a part etc. to the article being produced and any tool, material, etc. that are necessary to process the article being produced. Only one of the maker and the item may be required depending on the article. That is, depending on the article, the maker or the item may not be required to produce the article.

The control unit is configured to obtain information on a location of the maker and information on a location of the item. The information on the location of the maker is, for example, information indicating the location of the maker, a workplace of the maker, etc. and is information on a place to which the moving body travels when the maker produces the article. The information on the location of the item is, for example, information indicating the location of a warehouse that stores the item, a place where the item is attached to the article, etc. and is information on a place to which the moving body travels to get the item. The information on the location is not limited to the information indicating the location of the maker, the workplace of the maker, the location of the warehouse that stores the item, and the place where the item is attached to the article, but may include, for example, information indicating a place located within a predetermined range from those places. The predetermined range herein refers to a range in which the moving body can travel to produce the article. The information on the location of the maker and the information on the location of the item can be obtained from, for example, the user who manages the maker or the article or the maker that deals with production of the article. The information on the location may include, for example, information on the position indicated by the World Geodetic System (latitude and longitude), information on the address, etc..

The control unit is configured to generate an operation command for the moving body to cause the moving body to travel through the location of the maker and the location of the item. The operation command is generated by, for example, a server or the moving body. The operation command includes, for example, information on waypoints for the moving body and may further include information related to a travel route of the moving body. As the moving body travels through the location of the maker and the location of the item according to the operation command, a part can be attached to the article being produced, the article or the part can be processed, etc. at each waypoint. The article is in a finished state when the moving body finishes traveling through the waypoints.

As described above, the article is finished as the moving body travels via the maker and the item. It is therefore not necessary to keep a large number of parts in stock as compared to the case where the article is produced at a single factory. For example, even when an item that is hard to produce at places other than specific places (e.g., an item that can only be produced in areas with a small population due to loud noise that is made during production, an item that requires water containing specific components or lean water during production of the item and therefore can only be produced in areas where such water is available) or an item that can only be produced in small quantity (e.g., an item handmade by a skilled worker) is necessary, the moving body goes to such places. Accordingly, these items need not be produced at the factory and need not be kept in stock in the factory.

For example, when the maker needs to directly process etc. the article in order to finish the article, the maker can provide its techniques without going all the way to the factory. Since the maker can work using a part etc. carried by the mobile body, the maker does not need to keep the parts in stock.

The control unit may be configured to obtain information on the maker and information on the item and specify the maker and the item based on the obtained information on the maker and the obtained information on the item.

The information on the maker is, for example, information that is necessary for the user to select the maker of the article, information that is useful when the user selects the maker of the article, or information that is necessary to generate an operation command. The information on the maker may include, for example, information that can specify the maker, information on when the maker has its turn to be involved in production of the article, information on the fee to be charged when the user requests the maker to produce the article, information on evaluation of the maker by the users who requested the maker to produce an article in the past, information on the level of abilities of the maker, information on the time when the maker is available to produce the article, or information on the time required for the maker to produce the article. The information on the item is, for example, information that is necessary for the user to select the item, information that is useful when the user selects the item, or information that is necessary to generate an operation command. The information on the item may include, for example, information on the fee to be charged to use the item, information on evaluation of the item by the users who used the item in the past, information on the level of performance of the item, information on the time when the item is available for use, or information on the time required for producing the article using the item. Such information on the maker and information on the item may be provided to the user.

The control unit may be configured to generate the operation command that causes the moving body to travel through the location of the maker and the location of the item in the order in which the article is produced.

When producing the article, it may be necessary to attach, process, etc. parts in a desired order. In this case, the article can be produced in order by moving the moving body in this order. This order is determined according to the requested article or the maker and item corresponding to the article.

The control unit may be configured so that, in the case where there are a plurality of combinations of the maker and the item corresponding to the article when the control unit specifies the maker and the item, the control unit make an inquiry to the user about which combination to select and specifies the maker and the item based on the combination selected by the user. The user can thus select a combination that suits the user's preference from the plurality of combinations of the maker and the item. Accordingly, the article can be produced using parts and technicians that suit the user's needs.

The control unit may be configured to include the user in the maker or include an item provided by the user in the item based on the request received from the user. In this case, the user can be involved in production of the article. The user can therefore enjoy producing the article.

Embodiments of the invention will be described below with reference to the accompanying drawings. The configurations of the following embodiments are illustrative, and the invention is not limited to the configurations of the embodiments. The following embodiments can be combined in any way as long as the combination falls within the scope of the invention.

<FIG> is a diagram illustrating a schematic configuration of an autonomous driving system <NUM> according to an embodiment. The autonomous driving system <NUM> shown in <FIG> is a system for producing an article in a moving vehicle <NUM> or through waypoints when a first user requests production of the article via a first terminal 20A. A server <NUM> selects an item or a person according to the requested article. Parts that constitute an article will be mainly described below as an example of the "item". However, the "item" is not limited to parts, and for example, the "item" may include a tool to be used to produce an article. The server <NUM> generates an operation command for the vehicle <NUM> that causes the vehicle <NUM> to travel through the locations of parts or makers of the article. For example, the server <NUM> generates an operation command that causes the vehicle <NUM> to depart from a base, finish the article through waypoints, deliver the article that has been finished, and then return to the base. The server <NUM> sends the generated operation command to the vehicle <NUM>. When the vehicle <NUM> receives the operation command, the vehicle <NUM> autonomously travels according to the received operation command.

The autonomous driving system <NUM> includes, for example, the vehicle <NUM>, the first terminal 20A, a second terminal 20B, and the server <NUM>. The number of vehicles <NUM> is not limited to one as illustrated in <FIG> and may be two or more. The vehicle <NUM> is a moving body that can autonomously travel based on operation commands that are generated by the server <NUM>. The vehicle <NUM> is configured so that the vehicle <NUM> can be loaded with an article that is being produced and an article that has been finished. Any tool, facility, etc. that can be used to produce an article may be provided in the vehicle <NUM>. The article may be produced either inside or outside the vehicle <NUM>. In the following description, the "finished article" refers to an article that has been finished, and the "unfinished article" refers to an article that is being produced. The finished article according to the present embodiment may be an article that functions as a part or a component (assembly) in a subsequent process.

The first user in <FIG> is a user who operates the first terminal 20A and is a user who requests production of an article. When the first user inputs an article to the first terminal 20A, the server <NUM> selects parts and makers according to the article and generates an operation command that causes the vehicle <NUM> to travel through the locations of the parts and the makers. There may be a plurality of the first users, and there may be a plurality of the first terminals 20A according to the number of first users. A single first user may request production of a plurality of articles.

A second user in <FIG> is a user who operates the second terminal 20B and is a maker of a requested article and a user related to an item to be used to produce the article. Examples of the second user include a user who produces, processes, sells, assembles, and manages a part, a user who manages tools necessary to, for example, produce, process, and assemble a part, a user who processes an unfinished article, a user who attaches a part to an unfinished article, a user who provides skills, and a user who requests a maker to provide its skills. There may be a plurality of the second users, and there may be a plurality of the second terminals 20B according to the number of second users. The second user who produces, processes, and sells a part may be different from the second user who attaches the part to an unfinished article. An article may be produced while the vehicle <NUM> is stopped at a waypoint of the vehicle <NUM>. According to the invention, the article is produced while the vehicle <NUM> is traveling to the next waypoint.

The second user may take an unfinished article out of the vehicle <NUM>, attach a part to the unfinished article or process the unfinished article outside the vehicle <NUM>, and then put the unfinished article or the finished article back into the vehicle <NUM>. An article may be automatically produced by the facility provided in the vehicle <NUM> or may be automatically produced by a facility provided outside the vehicle <NUM>. A user who is different from the second user and who receives a part or attaches a part may ride in the vehicle <NUM>. The maker is a user who provides its skills in order to produce an article. The maker may be a user who attaches a part produced by the user or other person to an unfinished article, may be a user who, for example, processes an unfinished article loaded on the vehicle <NUM>, or may be a user who attaches a part loaded on the vehicle <NUM> to an unfinished article. The maker may be a user who has skills in, for example, sheet metal working, welding, painting, etc. or may be a user who attaches a film, a sticker, etc. on an unfinished article. The maker may be a user who removes a part from a finished article and replaces the removed part with other part. This replacement includes repairs, retrofits, and modifications.

The vehicle <NUM>, the first terminal 20A, the second terminal 20B, and the server <NUM> are connected to each other via a network N1. The network N1 is, for example, a worldwide public network such as the Internet, and a wide area network (WAN) or other communication network may be used as the network N1. The network N1 may include a telephone network such as mobile phones and a wireless network such as WiFi.

A summary of the autonomous driving system according to the present embodiment will be given below. <FIG> is a diagram illustrating a travel route the vehicle <NUM> takes to produce an article. In <FIG>, the vehicle <NUM> departs from a departure point A1, travels through waypoints A2, A3, A4, and A5 in this order, and returns to the departure point A1. B1 and B2 represent points through which the vehicle <NUM> does not travel. The departure point A1 is, for example, a base for the vehicle <NUM>.

In <FIG>, A10 represents an article input by the first user to the first terminal 20A and is an article that is in a finished state when the vehicle <NUM> returns to the departure point A1. A20, A30, A40, A50, B10, and B20 represent parts or makers that are located at each point. A20, A30, A40, and A50 are parts or makers that are necessary to produce the article A10, whereas B10 and B20 are parts or makers that are not necessary to produce the article A10. The points B1 and B2 are therefore not included in the waypoints for the vehicle <NUM>. <FIG> illustrates the case where all of A20, A30, A40, and A50 are required to finish the article A10, and parts or makers are required in the order of A20, A30, A40, and A50. That is, the vehicle <NUM> needs to depart from the departure point A1 and travel through the waypoints A2, A3, A4, and A5 in this order.

For example, when A20 represents a part and A30 represents a maker that attaches the part A20 to an unfinished article, the second user related to the waypoint A2 loads the part A20 into the vehicle <NUM> at the waypoint A2, and the maker A30 attaches the part A20 to an unfinished article at the waypoint A3. For example, when A20 represents a part, A30 represents a maker that processes the part A20, and A40 represents a maker that attaches the part A20 processed by the maker A30 to an unfinished article, the second user related to the waypoint A2 loads the part A20 into the vehicle <NUM> at the waypoint A2, the maker A30 processes the part A20 at the waypoint A3, and the maker A40 attaches the part A20 to an unfinished article at the waypoint A4. For example, when A20 represents a tool to be used to produce an article and A30 represents a maker that processes an unfinished product using the tool A20, the second user related to the waypoint A2 loads the vehicle <NUM> with the tool A20 at the waypoint A2 and the maker A30 processes an unfinished product using the tool A20 at the waypoint A3.

The server <NUM> generates an operation command that causes vehicle <NUM> to travel in the order of A1, A2, A3, A4, A5, and A1. This operation command may include a travel route in which the vehicle <NUM> travels in the order of A1, A2, A3, A4, A5, and A1. In <FIG>, the finished article is given to the first user when the vehicle <NUM> returns to the departure point A1. The delivery location of the finished article may be different from the departure point A1. In this case, the server <NUM> generates a travel route in which the vehicle <NUM> travels to the delivery location of the finished article after the waypoint A5 and then returns to the departure point A1.

The hardware configurations of the vehicle <NUM>, the first terminal 20A, the second terminal 20B, and the server <NUM> will be described with reference to <FIG> is a block diagram schematically illustrating an example of the configurations of the vehicle <NUM>, the first terminal 20A, the second terminal 20B, and the server <NUM> that constitute the autonomous driving system <NUM> according to the present embodiment. Each of the first terminal 20A and the second terminal 20B is simply referred to as the terminal <NUM> when the terminals 20A, 20B are not distinguished from each other.

The server <NUM> has a common computer configuration. The server <NUM> includes a processor <NUM>, a main storage unit <NUM>, an auxiliary storage unit <NUM>, and a communication unit <NUM>. These are connected to each other by a bus. The server <NUM> is an example of the information processing device.

The processor <NUM> is a central processing unit (CPU), a digital signal processor (DSP), etc. The processor <NUM> controls the server <NUM> and performs various information processing operations. The processor <NUM> is an example of the "control unit". The main storage unit <NUM> is a random access memory (RAM), a read only memory (ROM), etc. The auxiliary storage unit <NUM> is an erasable programmable ROM (EPROM), a hard disk drive (HDD), a removable medium, etc. The auxiliary storage unit <NUM> stores an operating system (OS), various programs, various tables, etc. The processor <NUM> loads the programs stored in the auxiliary storage unit <NUM> to a working area of the main storage unit <NUM> and executes the programs, and each constituent unit is controlled by execution of the programs. The server <NUM> thus implements a function that suits a predetermined purpose. The main storage unit <NUM> and the auxiliary storage unit <NUM> are computer-readable recording media. The server <NUM> may be either a single computer or a plurality of computers that cooperate with each other. Information that is stored in the auxiliary storage unit <NUM> may be stored in the main storage unit <NUM>. Information that is stored in the main storage unit <NUM> may be stored in the auxiliary storage unit <NUM>.

The communication unit <NUM> is a unit that communicates with the vehicle <NUM>, the first terminal 20A, and the second terminal 20B via the network N1. The communication unit <NUM> is, for example, a local area network (LAN) interface board or a wireless communication circuit for wireless communication. The LAN interface board or the wireless communication circuit is connected to the network N1.

A series of processes that is performed by the server <NUM> can be performed by either hardware or software. The hardware configuration of the server <NUM> is not limited to that shown in <FIG>. A part of or the entire configuration of the server <NUM> may be mounted on the vehicle <NUM>.

Next, the vehicle <NUM> will be described. The vehicle <NUM> includes a processor <NUM>, a main storage unit <NUM>, an auxiliary storage unit <NUM>, an input unit <NUM>, an output unit <NUM>, a communication unit <NUM>, a position information sensor <NUM>, an environmental information sensor <NUM>, and a drive unit <NUM>. These are connected to each other by a bus. Since the processor <NUM>, the main storage unit <NUM>, and the auxiliary storage unit <NUM> are similar to the processor <NUM>, the main storage unit <NUM>, and the auxiliary storage unit <NUM> of the server <NUM>, description thereof will be omitted.

The input unit <NUM> is a unit that receives an input operation performed by the user and is, for example, a touch panel, a pushbutton, etc. The output unit <NUM> is a unit that provides information to the user and is, for example, a liquid crystal display (LCD), an electroluminescence (EL) panel, a speaker, a lamp, etc. The input unit <NUM> and the output unit <NUM> may be configured as a single touch panel display. The communication unit <NUM> is a communication unit that connects the vehicle <NUM> to the network N1. The communication unit <NUM> is, for example, a circuit that communicates with other device (e.g., the server <NUM> etc.) via the network N1 by using a mobile communication service (a telephone network such as 3rd generation (<NUM>) or long term evolution (LTE) or a wireless network such as WiFi).

The position information sensor <NUM> obtains position information (e.g., latitude and longitude) of the vehicle <NUM> at predetermined intervals. The position information sensor <NUM> is, for example, a global positioning system (GPS) receiving unit a WiFi communication unit, etc. Information obtained by the position information sensor <NUM> is recorded on, for example, the auxiliary storage unit <NUM> etc. and sent to the server <NUM>.

The environmental information sensor <NUM> is a unit that senses the state of the vehicle <NUM> or senses the surroundings of the vehicle <NUM>. Examples of the sensor that senses the state of the vehicle <NUM> include an acceleration sensor, a speed sensor, and an azimuth sensor. Examples of the sensor that senses the surroundings of the vehicle <NUM> include a stereo camera, a laser scanner, a Light Detection and Ranging (LIDAR), and a radar.

The drive unit <NUM> causes the vehicle <NUM> to travel based on control commands generated by the processor <NUM>. The drive unit <NUM> includes, for example, a motor and an inverter that drive wheels of the vehicle <NUM>, a brake, a steering mechanism, etc. Autonomous driving of the vehicle <NUM> is implemented by driving the motor, the brake, etc. according to the control commands.

Next, the terminal <NUM> will be described. The terminal <NUM> is a small computer such as a smartphone, a mobile phone, a tablet device, a personal digital assistant (PDA), a wearable computer (such as a smartwatch), or a personal computer (PC). The terminal <NUM> includes a processor <NUM>, a main storage unit <NUM>, an auxiliary storage unit <NUM>, an input unit <NUM>, an output unit <NUM>, and a communication unit <NUM>. These are connected to each other by a bus. Since the processor <NUM>, the main storage unit <NUM>, the auxiliary storage unit <NUM>, the input unit <NUM>, the output unit <NUM>, and the communication unit <NUM> are similar to the processor <NUM>, the main storage unit <NUM>, the auxiliary storage unit <NUM>, the input unit <NUM>, the output unit <NUM>, and the communication unit <NUM> of the vehicle <NUM>, description thereof will be omitted. The terminal <NUM> may be either a single computer or a plurality of computers that cooperate with each other. A part of or the entire configuration of the first terminal 20A may be mounted on the vehicle <NUM>.

<FIG> is a diagram illustrating an example of the functional configuration of the server <NUM>. The server <NUM> includes, as functional components, a vehicle managing unit <NUM>, a vehicle selecting unit <NUM>, a production request obtaining unit <NUM>, an article information obtaining unit <NUM>, a part selecting unit <NUM>, an operation command generating unit <NUM>, a user information database (DB) <NUM>, an article information DB <NUM>, a vehicle information DB <NUM>, a production information DB <NUM>, and a map information DB <NUM>. For example, the vehicle managing unit <NUM>, the vehicle selecting unit <NUM>, the production request obtaining unit <NUM>, the article information obtaining unit <NUM>, the part selecting unit <NUM>, and the operation command generating unit <NUM> are functional components that are provided by the processor <NUM> of the server <NUM> executing the various programs stored in the auxiliary storage unit <NUM>.

For example, the user information DB <NUM>, the article information DB <NUM>, the vehicle information DB <NUM>, the production information DB <NUM>, and the map information DB <NUM> are relational databases that are constructed by a program of a database management system (DBMS) program that is executed by the processor <NUM> manages data stored in the auxiliary storage unit <NUM>. Any of the functional components of the server <NUM> or a part of the processes that are performed by the functional components of the server <NUM> may be implemented by other computer connected to the network N1.

The vehicle managing unit <NUM> manages various information on the vehicle <NUM>. For example, the vehicle managing unit <NUM> obtains and manages position information sent from the vehicle <NUM> at predetermined intervals, or the vehicle managing unit <NUM> obtains and manages position information sent from the vehicle <NUM> in response to a request from the server <NUM>. The vehicle managing unit <NUM> stores the position information in the vehicle information DB <NUM> in association with the vehicle ID. The vehicle managing unit <NUM> also manages the operation status of the vehicle <NUM>. The operation status is information for determining whether the vehicle <NUM> is in operation to produce an article or the vehicle <NUM> is in a standby state, namely the vehicle <NUM> is not in operation to produce an article. The vehicle managing unit <NUM> stores the operation status in the vehicle information DB <NUM> in association with the vehicle ID. For example, the operation status may be sent from the vehicle <NUM> at predetermined intervals, or the vehicle managing unit <NUM> may determine the operation status based on the position information of the vehicle <NUM>. For example, the vehicle managing unit <NUM> may determine that the vehicle <NUM> is in a standby state when the vehicle <NUM> is currently located at the base for the vehicle <NUM>, and the vehicle managing unit <NUM> may determine that the vehicle <NUM> is in operation when the vehicle <NUM> is currently located at a place other than the base for the vehicle <NUM>. For example, the vehicle managing unit <NUM> manages information on articles that can be produced in the vehicle <NUM> (applicable articles). The information on applicable articles is information that is obtained in advance for each vehicle <NUM> via the input unit <NUM> of the first terminal 20A or the input unit <NUM> of the vehicle <NUM>, and the vehicle managing unit <NUM> stores the information on applicable articles for each vehicle <NUM> in the vehicle information DB <NUM> in association with the vehicle ID.

The vehicle selecting unit <NUM> selects the vehicle <NUM> for producing an article based on, for example, predetermined conditions. The predetermined conditions herein refer to conditions under which a finished article can be produced in the vehicle <NUM>. For example, the predetermined conditions are that the vehicle <NUM> is a vehicle in which an article requested by the first user can be produced, that the vehicle <NUM> is in a standby state, etc. That is, the vehicle selecting unit <NUM> selects the vehicle <NUM> in which an article requested by the first user can be produced and that is in a standby state as the vehicle <NUM> used to produce the article.

The production request obtaining unit <NUM> obtains, for example, a production request sent from the first terminal 20A of the first user. The production request is information for the first user to request production of an article. The production request includes information on an article requested by the first user. The production request is generated in the first terminal 20A when the first user inputs predetermined information to the input unit <NUM> of the first terminal 20A.

The article information obtaining unit <NUM> obtains, for example, information indicating whether parts or makers are selectable from the second terminal 20B of the second user, information on the locations of the parts or the makers, etc. These pieces of information (article information) may be sent from the second terminal 20B to the server <NUM> in response to a request from the server <NUM> or may be sent from the second terminal 20B to the server <NUM> at predetermined intervals. These pieces of information include information on a user ID associated with the second user and part IDs associated with the parts or the makers. The user ID is an identifier unique to the user. The part ID is an identifier unique to the part or the maker. In the present embodiment, an ID corresponding to the maker is also referred to as the part ID for convenience. The article information is sent from the second terminal 20B to the server <NUM> and registered in the server <NUM>. When the article information obtaining unit <NUM> obtains the article information, the article information obtaining unit <NUM> stores the obtained article information in the article information DB <NUM> described later.

The part selecting unit <NUM> selects parts and makers for producing an article. The part selecting unit <NUM> refers to the production information DB <NUM> to obtain information on parts and makers that are necessary to finish the article. The part selecting unit <NUM> then refers to the article information DB <NUM> to select selectable parts and makers from the parts and the makers obtained. In the case where the same part can be supplied from a plurality of second users, one of the parts from the plurality of second users may be selected according to a predetermined rule. The predetermined rule may be determined based on, for example, information on price, quality, etc. For example, the part with the lowest price may be selected according to the predetermined rule. The information on price, quality, etc. may be obtained in advance from the second terminal 20B in association with the user ID and the part ID or may be obtained based on past data stored in the server <NUM>. The server <NUM> may select parts and makers so that the travel route of vehicle <NUM> is the shortest. For example, in the case where there are a plurality of combinations of parts and makers, a travel route may be calculated for each combination, and parts and makers that correspond to the shortest travel route may be selected. The server <NUM> may select parts and makers so that the time required for producing the article is the shortest.

For example, the operation command generating unit <NUM> generates an operation command that causes the vehicle <NUM> to depart from a departure point (base) and return to the departure point (base) via waypoints, namely the locations of the parts and makers selected by the part selecting unit <NUM>, and a point to which a finished article is delivered. This operation command is determined so that the vehicle <NUM> travels through the waypoints in the order in which the article is produced. The order in which the article is produced is associated with the part ID. The operation command generating unit <NUM> according to the present embodiment generates a travel route based on map information stored in the map information DB <NUM> described later. The travel route is generated according to a predetermined rule, such as a route with the shortest travel distance of the vehicle <NUM> or a route with the shortest travel time of the vehicle <NUM>. The operation command generating unit <NUM> sends the operation command including the travel route to the vehicle <NUM>.

The user information DB <NUM> is created by storing user information of the first user and user information of the second user in the auxiliary storage unit <NUM>. In the user information DB <NUM>, each user is associated with the user information. The user information includes, for example, the user IDs, names, addresses, etc. associated with the first user and the second user.

The article information DB <NUM> is created by storing the article information in the auxiliary storage unit <NUM>. In the article information DB <NUM>, the user ID of the second user is associated with the part ID. The configuration of the article information that is stored in the article information DB <NUM> will be described with reference to <FIG> is a diagram illustrating the table configuration of the article information. An article information table has user ID fields, part ID fields, selectability fields, and location fields. Information that specifies the second user is input to the user ID field. A maker may be the second user. Information that specifies a part or a maker is input to the part ID field. A plurality of part IDs may be associated with a single user ID. Information indicating whether the part or maker associated with the part ID is selectable is input to the selectability field. For example, when the part is out of stock, "No" is input to the selectability field. "No" indicates that the part is not selectable. For example, when the part is in stock, "Yes" is input to the selectability field. "Yes" indicates that the part is selectable. Further, for example, when the maker can produce the article, "Yes" is input to the selectability field. When the maker cannot produce the article (e.g., when the maker has other request, when the maker is not available, etc.), "No" is input to the selectability field. Selectability is registered via the second terminal 20B. The location of the part or the maker is input to the location field. The location of the part or the maker is registered via the second terminal 20B as a place to which the vehicle <NUM> travels.

The vehicle information DB <NUM> is created by storing vehicle information in the auxiliary storage unit <NUM>. In the vehicle information DB <NUM>, the vehicle ID is associated with the vehicle information. The configuration of the vehicle information that is stored in the vehicle information DB <NUM> will be described with reference to <FIG> is a diagram illustrating the table configuration of the vehicle information. A vehicle information table has vehicle ID fields, position information fields, operation status fields, and applicable article fields. Identification information that specifies the vehicle <NUM> is input to the vehicle ID field. Position information that is sent from the vehicle <NUM> is input to the position information field. The position information is information indicating the current location of the vehicle <NUM>. Information indicating whether the vehicle <NUM> is in operation to produce a finished article or in a standby state is input to the operation status field. For example, the operation status may be sent from the vehicle <NUM>. Identification information that specifies a finished article corresponding to the vehicle <NUM> is input to the applicable article field. That is, information on an article that can be produced by the vehicle <NUM> is input to the applicable article field. For example, the applicable article is sent in advance from the vehicle <NUM>.

The production information DB <NUM> is created by storing information on parts or makers corresponding to a finished article (hereinafter sometimes simply referred to as the "production information") in the auxiliary storage unit <NUM>. The configuration of the production information that is stored in the production information DB <NUM> will be described with reference to <FIG> is a diagram illustrating the table configuration of the production information. The production information table has article ID fields and part ID field. Information that specifies a finished article is input to the article ID field. Information that specifying parts and makers necessary to produce a finished article is input to the part ID fields. The order in which the parts and the makers are required to produce a finished article are associated with the part IDs that are input to the part ID field. That is, the part ID fields are generated so that the parts or the makers are provided in the order of the part ID #<NUM>, #<NUM>, #<NUM>,. in each field shown in <FIG>.

The map information DB <NUM> stores map information including map data and point of interest (POI) information such as letters and photographs indicating characteristics of each point on the map data. The map information DB <NUM> may be provided by other system connected to the network N1 such as a geographic information system (GIS).

<FIG> is a diagram illustrating an example of the functional configuration of the vehicle <NUM>. The vehicle <NUM> includes, as functional components, an operation plan generating unit <NUM>, an environment detecting unit <NUM>, a drive control unit <NUM>, and a position information sending unit <NUM>. The operation plan generating unit <NUM>, the environment detecting unit <NUM>, the drive control unit <NUM>, and the position information sending unit <NUM> are functional components that are provided by, for example, the processor <NUM> of the vehicle <NUM> executing various programs stored in the auxiliary storage unit <NUM>.

The operation plan generating unit <NUM> receives an operation command from the server <NUM> and generates an operation plan for the vehicle <NUM>. The operation command includes information on waypoints and a final destination of the vehicle <NUM>. The operation plan generating unit <NUM> calculates a travel route of the vehicle <NUM> based on the operation command obtained from the server <NUM> and generates an operation plan that follows the travel route.

The environment detecting unit <NUM> detects the environment around the vehicle <NUM> that is necessary for autonomous driving, based on data obtained by the environmental information sensor <NUM>. For example, the environment detecting unit <NUM> detects the number and positions of lanes, the number and positions of other moving bodies that are present around the vehicle <NUM>, the number and positions of obstacles (e.g., pedestrians, bicycles, structures, buildings, etc.) that are present around the vehicle <NUM>, road structures, road signs, etc. However, the invention is not limited to this. The environment detecting unit <NUM> may detect anything that is necessary for autonomous driving. For example, when the environmental information sensor <NUM> is a stereo camera, the environment detecting unit <NUM> detects objects around the vehicle <NUM> by processing image data captured by the environmental information sensor <NUM>. Data about the environment around the vehicle <NUM> (hereinafter referred to as the environmental data) detected by the environment detecting unit <NUM> is sent to the drive control unit <NUM> described below.

The drive control unit <NUM> generates a control command to control autonomous driving of the vehicle <NUM>, based on the operation plan generated by the operation plan generating unit <NUM>, the environmental data generated by the environment detecting unit <NUM>, and the position information of the vehicle <NUM> obtained by the position information sensor <NUM>. For example, the drive control unit <NUM> generates a control command that causes the vehicle <NUM> to travel so that the vehicle <NUM> travels along a predetermined route and no obstacle enters a predetermined safety area centered on the vehicle <NUM>. The generated control command is sent to the drive unit <NUM>. A known method can be used to generate a control command to autonomously move the vehicle <NUM>.

The position information sending unit <NUM> sends position information obtained from the position information sensor <NUM> to the server <NUM> via the communication unit <NUM>. The timing at which the position information sending unit <NUM> sends the position information can be set as appropriate. For example, the position information sending unit <NUM> may periodically send the position information, may send the position information synchronously with sending some information to the server <NUM>, or may send the position information in response to a request from the server <NUM>. The position information sending unit <NUM> sends the position information together with identification information (vehicle ID) that uniquely identifies the vehicle <NUM> to the server <NUM>. The vehicle ID that identifies the vehicle <NUM> is assigned in advance.

<FIG> is a diagram illustrating an example of the functional configuration of the first terminal 20A. The first terminal 20A includes a production request sending unit 201A as a functional component. For example, the production request sending unit 201A is a functional component provided by the processor <NUM> of the first terminal 20A executing various programs stored in the auxiliary storage unit <NUM>. For example, the production request sending unit 201A outputs an icon etc. for requesting production of an article to a touch panel display of the first terminal 20A and generates a production request when the first user clicks the icon. The production request includes information on an article requested by the first user. The production request sending unit 201A sends the generated production request in association with the user ID to the server <NUM>.

<FIG> is a diagram illustrating an example of a screen that is displayed on the output unit <NUM> of the first terminal 20A when the first user requests production of an article. When the first user clicks an article from "Request Article" and then clicks "Send", the production request sending unit 201A generates a production request and sends the production request to the server <NUM>. In the example shown in <FIG>, a door, a seat, a chassis, or an engine can be selected as an article.

<FIG> is a diagram illustrating an example of the functional configuration of the second terminal 20B. The second terminal 20B includes an article information sending unit 201B as a functional component. For example, the article information sending unit 201B is a functional component provided by the processor <NUM> of the second terminal 20B executing various programs stored in the auxiliary storage unit <NUM>. For example, the article information sending unit 201B outputs an icon etc. indicating whether a part or a maker is selectable to a touch panel display of the second terminal 20B, and obtains information on whether a part or a maker is selectable when the second user clicks the icon. When a part is out of stock, the second user inputs information indicating that the part is not selectable. When a maker is not available or has other production request, the second user inputs information indicating that the maker is not selectable. The article information sending unit 201B obtains information on the location of the part or the maker via the input unit <NUM>. The second user inputs information on the location (e.g., address) of the part or the maker via the input unit <NUM>. The article information sending unit 201B sends the article information in association with the user ID and the part ID to the server <NUM>. The timing at which the article information sending unit 201B sends the article information can be set as appropriate. For example, the article information sending unit 201B may send the article information when there is a change in article information, may periodically send the article information, or may send the article information in response to a request from the server <NUM>. The article information sending unit 201B may register the information on the location of the part or the maker in the server <NUM> when the second user inputs this information for the first time. In this case, the article information sending unit 201B need only send the updated information on the location of the part or the maker only when there is a change in information on the location of the part or the maker.

<FIG> is a diagram illustrating an example of a screen that is displayed on the output unit <NUM> of the second terminal 20B when the second user registers whether a part or a maker is selectable. When the second user selects whether a part is selectable by clicking either "Yes" or "No" for each "part ID" and then clicks "send", the article information sending unit 201B generates article information.

Next, a process in which the server <NUM> sends an operation command to the vehicle <NUM> will be described. <FIG> is an example of a flowchart of the process of sending an operation command according to the present embodiment. The processor <NUM> of the server <NUM> performs the process shown in <FIG> at predetermined time intervals. It is herein assumed that the server <NUM> has already received information necessary to construct the article information DB <NUM>, the vehicle information DB <NUM>, and the production information DB <NUM> from the vehicle <NUM>, the first terminal 20A, and the second terminal 20B.

In step S101, the production request obtaining unit <NUM> determines whether it has received a production request from the first terminal 20A. When the production request obtaining unit <NUM> determines in step S101 that it has received a production request from the first terminal 20A (Yes in step S101), the routine proceeds to step S102. Otherwise (No in step S101), the routine is terminated.

In step S102, the part selecting unit <NUM> specifies parts and makers that are necessary to produce a requested article. The part selecting unit <NUM> obtains a combination of part IDs corresponding to the parts and makers that are necessary to produce the requested article. The part selecting unit <NUM> accesses the production information DB <NUM> and the article information DB <NUM> and selects a combination of part IDs of which selectability is all "Yes" from combinations of part IDs corresponding to the article ID of the requested article.

That is, the part selecting unit <NUM> obtains the part IDs corresponding to the article ID of the requested finished article from the production information DB <NUM>. The part selecting unit <NUM> also obtains from the article information DB <NUM> information on whether selectability of each of the obtained part IDs is "Yes" or "No". The part selecting unit <NUM> then selects a combination of the part IDs of which selectability is all "Yes" from the combinations of the part IDs corresponding to the article ID of the requested article. The part selecting unit <NUM> thus specifies makers and parts. When there is no combination of part IDs of which selectability is all "Yes", the part selecting unit <NUM> may notify the first user that the article cannot be produced due to a shortage of parts or makers.

In step S103, the vehicle selecting unit <NUM> selects a vehicle <NUM> for producing the finished article. The vehicle selecting unit <NUM> accesses the vehicle information DB <NUM> and selects the vehicle <NUM> that corresponds to the requested article and of which operation status is "standby".

In step S104, the operation command generating unit <NUM> obtains locations corresponding to the makers and parts specified by the part selecting unit <NUM> in step S102. The operation command generating unit <NUM> obtains from the article information DB <NUM> locations corresponding to the user IDs associated with the part IDs corresponding to the makers and parts specified by the part selecting unit <NUM>.

In step S105, the operation command generating unit <NUM> generates an operation command for the vehicle <NUM>. The operation command generating unit <NUM> calculates a travel route of the vehicle <NUM> based on the location of the vehicle <NUM> selected in step S103 and the locations obtained in step S104 so that the vehicle <NUM> travels through the locations of the parts and the makers in the order in which the article is produced. The operation command generating unit <NUM> obtains the order in which the article is produced from the production information DB <NUM>. The first user may designate the delivery location of the produced article via the first terminal 20A. In step S106, the operation command generating unit <NUM> sends an operation command including the travel route to the vehicle <NUM> selected in step S103. The operation command generating unit <NUM> may access the vehicle information DB <NUM> to update the operation status of the selected vehicle <NUM> to "in operation".

The server <NUM> may send information indicating a request for production of the article to the second terminals 20B of the second users corresponding to the selected part IDs. The server <NUM> may notify the second terminals 20B of the current location of the vehicle <NUM>. This notification may be given in response to a request from the second user or may be given at predetermined time intervals.

Next, a process for moving the vehicle <NUM> will be described. <FIG> is an example of a flowchart of a process of moving the vehicle <NUM> according to the present embodiment. The processor <NUM> of the vehicle <NUM> performs the process shown in <FIG> at predetermined time intervals. The process of this flowchart is performed for the vehicle <NUM> in a standby state.

In step S201, the operation plan generating unit <NUM> determines whether an operation command is received from the server <NUM>. When the operation plan generating unit <NUM> determines in step S201 that an operation command is received (Yes in step S201), the routine proceeds to step S202. Otherwise (No in step S201), the routine is terminated. In step S202, the operation plan generating unit <NUM> generates an operation plan according to the operation command.

When generation of the operation plan is completed, the drive control unit <NUM> generates a control command in step S203, and the drive unit <NUM> is controlled according to the control command so that the vehicle <NUM> travels to a waypoint. The second user carries out work such as attaching a part at the waypoint. In step S204, the drive control unit <NUM> determines whether the work by the second user is finished. For example, when the work by the second user is finished, the second user inputs the finishing of the work to the input unit <NUM> of the vehicle <NUM>. In response to the input, the drive control unit <NUM> determines that the work is finished. This work may include delivery work. When the drive control unit <NUM> determines in step S204 that the work is finished (Yes in step S204), the routine proceeds to step S205. Otherwise (No in step S204), step S204 is performed again.

In step S205, the drive control unit <NUM> determines whether delivery of the article is completed. The drive control unit <NUM> determines that delivery of the article is completed when the current location of the vehicle <NUM> is the last waypoint. When the drive control unit <NUM> determines in step S205 that delivery of the article is completed (Yes in step S205), the routine proceeds to step S206. Otherwise (No in step S205), the routine returns to step S203 to move the vehicle <NUM> to the next waypoint. In step S206, the drive control unit <NUM> moves the vehicle <NUM> to a base, and then the routine is terminated.

As described above, according to the present embodiment, an article can be produced using the vehicle <NUM> that travels autonomously. This eliminates the need to keep parts in stock in a factory. Moreover, a maker can produce an article at a place suitable for producing the article.

In the present embodiment, when there are a plurality of combinations of parts and makers corresponding to an article, the first user selects parts and makers from the plurality of combinations. For example, when there are a plurality of parts that are the same but from different second users, the first user selects one of the plurality of parts. When there are a plurality of parts that are different but compatible, the first user selects one of the plurality of parts. When there are a plurality of makers with the same skills, the first user selects one of the plurality of makers.

<FIG> is a diagram illustrating the table configuration of article information in the article information DB <NUM>. An article information table according to the present embodiment includes user ID fields, part ID fields, selectability fields, and location fields. Differences from <FIG> will be mainly described. In <FIG>, information that specifies a part or a maker is input to the part ID field. A30_1, A30_2, and A30_3 represent part IDs corresponding to parts or makers that are different but interchangeable. A30_1, A30_2,and A30_3 represent part IDs that are applicable to the part or maker of which part ID is A30. The first user can select one of the parts or makers of which part IDs are A30_1, A30_2, and A30_3 when a part or maker of which part ID is A30 is necessary to produce an article. The server <NUM> makes an inquiry to the first user about which one of A30_1, A30_2,and A30_3 to select.

<FIG> is a diagram showing an example of a screen that is displayed on the output unit <NUM> of the first terminal 20A when the first user selects parts after the user requests production of an article. <FIG> shows an example in which engine displacement can be selected when the first user requests production of an engine. In the example shown in <FIG>, the engine displacement can be selected from <NUM> cc, <NUM> cc, <NUM> cc, and <NUM> cc. This screen is displayed based on information that is sent from the server <NUM>. When the first user clicks the displacement of the requested engine and then clicks "Send", the production request sending unit 201A sends information on the selected displacement to the server <NUM>.

<FIG> is a diagram illustrating the table configuration of production information in the production information DB <NUM>. A production information table has article ID fields and part ID fields. Differences from <FIG> will be mainly described. When producing an article of which article ID is C01, a part or maker of which part ID is A20 is required for the first part or maker (#<NUM>) in the order of production, a part or maker of which part ID is A30 is required for the second part or maker (#<NUM>) in the order of production, and a part or maker of which part ID is A40 is required for the third part or maker (#<NUM>) in the order of production. The parts or makers of which part IDs are A30_1, A30_2, and A30_3 are applicable to the part or maker of which part ID is A30, and the parts or makers of which part IDs are A40_1 and A40_2 are applicable to the part or maker of which part ID is A40. However, there may be restrictions on the combination of parts or makers. For example, when the first user selects A30_1, the first user cannot select A40_2. When the first user selects A30_2 or A30_3, the first user cannot select A40_1. That is, in the example shown in <FIG>, when requesting production of the article of which article ID is "C01", the first user selects one of the following three combinations, the combination of part IDs A20, A30_1, A40_1,. , the combination of part IDs A20, A30_2, A40_2,. , and the combination of part IDs A20, A30_3, A40_2,.

Next, a process in which the server <NUM> sends an operation command to the vehicle <NUM> will be described. <FIG> is an example of a flowchart of a process of sending an operation command according to the present embodiment. The processor <NUM> of the server <NUM> performs the process shown in <FIG> at predetermined time intervals. It is herein assumed that the server <NUM> has already received information necessary to construct the article information DB <NUM>, the vehicle information DB <NUM>, and the production information DB <NUM> from the vehicle <NUM>, the first terminal 20A, and the second terminal 20B.

In step S301, the production request obtaining unit <NUM> determines whether a production request is received from the first terminal 20A. When the production request obtaining unit <NUM> determines in step S301 that a production request is received from the first terminal 20A (Yes in step S301), the routine proceeds to step S302. Otherwise (No in step S301), the routine is terminated.

In step S302, the part selecting unit <NUM> obtains all the combinations of part IDs corresponding to parts and makers that are necessary to produce a requested article. The part selecting unit <NUM> accesses the production information DB <NUM> and the article information DB <NUM> and obtains all the combinations of part IDs of which selectability is all "Yes" from the combinations of part IDs corresponding to the article ID of the requested article. When there is no combination of part IDs of which selectability is all "Yes", the part selecting unit <NUM> may notify the first user that the article cannot be produced due to a shortage of parts or makers.

In step S303, the part selecting unit <NUM> determines whether a plurality of combinations are obtained in step S302. When the part selecting unit <NUM> determines in step S303 that a plurality of combinations are obtained in step S302 (Yes in step S303), the routine proceeds to step S304. Otherwise (No in step S303), the routine proceeds to step S305. In step S305, since there is only one combination of part IDs, the part selecting unit <NUM> determines that the article is to be produced using this combination of part IDs. That is, the part selecting unit <NUM> specifies makers and parts.

In step S304, the part selecting unit <NUM> sends a request to select one of the plurality of combinations of part IDs (a selection request) to the first terminal 20A. That is, the part selecting unit <NUM> makes an inquiry to the first user about which combination to select. The part selecting unit <NUM> generates this selection request and sends the request to the first terminal 20A. The selection request includes information for displaying a screen prompting the first user to select parts or makers on the first terminal 20A.

In step S306, the part selecting unit <NUM> determines whether a response to the selection request is received from the first terminal 20A. When the part selecting unit <NUM> determines in step S306 that a response to the selection request is received from the first terminal 20A (Yes in S306), the routine proceeds to step S307. Otherwise (No in step S306), step S306 is performed again.

In step S307, the part selecting unit <NUM> determines that the article is to be produced using the combination of part IDs according to the response from the first terminal 20A. That is, the part selecting unit <NUM> specifies makers and parts. In step S308, a vehicle <NUM> for producing the article is selected. The vehicle selecting unit <NUM> accesses the vehicle information DB <NUM> and selects the vehicle <NUM> that corresponds to the combination of part IDs determined in step S305 or step S307 and of which operation status is "standby".

Since steps S309 to S311 are the same as steps S104 to S106 described above, description thereof will be omitted. The flowchart shown in <FIG> can be applied to the process for moving the vehicle <NUM> according to the present embodiment.

As described above, according to the present embodiment, an article can be produced using the vehicle <NUM> that travels autonomously. This eliminates the need to keep parts in stock in a factory. Moreover, a maker can produce an article at a place suitable for producing the article. Since the first user can be involved in selection of parts or makers for production of an article, the article can be produced according to the needs of the first user.

The server <NUM> can also select the first user as one of the makers of an article. The server <NUM> can also select a part provided by the first user as one of the parts for the article. Accordingly, the first terminal 20A is designed so that the first user can input to the first terminal 20A the process in which the first user is to be involved. When the first user inputs to the first terminal 20A the process in which the first user is to be involved, the server <NUM> selects the first user as a maker in this process or selects a part provided by the first user as a part to be used in this process. For example, when the production request sending unit 201A of the first terminal 20A generates a production request, the production request is generated to include information on the process in which the first user is to be involved. The first user can input to the first terminal 20A the process in which the first user is to be involved. The first user can be involved in a part of the processes but will not be involved in all of the processes. For example, the processes correspond to the order (#<NUM>, #<NUM>, #<NUM>,. ) described with respect to <FIG>. The process in which the first user can be involved may be determined for each article.

For example, the production request sending unit 201A outputs an icon etc. for requesting production of an article to the touch panel display of the first terminal 20A, and after the first user clicks the icon, the production request sending unit 201A further outputs an icon etc. for selecting the process in which the first user is to be involved. When the first user clicks the icon, the production request sending unit 201A generates a production request. The production request includes information on an article requested by the first user and information on the process in which the first user desires to be involved in (hereinafter sometimes referred to as the involvement desired process). The production request sending unit 201A sends the generated production request in association with the user ID to the server <NUM>.

<FIG> is a diagram showing an example of a screen that is displayed on the output unit <NUM> of the first terminal 20A when the first user requests production of an article. The screen shown in <FIG> is displayed after the first user completes inputting on the screen for requesting production of an article (see <FIG>). The first user clicks a process the first user desires to perform from "Process you are to perform". In the example shown in <FIG>, the first user can select one of the first, second, and third processes. When the first user does not desire to be involved in production of the article, the first user clicks "None". When the first user then clicks "Send", the production request sending unit 201A generates a production request and sends the production request to the server <NUM>.

The part selecting unit <NUM> of the server <NUM> having received the production request obtains a combination of part IDs form the production information DB <NUM>. The part selecting unit <NUM> then changes the part ID related to the involvement desired process out of the part IDs obtained from the production information DB <NUM> to the part ID corresponding to the first user. The part ID corresponding to the first user is provided by the article information obtaining unit <NUM>.

For example, when the production request includes information on the involvement desired process, the article information obtaining unit <NUM> stores the part ID corresponding to the first user, information on the location of the first user, etc. in the article information DB <NUM>. <FIG> is a diagram illustrating the table configuration of article information. Differences from <FIG> will be mainly described. Although the user ID in <FIG> corresponds only to the second user, the user ID in <FIG> corresponds also to the first user. For example, the user ID "U101" is a user ID corresponding to the first user who desires to be involved in production. Information that specifies the part ID corresponding to the first user ("A201" in <FIG>) is input to the part ID field in this record. "Yes" is input to the selectability field in this record. The location of the first user ("L101" in <FIG>) is input to the location field in this record.

An example will be described in which the first user requests production of the article of which article ID is C01 in <FIG> and desires to be involved in the first process (#<NUM>). When the production request obtaining unit <NUM> receives a production request from the first terminal 20A, this production request includes information on the article ID "C01" and information on the involvement desired process "#<NUM>". The part selecting unit <NUM> obtains combinations of part IDs corresponding to parts and makers that are necessary to produce the requested article from the production information DB <NUM> and selects one of the obtained combinations In this case, in the example shown in <FIG>, the part selecting unit <NUM> selects the combination of A20, A30, A40,. Since the first user desires to be involved in the process "#<NUM>", the part selecting unit <NUM> changes the part ID corresponding to the process "#<NUM>" from "A20" to "A201" that is the part ID corresponding to the first user. The operation command generating unit <NUM> obtains the locations corresponding to the user IDs associated with the part IDs from the article information DB <NUM> and generates an operation command. The vehicle <NUM> thus travels through the location of the first user.

Next, a process in which the server <NUM> sends an operation command to the vehicle <NUM> will be described. <FIG> is an example of a flowchart of the process of sending an operation command according to the present embodiment. The processor <NUM> of the server <NUM> performs the process shown in <FIG> at predetermined time intervals. The same steps as those in the flowchart shown in <FIG> are denoted with the same reference characters and description thereof will be omitted.

In the flowchart shown in <FIG>, the routine proceeds to step S401 when step S102 is finished. In step S401, the part selecting unit <NUM> determines whether the production request includes information on the involvement desired process. When the part selecting unit <NUM> determines in step S401 that the production request includes information on the involvement desired process (Yes in step S401), the routine proceeds to step S402. Otherwise (No in step S401), the routine proceeds to step S103.

In step S402, the part selecting unit <NUM> changes the part ID related to the involvement desired process among the part IDs obtained from the production information DB <NUM> to the part ID corresponding to the first user. In the subsequent step S104, even when the part IDs include the part ID corresponding to the first user, the operation command generating unit <NUM> obtains the locations corresponding to the user IDs associated with the part IDs from the article information DB <NUM>. In step S105, the operation command generating unit <NUM> generates an operation command. An operation command including the location of the first user as a waypoint is thus generated. Accordingly, the vehicle <NUM> travels through the location of the first user, so that the first user can produce an article or provide a part.

Since the first user is thus also involved in production of the article, the first user can enjoy producing the article. For example, in the case where the first user can produce a part but it is difficult for the first user to attach the part to an unfinished article, the first user can request a skilled worker etc. to attach the part to the unfinished article.

The above embodiments are merely illustrative, and the invention can be modified as appropriate without departing from the scope of the claims.

Producing an article can include retrofitting, modifying, repairing, and decorating the article owned by the first user.

The process described as being performed by a single device may be performed by a plurality of devices. The processes described as being performed by different devices may be performed by a single device. The hardware configuration (server configuration) that implements each function in a computer system can be flexibly changed. In the above embodiments, the server <NUM> is described as an example of the information processing device. However, the invention, which is defined by the claims, is not limited to this. A terminal mounted on the vehicle <NUM> may function as the information processing device, or the first terminal 20A may function as the information processing device. Alternatively, the server <NUM> and the terminal mounted on the vehicle <NUM> or the first terminal 20A may function as the information processing device. For example, in the above embodiments, the server <NUM> includes, as functional components, the vehicle managing unit <NUM>, the vehicle selecting unit <NUM>, the production request obtaining unit <NUM>, the article information obtaining unit <NUM>, the part selecting unit <NUM>, the operation command generating unit <NUM>, the user information DB <NUM>, the article information DB <NUM>, the vehicle information DB <NUM>, the production information DB <NUM>, and the map information DB <NUM>. However, the vehicle <NUM> may include a part or all of these functional components. The first terminal 20A may be the terminal mounted on the vehicle <NUM>.

Claim 1:
An information processing device (<NUM>) used to produce an article using an autonomous moving body and configured to control the that moving body (<NUM>) to autonomously travel based on an operation command, the information processing device comprising:
a control unit (<NUM>) configured to perform functions including:
receiving a request for production of an article from a user,
specifying a maker of the article that corresponds to the received request,
specifying an item to be used to produce the article that corresponds to the received request,
obtaining information on a location of the specified maker and information on a location of the specified item, and
generating an operation command for the moving body (<NUM>) to cause the moving body (<NUM>) to travel through the location of the maker and the location of the item based on the obtained information on the location of the maker and the obtained information on the location of the item;
wherein the control unit (<NUM>) is configured to perform functions including specifying parts that constitute the article as the item to be used to produce the article;
wherein the moving body is a vehicle;
characterised in that
the maker of the article is a person or machine that rides in the moving body and moves with the moving body and
in that the information processing device (<NUM>) is configured such that the article is produced while the vehicle is travelling to a next waypoint.