Real-time accounting and optimization decision system and method for engineering change cost
By generating a cost map and performing edge locking calculations before construction, the method identifies and optimizes cost jumps caused by changes, thus solving the problems of lag and misjudgment in the supplementary calculation of demolition and alteration costs after construction actions are performed in the existing technology, and realizing real-time calculation and optimization of change costs.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- 建潘鲲鹭物联网技术研究院(厦门)有限公司
- Filing Date
- 2026-06-11
- Publication Date
- 2026-07-14
AI Technical Summary
Existing technologies struggle to identify the next construction action that could cause a surge in change costs when engineering changes are not yet closed and on-site construction continues. Furthermore, they lack the ability to perform real-time cost calculations and strategy optimizations for changes before the actions are executed. This leads to problems such as the need for dismantling and rework after the slab is sealed, and the conversion of pre-embedded adjustments after pouring into chiseling and reinforcement.
By writing the next construction action into the cost map and performing road recalculation without demolition before and after edge locking, the closed low-cost adjustment path is identified, and strategy optimization results are generated and filtered, including change tables, cost maps, incremental edge locking minimum cut operations and Lagrange relaxation dynamic programming, to achieve real-time calculation and optimization of change costs.
It enables the identification and optimization of cost-increasing changes before construction actions are carried out, reduces the lag in calculating demolition and alteration costs after the slab is sealed, provides a traceable cost chain, and reduces misjudgments in bill of quantities pricing and deviations in construction occupancy.
Smart Images

Figure CN122390232A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of engineering cost data processing technology, and more specifically, to a system and method for real-time calculation and optimization decision-making of engineering change costs. Background Technology
[0002] Engineering change cost accounting mainly relies on BIM quantity calculation, contract bill pricing, on-site visas and process approval. The key points of processing are the collection of engineering quantity differences, material price differences, increases or decreases in labor and machinery, and visa fees after the change content is confirmed, and the calculation results are used for change approval, progress payment adjustment and settlement audit. During the overlapping construction of electromechanical pipelines, interior decoration, curtain walls, and prefabricated components, change orders often arrive on site before the complete approval results. However, the site still needs to carry out the sealing, pouring, concealed acceptance, batch material cutting, component hoisting, or equipment placement in the established order. The project management team needs to judge the impact of continuing construction on the cost of changes before the above construction actions are implemented. Since the existing accounting process usually uses the difference between change orders, visa orders, or final bill of quantities as the calculation entry point, it lacks the judgment on whether the next construction action closes the low-cost adjustment path. In practice, after sealing the pipeline, pipeline relocation becomes demolition and rework; after pouring, pre-embedded adjustment becomes chiseling and reinforcement; after material cutting, specification replacement becomes material scrapping or re-purchase. The cost system can only supplement the accounting after the cost has been formed, and it is difficult to output the optimization results of strategies such as temporarily delaying closure, partial first-time, adjusting material cutting batches, or installing non-affected sections first before the cost jumps. Therefore, the technical problem to be solved by this application is: how to identify the next construction action that will cause a jump in the cost of the change when the engineering change has not yet been closed and the on-site construction continues, and to complete the real-time calculation and strategy optimization of the change cost before the action is executed. Summary of the Invention
[0003] To overcome the aforementioned deficiencies of the prior art, embodiments of the present invention provide a real-time cost accounting and optimization decision-making system and method for engineering changes. By writing the next construction action into the cost map and performing a road recalculation without dismantling before and after edge locking, the system identifies price increase actions that close low-cost adjustment paths, and then generates and filters strategy optimization results based on the price increase segments, thereby solving the problems mentioned in the background art.
[0004] To achieve the above objectives, the present invention provides the following technical solution: a method for real-time calculation and optimization decision-making of engineering change costs, comprising: S1. Read the change order, list, schedule and next action table, and associate the change object number with the list item number, construction section number and next action number respectively, to generate a change table containing no-dismantling, locked action, dismantling and modification, price source and action sequence. S2. Based on the change table, the segment to be broken is located in reverse by the locking action. The drawing adjustment, material replacement, local displacement and sequence rewriting in the segment to be broken are used to generate the road that does not need to be dismantled. The demolition, redoing, re-inspection and re-sampling after the locking action are used to generate the road to be dismantled and modified. The road fee is generated according to the price source. The locking action hit by the next action number is written as the action to be judged and the cost map is generated. S3. Perform incremental edge locking minimum cut operation on the cost map, calculate the first free-cut fee from the free-cut opening to the free-cut stop position when the action to be judged has not been executed, then write the action to be judged as locked and recalculate the second free-cut path and the broken edge table; if the second free-cut path is empty and the demolition and modification path exists, then write the action to be judged as the price increase action, and write the difference between the demolition and modification path fee and the first free-cut fee as the price increase difference; S4. Generate price increase segments from the edge break table to the price increase action, generate candidate strategies, rewrite the action sequence and execution position according to the candidate strategies, calculate the non-disassembly recovery value, the lockout action bypass value, the price increase difference reduction value and the construction section occupation value, and generate a strategy table. S5. Perform a Lagrange relaxation dynamic programming operation on the strategy table, combine the value of the non-dismantling restoration, the value of the lock-up action bypass, and the value of the price increase difference reduction into a revenue fee, convert the value of the construction section occupation into an occupation fee, and obtain the total cost of the strategy by subtracting the revenue fee from the occupation fee. Select the target strategy, bind the target strategy, the first non-dismantling fee, the road modification fee, and the price increase difference, and output the calculation and optimization results.
[0005] In a preferred embodiment, S1 includes: S1-1. Read the change object number, affected parts, pre-change process sequence and post-change process sequence from the change order. Determine the processes with the same process name and the same process object in the pre-change process sequence and the post-change process sequence as retained processes. Determine the processes that only exist in the pre-change process sequence as exited processes. Determine the processes that only exist in the post-change process sequence as new processes. Generate a process difference table according to the change object number. S1-2. Read the list item number and price source that are the same as the part number in the list table and the part affected by the change. Read the construction section number, completed process number and unfinished process number that are the same as the part number in the schedule table and the part affected by the change. Read the next action number, action process number, action sequence number and part status after the action that are the same as the construction section number and have the action sequence number as the first in the next action table. The part status after the action includes open status and closed status. Generate the change object line. S1-3. In the newly added process, the process with the incomplete process number is identified as the process that does not need to be disassembled. In the exited process, the process with the completed process number is identified as the process that needs to be disassembled or modified. The next action number of the action process number that belongs to the incomplete process number and whose part is in a closed state after the action is identified as the locked action. A change table is generated from the change object line, the process that does not need to be disassembled, the locked action, the process that needs to be disassembled or modified, the price source, and the action sequence.
[0006] In a preferred embodiment, S2 includes: S2-1. Read the non-disassembly port, locking action, action sequence and next action number from the change table. For each non-disassembly port, calculate the position difference by subtracting the non-disassembly port action sequence from the locking action sequence. Keep the non-disassembly ports with a position difference greater than zero and take the first non-disassembly port in ascending order of position difference as the last non-disassembly port. Generate the record to be segmented with the action sequence not less than the action sequence of the last non-disassembly port and not greater than the locking action sequence. S2-2. For the segment to be broken, the records with action types of drawing adjustment, material replacement, local displacement and sequence rewriting are arranged in ascending order of action sequence. The action number of the previous record in two adjacent records is used as the starting point of the edge and the action number of the next record is used as the ending point of the edge to generate an edge that does not need to be broken. The edge that does not need to be broken is used to generate a road that does not need to be broken. S2-3. Based on the price source, read the contract price difference, demolition fee, redo fee, re-inspection fee, and re-sampling fee. Generate demolition and modification edges in ascending order of action sequence for the demolition, redo, re-inspection, and re-sampling after the locked action. Assign the contract price difference to the non-demolition edge. Assign the demolition fee, redo fee, re-inspection fee, and re-sampling fee to the demolition and modification edges of the same action type. Generate pending actions connecting the end of the non-demolition road and the beginning of the demolition and modification road based on the locked action hit by the next action number. Output the cost map.
[0007] In a preferred embodiment, S3 includes: S3-1. Read the non-removable road in the cost diagram, and take the non-removable edge stop point with the action type of drawing adjustment, material replacement, partial displacement or sequence rewriting and the action sequence position as the last one as the non-removable stop point. Generate the non-removable edge table with the non-removable opening as the starting point. The non-removable edge table includes edge number, edge start point, edge stop point, edge cost, edge sequence, edge status, predecessor edge and node cost. S3-2. Assign zero to the node fee of the non-splitting point and null to the other node fees. Read the non-splitting edges in the passable state in ascending order of edge position. If the node fee of the edge starting point is not null, generate the edge termination candidate fee by adding the node fee of the edge starting point to the edge fee. When there are multiple candidate fees at the same edge termination point, retain the first candidate fee and its edge number in ascending order of candidate fee and edge number to obtain the first non-splitting fee and the first non-splitting road.
[0008] In a preferred embodiment, S3 further includes: S3-3. Retrieve the non-disassembly edge table by the action number of the action to be judged, generate the non-disassembly edges with the same start point or end point as the action number of the action to be judged as the lockable edge table, change the edge status of each non-disassembly edge in the lockable edge table from the passable state to the locked state, and fill the action number, the locked state and the action sequence into the same row of the edge number to obtain the lockable edge table. S3-4. Perform bidirectional routing operation based on the lock-after edge table. Take the non-splitting point as the first current node, and read the edge endpoints layer by layer for non-splitting edges whose starting point is the same as the current node and whose edge state is passable, to generate a forward list. Take the non-splitting stop as the first current node, and read the edge starting point layer by layer for non-splitting edges whose edge endpoints are the same as the current node and whose edge state is passable, to generate a backward list. Generate the second non-splitting path for non-splitting edges whose starting point belongs to the forward list and whose edge endpoints belong to the backward list, and generate the broken edge table for non-splitting edges whose starting point belongs to the forward list and whose edge endpoints do not belong to the backward list. S3-5. If the second non-dismantling path is null, the edge break table is non-null, and there is an edge in the edge lock table whose starting point belongs to the forward list, then the action to be judged is determined to be a price increase action; otherwise, the action to be judged is determined to be a non-price increase action, the price increase difference is assigned to zero, the action number to be judged, the non-price increase action and the price increase difference are filled into the same price increase action row, and a price increase record is generated.
[0009] In a preferred embodiment, S3 further includes: S3-6. When the pending action is determined to be a price increase action, read the demolition and modification road in the cost map, take the demolition and modification edge stop point with the action type of demolition, redo, re-inspection or re-sampling and the action sequence position as the last one as the demolition and modification stop point, read the demolition and modification edge in ascending order of action sequence from the demolition and modification point to the demolition and modification stop point, sum up the demolition fee, redo fee, re-inspection fee and re-sampling fee to get the demolition and modification road fee, and subtract the first demolition exemption fee from the demolition and modification road fee to get the price increase difference. S3-7. Use the action number to be judged as the price increase action number, fill the edge number in the edge to be locked table, the edge number in the broken edge table, the first free dismantling fee, the road dismantling and modification fee, and the price increase difference into the same price increase action line, and generate a price increase record.
[0010] In a preferred embodiment, S4 includes: S4-1. Based on the price increase action number, the waiting-to-lock edge table and the broken edge table in the price increase action, take the first position of the action sequence from the starting point of the edge in the broken edge table to the action sequence number of the price increase action to generate the price increase segment. Then, generate the construction actions in the schedule that fall into the price increase segment as in-segment actions and generate the construction actions that do not fall into the price increase segment as out-of-segment actions. S4-2. Based on intra-segment actions, inter-segment actions, price increase actions, no-disassembly actions, and lock-up actions, change the execution position of the price increase action from the passable state to the waiting state to generate a temporary closure strategy; change the execution position of the inter-segment action from the passable state to the leading state to generate a local leading strategy; change the action sequence position of the intra-segment action (cutting action) to the first position of the price increase segment to generate an adjustment cutting batch strategy; change the execution position of the inter-segment action (installation action) from the passable state to the leading state to generate a first-install non-affected segment strategy; use no-disassembly as the edge start point, lock-up action as the edge end point, and passable state as the execution position to generate a temporary fixing strategy; and summarize the temporary closure strategy, local leading strategy, adjustment cutting batch strategy, first-install non-affected segment strategy, and temporary fixing strategy as candidate strategies.
[0011] In a preferred embodiment, S4 further includes: S4-3. For candidate strategies, generate a strategy edge table by strategy number, action number, edge start point, edge end point, action sequence before rewriting, action sequence after rewriting, execution position, and edge fee. Take the edge that is not split as the first current node. Read the strategy edges one by one in ascending order of the action sequence after rewriting. If the edge start point is the same as the current node and the execution position is a waiting position, a precedent position, or a passable state, change the end point of the read edge to the next current node. Continue until the current node is the same as the edge that is not split, or there is no strategy edge that is the same as the current node and the execution position is a waiting position, a precedent position, or a passable state. S4-4. Based on the strategy edge table and the current node, if the current node is the same as the no-removal stop position, the no-removal opening restoration value is set to one, and the edge fees of the read strategy edges are summed to obtain the strategy no-removal fee; if the current node is different from the no-removal stop position, the no-removal opening restoration value is set to zero, and the strategy no-removal fee is set to a null value; the number of strategy edges whose action number is not equal to the price increase action number and whose edge starting point belongs to the waiting-to-lock edge table is counted in the strategy edge table as the lock-off action value, the price increase difference is subtracted from the strategy no-removal fee to obtain the price increase difference reduction value, the number of duplicate action sequences after rewriting in the strategy edge table is used as the construction section occupancy value, and the strategy table is generated.
[0012] In a preferred embodiment, S5 includes: S5-1. Based on the strategy number, non-disassembly recovery value, lockout action bypass value, price increase difference reduction value, and construction section occupation value in the strategy table, multiply the non-disassembly recovery value by the price increase difference to obtain the recovery revenue, multiply the lockout action bypass value by the total edge fee of the edge to be locked to obtain the bypass revenue, add the recovery revenue, bypass revenue, and price increase difference reduction value to obtain the revenue fee, and generate the strategy cost line from the strategy number, construction section occupation value, and revenue fee. S5-2. Perform Lagrange relaxation dynamic programming based on the strategy cost rows. Sum the construction segment occupancy values of each strategy cost row to obtain the total occupancy number, and sum the revenue costs of each strategy cost row to obtain the total revenue cost. If the total occupancy number is zero, set the constraint multiplier to zero. Otherwise, divide the total revenue cost by the total occupancy number to obtain the constraint multiplier, multiply the construction segment occupancy value by the constraint multiplier to obtain the occupancy cost, and subtract the revenue cost from the occupancy cost to obtain the total strategy cost. S5-3. Read the strategy cost rows in ascending order of total strategy cost and strategy number. Determine the first strategy number with a free dismantling recovery value of one as the target strategy. If the free dismantling recovery value of all strategy numbers is zero, then determine the non-price increase action number with a price increase difference of zero as the target strategy. Bind the target strategy, the first free dismantling fee, the dismantling and modification road fee, and the price increase difference, and output the accounting optimization results.
[0013] In a preferred embodiment, the real-time cost calculation and optimization decision-making system for engineering changes includes: The change attachment module is used to read change orders, list tables, schedule tables and next action tables, and attach the change object number to the list item number, construction section number and next action number respectively, generating a change table containing no-dismantling, locked actions, dismantling and modification, price source and action sequence. The road break mapping module, based on the change table, uses the locking action to reverse locate the section to be broken, and generates a road that does not need to be dismantled by adjusting the drawings, replacing materials, shifting parts and rewriting the sequence within the section to be broken. It generates a road that needs to be dismantled by removing, redoing, re-inspecting and re-collecting after the locking action. It generates road tolls according to the price source, writes the locking action that the next action number hits as the action to be judged, and generates a cost map. The edge locking pricing module performs incremental edge locking minimum cut operation on the cost map, calculates the first free-cut fee from the free-cut opening to the free-cut stop position when the action to be judged has not been executed, then writes the action to be judged as locked and recalculates the second free-cut path and the broken edge table; if the second free-cut path is empty and the demolition and modification path exists, then the action to be judged is written as a price increase action, and the difference between the demolition and modification path fee and the first free-cut fee is written as the price increase difference; The strategy rewriting module is used to generate price increase segments from the edge table to the price increase action, generate candidate strategies, rewrite the action sequence and execution position according to the candidate strategies, calculate the non-disassembly recovery value, the lockout action bypass value, the price increase difference reduction value and the construction section occupation value, and generate a strategy table. The cost selection module performs Lagrange relaxation dynamic programming on the strategy table to synthesize the value of the non-dismantling restoration, the value of the lock-up action bypass, and the value of the price increase difference reduction into a revenue fee. It converts the value of the construction section occupation into an occupation fee, and subtracts the revenue fee from the occupation fee to obtain the total cost of the strategy. It selects the target strategy, binds the target strategy, the first non-dismantling fee, the road modification fee, and the price increase difference, and outputs the calculation and optimization results.
[0014] The technical effects and advantages of this invention are as follows: 1. By using the locking action to reverse locate the section to be broken, and determining whether the road that does not need to be dismantled is broken before the action is executed, the lag in calculating the demolition and modification costs after the sealing and pouring of the slab can be relatively reduced. 2. By mapping roads that do not need to be demolished and roads that need to be demolished in parallel, the first free demolition fee, road demolition fee, and price increase difference can be linked together, so that the source of the change cost jump has a traceable cost chain. 3. By using incremental edge locking minimum cut operation, the changes in the non-disassembly path before and after the action to be judged are transformed into the judgment of price increase action, which can relatively reduce the misjudgment caused by pricing only based on the difference in the list; 4. By generating price increase segments from the edge table to the price increase action, and generating candidate strategies around the price increase segments, the strategy optimization can be limited to the construction scope that actually causes the cost jump; 5. By using Lagrange relaxation dynamic programming to link revenue costs, occupancy costs, and total strategy costs, we can select the target strategy with lower costs from options such as temporarily delaying closure, partial advance, adjusting material batches, prioritizing non-affected sections, and temporary fixation, thereby reducing construction occupancy deviations caused by simply selecting strategies based on price increases. Attached Figure Description
[0015] Figure 1 This is a flowchart of the method steps of the present invention.
[0016] Figure 2 This is a schematic diagram of the system modules of the present invention. Detailed Implementation
[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0018] Refer to the instruction manual appendix Figure 1-2 The method for real-time calculation and optimization decision-making of engineering change costs of the present invention includes: S1. Read the change order, list, schedule and next action table, and associate the change object number with the list item number, construction section number and next action number respectively, to generate a change table containing no-dismantling, locked action, dismantling and modification, price source and action sequence. To ensure that the textual changes in the change order are included in subsequent cost drawing calculations, the original construction method, changed construction method, bill of quantities pricing item, site progress, and next construction action for the affected area are first separated into the same group of fields. This ensures that subsequent non-dismantling, dismantling / modification, and locking actions are generated based on process differences and site conditions, rather than by manual judgment. This implementation process includes the following steps: In S1-1, the change order must at least include the changed object number, the affected part, the original process sequence, and the new process sequence. Each process record includes the process number, process name, process object, part number, and process sequence number. The process object consists of the professional number, object number, and part number. The original and new process sequences are compared one by one. Two processes with the same process name and process object are merged into retained processes. Process sequences that were not merged in the original process sequence are exited processes. Process sequences that were not merged in the new process sequence are added processes. When there are multiple processes with the same name and the same object, they are first compared in ascending order of process sequence number. Processes with the same name, the same object, and the same process sequence number are merged first. The remaining processes are then processed in ascending order of process number. Thus, a process difference table is generated based on the changed object number. The process difference table must at least include the changed object number, retained process number, exited process number, new process number, process object, and process sequence number. In S1-2, according to the change-affected parts in the difference table, the records with the same part number are retrieved in the list table to obtain the list item number and price source. The price source includes contract price difference, demolition fee, redo fee, re-inspection fee, and re-sampling fee. When the same change-affected part corresponds to multiple list item numbers, change object rows are generated separately according to the list item numbers. According to the same change-affected part, the construction section number, process number, and process status are read from the schedule table. Process numbers with a completed status are listed as completed process numbers, and process numbers with an incomplete or ongoing status are listed as incomplete process numbers. Then, the construction action with the same construction section number is read from the next action table, and the first record is taken as the next action number in ascending order of action sequence. When there are multiple records at the first position, change object rows are generated separately in ascending order of professional number and action number. The part status after the action is given by the action type in the next action table. When the action type is sealing, pouring, concealed acceptance, batch cutting, component hoisting, or equipment placement, the closed status is taken. For other action types, the open status is taken. In S1-3, the newly added process number in the process difference table is compared with the incomplete process number item by item. If the newly added process number belongs to the incomplete process number, the process containing the newly added process number is identified as a process that does not need to be dismantled, indicating that the process is still in an incomplete or ongoing state and can be processed through drawing adjustments, material replacement, partial relocation, or sequence rewriting. The exited process number in the process difference table is compared with the completed process number item by item. If the exited process number belongs to the completed process number, the process containing the exited process number is identified as a process that needs to be dismantled or modified, indicating that the original process has formed a physical entity on site and can only be dismantled, redone, re-inspected, or re-sampled. The action process number carried by the next action number is then compared with the incomplete process number. If the action process number belongs to the incomplete process number and the state of the part after the action is closed, the next action number is identified as a locked action. If neither of the above two conditions is met, the locked action is set to null. Finally, a change table is generated from the change object line, process that does not need to be dismantled, locked action, process that needs to be dismantled or modified, price source, and action sequence. Through the above processing, the "no-disassembly" entry in the change table comes from the intersection of the newly added process and the incomplete process number; the "disassembly / modification" entry comes from the intersection of the exited process and the completed process number; and the "locked-up" action comes from the closure result of the next action on the incomplete process, so that the subsequent segment positioning, cost map construction, and price increase action judgment have the same data basis. In practical application: the electromechanical pipeline change requires changing the original cable tray path to a beam-around arrangement. Before the change, the process sequence already has "original cable tray installation", and after the change, the process sequence adds "beam-around bracket installation" and "beam-around cable tray installation". If the progress table shows that the original cable tray installation is completed, the original cable tray installation forms a disassembly / modification entry. If the beam-around bracket installation is not yet completed, the beam-around bracket installation forms a "no-disassembly" entry. If the next action table shows that the first action of the same construction section is ceiling sealing, and the status of the part after the action is closed, the ceiling sealing forms a locked-up action, and the change table enters the subsequent cost map calculation accordingly.
[0019] S2. Based on the change table, the segment to be broken is located in reverse by the locking action. The drawing adjustment, material replacement, local displacement and sequence rewriting in the segment to be broken are used to generate the road that does not need to be dismantled. The demolition, redoing, re-inspection and re-sampling after the locking action are used to generate the road to be dismantled and modified. The road fee is generated according to the price source. The locking action hit by the next action number is written as the action to be judged and the cost map is generated. To include the change order in the cost chart calculation, the locked-in action is first used as the reverse positioning benchmark. From all non-removable openings, the non-removable opening closest to and earlier than the locked-in action is selected. Records that can still be processed through drawing adjustments, material replacement, partial relocation, or sequential rewriting are then organized into non-removable routes. Records that can only be processed after the locked-in action through removal, redo, re-inspection, or re-sampling are organized into removal / modification routes. This ensures that the action to be judged simultaneously connects the end of the non-removable route and the beginning of the removal / modification route in the cost chart. This implementation process includes the following steps: In S2-1, the non-removable opening, locked action, action sequence, and next action number are read from the change table. When the locked action is null, the segment to be broken is null, no action to be judged is generated, and the next action number is marked as a non-price increase action in the subsequent price increase record. When the locked action is not null, the position difference is calculated for each non-removable opening. The position difference is the locked action sequence minus the non-removable opening action sequence. Non-removable openings with a position difference less than or equal to zero are not included in the segment to be broken screening. Non-removable openings with a position difference greater than zero are arranged in ascending order of position difference. When the position differences are the same, they are arranged in ascending order of non-removable opening action number. The non-removable opening at the top of the list is determined as the last non-removable opening. Records with an action sequence not less than the last non-removable opening action sequence and not greater than the locked action sequence are generated to be broken. Each record in the segment to be broken retains the action number, action type, action sequence, edge fee source, and construction section number for subsequent non-removable edge generation. In S2-2, for the segment to be broken, records whose action types are drawing adjustment, material replacement, local displacement, and sequence rewriting are filtered and arranged in ascending order of action sequence and action number. When the filtering result is empty, the non-demolition path takes an empty value. When the filtering result has only one record, the non-demolition point is used as the edge start point, and the action number of the record is used as the edge end point to generate a non-demolition edge. When the filtering result has multiple records, the non-demolition point to the first record is used to generate the starting non-demolition edge, and the action number of the previous record in the two adjacent records is used as the edge start point and the action number of the next record is used as the edge end point to generate subsequent non-demolition edges. Each non-demolition edge includes edge number, edge start point, edge end point, action type, edge sequence, edge status, and edge fee. The edge status is initially taken as the passable state. The end point of the non-demolition edge with the last action sequence is taken as the end of the non-demolition path, and is subsequently read as the non-demolition stop point in S3. In S2-3, the contract price difference, demolition fee, redo fee, re-inspection fee, and re-sampling fee are read from the price source. When a certain fee in the price source is empty, the corresponding fee is assigned a value of zero. The contract price difference is assigned to the demolition-free edge as the demolition-free road fee. After the locked action, records with an action sequence greater than the locked action sequence and whose action type belongs to demolition, redo, re-inspection, or re-sampling are read. Demolition and modification edges are generated in ascending order of action sequence and action number. The starting point of the first demolition and modification edge is the demolition and modification entrance, and the ending point is the action number of the first demolition and modification record. Subsequent demolition and modification edges are generated from the action number of the previous demolition and modification record. The starting point of the edge is the action number of the next demolition and modification record, and the ending point is the action number of the next demolition and modification edge. The initial state of the demolition and modification edge is the passable state. The demolition fee, redo fee, re-inspection fee, and re-collection fee are assigned to the demolition and modification edge with the same action type. If the next action number is the same as the locked action number, the next action number hits the locked action and generates a pending action. The starting point of the pending action is the end of the road that does not require demolition, the ending point is the demolition and modification entrance, the initial state of the edge is the passable state, the edge fee is assigned to zero, and the edge sequence is the sequence of the locked action. Finally, the cost map is output from the road that does not require demolition, the demolition and modification edge, and the pending action. Through the above processing, the cost diagram is generated only around the segment to be broken between the last non-removable opening and the locked action, avoiding the inclusion of construction actions unrelated to the current locked action in the price increase judgment; the non-removable path represents the processing path that can still be used before the locked action occurs, and the demolition and modification path represents the processing path that is forced to be entered after the locked action occurs. The pending action is used to connect the two processing paths and enter the subsequent incremental edge locking calculation; in practical applications: when the pipeline inside the wall is changed, the rerouting around the beam is a non-removable opening, and the ceiling sealing is a locked action. The system calculates the position difference by subtracting the position of the beam rerouting from the sealing action position, and generates the non-removable path by adjusting the drawings and local displacement between the beam rerouting and the sealing; the removal of the ceiling, redoing the ceiling, re-inspection of concealed works, and re-purchase of materials after sealing generate the demolition and modification path. The sealing action is used as the pending action to connect the end of the non-removable path and the demolition and modification opening, and then it can be calculated whether the sealing causes a cost jump.
[0020] S3. Perform incremental edge locking minimum cut operation on the cost map, calculate the first free-cut fee from the free-cut opening to the free-cut stop position when the action to be judged has not been executed, then write the action to be judged as locked and recalculate the second free-cut path and the broken edge table; if the second free-cut path is empty and the demolition and modification path exists, then write the action to be judged as the price increase action, and write the difference between the demolition and modification path fee and the first free-cut fee as the price increase difference; To determine whether the action to be judged has broken the non-dismantling route and to convert the cost change after the breakage into a price increase record, the low-cost non-dismantling route when the action to be judged is not locked is first calculated in the cost graph. Then, the non-dismantling edge involved in the action to be judged is changed to a locked state. Subsequently, forward and backward route selection is used to confirm whether there is still a passable path from the non-dismantling entrance to the non-dismantling stop. When the non-dismantling route is cut off and a dismantling / alternate route exists, the dismantling / alternate cost is read and subtracted from the first non-dismantling cost to obtain the price increase difference. This implementation process includes the following steps: In S3-1, the non-removable road generated in S2 is read from the cost map. The non-removable road is composed of non-removable edges. Each non-removable edge includes edge number, edge start point, edge end point, action type, edge fee, edge sequence, and edge status. The action type belongs to drawing adjustment, material replacement, partial displacement, or sequence rewriting, and the edge sequence is the last non-removable edge of the non-removable road. Its edge end point is used as the non-removable stop point. If there are multiple non-removable edges with the same last edge sequence, the edge end point of the first non-removable edge is taken as the non-removable stop point in ascending order of edge number. The non-removable opening is used as the starting point to organize the non-removable edges into a non-removable edge table. The non-removable edge table includes edge number, edge start point, edge end point, edge fee, edge sequence, edge status, predecessor edge, and node fee. The edge status is initially taken as the passable status, the predecessor edge is initially taken as a null value, and the node fee is used to record the cumulative edge fee value from the non-removable opening to the corresponding node. In S3-2, the node fee of the non-splitting point is assigned to zero, and the fees of the remaining nodes are assigned to null values. The non-splitting edges in the passable state are read in ascending order of edge position. When reading any non-splitting edge, if the node fee of the edge starting point is not null, the node fee of the edge starting point is added to the edge fee to obtain the edge termination candidate fee. If the node fee of the edge termination point is null, the edge termination candidate fee is filled into the node fee of the edge termination point, and the edge number of this non-splitting edge is filled into the predecessor edge of the edge termination point. If the edge termination point already has a node fee, the edge termination candidate fee and the existing node fee are compared. If the candidate fee value is less than the existing node fee, the node fee and the predecessor edge are rewritten. If the candidate fee values are the same, the non-splitting edge with the earlier number is retained in ascending order of edge number. After the edge position traversal is completed, the node fee of the non-splitting termination point is used as the first non-splitting fee. The non-splitting termination point is read in reverse along the predecessor edge to the non-splitting point, and the edge numbers read are arranged in ascending order of edge position to generate the first non-splitting path. In S3-3, the non-removable edge table is retrieved by the action number of the action to be judged. Non-removable edges with the same start or end point as the action number of the action to be judged are added to the locked edge table. If the action to be judged was generated in S2 as an edge connecting the end of the non-removable road and the relocation point, then the search is performed simultaneously by the edge number of the action to be judged. For each non-removable edge in the locked edge table, the original row is located in the non-removable edge table by the edge number, and the edge status is changed from the passable state to the locked state. At the same time, the action number, the locked state, and the action sequence of the action to be judged are filled into the same row where the edge number is located. The edge start point, edge end point, and edge fee are not rewritten. After the status rewriting is completed, the non-removable edges with the locked state are deleted from the qualification to participate in subsequent routing, and the locked edge table is generated. In S3-4, bidirectional routing is performed based on the lock's edge list. During forward routing, the non-splitting edge is used as the first current node. Edges whose starting point is the same as the current node and whose state is passable are read, and the edge's ending point is added to the forward list. Before adding a new node, the forward list is checked to see if a matching node already exists; if a matching node already exists, it is not added again. Forward routing stops when no new node is generated in a round of reading. During backward routing, the non-splitting stop is used as the first current node. Edges whose ending point is the same as the current node are read. For edges that are in a passable state and are not subject to splitting, the starting point of the read edge is added to the backward list, and the same deduplication method is used to read back layer by layer. When no new node is generated in one round of reading, backward path taking stops. Edges whose starting point belongs to the forward list and whose ending point belongs to the backward list are entered into the second edge-free path. Edges whose starting point belongs to the forward list and whose ending point does not belong to the backward list are entered into the edge-breaking list. The edge-breaking list includes at least the edge number, edge starting point, edge ending point, edge cost, edge sequence, pending action number, and path-breaking source. The path-breaking source is unreachable after edge locking. In S3-5, the actions to be judged are branched through the second no-dismantling road, the broken edge table, and the edge to be locked table. If the second no-dismantling road is empty, it means that no passage path has been formed from the no-dismantling entrance to the no-dismantling stop. If the broken edge table is not empty, it means that the disconnection position is located within the no-dismantling road. If there is a no-dismantling edge whose edge starting point belongs to the forward list in the edge to be locked table, it means that the disconnection is triggered by the locking edge involved in the action to be judged. When all three conditions are met, the action to be judged is determined to be a price increase action and enters the road modification fee calculation. If any one condition is not met, the action to be judged is determined to be a non-price increase action, the price increase difference is assigned to zero, and the action number, the record type of non-price increase action, and the price increase difference are filled into the same price increase action row to generate a price increase record. In S3-6, when the action to be judged is determined to be a price increase action, the demolition and modification routes in the cost graph are read. The demolition and modification routes are composed of demolition and modification edges. Each demolition and modification edge includes the demolition and modification edge number, edge start point, edge end point, action type, edge fee, and edge sequence number. The demolition and modification edge whose action type is demolition, redo, re-verify, or re-sample, and whose edge sequence number is the last one in the demolition and modification route, has its edge end point as the demolition and modification end point. If there are multiple demolition and modification edges with the same last edge sequence number, the edge end point of the first demolition and modification edge in ascending order of demolition and modification edge number is taken as the demolition and modification end point. Stop position; Read the demolition and modification edge in ascending order of action sequence from the demolition and modification entrance to the demolition and modification stop position, and sum the demolition fee, redo fee, re-inspection fee and re-collection fee to obtain the demolition and modification road fee; If the demolition and modification road does not exist, the action to be judged is changed to a non-price increase action, and the price increase difference is assigned to zero; When the demolition and modification road exists, the price increase difference is obtained by subtracting the first free demolition fee from the demolition and modification road fee. A positive price increase difference indicates that the cost increases after entering the demolition and modification process after locking, and a zero or negative price increase difference indicates that the demolition and modification process is not higher than the free demolition process fee before locking; In S3-7, the action number to be judged is used as the price increase action number. The edge number in the edge to be locked table, the edge number in the edge break table, the first exemption from demolition fee, the demolition and road modification fee, and the price increase difference are filled into the same price increase action line to generate a price increase record. The price increase record shall at least include the change object number, construction section number, action number to be judged, price increase action number, edge to be locked number set, edge break number set, first exemption from demolition fee, demolition and road modification fee, price increase difference, and record type. The record type shall be either price increase action or non-price increase action. In the non-price increase action line, the demolition and road modification fee shall be null or zero, and the price increase difference shall be zero. In the price increase action line, the demolition and road modification fee and the price increase difference shall be filled in according to the calculated values in S3-6. Through the above processing, S3 puts the non-removal cost before the pending action is executed, the non-removal path status after the pending action is locked, the broken edge position caused by locking, and the demolition and replacement cost into the same price increase record. Subsequently, S4 can directly generate a price increase segment based on the broken edge table and the price increase action, and form a strategy table around the price increase segment. In practical application: when the ceiling sealing is a pending action, the local displacement of pipelines and material replacement before sealing still constitute a non-removal path. The system first calculates the first non-removal cost from the non-removal opening to the non-removal stop. After the sealing action is written to the locked state, the forward table can only reach the node before sealing, and the backward table cannot read back from the non-removal stop to the node before sealing. The broken edge table records the cut non-removal edge. If the sealing can only be handled by removing the ceiling, redoing the ceiling, re-inspecting the concealed works, and re-picking the board material, then the demolition and replacement cost minus the first non-removal cost will get the price increase difference, and the sealing action will be entered into the price increase record.
[0021] S4. Generate price increase segments from the edge break table to the price increase action, generate candidate strategies, rewrite the action sequence and execution position according to the candidate strategies, calculate the non-disassembly recovery value, the lockout action bypass value, the price increase difference reduction value and the construction section occupation value, and generate a strategy table. To incorporate price increase records into strategy optimization, the scope of actions resulting in cost jumps is first located using a boundary table. Then, five types of strategies are generated around this scope. By rewriting the action sequence and execution position, it is verified whether a new routing result has been formed from the non-dismantling point to the non-dismantling stop point. The routing result is then converted into a non-dismantling point recovery value, a locked-action bypass value, a price increase difference reduction value, and a construction section occupancy value. In this implementation, the execution position includes a pass status, a waiting position, and a priority position. The pass status indicates that the action is executed according to the original schedule; the waiting position indicates that locked-action actions are not executed temporarily; and the priority position indicates that construction actions not falling into the price increase segment are executed before the price increase segment. This implementation process includes the following steps: In S4-1, the price increase action number, the pending edge table, and the broken edge table are read based on the price increase record. Each broken edge in the broken edge table includes an edge number, edge start point, edge end point, edge fee, and edge start action sequence. The edge start action sequence in the broken edge table is sorted in ascending order of value, and the first edge start action sequence is taken as the starting position of the price increase segment. The action sequence of the row containing the price increase action number in the progress table is read as the ending position of the price increase segment. Construction actions with an action sequence not less than the starting position and not greater than the ending position of the price increase segment are generated as intra-segment actions, and construction actions with an action sequence less than the starting position or greater than the ending position of the price increase segment are generated as extra-segment actions. When there are multiple construction segments in the progress table, only records with the same construction segment number as the construction segment number containing the price increase action are read. When there are multiple construction actions with the same action sequence, they are sorted in ascending order of action number and then entered into intra-segment actions or extra-segment actions respectively. In S4-2, candidate strategies are generated based on intra-segment actions, inter-segment actions, price increase actions, no-disassembly actions, and locked actions. The execution position of the price increase action is changed from a passable state to a waiting state, while retaining the original action sequence, generating a delayed closure strategy. The execution position of inter-segment actions is changed from a passable state to a priority state, while retaining the original action sequence, generating a local priority strategy. Construction actions of the cutting type within the intra-segment are screened out, and the rewritten action sequence of this cutting action is assigned to the starting position of the price increase segment, generating an adjusted cutting batch strategy. Construction actions of the installation type within the inter-segment are selected. The work actions are screened out, and the execution position of the installation action is changed from the passable state to the priority state to generate a strategy of installing non-affected sections first; the non-disassembly opening is used as the edge start point, the locking action as the edge end point, and the passable state as the execution position, and the edge fee of the temporary fixed action in the list table is taken to generate a temporary fixed strategy; the strategies of delaying closure, partial priority, adjusting material cutting batch, installing non-affected sections first, and temporary fixed strategy are summarized as candidate strategies; each candidate strategy includes at least strategy number, strategy type, action number, edge start point, edge end point, action sequence before rewriting, action sequence after rewriting, execution position, and edge fee; In S4-3, for candidate strategies, a strategy edge table is generated according to the strategy number. The strategy edge table includes the strategy number, action number, edge start point, edge end point, action sequence before rewriting, action sequence after rewriting, execution position, and edge fee. The edge fee follows the edge fee of the same action number in the cost graph. The edge fee of the temporarily fixed strategy is read from the price source of the temporarily fixed list item in the list table. To avoid splitting, the first current node is used as the first strategy edge. Strategy edges with the same start point as the current node and whose execution position is in the waiting position, precedence position, or pass state are read in ascending order according to the action sequence after rewriting. When multiple policy edges exist at the current node, the first policy edge is read in ascending order of the rewritten action sequence, edge fee, and action number. For each policy edge read, it is filled into the policy routing table, and the endpoint of the policy edge is changed to the next current node. If the current node has the same endpoint as the non-splitting endpoint, or if there is no policy edge with the same starting point as the current node and whose execution position is in a waiting, forward, or passable state, routing stops. The policy routing table includes the policy number, reading sequence, action number, edge starting point, edge endpoint, edge fee, and current node. In S4-4, a strategy table is generated based on the strategy edge table, strategy routing table, and the current node. When the current node is the same as the no-dismantling stop position, the no-dismantling port recovery value is set to one, and the strategy no-dismantling fee is obtained by summing all edge fees in the strategy routing table. When the current node is different from the no-dismantling stop position, the no-dismantling port recovery value is set to zero, and the strategy no-dismantling fee is set to a null value. The edge starting points are extracted from the lockable edge table to generate a lockable starting point set. The number of strategy edges whose action number is not equal to the price increase action number and whose edge starting point belongs to the lockable starting point set is counted in the strategy edge table. Obtain the value for bypassing the locked action; when the strategy for exemption from dismantling fee is null, the price difference reduction value is set to zero; when the strategy for exemption from dismantling fee is a numerical value, the price difference reduction value is obtained by subtracting the strategy for exemption from dismantling fee from the price difference; merge the records in the strategy edge table whose execution position is a waiting position or a precedent position, as well as the records whose action sequence position before and after rewriting are different, and count them by deduplication according to the action sequence position after rewriting to obtain the construction section occupancy value; finally, generate the strategy table from the strategy number, the value for restoring the exemption from dismantling, the value for bypassing the locked action, the price difference reduction value, and the construction section occupancy value; Through the above processing, S4 compresses the circuit breaker range caused by the price increase action into a price increase segment, and generates a strategy record around the price increase segment that can rewrite the on-site execution status. The strategy is not simply a cost sorting, but first verifies whether the passage from the no-dismantling point to the no-dismantling stop position has been restored through the strategy edge table and strategy routing table, and then calculates the cost reduction and construction section occupation, providing a field basis for subsequent revenue fee, occupation fee and total strategy cost calculation. In practical application: after the ceiling sealing plate forms a price increase action, the action sequence of the edge starting point in the edge break table is the pipeline bureau. The system shifts the price increase action sequence to the sealing action, and lists the actions between the two as the price increase segment; the temporary closure strategy changes the sealing action to the waiting position, the local priority strategy changes the lighting installation in the non-price increase segment to the priority position, the material cutting batch adjustment strategy moves the material cutting that has been arranged after sealing to the starting position of the price increase segment, and the temporary fixing strategy adds a passage edge between the non-disassembly opening and the locking action; if the strategy routing table can read from the non-disassembly opening to the non-disassembly stop position, the non-disassembly opening recovery value is taken as one, and the strategy cost calculation in S5 is entered accordingly.
[0022] S5. Perform a Lagrange relaxation dynamic programming operation on the strategy table, combine the value of the non-dismantling recovery, the value of the lock-up action bypass, and the value of the price increase difference reduction into a revenue fee, convert the value of the construction section occupation into an occupation fee, and obtain the total cost of the strategy by subtracting the revenue fee from the occupation fee. Select the target strategy, bind the target strategy, the first non-dismantling fee, the road modification fee, and the price increase difference, and output the calculation and optimization results. To ensure that each strategy in the strategy table enters a calculable selection process, the recovery value of the non-dismantling operation, the bypass value of the locking action, and the price increase difference reduction value are first converted into revenue costs. Then, the construction section occupancy value is converted into occupancy costs. Lagrange relaxation dynamic programming is then used to recursively calculate the costs between revenue and construction section occupancy, ultimately selecting the target strategy and generating the accounting optimization results. This implementation process includes the following steps: In S5-1, the strategy number, the non-dismantling point restoration value, the locking action bypass value, the price increase difference reduction value, and the construction section occupation value are read line by line according to the strategy table. The non-dismantling point restoration value is obtained from whether the strategy routing table in S4 has reached the non-dismantling stop position, and the value is one or zero. The locking action bypass value is obtained from the number of strategy edges that bypass the lock-to-start set in the strategy edge table in S4. The price increase difference reduction value is obtained by subtracting the strategy non-dismantling fee from the price increase difference. When the strategy non-dismantling fee is null, the price increase difference reduction value is assigned to zero. The construction section occupancy value is obtained by deduplicating the action sequence after rewriting the strategy edge table; the recovery benefit is obtained by multiplying the non-dismantling recovery value by the price increase difference; the bypass value of the locked action is obtained by multiplying the edge fee total value of the edge table to be locked; the edge fee total value of the edge table to be locked is the sum of all edge fees in the edge table to be locked, and is zero when the edge table to be locked is empty; the recovery benefit, bypass benefit and price increase difference reduction value are added together to obtain the benefit fee, and the strategy cost line is generated by the strategy number, construction section occupancy value and benefit fee; In S5-2, Lagrange relaxation dynamic programming is performed based on the strategy cost rows. First, the total occupancy value is obtained by summing the construction segment occupancy values of all strategy cost rows, and the total revenue cost is obtained by summing the revenue costs of all strategy cost rows. When the total occupancy value is zero, the constraint multiplier is set to zero; when the total occupancy value is not zero, the total revenue cost is divided by the total occupancy value to obtain the constraint multiplier. For each strategy cost row, the occupancy cost is obtained by multiplying the construction segment occupancy value by the constraint multiplier, and the single-row cost is obtained by subtracting the revenue cost from the occupancy cost. Then, recursive stages are set in ascending order of strategy number, and each stage reads one strategy code. The price line is recursively defined by the number of occupied action positions, and the state value is the total strategy cost. At the current stage, two transitions are set: "Do not take the current strategy" and "Take the current strategy." When the current strategy is not taken, the number of occupied action positions remains unchanged, and the total strategy cost uses the state value from the previous stage. When the current strategy is taken, the number of occupied action positions increases by the current construction segment's occupied value, and the total strategy cost increases by the current single-line cost. When multiple state values exist for the same number of occupied action positions, the state value with the smaller total strategy cost and its strategy number chain are retained, and the total strategy cost is generated after recursively reaching the last strategy number. In S5-3, the strategy cost rows are sorted in ascending order of total strategy cost, and if the total strategy costs are the same, they are sorted in ascending order of strategy number. Starting from the first row, each row is read. When a strategy number with a non-dismantling recovery value of one is encountered, that strategy number is determined as the target strategy. If the non-dismantling recovery value of all strategy numbers is zero, the record type of the price increase record is read, and the record with a price increase difference of zero is determined as the non-price increase action number of the record. If there is no non-price increase action number with a price increase difference of zero, the target strategy is filled with no optimized action, and the calculation optimization result retains the price increase action. The target strategy, the first non-dismantling fee, the dismantling and road modification fee, the price increase difference, the revenue fee, the occupancy fee, and the total strategy cost are bound to the same calculation optimization result row. The calculation optimization result includes at least the change object number, the construction section number, the action number to be judged, the price increase action number, the target strategy, the first non-dismantling fee, the dismantling and road modification fee, the price increase difference, the revenue fee, the occupancy fee, and the total strategy cost. Through the above processing, S5 transforms the recovery path capability, bypass lockout action capability, cost reduction amount, and construction section occupancy amount in the strategy table into the same total strategy cost. When multiple strategies exist, it selects the target strategy that can both restore the non-removable opening and has a lower cost. The calculation and optimization results can be directly written back to the change object number and construction section number. In practical applications: after the ceiling panel sealing causes a price increase action, the delayed sealing strategy makes the non-removable opening recovery value one, the local advance strategy reduces the construction section occupancy, and the adjusted material cutting batch strategy reduces the remaining cost after the price increase difference reduction. The system calculates the revenue cost and occupancy cost of each strategy respectively, and obtains the total strategy cost through Lagrange relaxation dynamic programming. If the delayed sealing strategy restores the non-removable opening while the construction section occupancy value is lower than other recovery strategies, then the target strategy is the delayed sealing strategy, and the first non-removable opening cost before sealing, the road modification cost after sealing, and the price increase difference are written into the calculation and optimization results.
[0023] Furthermore, the real-time cost calculation and optimization decision-making system for engineering changes includes: The change attachment module is used to read change orders, list tables, schedule tables and next action tables, and attach the change object number to the list item number, construction section number and next action number respectively, generating a change table containing no-dismantling, locked actions, dismantling and modification, price source and action sequence. The road break mapping module, based on the change table, uses the locking action to reverse locate the section to be broken, and generates a road that does not need to be dismantled by adjusting the drawings, replacing materials, shifting parts and rewriting the sequence within the section to be broken. It generates a road that needs to be dismantled by removing, redoing, re-inspecting and re-collecting after the locking action. It generates road tolls according to the price source, writes the locking action that the next action number hits as the action to be judged, and generates a cost map. The edge locking pricing module performs incremental edge locking minimum cut operation on the cost map, calculates the first free-cut fee from the free-cut opening to the free-cut stop position when the action to be judged has not been executed, then writes the action to be judged as locked and recalculates the second free-cut path and the broken edge table; if the second free-cut path is empty and the demolition and modification path exists, then the action to be judged is written as a price increase action, and the difference between the demolition and modification path fee and the first free-cut fee is written as the price increase difference; The strategy rewriting module is used to generate price increase segments from the edge table to the price increase action, generate candidate strategies, rewrite the action sequence and execution position according to the candidate strategies, calculate the non-disassembly recovery value, the lockout action bypass value, the price increase difference reduction value and the construction section occupation value, and generate a strategy table. The cost selection module performs Lagrange relaxation dynamic programming on the strategy table to synthesize the value of the non-dismantling restoration, the value of the lock-up action bypass, and the value of the price increase difference reduction into a revenue fee. It converts the value of the construction section occupation into an occupation fee, and subtracts the revenue fee from the occupation fee to obtain the total cost of the strategy. It selects the target strategy, binds the target strategy, the first non-dismantling fee, the road modification fee, and the price increase difference, and outputs the calculation and optimization results.
[0024] Working principle: This solution first reads the change order, list of items, schedule, and next action list, and links the change object with the list item, construction section, and next construction action to generate a change table containing no-dismantling openings, locked actions, dismantling / modification openings, price sources, and action sequences. Then, it uses locked actions to find the sections to be cut off, generates no-dismantling roads and dismantling / modification roads respectively, calculates the first no-dismantling fee before the pending action is executed, and determines whether the second no-dismantling road is cut off after the pending action is locked. If the no-dismantling road is cut off and can only be converted to a dismantling / modification road, the pending action is identified as a price increase action, and the price increase difference between the dismantling / modification road fee and the first no-dismantling fee is calculated. Finally, it forms a price increase segment around the edge table to the price increase action, generates candidate strategies such as temporarily suspending closure, partial advance, adjusting material cutting batches, installing non-affected sections first, and temporary fixation. Through strategy optimization, it calculates the revenue fee, occupancy fee, and total strategy cost, selects the target strategy, and outputs the accounting optimization results. In practical applications, for example, if changes to electromechanical pipelines occur before the ceiling is sealed, the system will first determine whether the partial relocation of pipelines, material replacement, and sequence rewriting can still be completed before the ceiling is sealed. If the ceiling sealing will disconnect the non-removable route, and subsequent processing can only be done by removing the ceiling, redoing the ceiling, re-inspecting concealed works, and re-procuring materials, then the system will identify the ceiling sealing as a price increase action and calculate the difference between the non-removable route cost before sealing and the demolition and modification cost after sealing. At the same time, the system will compare strategies such as postponing the sealing, constructing non-affected areas first, adjusting the batch of material cutting, or adding temporary fixings, and select the target strategy that can both retain the non-removable route processing opportunity and occupy less construction section, thereby completing real-time cost calculation and strategy optimization before the on-site actions are executed.
[0025] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for real-time cost calculation and optimization decision-making for engineering changes, characterized in that, include: S1. Read the change order, list, schedule and next action table, and associate the change object number with the list item number, construction section number and next action number respectively, to generate a change table containing no-dismantling, locked action, dismantling and modification, price source and action sequence. S2. Based on the change table, the segment to be broken is located in reverse by the locking action. The drawing adjustment, material replacement, local displacement and sequence rewriting in the segment to be broken are used to generate the road that does not need to be dismantled. The demolition, redoing, re-inspection and re-sampling after the locking action are used to generate the road to be dismantled and modified. The road fee is generated according to the price source. The locking action hit by the next action number is written as the action to be judged and the cost map is generated. S3. Perform incremental edge locking minimum cut operation on the cost map, calculate the first free-cut cost from the free-cut opening to the free-cut stop when the action to be judged has not been executed, then write the action to be judged into the locked state and recalculate the second free-cut path and the broken edge table. If the second free road is empty and the road to be demolished exists, then the action to be judged will be written as the price increase action, and the difference between the road to be demolished and the first free road fee will be written as the price increase difference. S4. Generate price increase segments from the edge break table to the price increase action, generate candidate strategies, rewrite the action sequence and execution position according to the candidate strategies, calculate the non-disassembly recovery value, the lockout action bypass value, the price increase difference reduction value and the construction section occupation value, and generate a strategy table. S5. Perform a Lagrange relaxation dynamic programming operation on the strategy table, combine the value of the non-dismantling restoration, the value of the lock-up action bypass, and the value of the price increase difference reduction into a revenue fee, convert the value of the construction section occupation into an occupation fee, and obtain the total cost of the strategy by subtracting the revenue fee from the occupation fee. Select the target strategy, bind the target strategy, the first non-dismantling fee, the road modification fee, and the price increase difference, and output the calculation and optimization results.
2. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 1, characterized in that: S1 includes: S1-1. Read the change object number, affected parts, pre-change process sequence and post-change process sequence from the change order. Determine the processes with the same process name and the same process object in the pre-change process sequence and the post-change process sequence as retained processes. Determine the processes that only exist in the pre-change process sequence as exited processes. Determine the processes that only exist in the post-change process sequence as new processes. Generate a process difference table according to the change object number. S1-2. Read the list item number and price source that are the same as the part number in the list table and the part affected by the change. Read the construction section number, completed process number and unfinished process number that are the same as the part number in the schedule table and the part affected by the change. Read the next action number, action process number, action sequence number and part status after the action that are the same as the construction section number and have the action sequence number as the first in the next action table. The part status after the action includes open status and closed status. Generate the change object line. S1-3. In the newly added process, the process with the incomplete process number is identified as the process that does not need to be disassembled. In the exited process, the process with the completed process number is identified as the process that needs to be disassembled or modified. The next action number of the action process number that belongs to the incomplete process number and whose part is in a closed state after the action is identified as the locked action. A change table is generated from the change object line, the process that does not need to be disassembled, the locked action, the process that needs to be disassembled or modified, the price source, and the action sequence.
3. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 2, characterized in that: S2 includes: S2-1. Read the non-disassembly port, locking action, action sequence and next action number from the change table. For each non-disassembly port, calculate the position difference by subtracting the non-disassembly port action sequence from the locking action sequence. Keep the non-disassembly ports with a position difference greater than zero and take the first non-disassembly port in ascending order of position difference as the last non-disassembly port. Generate the record to be segmented with the action sequence not less than the action sequence of the last non-disassembly port and not greater than the locking action sequence. S2-2. For the segment to be broken, the records with action types of drawing adjustment, material replacement, local displacement and sequence rewriting are arranged in ascending order of action sequence. The action number of the previous record in two adjacent records is used as the starting point of the edge and the action number of the next record is used as the ending point of the edge to generate an edge that does not need to be broken. The edge that does not need to be broken is used to generate a road that does not need to be broken. S2-3. Based on the price source, read the contract price difference, demolition fee, redo fee, re-inspection fee, and re-sampling fee. Generate demolition and modification edges in ascending order of action sequence for the demolition, redo, re-inspection, and re-sampling after the locked action. Assign the contract price difference to the non-demolition edge. Assign the demolition fee, redo fee, re-inspection fee, and re-sampling fee to the demolition and modification edges of the same action type. Generate pending actions connecting the end of the non-demolition road and the beginning of the demolition and modification road based on the locked action hit by the next action number. Output the cost map.
4. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 3, characterized in that: S3 includes: S3-1. Read the non-removable road in the cost diagram, and take the non-removable edge stop point with the action type of drawing adjustment, material replacement, partial displacement or sequence rewriting and the action sequence position as the last one as the non-removable stop point. Generate the non-removable edge table with the non-removable opening as the starting point. The non-removable edge table includes edge number, edge start point, edge stop point, edge cost, edge sequence, edge status, predecessor edge and node cost. S3-2. Assign zero to the node fee of the non-splitting point and null to the other node fees. Read the non-splitting edges in the passable state in ascending order of edge position. If the node fee of the edge starting point is not null, generate the edge termination candidate fee by adding the node fee of the edge starting point to the edge fee. When there are multiple candidate fees at the same edge termination point, retain the first candidate fee and its edge number in ascending order of candidate fee and edge number to obtain the first non-splitting fee and the first non-splitting road.
5. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 4, characterized in that: S3 further includes: S3-3. Retrieve the non-disassembly edge table by the action number of the action to be judged, generate the non-disassembly edges with the same start point or end point as the action number of the action to be judged as the lockable edge table, change the edge status of each non-disassembly edge in the lockable edge table from the passable state to the locked state, and fill the action number, the locked state and the action sequence into the same row of the edge number to obtain the lockable edge table. S3-4. Perform bidirectional routing operation based on the lock-after edge table. Take the non-splitting point as the first current node, and read the edge endpoints layer by layer for non-splitting edges whose starting point is the same as the current node and whose edge state is passable, to generate a forward list. Take the non-splitting stop as the first current node, and read the edge starting point layer by layer for non-splitting edges whose edge endpoints are the same as the current node and whose edge state is passable, to generate a backward list. Generate the second non-splitting path for non-splitting edges whose starting point belongs to the forward list and whose edge endpoints belong to the backward list, and generate the broken edge table for non-splitting edges whose starting point belongs to the forward list and whose edge endpoints do not belong to the backward list. S3-5. If the second non-dismantling path is null, the edge break table is non-null, and there is an edge in the edge lock table whose starting point belongs to the forward list, then the action to be judged is determined to be a price increase action; otherwise, the action to be judged is determined to be a non-price increase action, the price increase difference is assigned to zero, the action number to be judged, the non-price increase action and the price increase difference are filled into the same price increase action row, and a price increase record is generated.
6. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 5, characterized in that: S3 further includes: S3-6. When the pending action is determined to be a price increase action, read the demolition and modification road in the cost map, take the demolition and modification edge stop point with the action type of demolition, redo, re-inspection or re-sampling and the action sequence position as the last one as the demolition and modification stop point, read the demolition and modification edge in ascending order of action sequence from the demolition and modification point to the demolition and modification stop point, sum up the demolition fee, redo fee, re-inspection fee and re-sampling fee to get the demolition and modification road fee, and subtract the first demolition exemption fee from the demolition and modification road fee to get the price increase difference. S3-7. Use the action number to be judged as the price increase action number, fill the edge number in the edge to be locked table, the edge number in the broken edge table, the first free dismantling fee, the road dismantling and modification fee, and the price increase difference into the same price increase action line, and generate a price increase record.
7. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 6, characterized in that: S4 includes: S4-1. Based on the price increase action number, the waiting-to-lock edge table and the broken edge table in the price increase action, take the first position of the action sequence from the starting point of the edge in the broken edge table to the action sequence number of the price increase action to generate the price increase segment. Then, generate the construction actions in the schedule that fall into the price increase segment as in-segment actions and generate the construction actions that do not fall into the price increase segment as out-of-segment actions. S4-2. Based on intra-segment actions, inter-segment actions, price increase actions, no-disassembly actions, and lock-up actions, change the execution position of the price increase action from the passable state to the waiting state to generate a temporary closure strategy; change the execution position of the inter-segment action from the passable state to the leading state to generate a local leading strategy; change the action sequence position of the intra-segment action (cutting action) to the first position of the price increase segment to generate an adjustment cutting batch strategy; change the execution position of the inter-segment action (installation action) from the passable state to the leading state to generate a first-install non-affected segment strategy; use no-disassembly as the edge start point, lock-up action as the edge end point, and passable state as the execution position to generate a temporary fixing strategy; and summarize the temporary closure strategy, local leading strategy, adjustment cutting batch strategy, first-install non-affected segment strategy, and temporary fixing strategy as candidate strategies.
8. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 7, characterized in that: S4 further includes: S4-3. For candidate strategies, generate a strategy edge table by strategy number, action number, edge start point, edge end point, action sequence before rewriting, action sequence after rewriting, execution position, and edge fee. Take the edge that is not split as the first current node. Read the strategy edges one by one in ascending order of the action sequence after rewriting. If the edge start point is the same as the current node and the execution position is a waiting position, a precedent position, or a passable state, change the end point of the read edge to the next current node. Continue until the current node is the same as the edge that is not split, or there is no strategy edge that is the same as the current node and the execution position is a waiting position, a precedent position, or a passable state. S4-4. Based on the strategy edge table and the current node, if the current node is the same as the no-removal stop position, the no-removal opening restoration value is set to one, and the edge fees of the read strategy edges are summed to obtain the strategy no-removal fee; if the current node is different from the no-removal stop position, the no-removal opening restoration value is set to zero, and the strategy no-removal fee is set to a null value; the number of strategy edges whose action number is not equal to the price increase action number and whose edge starting point belongs to the waiting-to-lock edge table is counted in the strategy edge table as the lock-off action value, the price increase difference is subtracted from the strategy no-removal fee to obtain the price increase difference reduction value, the number of duplicate action sequences after rewriting in the strategy edge table is used as the construction section occupancy value, and the strategy table is generated.
9. The method for real-time calculation and optimization decision-making of engineering change costs according to claim 8, characterized in that: S5 includes: S5-1. Based on the strategy number, non-disassembly recovery value, lockout action bypass value, price increase difference reduction value, and construction section occupation value in the strategy table, multiply the non-disassembly recovery value by the price increase difference to obtain the recovery revenue, multiply the lockout action bypass value by the total edge fee of the edge to be locked to obtain the bypass revenue, add the recovery revenue, bypass revenue, and price increase difference reduction value to obtain the revenue fee, and generate the strategy cost line from the strategy number, construction section occupation value, and revenue fee. S5-2. Perform Lagrange relaxation dynamic programming based on the strategy cost rows. Sum the construction segment occupancy values of each strategy cost row to obtain the total occupancy number, and sum the revenue costs of each strategy cost row to obtain the total revenue cost. If the total occupancy number is zero, set the constraint multiplier to zero. Otherwise, divide the total revenue cost by the total occupancy number to obtain the constraint multiplier, multiply the construction segment occupancy value by the constraint multiplier to obtain the occupancy cost, and subtract the revenue cost from the occupancy cost to obtain the total strategy cost. S5-3. Read the strategy cost rows in ascending order of total strategy cost and strategy number. Determine the first strategy number with a free dismantling recovery value of one as the target strategy. If the free dismantling recovery value of all strategy numbers is zero, then determine the non-price increase action number with a price increase difference of zero as the target strategy. Bind the target strategy, the first free dismantling fee, the dismantling and modification road fee, and the price increase difference, and output the accounting optimization results.
10. A real-time cost calculation and optimization decision-making system for engineering changes, characterized in that: include: The change attachment module is used to read change orders, list tables, schedule tables and next action tables, and attach the change object number to the list item number, construction section number and next action number respectively, generating a change table containing no-dismantling, locked actions, dismantling and modification, price source and action sequence. The road break mapping module, based on the change table, uses the locking action to reverse locate the section to be broken, and generates a road that does not need to be dismantled by adjusting the drawings, replacing materials, shifting parts and rewriting the sequence within the section to be broken. It generates a road that needs to be dismantled by removing, redoing, re-inspecting and re-collecting after the locking action. It generates road tolls according to the price source, writes the locking action that the next action number hits as the action to be judged, and generates a cost map. The edge locking pricing module calculates the first free-cut fee from the free-cut opening to the free-cut stop position when the action to be judged has not been executed by performing incremental edge locking minimum cut operation on the cost map. Then, it writes the action to be judged into a locked state and recalculates the second free-cut path and the broken edge table. If the second free road is empty and the road to be demolished exists, then the action to be judged will be written as the price increase action, and the difference between the road to be demolished and the first free road fee will be written as the price increase difference. The strategy rewriting module is used to generate price increase segments from the edge table to the price increase action, generate candidate strategies, rewrite the action sequence and execution position according to the candidate strategies, calculate the non-disassembly recovery value, the lockout action bypass value, the price increase difference reduction value and the construction section occupation value, and generate a strategy table. The cost selection module performs Lagrange relaxation dynamic programming on the strategy table to synthesize the value of the non-dismantling restoration, the value of the lock-up action bypass, and the value of the price increase difference reduction into a revenue fee. It converts the value of the construction section occupation into an occupation fee, and subtracts the revenue fee from the occupation fee to obtain the total cost of the strategy. It selects the target strategy, binds the target strategy, the first non-dismantling fee, the road modification fee, and the price increase difference, and outputs the calculation and optimization results.