Self-development of resources in multi-machine environment

By receiving real-time data in a multi-machine environment, creating an AI knowledge corpus, identifying comparable devices, predicting modifications, and using 3D printing additional resources, the unexpected events caused by insufficient robot equipment resources are solved, and efficient completion of tasks and improvement of execution efficiency is achieved.

CN119923632APending Publication Date: 2025-05-02INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380063535.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-09-07
Filing Date
2023-07-10
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

In a multi-machine environment, robotic devices may lack sufficient resources to perform activities effectively, resulting in unexpected events and task delays.

Method used

By receiving real-time data and creating an AI knowledge corpus based on historical data, it is determined whether the first robot device can complete the activity without accidents. Identify the most comparable robotic device, predict its modifications, and attach resources to the first robotic device using 3D printing.

Benefits of technology

Dynamically create and provide additional resources to ensure that robotic equipment can complete tasks in a multi-machine environment without accidents, improving the execution efficiency and reliability of industrial machines.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119923632A_ABST
    Figure CN119923632A_ABST
Patent Text Reader

Abstract

A method, computer system and computer program product for self-development of resources are provided. The method may include receiving real-time data related to an activity and a first robotic device assigned to perform the activity. The method may also include creating an AI knowledge corpus of a second set of one or more robotic devices capable of performing the activity. The method may also include performing a digital twinning simulation of a digital twinning model of the first robotic device performing the activity. The method may also include, in response to determining that the first robotic device is not able to complete each step of the activity without accident, identifying a robotic device within the second set of one or more robotic devices that is most comparable to the first robotic device. The method may further include predicting a modification of the first robotic device. The method may also include attaching the one or more resources printed by the 3D printer to the first robotic device.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] The present invention relates generally to the field of computing and, more particularly, to a system for self-exploitation of resources in a multi-machine environment.

[0002] Machines such as robots are currently used to perform a variety of activities in industrial settings. Some of these activities were previously performed exclusively by people (e.g., repetitive tasks on a manufacturing assembly line), while other activities require heavy machinery to lift and / or move objects. Machines enable organizations, including manufacturers and construction companies, to perform a variety of activities more seamlessly than humans could, completing work faster and with minimal wasted effort. These machines have different skills and capabilities, and can perform activities individually and / or collaboratively. As automation becomes prevalent, the demand for machines and robotics is expected to increase in the coming decades. Summary of the invention

[0003] According to one embodiment, a method, computer system, and computer program product for self-development of resources in a multi-machine environment are provided. This embodiment may include receiving real-time data related to an activity and a first robot device assigned to perform the activity. This embodiment may also include creating an AI knowledge corpus of a second group of one or more robot devices capable of performing the activity based on historical data related to the activity. This embodiment may also include implementing a digital twin simulation of a digital twin model of the first robot device that performs the activity. This embodiment may also include identifying the most comparable robot device to the first robot device in the second group of one or more robot devices in response to determining that the first robot device is unable to complete each step of the activity without incident. This embodiment may also include predicting modifications to the first robot device based on one or more differences between the most comparable robot device and the first robot device. This embodiment may also include attaching one or more resources printed by a 3D printer to the first robot device in the multi-machine environment based on the predicted modifications. BRIEF DESCRIPTION OF THE DRAWINGS

[0004] These and other objects, features and advantages of the present invention will become apparent from the following detailed description of illustrative embodiments thereof read in conjunction with the accompanying drawings. The various features of the drawings are not to scale, as for the sake of clarity, the illustrations are intended to assist those skilled in the art in understanding the present invention in conjunction with the specific embodiments. In the drawings:

[0005] Figure 1 An exemplary computing environment is shown in accordance with at least one embodiment.

[0006] Figure 2An operational flow diagram for self-development of resources in a multi-machine environment during a resource development process is shown in accordance with at least one embodiment.

[0007] Figure 3 are exemplary diagrams depicting a robotic device before and after self-development of a resource according to at least one embodiment. DETAILED DESCRIPTION

[0008] Detailed embodiments of the claimed structures and methods are disclosed herein; however, it is understood that the disclosed embodiments are merely illustrative of the claimed structures and methods that may be implemented in various forms. However, the present invention may be implemented in many different forms and should not be construed as limited to the exemplary embodiments set forth herein. In the description, details of well-known features and techniques may be omitted to avoid unnecessarily obscuring the presented embodiments.

[0009] It should be understood that the singular forms "a", "an", and "the" include plural referents unless the context clearly dictates otherwise. Thus, for example, reference to "a component surface" includes reference to one or more such surfaces unless the context clearly dictates otherwise.

[0010] Embodiments of the present invention relate to the field of computing, and more particularly to systems for self-development of resources in a multi-machine environment. The exemplary embodiments described below provide a system, method, and program product for determining whether a first robotic device is able to complete each step of an activity without unexpected events, and accordingly printing and attaching one or more resources to the first robotic device in a multi-machine environment. Thus, the present embodiments have the ability to improve industrial machine technology by increasing the capabilities of robotic devices with insufficient resources in any multi-machine environment.

[0011] As previously mentioned, machines such as robots are currently used to perform various activities in industrial settings. Some of these activities were previously performed exclusively by people (e.g., repetitive tasks on manufacturing assembly lines), while other activities require heavy machinery to lift and / or move objects. Machines enable organizations including manufacturers and construction companies to perform various activities more seamlessly than humans, complete work faster and with minimal wasted effort. These machines have different skills and capabilities and can perform activities individually and / or collaboratively. As automation becomes prevalent, it is expected that the demand for machines and robotics will increase in the coming decades. When a robotic device is performing an activity, the robotic device may not have enough resources to perform the activity effectively. For example, the robotic device may be immobile and / or the gripper of the robotic device may not be able to handle the weight of the object. This problem is usually solved by deploying mobile robotic devices to collect information and determine the condition of the industrial machine by analyzing sensor data and predicting maintenance actions of the industrial machine. However, predicting the maintenance actions of industrial machines fails to actively allocate the required resources to the robotic device to successfully perform the activity.

[0012] Therefore, there must be a system to dynamically create and provide additional resources to the robotic device so that activities can be effectively performed in a multi-machine environment. Therefore, the embodiments of the present invention can provide advantages including, but not limited to, dynamically creating additional resources and providing them to the robotic device to effectively perform activities, self-developed additional resources, and using 3D printing to create additional resources. The present invention does not require that all advantages must be incorporated into every embodiment of the present invention.

[0013] According to at least one embodiment, in a multi-machine environment of a robotic device, real-time data related to an activity and a first robotic device assigned to perform the activity can be received so as to create an AI knowledge corpus of a second set of one or more robotic devices capable of performing the activity based on historical data. When creating the AI ​​knowledge corpus, a digital twin simulation of a digital twin model of the first robotic device of the activity can be implemented so that it can be determined based on the digital twin simulation whether the first robotic device can complete each step of the activity without incident. In response to determining that the first robotic device is not able to complete each step of the activity without incident, a robotic device most comparable to the first robotic device can be identified within the second set of one or more robotic devices so that a modification of the first robotic device can be predicted based on one or more differences between the most comparable robotic device and the first robotic device. The prediction can be verified by executing an updated digital twin simulation of a modified version of the first robotic device with one or more resources performing the activity. Then, one or more resources can be printed by a 3D printer, and one or more resources can be attached to the first robotic device in the multi-machine environment based on the predicted modification. According to at least one embodiment, the resource can be an additional attachment (e.g., a gripper or a counterweight). According to at least one other embodiment, the resource can be a modified component of a pre-existing component of the first robotic device.

[0014] The present invention may be a system, method and / or computer program product at any possible level of technical detail integration. The computer program product may include a computer-readable storage medium (or multiple media) having computer-readable program instructions thereon, and the computer-readable program instructions are used to cause a processor to perform various aspects of the present invention.

[0015] Computer program product embodiments ("CPP embodiments" or "CPP") are terms used in this disclosure to describe any collection of one or more storage media (also referred to as "media") collectively included in a collection of one or more storage devices that collectively include machine-readable code corresponding to instructions and / or data for performing the computer operations specified in a given CPP claim. A "storage device" is any tangible device that can hold and store instructions for use by a computer processor. Without limitation, a computer-readable storage medium may be an electronic storage medium, a magnetic storage medium, an optical storage medium, an electromagnetic storage medium, a semiconductor storage medium, a mechanical storage medium, or any suitable combination of the foregoing. Some known types of storage devices that include these media include: magnetic disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), static random access memories (SRAM), compact disk read-only memories (CD-ROM), digital versatile disks (DVD), memory sticks, floppy disks, mechanical encoding devices (such as punch cards or pits / land formed in a major surface of a disk), or any suitable combination of the foregoing. Computer-readable storage media, as the term is used in this disclosure, should not be construed as storing in the form of transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides, light pulses transmitted through fiber optic cables, electrical signals transmitted through wires and / or other transmission media. As will be appreciated by those skilled in the art, data is typically moved at certain occasional points in time during normal operation of the storage device, such as during access, defragmentation, or garbage collection, but this does not make the storage device transient because the data is not transient while it is stored.

[0016] Various aspects of the present invention are described herein with reference to the flow chart and / or block diagram of the method, device (system) and computer program product according to embodiments of the present invention. It will be understood that each frame of the flow chart and / or block diagram and the combination of frames in the flow chart and / or block diagram can be implemented by computer-readable program instructions.

[0017] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device create a device for implementing the functions / actions specified in one or more boxes of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, which can guide the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable storage medium having the instructions stored therein includes an article of manufacture, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes of the flowchart and / or block diagram.

[0018] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, so that a series of operational steps are performed on the computer, other programmable apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable apparatus, or other device implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.

[0019] Flowchart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention.In this regard, each frame in the flow chart or block diagram can represent the module, segment or part of instruction, which includes one or more executable instructions for realizing the specified logical function.In some alternative embodiments, the function noted in the frame may not occur in the order noted in the figure.For example, two frames shown continuously can actually be performed simultaneously or substantially simultaneously, or these frames can sometimes be performed in reverse order, depending on the function involved.It will also be noted that the combination of the frames in each frame of the block diagram and / or flow chart illustration and the block diagram and / or flow chart illustration can be realized by a dedicated hardware-based system that performs a specified function or action or performs a combination of special hardware and computer instructions.

[0020] The exemplary embodiments described below provide a system, method, and program product for determining whether a first robotic device can complete each step of an activity without incident, and accordingly printing and attaching one or more resources to the first robotic device in a multi-machine environment.

[0021] refer to Figure 1, depicting an exemplary computing environment 100 according to at least one embodiment. The computing environment 100 includes an example of an environment for executing at least some of the computer codes involved in performing the methods of the present invention, such as a self-developed resource program 150. In addition to the block 150, the computing environment 100 includes, for example, a computer 101, a wide area network (WAN) 102, an end-user device (EUD) 103, a remote server 104, a public cloud 105, and a private cloud 106. In this embodiment, the computer 101 includes a processor set 110 (including a processing circuit 120 and a cache 121), a communication structure 111, a volatile memory 112, a permanent storage device 113 (including an operating system 122 and a block 200, as described above), a peripheral device set 114 (including a user interface (UI) device set 123, a storage device 124, and an Internet of Things (IoT) sensor set 125), and a network module 115. The remote server 104 includes a remote database 130. The public cloud 105 includes a gateway 140 , a cloud coordination module 141 , a host physical machine set 142 , a virtual machine set 143 , and a container set 144 .

[0022] Computer 101 may take the form of a desktop computer, laptop computer, tablet computer, smart phone, smart watch or other wearable computer, mainframe computer, quantum computer, or any other form of computer or mobile device now known or developed in the future that is capable of running programs, accessing a network, or querying a database such as remote database 130. As is well known in the art of computer technology, and depending on the technology, the performance of computer-implemented methods may be distributed among multiple computers and / or among multiple locations. On the other hand, in this presentation of computing environment 100, the detailed discussion focuses on a single computer, particularly computer 101, to keep the presentation as simple as possible. Computer 101 may be located in the cloud, even though it is not yet fully understood. Figure 1 1 is not shown in the cloud, on the other hand, computer 101 need not be in the cloud except to any extent that can be positively indicated.

[0023] Processor set 110 includes one or more computer processors of any type known now or to be developed in the future. Processing circuit 120 may be distributed over multiple packages, such as multiple cooperating integrated circuit chips. Processing circuit 120 may implement multiple processor threads and / or multiple processor cores. Cache 121 is a memory located in the processor chip package and is typically used for data or code that should be quickly accessed by threads or cores running on processor set 110. Cache memory is typically organized into multiple levels based on relative proximity to the processing circuit. Alternatively, some or all of the caches of the processor set may be located "off chip". In some computing environments, processor set 110 may be designed to work with qubits and perform quantum computing.

[0024] Computer-readable program instructions are typically loaded onto the computer 101 to cause the processor set 110 of the computer 101 to perform a series of operating steps to implement a computer-implemented method, so that the instructions so executed will instantiate the method specified in the flowchart and / or narrative description of the computer-implemented method included in this document (collectively referred to as the "method of the present invention"). These computer-readable program instructions are stored in various types of computer-readable storage media, such as cache 121 and other storage media discussed below. The program instructions and related data are accessed by the processor set 110 to control and direct the execution of the computer-implemented method. In the computing environment 100, at least some of the instructions for performing the method of the present invention may be stored in a block 200 in a persistent storage device 113.

[0025] The communication fabric 111 is the signal conduction paths that allow the various components of the computer 101 to communicate with each other. Typically, the fabric is made up of switches and conductive paths, such as those that make up a bus, a bridge, physical input / output ports, etc. Other types of signal communication paths may be used, such as fiber optic communication paths and / or wireless communication paths.

[0026] The volatile memory 112 is any type of volatile memory now known or developed in the future. Examples include dynamic random access memory (RAM) or static RAM. Typically, the volatile memory 112 is characterized by random access, but this is not required unless affirmatively indicated. In the computer 101, the volatile memory 112 is located in a single package and is internal to the computer 101, but, alternatively or additionally, the volatile memory can be distributed in multiple packages and / or located externally relative to the computer 101.

[0027] Permanent storage 113 is any form of non-volatile storage for computers known now or developed in the future. The non-volatility of the memory means that the stored data is maintained regardless of whether power is supplied to the computer 101 and / or directly to the permanent storage 113. Permanent storage 113 can be a read-only memory (ROM), but usually at least a portion of permanent storage 113 allows the writing of data, the deletion of data, and the rewriting of data. Some common forms of permanent storage 113 include disks and solid-state storage devices. Operating system 122 can take several forms, such as various known proprietary operating systems or operating systems of the open source portable operating system interface type using a kernel. The business function supply code included in block 150 typically includes at least some computer codes involved in executing the method of the present invention.

[0028] The peripheral device set 114 includes a set of peripheral devices of the computer 101. The data communication connection between the peripheral device 114 and other components of the computer 101 can be implemented in various ways, such as a Bluetooth connection, a near field communication (NFC) connection, a connection made by a cable (such as a universal serial bus (USB) type cable), a plug-in type connection (e.g., a secure digital (SD) card), a connection made through a local area communication network, and even a connection made through a wide area network such as the Internet. In various embodiments, the UI device set 123 may include components such as display screens, speakers, microphones, wearable devices (such as goggles and smart watches), keyboards, mice, printers, touchpads, game controllers, and tactile devices. The storage device 124 is an external storage device, such as an external hard drive, or a pluggable storage device, such as an SD card. The storage device 124 can be permanent and / or volatile. In some embodiments, the storage device 124 can take the form of a quantum computing storage device for storing data in the form of quantum bits. In embodiments where the computer 101 needs to have a large amount of storage (e.g., where the computer 101 locally stores and manages a large database), the storage may be provided by peripheral storage devices designed to store very large amounts of data, such as a storage area network (SAN) shared by multiple geographically distributed computers. The IoT sensor set 125 consists of sensors that can be used in IoT applications. For example, one sensor may be a thermometer while another sensor may be a motion detector. The peripheral device set 114 may also include machines, robotic devices, and / or any other devices used to perform labor-related tasks.

[0029] The network module 115 is a collection of computer software, hardware, and firmware that allows the computer 101 to communicate with other computers via the WAN 102. The network module 115 may include hardware such as a modem or a Wi-Fi signal transceiver, software for packetizing and / or depacketizing data transmitted over a communication network, and / or web browser software for transmitting data over the Internet. In some embodiments, the network control function and the network forwarding function of the network module 115 are performed on the same physical hardware device. In other embodiments (e.g., embodiments utilizing software defined networks (SDN)), the control function and the forwarding function of the network module 115 are performed on physically separated devices, so that the control function manages several different network hardware devices. Computer-readable program instructions for executing a computer-implemented method can typically be downloaded to the computer 101 from an external computer or an external storage device via a network adapter card or a network interface included in the network module 115.

[0030] WAN 102 is any wide area network (e.g., the Internet) capable of transmitting computer data over non-local distances by any technology now known or developed in the future for transmitting computer data. In some embodiments, WAN 102 may be replaced and / or supplemented by a local area network (LAN) designed to transmit data between devices located in a local area (e.g., a Wi-Fi network). WANs and / or LANs typically include computer hardware such as copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and edge servers.

[0031] End-user device (EUD) 103 is any computer system used and controlled by an end-user (e.g., a customer of an enterprise operating computer 101), and may take any of the forms discussed above in connection with computer 101. EUD 103 typically receives useful and usable data from the operation of computer 101. For example, in the hypothetical case where computer 101 is designed to provide recommendations to an end-user, the recommendations would typically be transmitted from network module 115 of computer 101 to EUD 103 via WAN 102. In this manner, EUD 103 may display or otherwise present the recommendations to the end-user. In some embodiments, EUD 103 may be a client device, such as a thin client, a heavy client, a mainframe computer, a desktop computer, etc.

[0032] Remote server 104 is any computer system that provides at least some data and / or functionality to computer 101. Remote server 104 may be controlled and used by the same entity that operates computer 101. Remote server 104 represents a machine that collects and stores useful and usable data for use by other computers, such as computer 101. For example, in the hypothetical case where computer 101 is designed and programmed to provide recommendations based on historical data, the historical data may be provided to computer 101 from remote database 130 of remote server 104.

[0033] The public cloud 105 is any computer system available for use by multiple entities that provides on-demand availability of computer system resources and / or other computer capabilities, particularly data storage (cloud storage) and computing capabilities, without direct active management by users. Cloud computing typically utilizes the sharing of resources to achieve consistency and economy of scale. The direct and active management of the computing resources of the public cloud 105 is performed by computer hardware and / or software of the cloud coordination module 141. The computing resources provided by the public cloud 105 are typically implemented by virtual computing environments running on various computers that constitute the host physical machine set 142, which is the universe of physical computers in and / or available for the public cloud 105. Virtual computing environments (VCEs) typically take the form of virtual machines from a virtual machine set 143 and / or containers from a container set 144. It should be understood that these VCEs can be stored as images and can be transferred between various physical machine hosts as images or after instantiation of the VCEs. Cloud orchestration module 141 manages the transfer and storage of images, deploys new instantiations of VCEs, and manages active instantiations of VCE deployments. Gateway 140 is a collection of computer software, hardware, and firmware that allows public cloud 105 to communicate over WAN 102 .

[0034] Some further explanation of a virtualized computing environment (VCE) will now be provided. A VCE can be stored as an "image". A new active instance of the VCE can be instantiated from the image. Two common types of VCEs are virtual machines and containers. Containers are VCEs that use operating system-level virtualization. This refers to an operating system feature in which the kernel allows the existence of multiple isolated user space instances, called containers. From the perspective of the programs running in them, these isolated user space instances typically behave like actual computers. Computer programs running on a normal operating system can utilize all of the resources of that computer, such as connected devices, files and folders, network shares, CPU power, and quantifiable hardware capabilities. However, programs running within a container can only use the contents of the container and the devices assigned to the container, a feature known as containerization.

[0035] The private cloud 106 is similar to the public cloud 105, except that the computing resources are only available to a single enterprise. Although the private cloud 106 is depicted as communicating with the WAN 102, in other embodiments, the private cloud can be completely disconnected from the Internet and can only be accessed through a local / private network. A hybrid cloud is a combination of multiple clouds of different types (e.g., private, community, or public cloud types), typically implemented by different vendors. Each of the multiple clouds remains an independent and discrete entity, but the larger hybrid cloud architecture is bound together by standardized or proprietary technologies that enable coordination, management, and / or data / application portability between the multiple constituent clouds. In this embodiment, the public cloud 105 and the private cloud 106 are both part of a larger hybrid cloud.

[0036] According to the present embodiment, the self-developed resource program 150 may be a program capable of receiving real-time data related to an activity and a first robotic device assigned to perform the activity in a multi-machine environment, determining whether the first robotic device can complete each step of the activity without incident, printing and attaching one or more resources to the first robotic device in a multi-machine environment, dynamically creating additional resources and providing the additional resources to the robotic device to effectively perform the activity, self-developed additional resources, and creating additional resources using 3D printing. In addition, although depicted in the computer 101, the self-developed resource program 150 may be stored in and / or executed by the end-user device 103, the remote server 104, the public cloud 105, and the private cloud 106, individually or in any combination. Reference will be made below to Figure 2 Explain the approach of self-developed resources in more detail.

[0037] Reference now Figure 2 , depicts an operational flow diagram for self-development of resources in a multi-machine environment in a resource development process 200 in accordance with at least one embodiment. At 202, a self-developed resource program 150 receives real-time data associated with an activity and a first robotic device assigned to perform the activity.

[0038] Real-time data related to an activity may include the type of activity to be performed in a multi-machine environment. Examples of activities may include, but are not limited to, assembling objects in a manufacturing facility, moving objects at a construction site, and transporting objects from one location to another (e.g., moving a product from an assembly line to a shipping area). Real-time data related to an activity may also include one or more objects associated with the activity. Examples of objects may include, but are not limited to, shipping containers, cars, equipment on an assembly line, building materials, and / or any object that can be moved from a source to a destination, i.e., from one location to another. Real-time data related to an activity may also include the time required to complete the activity. For example, an activity may typically take two hours to complete.

[0039] The real-time data associated with the first robotic device assigned to perform the activity may include the specific robotic device performing the activity. The real-time data associated with the first robotic device may also include components of the first robotic device. Examples of components include, but are not limited to, detachable components (e.g., grippers), arms, wheels, and / or counterweights. It will be appreciated that "components" and "resources" are used interchangeably herein.

[0040] According to at least one embodiment, a user can specify the type of activity to be performed via a user interface (UI) on a user device. The user can be an individual with background knowledge of the activity, such as a foreman or a manager of the activity. For example, a user can specify that the activity to be performed is to assemble a car on an assembly line. Based on the type of activity, the self-developed resource program 150 can obtain one or more objects associated with the activity, the time required to complete the activity, and the first robot device assigned to perform the activity. Continuing with the above example, when the user specifies that the activity to be performed is to assemble a car on an assembly line, the self-developed resource program 150 can obtain information that the object is a part of the car (i.e., hood, door, windshield, etc.), the time required to complete the activity is two hours, and the first robot device assigned to perform the activity is a robot device with a gripper. This data can be used for digital twin simulation and updated digital twin simulation, which will be further described in detail below with reference to steps 206 and 214, respectively.

[0041] Then, at 204, the self-developed resource program 150 creates an AI knowledge corpus of a second set of one or more robot devices capable of performing the activity. The AI ​​knowledge corpus is created based on historical data related to the activity. The historical data may include multiple different types of robot devices that have successfully (i.e., without incident) performed the assigned activity in the past. The historical data may also include the strength required to perform the activity, the size of the second set of individual components (e.g., grippers and / or arms) of one or more robot devices, the time required to successfully complete the activity, and / or the location of the activity. For example, in the case where the assigned activity is to assemble exercise equipment in a manufacturing facility, an AI knowledge corpus may be created using a second set of robot devices that are robots A, B, C, D, and E capable of performing activities in an indoor manufacturing facility, wherein robots A, B, C, D, and E have 12-inch grippers, 6-inch arms, and 24-inch bases, the bases have wheels, and each robot is capable of performing the activity within two hours. The AI ​​knowledge base may process the information, and the information may be stored in a database such as a remote database 130. It will be appreciated that the above examples are not intended to be limiting, and in embodiments of the present invention, the second group of robotic devices may be various other robotic devices having different specifications and capabilities.

[0042] Next, at 206, the self-developed resource program 150 implements a digital twin simulation of the digital twin model of the first robotic device that performs the activity. The self-developed resource program 150 can use known techniques to create a digital twin model of the first robotic device, and the digital twin model can be used in the digital twin simulation. The digital twin of the first robotic device used in the simulation can have the same specifications as the specifications that the first robotic device has in the real world. In addition, the digital twin of the first robotic device used in the simulation can also have the same material as the material from which the first robotic device is made in the real world. For example, the arm of the first robotic device can be made of metal, such as titanium, and the gripper can be made of the same or different types of metals (e.g., aluminum), or the gripper can be made of plastic. In this way, maximum accuracy can be maintained during the digital twin simulation. The digital twin simulation can be implemented according to the typical range of movement that the first robotic device assigned to perform the activity performs in the real world when performing the activity. For example, when the activity is to assemble automotive parts on an assembly line, the range of movement can include picking up doors and hood covers and placing them on the chassis.

[0043] Then, at 208, the self-developed resource program 150 determines whether the first robotic device can complete each step of the activity without incident. The determination can be made based on a digital twin simulation. As described above with respect to step 206, the self-developed resource program 150 implements a digital twin simulation of a digital twin model of the first robotic device that performs the activity, during which the first robotic device can perform the range of motion performed by the first robotic device in the real world. During the digital twin simulation, an accident may occur due to insufficient resources associated with the first robotic device. Examples of accidents include, but are not limited to, the dropping and / or breaking of one or more objects, deformation (e.g., bending, twisting, and / or melting) in at least one component of the first robotic device, the tipping over of the first robotic device, and / or failure to complete the activity within a typical time frame. For example, a gripper made of plastic may melt when handling hot objects and / or when the internal temperature of the manufacturing facility reaches a threshold temperature for melting. In another example, the gripper may drop an object that is too heavy to carry or too large to be properly gripped. In yet another example, the first robotic device may be immobile, resulting in a delay in completing the activity.

[0044] In response to determining that the first robotic device is not able to complete each step of the activity without incident (step 208, "no" branch), the resource development process 200 proceeds to step 210 to identify a robotic device within the second set of one or more robotic devices that is most comparable to the first robotic device. In response to determining that the first robotic device is able to complete each step of the activity without incident (step 208, "yes" branch), the resource development process 200 ends.

[0045] Next, at 210, the self-developed resource program 150 identifies a robotic device within the second set of one or more robotic devices that is most comparable to the first robotic device. As described above with respect to step 204, an AI knowledge corpus may be created using the second set of robotic devices that are capable of performing the activity.

[0046] According to at least one embodiment, the most comparable device of the second set of one or more robotic devices can be identified based on the greatest number of common components with the first robotic device. For example, the second set of one or more robotic devices can include robots A, B, and C, where robot A has an arm, a gripper, and a base, robot B has a base, an arm, and a claw gripper, and robot C has a base and a claw gripper. Continuing with this example, where the first robotic device includes an arm, a gripper, and a base, the most comparable robotic device can be robot A because robot A and the first robotic device have three common components.

[0047] Then, at 212, the self-developed resource program 150 predicts a modification of the first robotic device. The modification is predicted based on one or more differences between the most comparable robotic device and the first robotic device. According to at least one embodiment, the one or more differences may be differences in the components themselves. For example, in a case where robot A is the most comparable robotic device to the first robotic device and robot A has a base, an arm, and a gripper, and in a case where the first robotic device has a base and an arm (i.e., 2 of the 3 components are common), the difference between the most comparable robotic device and the first robotic device is that there is no gripper in the first robotic device. In this embodiment, the predicted modification of the first robotic device may be to add the missing resource (e.g., a gripper) to the first robotic device.

[0048] According to at least one other embodiment, one or more differences may be differences in specifications of components. For example, where robot A is the most comparable robotic device to the first robotic device and robot A has a base, an arm, and a gripper made of titanium, and where the first robotic device has a base, an arm, and a gripper made of plastic (i.e., 3 of 3 common components), the difference between the most comparable robotic device and the first robotic device is the material used for the gripper. Continuing with the above example, where robot A is the most comparable robotic device to the first robotic device and robot A has a base, an arm, and a gripper with a 6-inch diameter, and where the first robotic device has a base, an arm, and a gripper with a 4-inch diameter (i.e., 3 of 3 common components), the difference between the most comparable robotic device and the first robotic device is the size of the gripper. In this embodiment, the predicted modification of the first robotic device may be to replace the insufficient resources of the first robotic device (e.g., a plastic gripper) with the resources of the most comparable device (e.g., a titanium gripper). It will be appreciated that the above examples are not intended to be limiting, and in embodiments of the present invention, the resources and specifications of the first robotic device and the most comparable robotic device may differ from those described above.

[0049] Next, at 214, the self-developed resource program 150 attaches one or more resources printed by the 3D printer to the first robotic device in the multi-machine environment. The one or more resources are printed and attached based on the predicted modifications. Examples of resources attached to the first robotic device include, but are not limited to, mobility mechanisms (e.g., wheels attached to a base of the first robotic device to enable the first robotic device to move), counterweights (e.g., when the first robotic device topples over during digital twin simulation), grippers, and / or arms.

[0050] According to at least one embodiment, in the case where the predicted modification of the first robotic device can be to add the missing resources to the first robotic device, the 3D printer can print one or more missing resources. In this embodiment, the one or more missing resources can be additional accessories to be attached to the first robotic device. For example, in the case where robot A is the most comparable robotic device to the first robotic device and robot A has a base, an arm, and a gripper with wheels, and in the case where the first robotic device has a base and an arm without wheels (i.e., 2 common parts out of 4 parts), the 3D printer can print wheels and grippers for the base. According to at least one other embodiment, in the case where the predicted modification of the first robotic device can be to replace the insufficient resources of the first robotic device with the resources of the most comparable device, the 3D printer can print one or more replacement resources. In this embodiment, one or more replaced resources can be modified accessories to be attached to the first robotic device. For example, where robot A is the most comparable robotic device to the first robotic device and robot A has a base, an arm, and has a titanium gripper with a diameter of 6 inches, and where the first robotic device has a base, an arm, and has a plastic gripper with a diameter of 4 inches (i.e., 3 common parts out of 3 components), the 3D printer may print a titanium gripper with a diameter of 6 inches. In a multi-robotic environment, the 3D printer may be embedded in the first robotic device, or external to the first robotic device.

[0051] Once one or more resources are printed, in a multi-machine environment, the one or more resources can be attached to the first robotic device. According to at least one embodiment, at least one other robot in the multi-machine environment (i.e., a robot other than the first robotic device assigned to perform the activity) can attach the one or more resources to the first robotic device, such as when the first robotic device cannot attach the one or more resources to itself. According to at least one other embodiment, the first robotic device can attach the one or more resources to itself, such as when the first robotic device is able to attach the one or more resources to itself. For example, when the first robotic device already has a gripper or claw-shaped fixture prior to printing, the first robotic device may be able to attach the one or more resources to itself. It will be understood that the above examples are not intended to be limiting, and in embodiments of the present invention, the resources and specifications of the first robotic device and the most comparable robotic device may be different from the above resources and specifications.

[0052] Then, at 216, the self-developed resource program 150 implements an updated digital twin simulation of a modified version of the first robotic device with one or more resources that perform the activity. The updated digital twin simulation can verify the prediction made in step 212, and according to at least one embodiment, can be implemented before printing and attaching one or more resources. The updated digital twin simulation can perform the same range of motion as in the digital twin simulation. In response to determining that the modified version of the first robotic device is not able to complete each step of the activity without incident, the updated digital twin simulation can be iteratively executed using resources that are different from the predicted one or more resources. For example, in the case where the predicted modification of the first robotic device is a gripper with a 6-inch diameter, and in the case where the modified version of the first robotic device continues to drop and / or destroy objects in the updated digital twin simulation, the updated digital twin simulation can be iteratively executed using a gripper with a diameter greater than 6 inches. The prediction can be verified when the modified version of the first robotic device is able to complete each step of the activity without incident in the updated digital twin simulation.

[0053] Reference now Figure 3 , shows an exemplary diagram 300 depicting a robotic device before and after self-development of a resource in accordance with at least one embodiment. In diagram 300, a first robotic device 302 may be assigned to perform an activity in a multi-machine environment, and another robotic device 304 may perform a different activity. In response to determining that the first robotic device 302 cannot complete each step of the activity, the self-developed resource program 150 may predict a modified first robotic device 306 with one or more predicted resources. Figure 3 In the illustrated embodiment, the predicted resource may be an arm 308. The arm 308 may be printed by a 3D printer embedded in or external to the first robotic device 302, and may be attached to the modified first robotic device 306 by another robotic device 304 to form an arm that is now capable of completing the activity.

[0054] Understandably, Figure 2 and 3 Only an illustration of one implementation is provided and no limitation on how different embodiments may be implemented is implied.Many modifications may be made to the described environment based on design and implementation requirements.

[0055] The description of various embodiments of the present invention has been given for the purpose of illustration, but it is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the described embodiments. The terms used herein are selected to best explain the principles of the embodiments, practical applications, or technical improvements existing in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A computer-based method for self-developing resources in a multi-machine environment, the method comprising: receiving real-time data associated with an activity and a first robotic device assigned to perform the activity; creating, based on historical data related to the activity, an AI knowledge corpus of a second set of one or more robotic devices capable of performing the activity; implementing a digital twin simulation of a digital twin model of the first robotic device performing the activity; determining, based on the digital twin simulation, whether the first robotic device can complete each step of the activity without incident; in response to determining that the first robotic device is unable to complete each step of the activity without incident, identifying a robotic device within the second set of one or more robotic devices that is most comparable to the first robotic device; predicting a modification of the first robotic device based on one or more differences between the most comparable robotic device and the first robotic device; as well as Based on the predicted modifications, one or more resources printed by the 3D printer are attached to the first robotic device in the multi-machine environment.

2. The computer-based method of claim 1, further comprising: An updated digital twin simulation of a modified version of the first robotic device having the one or more resources to perform the activity is performed to verify the prediction.

3. The computer-based method of claim 2, wherein: Performing the updated digital twin simulation further includes: In response to determining that the modified version of the first robotic device is unable to complete each step of the activity without incident, iteratively executing the updated digital twin simulation utilizing different resources.

4. The computer-based method of claim 1, wherein: The 3D printer is embedded in the first robotic device.

5. The computer-based method of claim 1, wherein: The most comparable robotic device in the second set of one or more robotic devices is identified based on a greatest number of common components with the first robotic device.

6. The computer-based method of claim 1, wherein: The one or more resources printed by the 3D printer are one or more additional accessories attached to the first robotic device by at least one other robot in the multi-machine environment.

7. The computer-based method of claim 1, wherein: The resource attached to the first robotic device is selected from the group consisting of: a mobile mechanism, a counterweight, a gripper, and an arm.

8. A computer system, comprising: One or more processors, one or more computer-readable memories, one or more computer-readable tangible storage media, and program instructions stored on at least one of the one or more computer-readable tangible storage media for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing a method comprising: receiving real-time data associated with an activity and a first robotic device assigned to perform the activity; creating, based on historical data related to the activity, an AI knowledge corpus of a second set of one or more robotic devices capable of performing the activity; implementing a digital twin simulation of a digital twin model of the first robotic device performing the activity; determining, based on the digital twin simulation, whether the first robotic device can complete each step of the activity without incident; in response to determining that the first robotic device is unable to complete each step of the activity without incident, identifying a robotic device within the second set of one or more robotic devices that is most comparable to the first robotic device; predicting a modification of the first robotic device based on one or more differences between the most comparable robotic device and the first robotic device; and Based on the predicted modifications, one or more resources printed by the 3D printer are attached to the first robotic device in the multi-machine environment.

9. The computer system of claim 8, further comprising: An updated digital twin simulation of a modified version of the first robotic device having the one or more resources to perform the activity is performed to verify the prediction.

10. The computer system according to claim 9, wherein: Performing the updated digital twin simulation further includes: In response to determining that the modified version of the first robotic device is unable to complete each step of the activity without incident, iteratively executing the updated digital twin simulation utilizing different resources.

11. The computer system according to claim 8, wherein: The 3D printer is embedded in the first robotic device.

12. The computer system according to claim 8, wherein: The most comparable robotic device in the second set of one or more robotic devices is identified based on a greatest number of common components with the first robotic device.

13. The computer system according to claim 8, wherein: The one or more resources printed by the 3D printer are one or more additional accessories attached to the first robotic device by at least one other robot in the multi-machine environment.

14. The computer system according to claim 8, wherein: The resource attached to the first robotic device is selected from the group consisting of: a mobile mechanism, a counterweight, a gripper, and an arm.

15. A computer program product, the computer program product comprising: One or more computer-readable tangible storage media and program instructions stored on at least one of the one or more computer-readable tangible storage media, the program instructions being executable by a processor capable of performing a method comprising: receiving real-time data associated with an activity and a first robotic device assigned to perform the activity; creating, based on historical data related to the activity, an AI knowledge corpus of a second set of one or more robotic devices capable of performing the activity; implementing a digital twin simulation of a digital twin model of the first robotic device performing the activity; determining, based on the digital twin simulation, whether the first robotic device can complete each step of the activity without incident; in response to determining that the first robotic device is unable to complete each step of the activity without incident, identifying a robotic device within the second set of one or more robotic devices that is most comparable to the first robotic device; predicting a modification of the first robotic device based on one or more differences between the most comparable robotic device and the first robotic device; and Based on the predicted modifications, one or more resources printed by the 3D printer are attached to the first robotic device in the multi-machine environment.

16. The computer program product of claim 15, further comprising: An updated digital twin simulation of a modified version of the first robotic device having the one or more resources to perform the activity is performed to verify the prediction.

17. The computer program product of claim 16, wherein: Performing the updated digital twin simulation further includes: In response to determining that the modified version of the first robotic device is unable to complete each step of the activity without incident, iteratively executing the updated digital twin simulation utilizing different resources.

18. The computer program product of claim 15, wherein: The 3D printer is embedded in the first robotic device.

19. The computer program product of claim 15, wherein: The most comparable robotic device in the second set of one or more robotic devices is identified based on a greatest number of common components with the first robotic device.

20. The computer program product of claim 15, wherein: The one or more resources printed by the 3D printer are one or more additional accessories attached to the first robotic device by at least one other robot in the multi-machine environment.