Sign In to Follow Application
View All Documents & Correspondence

System And Method For Production Optimization Of Battery Packs In Multi Product Manufacturing

Abstract: A method and system for production optimization of battery packs is provided herein. The method and system comprise receiving data corresponding to parameters associated with battery pack types of the battery packs, mode of optimization, and available cells; and determining cell clusters for each battery pack type of the battery pack types, based on the data, through deterministic model. The each battery pack type of battery pack types includes cells. The method and system comprise computing overlapping matrix for each pair of the battery pack types based on the cell clusters. Computing the overlapping matrix includes identifying overlapping cells between the each pair of the pack types. The method and system comprise iteratively prioritizing the overlapping matrix based on the mode of optimization to optimize cell allocation for the each pair of the battery pack types, and rendering optimal clusters from the cell clusters based on the prioritized overlapping matrix.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
22 April 2024
Publication Number
43/2025
Publication Type
INA
Invention Field
PHYSICS
Status
Email
Parent Application

Applicants

Log 9 Materials Scientific Private Limited
# 9, Bellary Road, Off Jakkur Main Road, next to Aditya Birla Nuvo Ltd, Jakkur Layout, Byatarayanapura Bengaluru- 560092

Inventors

1. Suyash Inamdar
C-206 Dev City, Spine Road, Moshi Pune – 412105 Maharashtra
2. Reeti Sethi
38, Ramchandra Nagar, Airport Road, Indore – 452005 Madhya Pradesh
3. Kunika Gupta
C-189, 2nd Floor, Nirman Vihar, Delhi – 110092
4. Ashwin S Ramachandran
35 Adarsh Vista, Basavanagar Main Rd., Vibhutipura, Bangalore- 560037 Karnataka

Claims

1. A computer-implemented method for production optimization of a plurality of battery packs comprising: receiving data corresponding to a plurality of parameters associated with a plurality of battery pack types of the plurality of battery packs, a mode of optimization, and a number of available cells, wherein each battery pack type of the plurality of battery pack types comprises one or more cells; determining one or more cell clusters for the each battery pack type of the plurality of battery pack types, based on the data received, through a deterministic model; computing an overlapping matrix for each pair of the plurality of battery pack types based on the one or more cell clusters, wherein computing the overlapping matrix further comprises identifying overlapping cells between the each pair of the plurality battery pack types; iteratively prioritizing the overlapping matrix based on the mode of optimization to optimize cell allocation for the each pair of the plurality of battery pack types; and rendering optimal clusters from the one or more cell clusters based on the prioritized overlapping matrix.

2. The computer-implemented method of claim 1, wherein the plurality of parameters comprises a dimension, a list of cells, product requirement specifications (PRS), a fitness function, and a cluster size.

3. The computer-implemented method of claim 1, further comprising: rendering at least two modes of optimization to a user, wherein the at least two modes comprise a first mode, and a second mode; and in response to rendering, receiving an input from the user, for selecting one of the at least two modes of optimization.

4. The computer-implemented method of claim 3, further comprising: rendering at least two options comprising maximum number of battery packs and maximum cell utilization, to the user, in case the first mode is selected; and receiving a response for selecting one of the at least two options.

5. The computer-implemented method of claim 3, further comprising providing a control to the user to switch between the at least two modes.

6. The computer-implemented method of claim 3, wherein receiving the input comprises at least one of: obtaining a priority order of the plurality of battery pack types when the first mode is selected; or obtaining a demand of each of the plurality of battery pack types and the priority order of the plurality of battery pack types, when the second mode is selected.

7. The computer-implemented method of claim 3, further comprising: assigning weights to the plurality of battery pack types based on the input, and generating cell indices lists for the plurality of battery pack types, wherein an arrangement and ranking of the cell indices lists are determined based on the assigned weights.

8. The computer-implemented method of claim 3, wherein optimization values are determined for each of the overlap matrix based on the input.

9. The computer-implemented method of claim 3, further comprising generating an optimized production plan for the plurality of battery packs based on allocated cells and the mode of optimization, wherein: for generating the optimized production plan, a first order list comprising sum of the maximum battery packs and a second order list comprising sum of the maximum cell utilization are created in case the first mode is selected; and a target list and an internal distribution list are created in case the second mode is selected.

10. The computer-implemented method of claim 1, wherein optimizing the cell allocation further comprises: generating a database comprising unutilized cells; identifying similar cells corresponding to the overlapping cells from the unutilized cells within the database, wherein characteristics of each of the unutilized cells are analyzed based on characteristics of the overlapping cells to identify the similar cells; and performing at least one of: upon a successful identification of the similar cells, allocating the overlapping cells to a first battery pack type of the each pair of the plurality battery pack types and the similar cells to a second battery pack type of the each pair of the plurality battery pack types; or upon an unsuccessful identification of the similar cells, allocating the overlapping cells to the first battery pack type of the each pair of the plurality battery pack types, wherein the first battery pack type has a higher weight than the second battery type.

Specification

Description:TECHNICAL FIELD
The present disclosure is related to a method and a system for the production optimization of a plurality of battery packs through computational optimization and production planning.
BACKGROUND
Embodiments of the present disclosure generally relate to a method and a system for the production optimization of a plurality of battery packs.
In the modern digital age electric vehicles (EVs) are ubiquitous. The EVs are up and coming and they are a boon to the environment. Batteries are used to power the EVs, which obviates the need for using fossil fuels. In particular, Lithium-ion rechargeable batteries are used to power the EVs.
Batteries are crucial in energy storage applications, serving to store electricity for later use. Overall, batteries play a crucial role in modern energy systems by enabling the efficient use of renewable energy, improving grid stability, and supporting the electrification of transportation.
Further, battery packs play a pivotal role in the operation energy storage applications, making their production an indispensable aspect. However, conventional production planning methods often fall short in efficiently meeting the diverse demands of various energy storage models. This results in suboptimal utilization of valuable raw materials, leading to increased production costs and environmental impact.
The current production planning landscape in the energy storage industry faces several significant challenges. Firstly, traditional methods fail to harness the economies of scale that could be achieved through a more holistic approach. This leads to inefficiencies, including underutilized raw materials and increased manufacturing costs.
Secondly, the lack of adaptability to changing production requirements and the absence of a comprehensive algorithm capable of accommodating diverse product lines hinder the industry's ability to respond effectively to market demands.
Consequently, there exists a need for a more comprehensive algorithmic solution capable of addressing these multifaceted challenges by considering multiple product lines and optimizing production either according to specific targets or for overall operational efficiency.
Thus, the present invention endeavors to fill these shortcomings.
SUMMARY
The following embodiments present a simplified summary in order to provide a basic understanding of some aspects of the disclosed invention. This summary is not an extensive overview, and it is not intended to identify key/critical elements or to delineate the scope thereof. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.
Some example embodiments disclosed herein provide a method for production optimization of a plurality of battery packs. The method may also include receiving data corresponding to a plurality of parameters associated with a plurality of battery pack types of the plurality of battery packs, a mode of optimization, and available cells. Each battery pack type of the plurality of battery pack types includes one or more cells. The method may include determining one or more cell clusters for the each battery pack type of the plurality of battery pack types, based on the data received, through a deterministic model. The method may further include computing an overlapping matrix for each pair of the plurality of battery pack types based on the one or more cell clusters. Further, computing the overlapping matrix further includes identifying overlapping cells between the each pair of the plurality battery pack types. The method may also include iteratively prioritizing the overlapping matrix based on the mode of optimization to optimize cell allocation for the each pair of the plurality of battery pack types. The method may include rendering optimal clusters from the one or more cell clusters to be produced based on the prioritized overlapping matrix.
Some example embodiments disclosed herein provide a computer system for the production optimization of a plurality of battery packs, the computer system comprises one or more computer processors, one or more computer readable memories, one or more computer readable storage devices, and program instructions stored on the one or more computer readable storage devices for execution by the one or more computer processors via the one or more computer readable memories, the program instructions comprising receiving data corresponding to a plurality of parameters associated with a plurality of battery pack types of the plurality of battery packs, a mode of optimization, and available cells. Each battery pack type of the plurality of battery pack types may include one or more cells The one or more processors are further configured for determining one or more cell clusters for the each battery pack type of the plurality of battery pack types, based on the data received, through a deterministic model. The one or more processors are configured for computing an overlapping matrix for each pair of the plurality of battery pack types based on the one or more cell clusters. The one or more processors are further configured for identifying overlapping cells between the each pair of the plurality battery pack types to compute the overlapping matrix. The one or more processors are further configured for iteratively prioritizing the overlapping matrix based on the mode of optimization to optimize cell allocation for the each pair of the plurality of battery pack types. The one or more processors are configured for rendering optimal clusters from the one or more cell clusters to be produced based on the prioritized overlapping matrix.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
BRIEF DESCRIPTION OF DRAWINGS
The above and still further example embodiments of the present disclosure will become apparent upon consideration of the following detailed description of embodiments thereof, especially when taken in conjunction with the accompanying drawings, and wherein:
FIGS. 1A-1B illustrate a perspective view and an exploded perspective view of a battery case of an Electric Vehicle (EV), respectively, in accordance with an example embodiment.
FIG. 2 illustrates a block diagram of a system in a network environment for the production optimization of battery packs, in accordance with an example embodiment.
FIG. 3 illustrates a block diagram of various modules within a memory of an optimization device configured for production optimization of battery packs, in accordance with an example embodiment.
FIG. 4 illustrates a flowchart of a method for production optimization of battery packs, in accordance with an example embodiment.
FIG. 5 illustrates a flowchart of a method of rendering modes of optimization to users, in accordance with an example embodiment.
FIG. 6 illustrates a flowchart of a method of optimizing cell allocation, in accordance with an example embodiment.
FIG. 7 illustrates a control logic for production optimization of battery packs, in accordance with an example embodiment.
FIG. 8 illustrates a flowchart of a method for a target-based optimization of battery packs, in accordance with an example embodiment.
FIG. 9 illustrates a flowchart of a method for a general optimization of battery packs, in accordance with an example embodiment.
FIGS. 10A-10B illustrate example visual representations of overlapping matrices, in accordance with an example embodiment.
The figures illustrate embodiments of the invention for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles of the invention described herein.
DETAILED DESCRIPTION
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be apparent, however, to one skilled in the art that the present disclosure may be practiced without these specific details. In other instances, systems, apparatuses, and methods are shown in block diagram form only in order to avoid obscuring the present invention.
Reference in this specification to “one embodiment” or “an embodiment” or “example embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. The appearance of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Further, the terms “a” and “an” herein do not denote a limitation of quantity, but rather denote the presence of at least one of the referenced items. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not for other embodiments.
Some embodiments of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all, embodiments of the invention are shown. Indeed, various embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like reference numerals refer to like elements throughout.
The terms “comprise”, “comprising”, “includes”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device, or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or method.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., are non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, non-volatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
The embodiments are described herein for illustrative purposes and are subject to many variations. It is understood that various omissions and substitutions of equivalents are contemplated as circumstances may suggest or render expedient but are intended to cover the application or implementation without departing from the spirit or the scope of the present invention. Further, it is to be understood that the phraseology and terminology employed herein are for the purpose of the description and should not be regarded as limiting. Any heading utilized within this description is for convenience only and has no legal or limiting effect.
The term “module” used herein may refer to a hardware processor including a Central Processing Unit (CPU), an Application-Specific Integrated Circuit (ASIC), an Application-Specific Instruction-Set Processor (ASIP), a Graphics Processing Unit (GPU), a Physics Processing Unit (PPU), a Digital Signal Processor (DSP), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a Controller, a Microcontroller unit, a Processor, a Microprocessor, an ARM, or the like, or any combination thereof.
The term “branch of code” is a specific section or segment of computer program instructions that operates concurrently or simultaneously on a set of products, where number of products, denoted as "m", is a predetermined value provided as a part of a program's input or configuration. In essence, this means that the branch of code is designed to execute parallel processes on multiple products, ensuring efficient and concurrent handling of tasks or operations.
The term “order of priority” refers to a predetermined sequence or ranking of products based on their importance or preference, which guides allocation of resources and production efforts. It determines which products should receive greater emphasis or priority while making decisions related to resource allocation, manufacturing schedules, and meeting production targets.
The term “algorithmic iteration (a run)” is a single execution of an algorithm where cells are sorted in one dimension while keeping all other dimensions fixed, optimizing based on multi-dimensional criteria. For example, if there are n dimensions then (n-1) dimensions are kept fixed. In a scenario where a product is defined by "4" dimensions, a specific operation is conducted during a single execution. This operation involves a formation of clusters within just “1” of the “4” dimensions, while concurrently examining all possible combinations of the single dimension with other three dimensions.
The term “overlap matrices or overlapping matrices” refers to structured data tables that typically include two distinct products. A product with a higher demand and a designated order of priority is listed in a column, while another product is presented in a row.
Embodiments of the present disclosure may provide a method, a system, and a computer program product for production optimization of a plurality of battery packs. The method, the system, and the computer program product for production optimization of a plurality of battery packs are described with reference to FIG.1 to FIG. 10 as detailed below.
Accordingly, the present disclosure provides a method, system, or computer program product for production optimization of a plurality of battery packs.
FIGS. 1A-1B illustrate a perspective view and an exploded perspective view of a battery case 100 of an Electric Vehicle (EV), respectively, in accordance with an embodiment of the present disclosure. The battery case 100 as illustrated in FIG. 1A is an assembled case with multiple cells arranged therein. The assembled battery case 100 may be utilized for powering an electric vehicle (EV) (not shown).
The battery case 100 includes a battery housing 102 that may be open on sides and may house the cells therein. Further, the battery case 100 includes a first lid 104 and a second lid to seal the battery housing 102 once the cells are arranged therein. The battery case 100 further includes first and second terminals 106 and 108 that facilitate electrical connection of the battery case 100 with the EV (e.g., electric motors of the EV). In an embodiment, the first and second terminals 106 and 108 correspond to positive and negative terminals of the battery case 100, respectively. In another embodiment, the first and second terminals 106 and 108 correspond to negative and positive terminals of the battery case 100, respectively.
A control system (not shown) of the EV may be connected to various components (e.g., a battery management system) housed inside the battery housing 102 to receive information regarding various parameters (e.g., a state-of-charge) of the cells. The battery case 100 further includes a wire opening 110 that facilitates passage of wires connecting the control system and the battery management system.
FIG. 1A illustrates various components of the battery case 100 which are not labelled so as to not obscure the description of FIG. 1A. These components are explained in detail in conjunction with subsequent figures.
As illustrated in FIG. 1B, the battery housing 102 of the battery case 100 houses a battery pack 112 (e.g., an arrangement of cells) and the battery management system (hereinafter designated as the “battery management system 114”) that is configured to manage (e.g., monitor and control) the cells of the battery pack 112. Further, the battery housing 102 is open on the sides and is sealed using the first lid 104 and the second lid (hereinafter designated as the “second lid 116”). In an embodiment, the first and second lids 104 and 116 are made of aluminium, aluminium alloy, steel, stainless steel, or any other appropriate material as known in the art.
The battery case 100 further includes first and second insulation sheets 118 and 120 and first and second gaskets 122 and 124. The first and second insulation sheets 118 and 120 are made of mica, Teflon, rubber, plastic, polyvinyl chloride (PVC), glass, ceramic, porcelain, or any other appropriate material having insulation properties. Further, the first and second gaskets 122 and 124 are made of fibre, asbestos, cork, graphite, thermoplastic, or any other suitable sealing material known in the art.
The first insulation sheet 118 and the first gasket 122 may be disposed between the battery housing 102 and the first lid 104 such that when the first lid 104 is sealed, the first gasket 122 is in contact with the first lid 104, the first insulation sheet 118 is in contact with the battery housing 102, and the first insulation sheet 118 and the first gasket 122 are in contact with each other. The first insulation sheet 118 provides insulation to the battery pack 112 from the first lid 104 (e.g., terminals of the cells in the battery pack 112 extending on one side of the battery pack 112). Further, the first gasket 122 ensures that when the first lid 104 is shut, the battery pack 112 is completely sealed from one side. Similarly, the second insulation sheet 120 and the second gasket 124 may be disposed between the battery housing 102 and the second lid 116 such that when the second lid 116 is sealed, the second gasket 124 is in contact with the second lid 116, the second insulation sheet 120 is in contact with the battery housing 102, and the second insulation sheet 120 and the second gasket 124 are in contact with each other. The second insulation sheet 120 provides insulation to the battery pack 112 from the second lid 116 (e.g., terminals of the cells in the battery pack 112 extending on the other side of the battery pack 112). Further, the second gasket 124 ensures that when the second lid 116 is shut, the battery pack 112 is completely sealed from the other side. The first and second lids 104 and 116 are secured on the battery housing 102 by way first and second pluralities of screws 126 and 128, respectively. Although it described that the screws are used to secure the first and second lids 104 and 116 on the battery housing 102, the scope of the present disclosure is not limited to it. In other embodiments, a pin, a rivet, a stud, or any other appropriate arrangement known in the art, may be utilized, without deviating from the scope of the present disclosure.
FIG. 2 illustrates a block diagram of a system 200 in a network environment for production optimization of battery packs (for example the battery pack 112), in accordance with an example embodiment. FIG. 2 is explained in conjunction with FIGS. 1A-1B. The system 200 may include an optimization device 202 capable for production optimization of a plurality of battery packs. The optimization device 202 optimizes production of the plurality of battery packs for a plurality of battery pack types or multiple types of Electric Vehicles (EVs). The optimization device 202 may employ a brute-force to calculate maximum number of optimal battery packs that may be produced for each product type (i.e., a battery pack type or a type of EV), considering one or more parameters, for example, but not limited to, raw material constraints, minimum disbalancing, weight of each cell and number of available cells etc.. The brute-force involves exhaustively examining all possible options or combinations to determine the most optimal solution. In this context, it means that the brute-force technique helps thoroughly explore various production scenarios to identify the maximum number of ideal battery packs that may be manufactured for each battery pack type or the each type of EV.
Examples of the optimization device 202 may include, but are not limited to, a server, a cloud, a desktop, a laptop, a notebook, a netbook, a tablet, a smartphone, a mobile phone, or any other computing device. To optimize the production of the plurality of battery packs, the optimization device 202 may categorize its optimization processes into one or more categories –such as a target-based optimization and a general optimization . In the target-based optimization, the optimization device 202 is geared towards achieving one or more production targets. The optimization device 202 aims to determine how many optimal battery packs are to be produced to meet predefined one or more production targets. For instance, if the predefined one or more production targets is to manufacture a certain number of battery packs for a particular EV, the optimization device 202 calculates the most efficient way to achieve the certain number of battery packs while adhering to the one or more parameters.
In the general optimization category, the optimization device 202 seeks to identify the maximum number of battery packs that are to be produced while adhering to the one or more parameters. This aspect of the optimization device 202 is more exploratory in nature and aims to uncover opportunities for optimizing production efficiency without predefined one or more production targets. In short, the optimization device 202 is a tool for manufacturers in EV industry. The optimization device 202 leverages brute-force techniques to comprehensively evaluate one or more production possibilities while adhering to the one or more parameters. The optimization device 202 provides flexibility for both target-based and general optimization categories, enabling manufacturers to make informed decisions and maximize their battery pack production efficiency with quality.
The optimization device 202 may include one or more processors and a memory (not shown in FIG.2). The memory may store processor-executable instructions that, when executed by the one or more processors, cause the one or more processors to optimize production of the plurality of battery packs. Various operations may be performed by the one or more processors to optimize production of the plurality of battery packs, including, receiving data corresponding to a plurality of parameters, determining one or more cell clusters, computing an overlapping matrix, identifying overlapping cells, prioritizing the overlapping matrix, rendering optimal clusters, rendering modes of optimization, receiving an input, and the like, as will be described in greater detail in conjunction with FIG. 3 to FIG. 10.
The memory may also store various data (for example, parameters associated with the plurality of battery pack types, available cells, assigned weights, priority order of the plurality of battery pack types, a demand of each of the plurality of battery pack types, and the like) that may be captured, processed, and/or required by the system 200. The memory may be a non-volatile memory (e.g., flash memory, Read Only Memory (ROM), Programmable ROM (PROM), Erasable PROM (EPROM), Electrically EPROM (EEPROM) memory, etc.) or a volatile memory (e.g., Dynamic Random Access Memory (DRAM), Static Random-Access memory (SRAM), etc.). The optimization device 202 is explained further in detail in conjunction with FIG. 3.
Further, the optimization device 202 may interact with a server 204 and/or external device(s) 206 via a communication network 208 for sending and receiving various data. The communication network 208, for example, may be any wired or wireless communication network and the examples may include, but may be not limited to, the Internet, Wireless Local Area Network (WLAN), Wi-Fi, Long Term Evolution (LTE), Worldwide Interoperability for Microwave Access (WiMAX), and General Packet Radio Service (GPRS).
By way of an example, in some embodiments, the optimization device 202 may receive information (for example, a dimension, a list of cells, product requirement specifications (PRS), a fitness function, and a cluster size, the selected mode of optimization, and/or the number of available cells and the like) from the server 204 or the external device(s) 206. By way of another example, in some embodiments, the optimization device 202 may send information (for example, modes of optimization, options including maximum number of battery packs and/or maximum cell utilization, optimal clusters, optimized production plan and the like) to the server 204 and/or the external device(s) 206. The server 204 may further include a database, which may store information. Further, the external device(s) 206 may include, but may not be limited to a desktop, a laptop, a notebook, a netbook, a tablet, a smartphone, a remote server, a mobile phone, a smartwatch, another computing system/device, or any computing device.
Further, embodiments of the invention relate to servers and systems for providing services over a network. The servers may include one or more processors, memory, storage devices, and network interfaces. The servers may be configured to execute instructions stored in memory to perform various functions, such as processing requests from client devices, storing and retrieving data, and managing network communications. The servers may be implemented using hardware, software, or a combination thereof, and may be distributed across multiple physical or virtual machines. The servers may be used to provide various services, such as web hosting, cloud computing, data storage, and application hosting, among others. The servers may be scalable and configurable to meet the needs of different applications and users.
FIG. 3 illustrates a block diagram 300 of various modules of the optimization device 202 configured to optimize the production of the plurality of battery packs, in accordance with an example embodiment. FIG. 3 is explained in conjunction with FIGs. 1-2. The optimization device 202 may include a processor 302 and a memory 304 communicatively coupled to the processor 302 via a communication bus 306. The processor 302, and the memory 304 may communicate with each other via the communication bus 306. The memory 304 may store processor instructions. The processor instructions, when executed by the processor 302, may cause the processor 302 to implement one or more embodiments of the present disclosure. The memory 304 may include a receiving module 308, a clustering module 310, a computation module 312, a prioritization module 314, and a rendering module 316.
The term “processor” used herein may refer to a hardware processor including a Central Processing Unit (CPU), an Application-Specific Integrated Circuit (ASIC), an Application-Specific Instruction-Set Processor (ASIP), a Graphics Processing Unit (GPU), a Physics Processing Unit (PPU), a Digital Signal Processor (DSP), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a Controller, a Microcontroller unit, a Processor, a Microprocessor, an ARM, or the like, or any combination thereof.
The processor 302 of the optimization device 102 may be embodied in a number of different ways. For example, the processor 302 may be embodied as one or more of various hardware processing means such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing element with or without an accompanying DSP, or various other processing circuitry including integrated circuits such as, for example, an ASIC (application specific integrated circuit), an FPGA (field programmable gate array), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, or the like. As such, in some embodiments, the processor 302 may include one or more processing cores configured to perform independently. A multi-core processor may enable multiprocessing within a single physical package. Additionally, or alternatively, the processor 302 may include one or more processors configured in tandem via the bus to enable independent execution of instructions, pipelining and/or multithreading.
Additionally, or alternatively, the processor 302 may include one or more processors capable of processing large volumes of workloads and operations to provide support for big data analysis. In an example embodiment, the processor 302 may be in communication with the memory 304 via the communication bus 306 for passing information among components of the optimization device 102.
The term “memory” used herein may refer to any computer-readable storage medium, for example, volatile memory, random access memory (RAM), non-volatile memory, read only memory (ROM), or flash memory. The memory may include a Random-Access Memory (RAM), a Read-Only Memory (ROM), a Complementary Metal Oxide Semiconductor Memory (CMOS), a magnetic surface memory, a Hard Disk Drive (HDD), a floppy disk, a magnetic tape, a disc (CD-ROM, DVD-ROM, etc.), a USB Flash Drive (UFD), or the like, or any combination thereof.
The memory 304 may be non-transitory and may include, for example, one or more volatile and/or non-volatile memories. In other words, for example, the memory 304 may be an electronic storage device (for example, a computer readable storage medium) comprising gates configured to store data (for example, bits) that may be retrievable by a machine (for example, a computing device like the processor 302). The memory 304 may be configured to store information, data, contents, applications, instructions, or the like, for enabling the apparatus to carry out various functions in accordance with an example embodiment of the present disclosure.
The receiving module 308 in conjunction with the processor may be configured to receive data corresponding to a plurality of parameters associated with a plurality of battery pack types of a plurality of battery packs, a mode of optimization, and/or a number of available cells. It should be noted that each battery pack type of the plurality of battery pack types may include one or more cells. Also, it should be noted that the plurality of battery pack types is associated with multiple products and the multiple products correspond to energy storage solutions. The plurality of parameters may include a dimension, a list of cells, product requirement specifications (PRS), a fitness function, and a cluster size. The dimension refers to physical or geometric characteristics of a battery pack, such as size, shape, and volume. The list of cells encompasses information about individual battery cells that may be used in manufacturing. Each cell has specific attributes like capacity, voltage, and size. The PRS outlines specific requirements and standards that the plurality of battery packs must meet. The PRS may include criteria like energy density, cycle life, safety standards, or any suitable information.
The fitness function is a mathematical or algorithmic formula that evaluates quality or efficiency of a particular battery pack configuration. The fitness function is used to measure how well a set of parameters meets the specified requirements. The cluster size defines how cells are grouped or clustered together within a battery pack. The cluster size may impact performance and characteristics of a final product.
Further, the rendering module 316 in conjunction with the processor may render at least two modes of optimization to a user. The at least two modes may include a first mode, and a second mode. The first mode may correspond to a general optimization mode and the second mode may correspond to a target-based optimization mode. The receiving module 308 may further receive an input from the user, for selecting one of the at least two modes of optimization. In case the user has selected the general optimization mode, the rendering module 316 may render at least two options including maximum number of battery packs and maximum cell utilization, to the user, and the receiving module 308 may receive a response for selecting one of the at least two options. In one embodiment, the user may select the maximum number of battery packs and a corresponding response may be received. In another embodiment, the user may select the maximum cell utilization and a corresponding response may be received. In case the user has selected the target-based mode, the rendering module 316 may render options based on goals. Further, in the target-based mode of optimization goal is to achieve a specific target or outcome. The optimization algorithm is guided by the desired target, and its objective is to find a solution that meets or exceeds this target. The algorithm may adjust its search strategy based on the proximity to the target, focusing more on exploring areas of the search space that are likely to lead to the desired outcome.
It should be noted that the user may be provided a control to switch between the at least two modes. For example, the user may switch from the general optimization mode to the target-based optimization mode or vice versa. In some embodiments, the receiving module 308 may obtain a priority order of the plurality of battery pack types when the general optimization mode is selected. In some other embodiments, the receiving module 308 may obtain a demand of each of the plurality of battery pack types and the priority order of the plurality of battery pack types, when the target-based optimization mode is selected.
The memory 304 may also include an assignment module (not shown in FIG. 3). The assignment module may assign weights to the plurality of battery pack types based on the input. By way an example, when the general optimization mode is selected, the weights may be assigned to the plurality of battery pack types based on the obtained priority order of the plurality of battery pack types. By way of another example, when the target-based optimization mode is selected, the weights may be assigned to the plurality of battery pack types based on the obtained demand of each of the plurality of battery pack types and the priority order of the plurality of battery pack types.
The clustering module 310 in conjunction with the processor 302 may be configured to determine one or more cell clusters for the each battery pack type of the plurality of battery pack types, based on the data received, through a deterministic model. In some embodiments, to determine one or more cell clusters, cell indices lists are generated for the plurality of battery pack types. An arrangement and ranking of the cell indices lists are determined based on the assigned weights. It should be noted that the deterministic model uses a brute-force. The clustering module 310 may be operatively coupled to the computation module 312.
Further, the computation module 312 in conjunction with the processor 302 may be configured for computing an overlapping matrix for each pair of the plurality of battery pack types based on the one or more cell clusters. In some embodiments, overlapping cells between the each pair of the plurality battery pack types may be identified. It should be noted that optimum values may be determined, for each of the overlap matrices based on the input. The computation module 312 may be communicatively coupled to the prioritization module 314.
The prioritization module 314 in conjunction with the processor 302 may iteratively prioritize the overlapping matrix based on the mode of optimization to optimize cell allocation for the each pair of the plurality of battery pack types. In some embodiments, a database including unutilized cells may be generated. Further, similar cells corresponding to the overlapping cells may be identified from the unutilized cells within the database. It should be noted that characteristics of each of the unutilized cells are analysed based on characteristics of the overlapping cells to identify the similar cells. Further, in some embodiments, upon a successful identification of the similar cells, the overlapping cells may be allocated to a first battery pack type of the each pair of the plurality battery pack types and the similar cells may be allocated to a second battery pack type of the each pair of the plurality battery pack types. In this case, the first battery pack type has a higher weight than the second battery type. Alternatively, upon an unsuccessful identification of the similar cells, the overlapping cells may be allocated to the first battery pack type of the each pair of the plurality battery pack types. It should be noted that a battery pack with higher priority (in case of the first mode (general optimization mode)) and with higher priority and greater demand (in the case of target-based optimization mode) may be prioritized for assigning the overlapping cells. The prioritization module 314 may be communicatively coupled to the rendering module 316.
The rendering module 316 further in conjunction with the processor 302 may render optimal clusters from the one or more cell clusters based on the prioritized overlapping matrix. Further, in some embodiments, an optimized production plan may be generated for the plurality of battery packs based on the allocated cells and the mode of optimization. When the general optimization mode is selected, for generating the optimized production plan, a first order list including sum of the maximum battery packs and a second order list including sum of the maximum cell utilization are created. Further, when the target-based optimization mode is selected, for generating the optimized production plan, a target list and an internal distribution list are created.
The brute-force uses nested loops to iterate through different parameters and dimensions to fetch optimum solution. In an embodiment, the parameters include but not limited to number of dimensions, list of cells, product requirement specifications, fitness function, and cluster size. For example, it iterates over the dimensions, clusters, and cells, creating a nested structure for exploration to fetch the optimum solution. Further, within these nested loops, various combinations of cells, clusters, and dimensions may be explored exhaustively. Further, combinations may be generated systematically, ensuring that it examines all possible combinations within the defined parameters. Additionally, a scaling factor or divisor that determines granularity or incremental step size for adjusting the sorting criteria within a specified limit. A fitness function may be employed to evaluate and score each combination based on how well it aligns with the product requirements across all dimensions. The fitness function quantifies the fitness of a combination, allowing comparison and selection of the best combinations. The brute force method operates in iterative levels, where it first explores combinations at one level. Further, it proceeds to the next level to find the second-best combination for the remaining cells, repeating the process. This iterative approach ensures that it explores different combinations systematically.
In an embodiment, the system 200 and the associated optimization device 202 offers a target-based optimization mode, enabling users to set specific production demand targets for each product. This feature facilitates quick adaptation to changing demand patterns. Should production demand increase or decrease, the algorithm can be updated with these new targets, ensuring production planning aligns with evolving needs. If production demand for a product increase or decrease, the system 200 and the associated optimization device 202 may be fed with the changing demand as input and accordingly by modifying these targets.
The system 200 and the associated optimization device 202, when new product types are introduced, may be adapted to include these new products in the optimization process. The users may provide input details of the new products, such as its name, number of cells required, cell sorting criteria, etc. The system 200 and the associated optimization device 202 may then incorporate these new products into the production planning alongside existing ones.
Further, the system 200 and the associated optimization device 202 provides scalability. The optimization equation, designed for n number of products, may effortlessly adapt to manufacturing scenarios with varying product counts. Whether product types increase or decrease, the system 200 and the associated optimization device 202 remains versatile, requiring minimal modification. Additionally, the system 200 and the associated optimization device 202 efficiently handles large datasets, processing substantial cell volumes within a short timeframe. Additionally, the introduction of new product types, the system 200 and the associated optimization device 202 ensures accuracy by updating the degree of overlapping matrix to reflect relationships between the new and existing products. This guarantees that shared resource dependencies are considered with precision, enhancing the reliability of production planning.
Moreover, the system 200 and the associated optimization device 202 provides a mode switching capability, which offers flexibility in choosing between the target-based and the general optimization modes. This adaptability caters to evolving manufacturing scenarios, allowing users to select the mode that best aligns with their current production requirements. Whether focusing on specific targets or general optimization, the algorithm provides the versatility needed for efficient production planning.
FIG. 4 illustrates a flowchart of a method 400 for production optimization of the battery packs, in accordance with an example embodiment. FIG. 4 is explained in conjunction with FIGs. 1-3. Each step of the flowchart is performed by an optimization device (such as the optimization device 202).
At step 402, data corresponding to a plurality of parameters associated with a plurality of battery pack types of the plurality of battery packs, a mode of optimization, and a number of available cells may be received. This step may be performed by a receiving module (such as the receiving module 308). The plurality of battery pack types may be associated with multiple products, and the multiple products may correspond to energy storage systems. The plurality of parameters may include a dimension, a list of cells, product requirement specifications (PRS), a fitness function, and a cluster size. It should be noted that each battery pack type of the plurality of battery pack types may include one or more cells.
At step 404, one or more cell clusters may be determined for the each battery pack type of the plurality of battery pack types, based on the data received through a clustering module (such as the clustering module 310). A deterministic model may be used to perform this step. The deterministic model may use a brute-force.
The brute-force technique is a straightforward and exhaustive approach that checks all possible solutions to a problem to find the best one. In this context, all possible combinations and configurations of cell clusters may be considered for each battery pack type to find the optimal clustering solution. For example, consider three types of battery packs A, B, and C. For each battery pack type, there are multiple parameters related to cell characteristics, such as capacity, voltage, and temperature. The brute-force technique may involve trying every possible combination of cells for each type to determine the best clusters. It might consider all possible permutations and combinations to find the optimal cell clusters that maximize performance or efficiency.
At step 406, an overlapping matrix may be computed for each pair of the plurality of battery pack types based on the one or more cell clusters. This is further explained and illustrated in conjunction with FIGs. 10A-10B. This step may be performed using a computation module (such as the computation module 312). The step 406 may include a sub-step 406a. At step 406a, overlapping cells between the each pair of the plurality battery pack types may be identified.
By way of an example, consider manufacturing of three different types of battery packs - type A, type B, and type C. Each battery pack may include individual cells. The type A battery pack may include cells with unique identifiers [1, 2, 3, 4, 5], the type B battery pack may include cells with unique identifiers [3, 4, 5, 6, 7], and the type C battery pack may include cells with unique identifiers [5, 6, 7, 8, 9]. In this example, the overlapping cells between the type A and type B are [3, 4, 5], the overlapping cells between the type A and the type C is [5], overlapping cells between the type B and the type C are [5, 6, 7].
At step 408, the overlapping matrix may be iteratively prioritized based on the mode of optimization to optimize cell allocation for the each pair of the plurality of battery pack types. This step may be performed by a prioritization module (similar to the prioritization module 314). At step 410, optimal clusters from the one or more cell clusters may be rendered based on the prioritized overlapping matrix. This step may be performed by a rendering module (like the rendering module 316).
In some embodiments, an optimized production plan for the plurality of battery packs may be generated based on allocated cells and the mode of optimization. Further, in one embodiment, for generating the optimized production plan, a first order list comprising sum of the maximum battery packs and a second order list comprising sum of the maximum cell utilization are created when the first mode is selected wherein the first mode is the general mode. In another embodiment, for generating the optimized production plan, a target list and an internal distribution list are created when the second mode is selected wherein the second mode is the target based optimization mode.
FIG. 5 illustrates a flowchart of a method 500 of rendering modes of optimization to users, in accordance with an example embodiment. FIG. 5 is explained in conjunction with FIGs. 1-4. Each step of the flowchart may be performed by an optimization device (such as the optimization device 202).
At step 502, at least two modes of optimization may be rendered to a user. This step may be performed using a rendering module (such as the rendering module 316). The at least two modes may include a first mode, and a second mode. The first mode may correspond to a general optimization mode and the second mode may correspond to a target-based optimization mode.
In the general optimization mode, a degree of overlapping may be used for optimization, without trying to meet any specific demand targets.
In the target-based mode, the user may specify a number of battery packs desired to be manufactured for each product type/battery pack type/EV type. Further, in some embodiments, it may be tried to meet these specified targets while considering a degree of overlapping and minimize an objective function “T”. In context of the target-based optimization mode, a general equation for “n” number of battery packs may be given as:
T = |min(?_(i =1)^n(P_(i_demand ) - P_(i_(Algorithm Output) ))|
Where, “P” stands for a type of product (for example, product 1, product 2 etc), Pidemand is user-specified demand (i.e. no. of battery pack types) for battery pack types type “i”, and PiAlgorithm Output is an output generated for product type “i”. Further, the objective function “T” may be formulated as:
T_optimisation=min(?_(i=1)^nwi(|P_idemand-P_iAlgorithm Output|)+?O)
Where, “O” represent a degree of overlapping, “wi” is weight assigned to each product type “i”, which allows prioritization of certain product types over others. Further, Pidemand and PiAlgorithm Output represent the user-specified demand and the output for each product type “i”, respectively. “?” is a regularization parameter that controls importance of minimizing the degree of overlapping relative to meeting the product demands. Further summation of i= 1 to n is sum aggregating weighted differences across all product types. “Pidemand” - PiAlgorithm Output, this term calculates an absolute difference between the user-specified demand and algorithm's output for each product type “i”.
The degree of overlapping may be a quantitative metric that represents an extent to which cells used in the production of one type of battery pack overlap with those used in another type of battery pack. Specifically, this metric is formulated within a matrix structure where each cell Mij in the matrix represents number of overlapping battery cells between a product “i” and a product “j”.
In operational terms, the degree of overlapping matrix helps in identifying shared cells dependencies between different product lines. Lower the degree of overlapping between two products, the more independently they may be produced, allowing for more efficient allocation of the cells. In an alternative approach to define the degree of overlapping, instead of considering pairwise overlapping between two individual products through a matrix, clusters may be defined for each product separately and determine the degree of overlapping between these clusters.
For each product, clusters may be created based on its specific requirements and constraints. These clusters represent sets of cells that meet the product's criteria while keeping (n-1) dimensions constant and traversing only one dimension. Further, within each run of the algorithm, the clusters form bins. The bins are sets of cells that meet the product requirements, including constraints and criteria for one or more parameters. Further, the degree of overlapping between clusters formed for different products may be calculated. For example, a degree of overlapping between a cluster “A” (from a product A) and a cluster “B” (from product B) is O_AB. Consider clusters as groups of cells that are formed within each product's specific requirements and constraints. These clusters represent how cells may be grouped efficiently for each product independently. Further, the degree of overlapping between these clusters may be analysed when producing different products, following cell replacement logic.
By way of an example, consider “n” number of products. To analyse the degree of overlapping between clusters of these products, group the “n” products into clusters. Each cluster may include one or more products. For example, the clusters may be C1, C2, ..., Ck, where “k” is the number of clusters.
At step 504, an input may be received from the user, in response to rendering, for selecting one of the at least two modes of optimization through a receiving module (such as the receiving module308). By way of an example, in an embodiment, the general mode may be selected. At step 506a, when the first mode (i.e., the general optimization mode) is selected, a priority order of the plurality of battery pack types may be obtained. By way of another example, in an embodiment, the target-based optimization mode may be selected. At step 506b, when the second mode (the target-based mode) is selected, a demand of each of the plurality of battery pack types and the priority order of the plurality of battery pack types may be obtained.
At step 508, weights may be assigned to the plurality of battery pack types based on the input. For example, in one embodiment, when the first mode (general optimization mode) is selected, the weights may be assigned to the plurality of battery pack types based on the priority order of the plurality of battery pack types. For example, in another embodiment, when the second mode (target-based optimization mode) is selected, the weights may be assigned to the plurality of battery pack types based on demand of each of the plurality of battery pack types and the priority order of the plurality of battery pack types.
FIG. 6 illustrates a flowchart of a method 600 of optimizing cell allocation, in accordance with an example embodiment. FIG. 6 is explained in conjunction with FIGs. 1-5. Each step of the flowchart may be performed by the optimization device.
At step 602, a database may be generated. The database may correspond to a temporary database. The database may include unutilized cells. Thereafter, at step 604, similar cells corresponding to the overlapping cells may be identified from the unutilized cells within the database. It should be noted that characteristics of each of the unutilized cells are analysed based on characteristics of the overlapping cells to identify the similar cells. The characteristics include but not limited to capacity, voltage, and temperature.
At step 606, it may be checks if the similar cells are identified. In case of successful identification of the similar cells, the overlapping cells may be allocated to a first battery pack type of the each pair of the plurality battery pack types and the similar cells may be allocated to a second battery pack type of the each pair of the plurality battery pack types, at step 608a. It should be noted that the first battery pack type has a higher weight than the second battery type. Alternatively, in case of an unsuccessful identification of the similar cells, the overlapping cells may be allocated to the first battery pack type of the each pair of the plurality battery pack types, at step 608b.
FIG. 7 illustrates a control logic 700 for production optimization of battery packs, in accordance with an example embodiment. FIG. 7 is explained in conjunction with FIGS. 1-6.
At step 702, algorithm parameters may be initialized. The algorithm parameters may correspond to the plurality of parameters associated with the plurality of battery pack types as explained in FIG. 4. The algorithm parameters are given as:
Number of Dimensions (e.g., dim_count)
List of Cells (e.g., cell_list)
Product Requirement Specifications (e.g., specs_limit)
Fitness Function (e.g., fitness_function)
Good Cluster Size (e.g., good_cluster_size)
At step 704, a mode of optimization may be chosen. The mode of optimization may be a target-based optimization 706 or a general optimization 708. At step 710, an input priority order may be received when the general optimization 708 is selected. At step 712, an input priority order and a demand may be received when the target-based optimization 706 is selected.
At step 714, weights may be assigned to products (for example, the plurality of battery pack types). For example, in one embodiment, in case the general optimization 708 is selected, the weights may be assigned based on the input priority order. Further, in case the target-based optimization 708 is selected, the weights may be assigned based on the input priority order and demand.
At step 716, cell indices list may be generated. In each run, an ordered list may be generated that quantifies a number of battery packs produced for each product type (battery pack type or EV type), arranging them in a specific sequence or ranking based on the input priority order. At step 718, a cell sorting core logic may be considered. At step 720, a brute force cell sorting technique may be employed, in a product-specific manner, repeating same step individually for each product. This brute force technique checks all possible combinations to determine maximum number of battery packs possible for each product based on the available number of cells.
For example, the number of battery packs made in Run-0-0-1 for P1 = R_001 P_1. Similarly, number of battery packs made in Run-0-0-1 for P2 = R_001 P_2 and number of battery packs made in Run-0-0-1 for P3 = R_001 P_3. Further, the cell indices list is [ R_001 P_1, R_001 P_2, R_001 P_3].
At step 722, overlapping matrices may be created. At step 724, combinations of matrices may be calculated. By way of an example, consider a scenario of three products “P1”, “P2” and “P3”, and a total number of runs possible for each product are “625”, ensuring all the possible combinations for every product are explored separately.
By way of an example, number of overlapping matrices are given as:
C(n,2) = n!/((n-2)! 2!)
Where “n” is no. of products. For example, for 3 products, 3 number of overlapping matrices are possible i.e., {P1, P2}, {P2, P3}, {P3, P1}.
At step 726, matrix prioritization may be performed. At step 728, a weight may be calculated for each matrix (i.e., the overlapping matrix). In the context of target-based optimization 706, the overlapping matrices may be prioritized based on a weight that reflects a combined impact of two factors including the order of priority and the demand. In this scenario, the overlapping matrices may be linked to products with both a higher demand and a greater order of priority receive a higher weight. This prioritization ensures that matrices representing products with significant production requirements and strategic importance take precedence. For general optimization 708, the overlapping matrices may be prioritized based solely on one factor, which is the order of priority. More specifically, the overlapping matrices associated with products of higher priority receive greater weighting in this case.
At step 730, matrix or matrices may be selected, for each combination of the matrices. At step 732, a matrix optimization may be performed, for each combination of the matrices. At step 734, sum of rows and columns may be calculated, for each combination of the matrices. At step 736, rows and columns may be rearranged, for each combination of the matrices. This is further explained in detail in conjunction with FIGs. 10A-10B. At step 738, a condition of cell replacement may be checked. For example, the cell replacement is available 740 or the cell replacement is not available 742.
In each optimization run, a temporary database that includes all of unused or remaining cells may be created. This database is instrumental in ensuring efficient allocation of cells to different products. Consider a scenario for optimizing allocation of battery cells for two products, i.e., a product 1 and a product 2, and encounters an overlapping matrix involving two cells. Within this context, the temporary database may be examined for the remaining cells to identify those that satisfy a same criterion as the two cells initially found in the overlapping matrix. If suitable cells meeting these constraints are available in the database, a reallocation may be performed. In this reallocation, the two cells originally present in the overlapping matrix are reassigned to the product 1. Meanwhile, the newly discovered, replacement cells from the database are allocated to the product 2. It may be noted, in this process, that the cells initially located within the overlapping matrix consistently remain assigned to the product 1 corresponding to columns in which they are found. Conversely, the newly identified replacement cells are allocated to the product 2 aligned with the rows in which they are identified. In short, this approach allows to efficiently manage the allocation of battery cells, ensuring that the original overlapping cells are assigned to correct products and that any suitable replacements are seamlessly integrated into the allocation process, contributing to an optimized and efficient battery pack production strategy.
Further, in case suitable replacement cells are not found in the temporary database during the optimization process, it resorts a prioritization strategy. Specifically, the product aligned with the columns may be prioritized in the overlapping matrix. To elaborate, consider a scenario where two products, the product 1 and the product 2, are being optimized for battery cell allocation, and the overlapping matrix is encountered. In this overlapping matrix, two cells are initially assigned to the product 1 and the product 2. However, there are no compatible replacement cells available in the temporary database. In this situation, the product associated with the columns may be selected to be prioritized in which the cells are originally located. This means that the cells assigned to the product 1 in the columns remains allocated to the product 1. The rationale behind this prioritization is to maintain consistency and ensure that the products retain their original allocations as far as possible. This strategy is especially relevant when the replacement cells with identical characteristics may not be identified. It may be ensured that allocation remains aligned with initial configuration by prioritizing the product in the columns, even in the absence of replacements, contributing to efficient and predictable production planning.
FIG. 8 illustrates a flowchart of a method 800 for a target-based optimization of battery packs, in accordance with an example embodiment. FIG. 8 is explained in conjunction with FIGs. 1-7.
At step 802, order lists may be generated for battery packs in each run which includes number of battery packs formed for each product. The terms plurality of battery packs and battery packs are used interchangeably in the present disclosure. Thereafter, at step 804, T-optimization (i.e., Toptimization) may be computed for all optimisation matrices. At step 806, a target list is created for T_optimization. At step 808, an internal distribution list may be created for T_optimization.
At step 810, an optimal result may be generated. These steps may be followed for each run. For example, for “625” runs, a result of T_optimization is appended to the target list and the internal distribution list. In the Target list values closest to zero may be selected. Further, these values may be mapped with values of the internal distribution list. These values be arranged from the internal distribution list in an ascending order. The final output (optimal result) will be a first value from the arranged list.
FIG. 9 illustrates a flowchart of a method 900 for a general optimization of battery packs, in accordance with an example embodiment. FIG. 9 is explained in conjunction with FIGs. 1-8.
At step 902, a comparison and selection may be performed. At step 904, maximum cell utilization may be selected. At step 906, maximum battery packs may be selected. In some embodiments, sum of Maximum battery packs and sum of Maximum utilization is calculated for each matrix. Further, two order lists are made, one which appends values of the sum of the maximum battery packs and another one which appends values of the sum of the maximum cell utilization. These steps may be performed for each run.
At step 908, values from the two ordered lists are compared based on user’s input of maximum battery pack or maximum cell utilization. At step 910, an optimal result may be determined. The most optimal result after examining all types of possible combinations may be rendered.
FIGS. 10A - 10B illustrate example visual representations 1000A and 1000B of an overlapping matrix, in accordance with an example embodiment. FIGs. 10A-10B are explained in conjunction with FIGs. 1-9.
As illustrated in FIGS. 10A-10B, the overlapping matrix may be calculated for “2” products (i.e., for P1 and P2), each of which has “3” battery packs (i.e.,1, 2, 3). A number of overlapping matrices possible may be calculated as {n! / ((n-2)! 2!)}, where “n” is the number of products.
By way of an example, for the “3” products (P1, P2, P3), “3” numbers of overlapping matrices are possible, i.e. {P1, P2}, {P2, P3}, {P3, P1}. The overlapping matrix {P1, P2}, as illustrated in FIG. 10A, includes three rows and three columns. The three rows and three columns are in a form of “P_ij”, where “i” denotes a product number and “j” denotes a battery pack number made for a product in a particular number. Each element of the overlapping matrix denotes number of overlapping cells between the battery packs of the products P1 and P2. For example, for the product P1, in the rows “P11”, “P12”, “P13” (where i = 1, and j = 1, 2, 3), “1” is product number and “1”, “2”, “3” are battery pack numbers made for the product 1 (i.e., P1) respectively. Further, for example, for the product P2, in the columns “P21”, “P22”, “P23” (where, i = 2, and j = 1, 2, 3), “2” is product number and “1”, “2”, “3” are battery pack numbers made for the product 2 (i.e., P2) respectively.
The product P1 may have higher priority than the product P2, as the product with high priority is represented in columns and the product with low priority may be represented in rows. By way of an example, an element “0” represents zero overlapping cells between P11 and P21. Similarly, an element “12” represents twelve overlapping cells between P13 and P22. Furthermore, the overlapping matrix may include sum of rows (11, 14, 13) and sum of columns (7, 13, 18).
As illustrated in FIG. 10B, the rows and the columns are rearranged in ascending order. For example, the sum of the columns is already in the ascending order, thus it is not changed. The sum of the rows includes 11, 14, 13, which is not the ascending order. Therefore, the second and third rows are interchanged to achieve the ascending order. Here, for brevity of one example is explained, however there may be other examples where different overlapping matrices may be created. Further, in some embodiments, P_11 may be kept constant, the battery pack from product 2 (P2) with lowest degree of overlapping may be checked. In this case “P_22” with “2” overlapping may be identified as the lowest degree of overlapping. Therefore, these 2 cells may be selected and further availability of the replacement may be checked as explained in conjunction with FIGs. 1-9.
Accordingly, blocks of the flow diagram support combinations of means for performing the specified functions and combinations of operations for performing the specified functions for performing the specified functions. It will also be understood that one or more blocks of the flow diagram, and combinations of blocks in the flow diagram, may be implemented by special purpose hardware-based computer systems which perform the specified functions, or combinations of special purpose hardware and computer instructions.
Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Moreover, although the foregoing descriptions and the associated drawings describe example embodiments in the context of certain example combinations of elements and/or functions, it should be appreciated that different combinations of elements and/or functions may be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, different combinations of elements and/or functions than those explicitly described above are also contemplated as may be set forth in some of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
It is to be understood that the above description is intended to be illustrative, and not restrictive. For example, the above-discussed embodiments may be used in combination with each other. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description.
With respect to the use of substantially any plural and/or singular terms herein, those having skill in the art may translate from the plural to the singular and/or from the singular to the plural as is appropriate to the context and/or application. The various singular/plural permutations may be expressly set forth herein for sake of clarity.
While the present invention has been described with reference to particular embodiments, it should be understood that the embodiments are illustrative and that the scope of the invention is not limited to these embodiments. Many variations, modifications, additions, and improvements to the embodiments described above are possible. It is contemplated that these variations, modifications, additions, and improvements fall within the scope of the invention.
TECHNICAL ADVANTAGES OF THE INVENTION
The advantages of the present invention are providing a system and method for production optimization of battery packs. The present invention provides optimal resource utilization. The present invention excels in efficiently utilizing raw materials by considering multiple product lines, ensuring minimal wastage and maximum resource efficiency. The present invention further provides adaptive flexibility, which offers versatility to seamlessly switch between a target-based and a general (without-target) modes, allowing manufacturers to adapt swiftly to varying production requirements and objectives.
The present invention further uses a consistent deterministic model, which operates deterministically, ensuring consistent and reproducible results for same input conditions. This consistency enhances product quality and performance predictability. The present invention further provides precision over probabilistic models as the deterministic model is used. The deterministic model exhaustively explores all possible combinations, eliminating approximation and providing absolute precision. This is particularly crucial in industries like EV manufacturing where the precision matters considerably.
The present invention further provides scalability. The general optimization is adaptable to accommodate any number of products, making it scalable and suitable for diverse production scenarios. Further, the present invention provides time-efficiency, as the time required for production planning may be reduced significantly through automation of optimization process, streamlining operations and increasing overall efficiency.
In short, the present invention further provides several key advantages: efficient resource usage by considering multiple product lines, adaptable flexibility between the target-based optimization and general optimization modes, unwavering determinism ensuring consistent results, a precision-focused deterministic approach over probabilistic models, scalability for various production scenarios, and substantial time savings through automated optimization processes.
The benefits and advantages which may be provided by the present invention have been described above with regard to specific embodiments. These benefits and advantages, and any elements or limitations that may cause them to occur or to become more pronounced are not to be construed as critical, required, or essential features of any or all of the embodiments.
, Claims:1. A computer-implemented method for production optimization of a plurality of battery packs comprising:
receiving data corresponding to a plurality of parameters associated with a plurality of battery pack types of the plurality of battery packs, a mode of optimization, and a number of available cells, wherein each battery pack type of the plurality of battery pack types comprises one or more cells;
determining one or more cell clusters for the each battery pack type of the plurality of battery pack types, based on the data received, through a deterministic model;
computing an overlapping matrix for each pair of the plurality of battery pack types based on the one or more cell clusters, wherein computing the overlapping matrix further comprises identifying overlapping cells between the each pair of the plurality battery pack types;
iteratively prioritizing the overlapping matrix based on the mode of optimization to optimize cell allocation for the each pair of the plurality of battery pack types; and
rendering optimal clusters from the one or more cell clusters based on the prioritized overlapping matrix.

2. The computer-implemented method of claim 1, wherein the plurality of parameters comprises a dimension, a list of cells, product requirement specifications (PRS), a fitness function, and a cluster size.

3. The computer-implemented method of claim 1, further comprising:
rendering at least two modes of optimization to a user, wherein the at least two modes comprise a first mode, and a second mode; and
in response to rendering, receiving an input from the user, for selecting one of the at least two modes of optimization.

4. The computer-implemented method of claim 3, further comprising:
rendering at least two options comprising maximum number of battery packs and maximum cell utilization, to the user, in case the first mode is selected; and
receiving a response for selecting one of the at least two options.

5. The computer-implemented method of claim 3, further comprising providing a control to the user to switch between the at least two modes.

6. The computer-implemented method of claim 3, wherein receiving the input comprises at least one of:
obtaining a priority order of the plurality of battery pack types when the first mode is selected; or
obtaining a demand of each of the plurality of battery pack types and the priority order of the plurality of battery pack types, when the second mode is selected.

7. The computer-implemented method of claim 3, further comprising:
assigning weights to the plurality of battery pack types based on the input, and
generating cell indices lists for the plurality of battery pack types, wherein an arrangement and ranking of the cell indices lists are determined based on the assigned weights.

8. The computer-implemented method of claim 3, wherein optimization values are determined for each of the overlap matrix based on the input.

9. The computer-implemented method of claim 3, further comprising generating an optimized production plan for the plurality of battery packs based on allocated cells and the mode of optimization, wherein:
for generating the optimized production plan,
a first order list comprising sum of the maximum battery packs and a second order list comprising sum of the maximum cell utilization are created in case the first mode is selected; and
a target list and an internal distribution list are created in case the second mode is selected.

10. The computer-implemented method of claim 1, wherein optimizing the cell allocation further comprises:
generating a database comprising unutilized cells;
identifying similar cells corresponding to the overlapping cells from the unutilized cells within the database, wherein characteristics of each of the unutilized cells are analyzed based on characteristics of the overlapping cells to identify the similar cells; and
performing at least one of:
upon a successful identification of the similar cells, allocating the overlapping cells to a first battery pack type of the each pair of the plurality battery pack types and the similar cells to a second battery pack type of the each pair of the plurality battery pack types; or
upon an unsuccessful identification of the similar cells, allocating the overlapping cells to the first battery pack type of the each pair of the plurality battery pack types,
wherein the first battery pack type has a higher weight than the second battery type.

Documents

Application Documents

# Name Date
1 202441031728-STATEMENT OF UNDERTAKING (FORM 3) [22-04-2024(online)].pdf 2024-04-22
2 202441031728-PROOF OF RIGHT [22-04-2024(online)].pdf 2024-04-22
3 202441031728-FORM FOR SMALL ENTITY(FORM-28) [22-04-2024(online)].pdf 2024-04-22
4 202441031728-FORM FOR SMALL ENTITY [22-04-2024(online)].pdf 2024-04-22
5 202441031728-FORM 1 [22-04-2024(online)].pdf 2024-04-22
6 202441031728-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [22-04-2024(online)].pdf 2024-04-22
7 202441031728-EVIDENCE FOR REGISTRATION UNDER SSI [22-04-2024(online)].pdf 2024-04-22
8 202441031728-DRAWINGS [22-04-2024(online)].pdf 2024-04-22
9 202441031728-DECLARATION OF INVENTORSHIP (FORM 5) [22-04-2024(online)].pdf 2024-04-22
10 202441031728-COMPLETE SPECIFICATION [22-04-2024(online)].pdf 2024-04-22