Method, processor, device and storage medium for station scheduling
By encoding and decoding the available working time of each workstation and using a timeline to determine the available working time period, the problem of high complexity in multi-dimensional natural time calculation in existing technologies is solved, and efficient scheduling of factory resources is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ZHONGKE YUNGU TECH
- Filing Date
- 2023-06-29
- Publication Date
- 2026-07-03
AI Technical Summary
Existing intelligent planning and scheduling systems face challenges in calculating multi-dimensional natural time and high time complexity when solving factory resource scheduling problems, resulting in low scheduling efficiency.
By encoding and decoding the available working time of each workstation, the available working time period is determined using a time axis, and the start time period is arranged according to the single processing time to generate a shift schedule.
It improved the factory's ability to integrate resources and enhanced the scheduling efficiency of the APS system, enabling it to quickly schedule shifts based on different resources.
Smart Images

Figure CN116909221B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of process manufacturing, and more specifically, to a method, processor, apparatus, and storage medium for workstation scheduling. Background Technology
[0002] With the development of intelligent manufacturing, enterprises are increasingly finding that conventional production planning and scheduling methods are no longer effective in guiding production and manufacturing, and are seriously incompatible with their development needs. Advanced Planning and Scheduling (APS) systems, which take into account multiple constraints such as workshop equipment, materials, and personnel, use their internal intelligent algorithm engine to quickly calculate and adjust the schedule in a timely manner, and dynamically monitor the load on factory equipment, are now widely used.
[0003] Currently, the intelligent algorithms within the APS system directly obtain the working time of equipment and personnel, as well as the usable time of materials when solving problems. In other words, they directly obtain multi-dimensional natural time. However, calculating the various resource capabilities of a factory based on multi-dimensional natural time increases the difficulty and time of the algorithm's solution. Summary of the Invention
[0004] The purpose of this application is to provide a method, processor, device, and storage medium for workstation scheduling that encodes and decodes different natural times to quickly schedule factory resources based on time of the same dimension.
[0005] To achieve the above objectives, this application provides a method for workstation scheduling, the method comprising:
[0006] Obtain process information for each process within the factory and attendance data for each workstation. The process information includes the workstations corresponding to each process.
[0007] Based on production needs, determine the target process in the process, at least one target station corresponding to the target process, and the single processing time of each target station for the target process;
[0008] For any target workstation, determine the first available working hours for the target workstation within the target scheduling time period to be scheduled based on attendance data;
[0009] Determine the timeline for the first available working hours of the target workstation within the target scheduling period, where the zero point of the timeline is the start time when the target workstation starts working for the first time within the target scheduling period;
[0010] Determine the natural time period during which the target workstation is occupied within the target scheduling time period. The natural time period refers to the time period between the first start time and the first end time within the corresponding natural day.
[0011] The first start time and the first end time are encoded to determine the first start coordinates and the first end coordinates on the time axis, respectively.
[0012] All time periods on the time axis except for the time period between the first start coordinate and the first end coordinate are determined as the available working time periods for the target workstation;
[0013] Based on the single processing time, determine multiple start time periods within the available working time period of the target workstation on the time axis, and determine the second start coordinate and the second end coordinate of each start time period on the time axis;
[0014] For any given construction period, the second start coordinate and the second end coordinate of the construction period are decoded to determine the corresponding target day, as well as the second start time and the second end time of the target day.
[0015] The scheduling plan for the target workstation for the target process is determined based on the second start time and the second end time of each target calendar day.
[0016] In embodiments of this application, attendance data includes multiple attendance time periods for any given natural day. Encoding a first start time and a first end time to determine the first start coordinate and the first end coordinate on the time axis, respectively, includes: determining a first natural day corresponding to the first start time or the first end time; for any one of the first start time and the first end time, determining a first attendance time period within the first natural day based on the attendance data; determining a second working duration between the start time and the end time of the first attendance time period, and summing the working durations of each attendance time period within the first natural day prior to the first attendance time period to obtain a third working duration; obtaining the start date of the target scheduling time period and determining the number of days between the first natural day and the start date; determining a second available working duration for the target workstation on each natural day within the target scheduling time period based on the attendance data; determining a fourth working duration by multiplying the second available working duration by the number of days; and determining the coordinates of the moment on the time axis by summing the second working duration, the third working duration, and the fourth working duration.
[0017] In the embodiments of this application, for any work start time period, decoding the second start coordinate and the second end coordinate of the work start time period to determine the corresponding target natural day, and the second start time and the second end time of the target natural day includes: determining the coordinate value corresponding to any one of the second start coordinate and the second end coordinate; determining the second available working hours of the target workstation for each natural day within the target work schedule period based on attendance data; dividing the coordinate value by the second available working hours and rounding it to obtain a first value N, and determining the remainder after rounding as the second value, wherein the first value N and the second value are constants; extending the start date within the target work schedule period by N days to determine the target natural day corresponding to the coordinate; and determining the second available working hours of the target workstation for each natural day within the target work schedule period based on attendance data. Define each attendance period within the target calendar day and determine the attendance duration for each attendance period. Starting from the first attendance period of the target calendar day, sequentially compare the second value with the attendance duration of each attendance period. If the second value is greater than the first attendance duration of the first attendance period, subtract the first attendance duration from the second value to obtain a new second value. Return to the step of sequentially comparing the second value with the attendance duration of each attendance period until the second value is less than the attendance duration of any attendance period. Determine the corresponding attendance period as the second attendance period and the corresponding second value as the target value. Starting from the beginning of the second attendance period, increase the target value to obtain the time of the target calendar day corresponding to the coordinates.
[0018] In the embodiments of this application, determining multiple start-up time periods within the available working time periods of the target workstation on the time axis based on the single processing time, and determining the second start coordinate and second end coordinate of each start-up time period on the time axis includes: obtaining the available working time periods of each target workstation; determining the first available working time period closest to zero among all available working time periods; if the first available working time period is less than the single processing time, marking the first available working time period as temporarily unavailable, and returning to the step of determining the first available working time period closest to zero among all available working time periods; if the first available working time period is greater than or equal to the single processing time, obtaining inventory data in the factory, wherein the inventory data includes a bill of materials and material quantities; if the inventory data meets the single processing time of the target process, starting from the moment closest to zero among the first available working time periods, determining the time period corresponding to the single processing time as the start-up time period for the target process, and returning to the step of determining the first available working time period closest to zero among all available working time periods, until the start-up time periods within all available working time periods are determined.
[0019] In the embodiments of this application, the attendance data includes multiple attendance time periods for any natural day. For any target workstation, determining the first available working hours of the target workstation within the target scheduling time period to be scheduled based on the attendance data includes: determining multiple third attendance time periods for all natural days within the target scheduling time period based on the attendance data; determining the second attendance time corresponding to each third attendance time period; and determining the sum of all second attendance times as the first available working hours.
[0020] In the embodiments of this application, determining the first start time and the first end time of the natural time period during which the target workstation is occupied within the target scheduling time period includes: obtaining the processing resources corresponding to each workstation; determining the natural time period during which each processing resource is occupied within the target scheduling time period; and determining the natural time period during which any processing resource is occupied as the natural time period during which the workstation is occupied.
[0021] In embodiments of this application, the method further includes: for any target workstation, generating a Gantt chart of the target process's scheduling plan within the target scheduling time period based on the target process's scheduling plan.
[0022] The second aspect of this application provides a processor configured to perform a workstation scheduling method as described above.
[0023] A third aspect of this application provides a workstation scheduling apparatus, the apparatus including the processor as described above.
[0024] A fourth aspect of this application provides a machine-readable storage medium storing instructions that, when executed by a processor, cause the processor to be configured to perform any of the above-described workstation scheduling methods.
[0025] The above technical solution obtains the available working time for each workstation, determines the timeline for each target workstation, and then encodes the natural time when the workstation is occupied to determine the coordinates of the occupied natural time period on the timeline. This allows the determination of available working time periods based on the time of a single processing cycle. The available working time periods on the timeline are then arranged to obtain the start-up time periods. Finally, the coordinates of the start-up time periods are decoded to obtain the shift schedule. By encoding time in different dimensions, different natural times can be scheduled using the same timeline, improving the APS system's ability to integrate factory resources and enabling the APS system to quickly schedule shifts based on different resources.
[0026] Other features and advantages of this application will be described in detail in the following detailed description section. Attached Figure Description
[0027] The accompanying drawings are provided to further illustrate the present application and form part of the specification. They are used together with the following detailed description to explain the present application, but do not constitute a limitation thereof. In the drawings:
[0028] Figure 1 A flowchart illustrating a workstation scheduling method according to an embodiment of this application is shown schematically.
[0029] Figure 2 The diagram illustrates the internal structure of a computer device according to an embodiment of this application. Detailed Implementation
[0030] The specific embodiments of this application will be described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are for illustration and explanation only and are not intended to limit this application.
[0031] It should be noted that if the embodiments of this application involve directional indicators (such as up, down, left, right, front, back, etc.), the directional indicators are only used to explain the relative positional relationship and movement of the components in a certain specific posture (as shown in the figure). If the specific posture changes, the directional indicators will also change accordingly.
[0032] Furthermore, if the embodiments of this application involve descriptions such as "first" or "second," these descriptions are for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Therefore, features defined with "first" or "second" may explicitly or implicitly include at least one of those features. Additionally, the technical solutions of various embodiments can be combined with each other, but this must be based on the ability of those skilled in the art to implement them. If the combination of technical solutions is contradictory or impossible to implement, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection claimed in this application.
[0033] like Figure 1 The diagram illustrates a flowchart of a workstation scheduling method according to an embodiment of this application. Figure 1 As shown, a method for workstation scheduling is provided, including the following steps:
[0034] Step 101: Obtain the process information of the processes contained in the factory and the attendance data of each workstation, wherein the process information includes the workstations corresponding to the processes.
[0035] Step 102: Determine the target process in the process, at least one target station corresponding to the target process, and the single processing time of each target station for the target process based on production requirements.
[0036] Step 103: For any target workstation, determine the first available working hours for the target workstation within the target scheduling time period to be scheduled based on attendance data.
[0037] Step 104: Determine the timeline of the first available working hours for the target workstation within the target scheduling period, where the zero point of the timeline is the start time when the target workstation starts working for the first time within the target scheduling period.
[0038] Step 105: Determine the natural time period during which the target workstation is occupied within the target scheduling time period. The natural time period refers to the time period between the first start time and the first end time within the corresponding natural day.
[0039] Step 106: Encode the first start time and the first end time to determine the first start coordinates and the first end coordinates on the time axis, respectively.
[0040] Step 107: Determine all time periods on the time axis other than the time period between the first start coordinate and the first end coordinate as the available working time periods for the target workstation;
[0041] Step 108: Determine multiple start time periods within the available working time period of the target station on the time axis based on the single processing time, and determine the second start coordinate and the second end coordinate of each start time period on the time axis.
[0042] Step 109: For any work start time period, decode the second start coordinate and the second end coordinate of the work start time period to determine the corresponding target natural day, as well as the second start time and the second end time of the target natural day.
[0043] Step 110: Determine the shift schedule for the target workstation for the target process based on the second start time and the second end time of each target natural day.
[0044] The processor can acquire process information for each operation within the factory and attendance data for each workstation. Process information includes the workstation corresponding to the operation. Each workstation may include corresponding processing equipment. The processor can determine a target operation from multiple operations within the factory based on production needs. Production needs can be selected by the user. The processor can determine the target workstation corresponding to the target operation based on the process information of the target operation. There can be one or more target workstations. After determining the target workstation, the processor can also determine the single processing time for each target workstation on the target operation, that is, the time required for each target workstation to process the target operation. The processor can determine the target scheduling period based on user input data. For example, if the user wants to schedule shifts from September 1st to September 7th, the processor can determine September 1st to September 7th as the target scheduling period. For any target workstation, the processor can determine the first available working time for the target workstation within the target scheduling period based on the workstation's attendance data. For example, assuming the daily attendance data for the target workstation is from 0:00 to 7:00, then the seven hours between 0:00 and 7:00 constitute the available working hours for that workstation that day. After determining the first available working hours for the target workstation within the target scheduling period, the processor can determine a timeline based on this first available working hours. The zero point of the timeline is the start time when the target workstation begins its first work within the target scheduling period. For example, assuming the target scheduling period is from September 1st to September 7th, during this period, the daily workstation attendance data is from 0:00 to 7:00, meaning the available working hours per day are seven hours. The first working hours within the target scheduling period are 49 hours. The processor can determine the timeline, with a length of 49 hours. The unit of the timeline can be determined according to the user's selection, for example, in hours or minutes. The zero point of the timeline is the start time when the target workstation begins its first work within the target scheduling period; that is, the zero point of the timeline corresponds to 0:00 on September 1st.
[0045] The processor can determine the natural time period occupied by the target workstation within the target scheduling time period. A natural time period refers to the time between the first start time and the first end time within the corresponding calendar day. For example, assuming the first start time for the target workstation is 4:00 and the first end time is 5:00, then the occupied natural time period is from 4:00 to 5:00. After determining the first start time and the first end time of the natural time period occupied by the target workstation within the target scheduling time period, the processor can encode the first start time and the first end time to determine the first start coordinate and the first end coordinate on the time axis. The processor can then determine all other time periods on the time axis, excluding the time period between the first start coordinate and the first end coordinate, as the available working time period for the target workstation. For example, assuming the first starting coordinate is 4 on the time axis and the first ending coordinate is 5, the time interval from coordinate 4 to coordinate 5 is the occupied time interval. The time intervals from other zero points to coordinate 4 and from coordinate 5 to the positive direction of the coordinate value are the available working time intervals for the target workstation. After determining the available working time intervals for the target workstation, the processor can determine multiple start-up time intervals within the available working time intervals for the target workstation based on the single processing time of the target workstation, and determine the second starting coordinate and second ending coordinates for each start-up time interval on the time axis. For any start-up time interval, the second starting coordinate and second ending coordinate of the start-up time interval are decoded to determine the target calendar day corresponding to the start-up time interval, as well as the second starting time and second ending time within that target calendar day. Based on the second starting time and second ending time of each target calendar day, which are the start and end times of the start-up time intervals, the processor can determine the scheduling plan for the target workstation for the target process.
[0046] In one embodiment, attendance data includes multiple attendance time periods for any given natural day. Encoding a first start time and a first end time to determine the first start coordinate and the first end coordinate on the time axis, respectively, for the first start time and the first end time, includes: determining a first natural day corresponding to the first start time or the first end time; for any one of the first start time and the first end time, determining a first attendance time period within the first natural day based on the attendance data; determining a second working duration between the start time and the end time of the first attendance time period, and summing the working durations of each attendance time period within the first natural day prior to the first attendance time period to obtain a third working duration; obtaining the start date of the target scheduling time period and determining the number of days between the first natural day and the start date; determining a second available working duration for the target workstation on each natural day within the target scheduling time period based on the attendance data; determining a fourth working duration by multiplying the second available working duration by the number of days; and determining the coordinates of the moment on the time axis by summing the second working duration, the third working duration, and the fourth working duration.
[0047] Workstation attendance data can include multiple attendance time slots for any given calendar day. For example, suppose the daily workstation attendance time slots are 0:00-7:00, 8:00-11:30, 13:00-17:00, and 18:00-23:00. After determining the first start time and first end time corresponding to the occupied calendar time slot within the target time slot, the processor can determine the first calendar day corresponding to the occupied calendar time slot. Based on the attendance data, the processor determines the first calendar day. For any one of the first start time and first end time, the processor can determine the first attendance time slot within the first calendar day based on the workstation attendance data. The processor can determine the second working duration from the start time of the first attendance time slot to that time slot, and sum the working durations of each attendance time slot within the first calendar day prior to the first attendance time slot to obtain the third working duration. The processor can obtain the start date of the target shift period and determine the number of days between the first natural day and the start date. Based on attendance data, it determines the second available working hours for the target workstation on each natural day within the target shift period. The product of the second available working hours and the number of days is determined as the fourth working hours. The processor then determines the coordinates of that moment on the coordinate axis by summing the determined second, third, and fourth working hours. For example, assuming the target shift period is from September 1st to September 7th, and assuming the first start time corresponding to the occupied natural time period is 9:30 AM on September 3rd, the processor can determine the attendance time period on September 3rd. Assuming that the daily attendance time periods from September 1st to September 7th are 0:00-7:00, 8:00-11:30, 13:00-17:00, and 18:00-23:00. Therefore, 9:30 falls within the attendance period of 8:00-11:30. Thus, 8:00-11:30 is the first attendance period, which is the first starting time. The processor can determine the 1.5 hours between the start time of 8:00 and 9:30 of this first attendance period as the second working time. On September 3, the first attendance period of 8:00-11:30 also includes the attendance period of 0:00-7:00. The processor can determine the working time of the attendance period of 0:00-7:00 as the third working time. That is to say, the third working time is 7 hours. The target scheduling period is September 1st, which is 2 days away from the corresponding natural day of the occupied natural time period. Based on the attendance data, the second available working hours for the target workstation on each natural day within the target scheduling period are determined to be 19.5 hours. Therefore, the fourth working hours can be determined to be 39 hours. The processor can determine that the sum of the second working hours (1.5 hours), the third working hours (7 hours), and the fourth working hours (39 hours) is 47.5 hours. The processor can determine 47.5 as the coordinate of the first starting time of the occupied natural time period, September 3rd at 9:30, on the time axis (the unit of the time axis is hours).
[0048] In one embodiment, for any given work period, decoding the second start coordinate and the second end coordinate of the work period to determine the corresponding target natural day, and determining the second start time and the second end time of the target natural day, includes: determining the coordinate value corresponding to any one of the second start coordinate and the second end coordinate; determining the second available working hours for the target workstation on each natural day within the target work schedule period based on attendance data; dividing the coordinate value by the second available working hours and rounding it to obtain a first value N, and determining the remainder after rounding as the second value, wherein the first value N and the second value are constants; extending the start date within the target work schedule period by N days to determine the target natural day corresponding to the coordinate; and determining the second start time and the second end time of the target natural day based on attendance data. For each attendance period within the target calendar day, determine the attendance duration for each attendance period. Starting from the first attendance period of the target calendar day, sequentially compare the second value with the attendance duration of each attendance period. If the second value is greater than the first attendance duration of the first attendance period, subtract the first attendance duration from the second value to obtain a new second value. Return to the step of sequentially comparing the second value with the attendance duration of each attendance period until the second value is less than the attendance duration of any attendance period. Determine the corresponding attendance period as the second attendance period and the corresponding second value as the target value. Starting from the beginning of the second attendance period, increase the target value to obtain the time of the target calendar day corresponding to the coordinates.
[0049] After determining each work start time period, the processor decodes each of the second start and second end coordinates corresponding to any given work start time period to determine the target calendar day, the second start time, and the second end time of that target calendar day. For any one of the second start and second end coordinates, the processor can determine the corresponding coordinate value. Based on attendance data, the processor can determine the second available working hours for each calendar day within the target workstation's work schedule. The processor can divide the coordinate value by the second available working hours and round it down to obtain a first value N, then determine the remainder after rounding, which is defined as the second value M, where N and M are constants. The processor can then extend the start date within the target work schedule by N days to obtain the target calendar day corresponding to the coordinate. After determining the target calendar day corresponding to the coordinates, the processor can determine each attendance time slot within that target calendar day based on attendance data, and determine the attendance duration of each attendance time slot. Starting from the first attendance time slot of the target calendar day, the processor can sequentially compare the second value M with the attendance duration of each attendance time slot. If the second value is greater than the first attendance duration of the first attendance time slot, the second value M is reduced by the first attendance duration to obtain a new second value, and the process returns to sequentially comparing the second value with the attendance duration of each attendance time slot until the second value is less than the attendance duration of any attendance time slot. The corresponding attendance time slot is then determined as the second attendance time slot, and the final second value is determined as the target value. The processor can start from the beginning of the second attendance time slot and increment the target value to obtain the time of the target calendar day corresponding to the coordinates. After the processor determines the second start time and the second end time corresponding to each start time slot, it can determine the shift schedule for the target workstation for the target process based on the second start time and the second end time of each start time slot.
[0050] For example, assuming the second starting coordinate of the work start period is 35 on the time axis, and assuming the second available working hours for each natural day within the target scheduling period are 19.5 hours, the processor can divide 35 by 19.5, round it down to obtain the first value 1, and determine the remainder as the second value 15.5. Assuming the start date of the target scheduling period is September 1st, the processor can postpone September 1st by one day to September 2nd, making September 2nd the target natural day corresponding to the second starting coordinate. Assuming the attendance periods on September 2nd are 0:00-7:00, 8:00-11:30, 13:00-17:00, and 18:00-23:00, the target natural day includes four attendance periods, each with working hours of 7 hours, 3.5 hours, 4 hours, and 5 hours respectively. The processor can compare the second value 15.5 with the attendance time of the first attendance period from 0:00 to 7:00. The second value 15.5 is greater than the attendance duration of 7. The processor subtracts the attendance duration of 7 from the second value 15.5 to obtain a new second value 8.5. The new second value 8.5 is then compared with the attendance duration of the second attendance period from 8:00 to 11:30. The new second value 8.5 is greater than the attendance duration of 3.5. The processor subtracts the attendance duration of 3.5 from the new second value 8.5 to obtain a new second value 5. The new second value 5 is then compared with the third attendance period from 13:00 to 17:00. The new second value 5 is greater than the attendance duration of 4. The processor subtracts the attendance duration of 4 from the new second value 5 to obtain a new second value 1. The new second value 1 is then compared with the fourth attendance period from 18:00 to 23:00. At this time, the new second value 1 is less than the attendance duration of 5. The processor can then determine the corresponding fourth attendance period, 18:00-23:00, as the second attendance period, and set the final second value of 1 as the target value. Starting from the beginning of the second attendance period at 18:00, the processor can increment the target value by 1 to obtain the time 19:00 within the target calendar day of September 2nd, corresponding to the second starting coordinate. In other words, 19:00 on September 2nd represents the target calendar day and the time within that day corresponding to the second starting coordinate.
[0051] In one embodiment, determining multiple start-up time periods within the available working time periods of the target workstation on the time axis based on the single processing time duration, and determining the second start coordinate and second end coordinate of each start-up time period on the time axis, includes: obtaining the available working time periods for each target workstation; determining the first available working time period closest to zero among all available working time periods; if the first available working time period is less than the single processing time duration, marking the first available working time period as temporarily unavailable, and returning to the step of determining the first available working time period closest to zero among all available working time periods; if the first available working time period is greater than or equal to the single processing time duration, obtaining inventory data within the factory, wherein the inventory data includes a bill of materials and material quantities; if the inventory data meets the single processing time duration of the target process, starting from the moment closest to zero among the first available working time periods, determining the time period corresponding to the single processing time duration as the start-up time period for the target process, and returning to the step of determining the first available working time period closest to zero among all available working time periods, until the start-up time periods within all available working time periods are determined.
[0052] The processor can determine multiple start-up time periods within the available working time period of the target workstation on the time axis based on the single processing time, and determine the second start coordinate and second end coordinate of each start-up time period on the time axis. The processor can determine the time axis corresponding to each target workstation based on the first available working time period within the target scheduling time period, and obtain the available working time period on the time axis of each target workstation. For multiple target workstations, the processor can determine the first available working time period closest to the zero point of the time axis among all available working time periods, and compare the first available working time period with the single processing time. If the first available working time period is less than the single processing time, the first available working time period is marked as temporarily unavailable, and the processor re-determines the first available working time period closest to the zero point among all available working time periods. If the first available working time period is greater than or equal to the single processing time, the processor can obtain the inventory data in the factory, including the bill of materials and material quantities. If the inventory data meets the single processing time of the target process, the processor can start from the moment closest to the zero point within the first available working time period and determine the time period corresponding to the single working time period as the start-up time period for the target process. Then return to the step of determining the first available working time slot closest to zero among all available working time slots, until the start time slots within all available working time slots are determined. For example, suppose there are two target workstations, each with a corresponding timeline. The processor can obtain the available working time slots on the timeline corresponding to each target workstation. Suppose the coordinates of the available working time slots on the timeline corresponding to the target scheduling time slots for target workstation A are 2-3, 6-10, 15-100, and the coordinates of the available working time slots on the timeline corresponding to the target scheduling time slots for target workstation B are 4-7, 10-15, 35-135.The processor can determine that the available working time segment 2-3 at target station A is the first available working time segment closest to the zero point. Assuming a single processing time is 4 hours, the available working time segment 2-3 is less than the single processing time, so the processor can mark 2-3 as temporarily unavailable and continue searching. At this time, the available working time segment 4-7 at target station B is the first available working time segment closest to the zero point. Since this available working time segment is less than the single processing time, it is also marked as temporarily unavailable, and the search continues for the available time segment closest to the zero point. At this time, 6-10 at target station A is the most... The processor identifies the nearest available working time period, which is equal to the single processing time. Assuming the current factory inventory data meets the single processing time requirement, the processor can determine 6-10 as the start time period for the target process and continue searching for the first available working time period. At this point, 10-15 at target station B is the first available working time period that meets the condition and is greater than the single processing time. The processor then identifies 10-14 as the start time period for the target process, starting from the time 10 closest to zero within 10-15. Since 14-15 is not currently occupied, it is the available working time period for target station B. The processor can then return to the step of determining the first available working time period closest to zero among all available working time periods until the start time periods within all available working time periods are determined.
[0053] In one embodiment, attendance data includes multiple attendance time periods for any given natural day. For any target workstation, determining the first available working hours for the target workstation within the target scheduling time period based on the attendance data includes: determining multiple third attendance time periods for all natural days within the target scheduling time period based on the attendance data; determining the second attendance time corresponding to each third attendance time period; and determining the sum of all second attendance times as the first available working hours.
[0054] Attendance data can include multiple attendance time periods for any given natural day. The processor can determine multiple third attendance time periods for all natural days within the target scheduling period based on the attendance data, and determine the second attendance duration corresponding to each third attendance time period. The sum of all second attendance durations is then determined as the first available working time.
[0055] In one embodiment, determining the first start time and the first end time of the natural time period during which the target workstation is occupied within the target scheduling time period includes: acquiring the processing resources corresponding to each workstation; determining the natural time period during which each processing resource is occupied within the target scheduling time period; and determining the natural time period during which any processing resource is occupied as the natural time period during which the workstation is occupied.
[0056] When determining the natural time period during which a target workstation is occupied within the target scheduling time period, the processor can obtain the processing resources corresponding to each workstation. These processing resources can include processing equipment, operators, etc., corresponding to the workstation. The processor can determine the natural time period during which each processing resource is occupied within the target scheduling time period. Since any processing resource at a workstation is occupied, that workstation cannot process the target process. For example, if an operator is occupied, even if the equipment is available, there is no one to operate the equipment, and the target process cannot be processed. Therefore, the processor can determine the natural time period during which any processing resource is occupied as the natural time period during which the workstation is occupied.
[0057] In one embodiment, the method further includes: for any target workstation, generating a Gantt chart of the target process's scheduling plan within the target scheduling time period based on the target process's scheduling plan.
[0058] After the processor determines the scheduling plan for the target workstation, it can generate a Gantt chart for each target workstation based on the scheduling plan of the target process within the target scheduling time period, so that users can view it.
[0059] In one embodiment, a processor is provided, configured to perform any of the above-described workstation scheduling methods.
[0060] The above technical solution obtains the available working time for each workstation, determines the timeline for each target workstation, and then encodes the natural time when the workstation is occupied to determine the coordinates of the occupied natural time period on the timeline. This allows the determination of available working time periods based on the time of a single processing cycle. The available working time periods on the timeline are then arranged to obtain the start-up time periods, and the coordinates of the start-up time periods are decoded to obtain the shift schedule. By encoding time in different dimensions, different natural times can be scheduled using the same timeline, improving the APS system's ability to integrate factory resources and enabling the APS system to quickly schedule shifts based on different resources.
[0061] In one embodiment, a machine-readable storage medium is provided, on which instructions are stored, which, when executed by a controller, cause the controller to be configured to perform a workstation scheduling method according to any one of the foregoing.
[0062] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0063] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 2 As shown. The computer device includes a processor A01, a network interface A02, memory (not shown), and a database (not shown) connected via a system bus. The processor A01 provides computing and control capabilities. The memory includes internal memory A03 and a non-volatile storage medium A04. The non-volatile storage medium A04 stores an operating system B01, a computer program B02, and a database (not shown). The internal memory A03 provides an environment for the operation of the operating system B01 and the computer program B02 stored in the non-volatile storage medium A04. The database stores relevant factory data and data input by operators. The network interface A02 communicates with external terminals via a network connection. When executed by the processor A01, the computer program B02 implements a workstation scheduling method.
[0064] Figure 1 This is a flowchart illustrating a workstation scheduling method in one embodiment. It should be understood that, although... Figure 1 The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order in which these steps are executed, and they can be performed in other orders. Figure 1 At least some of the steps in the process may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least some of the sub-steps or stages of other steps.
[0065] This application provides an apparatus, including a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it performs the following steps: acquiring process information of processes within a factory and attendance data for each workstation, wherein the process information includes workstations corresponding to the processes; determining, based on production needs, the target process within the processes, at least one target workstation corresponding to the target process, and the single processing time for each target workstation for the target process; for any target workstation, determining, based on the attendance data, the first available working time of the target workstation within the target scheduling period; determining the time axis of the first available working time of the target workstation within the target scheduling period, wherein the zero point of the time axis is the start time when the target workstation first starts working within the target scheduling period; and determining the natural time period occupied by the target workstation within the target scheduling period, where the natural time period refers to the first natural day within the corresponding natural day. The time period from a start time to a first end time is defined; the first start time and the first end time are encoded to determine the first start coordinates and the first end coordinates on the time axis, respectively; all other time periods on the time axis except for the time period between the first start coordinates and the first end coordinates are defined as the available working time periods for the target workstation; multiple start time periods are determined within the available working time periods on the time axis for the target workstation based on the single processing time, and the second start coordinates and the second end coordinates on the time axis are determined for each start time period; for any start time period, the second start coordinates and the second end coordinates of the start time period are decoded to determine the corresponding target calendar day, as well as the second start time and the second end time of the target calendar day; the shift schedule for the target workstation for the target process is determined based on the second start time and the second end time of each target calendar day.
[0066] In one embodiment, attendance data includes multiple attendance time periods for any given natural day. Encoding a first start time and a first end time to determine the first start coordinate and the first end coordinate on the time axis, respectively, for the first start time and the first end time, includes: determining a first natural day corresponding to the first start time or the first end time; for any one of the first start time and the first end time, determining a first attendance time period within the first natural day based on the attendance data; determining a second working duration between the start time and the end time of the first attendance time period, and summing the working durations of each attendance time period within the first natural day prior to the first attendance time period to obtain a third working duration; obtaining the start date of the target scheduling time period and determining the number of days between the first natural day and the start date; determining a second available working duration for the target workstation on each natural day within the target scheduling time period based on the attendance data; determining a fourth working duration by multiplying the second available working duration by the number of days; and determining the coordinates of the moment on the time axis by summing the second working duration, the third working duration, and the fourth working duration.
[0067] In one embodiment, for any given work period, decoding the second start coordinate and the second end coordinate of the work period to determine the corresponding target natural day, and determining the second start time and the second end time of the target natural day, includes: determining the coordinate value corresponding to any one of the second start coordinate and the second end coordinate; determining the second available working hours for the target workstation on each natural day within the target work schedule period based on attendance data; dividing the coordinate value by the second available working hours and rounding it to obtain a first value N, and determining the remainder after rounding as the second value, wherein the first value N and the second value are constants; extending the start date within the target work schedule period by N days to determine the target natural day corresponding to the coordinate; and determining the second start time and the second end time of the target natural day based on attendance data. For each attendance period within the target calendar day, determine the attendance duration for each attendance period. Starting from the first attendance period of the target calendar day, sequentially compare the second value with the attendance duration of each attendance period. If the second value is greater than the first attendance duration of the first attendance period, subtract the first attendance duration from the second value to obtain a new second value. Return to the step of sequentially comparing the second value with the attendance duration of each attendance period until the second value is less than the attendance duration of any attendance period. Determine the corresponding attendance period as the second attendance period and the corresponding second value as the target value. Starting from the beginning of the second attendance period, increase the target value to obtain the time of the target calendar day corresponding to the coordinates.
[0068] In one embodiment, determining multiple start-up time periods within the available working time periods of the target workstation on the time axis based on the single processing time, and determining the second start coordinate and second end coordinate of each start-up time period on the time axis includes: obtaining the available working time periods for each target workstation; determining the first available working time period closest to zero among all available working time periods; if the first available working time period is less than the single processing time, marking the first available working time period as temporarily unavailable, and returning to the step of determining the first available working time period closest to zero among all available working time periods; if the first available working time period is greater than or equal to the single processing time, obtaining inventory data in the factory, wherein the inventory data includes a bill of materials and material quantities; if the inventory data meets the single processing time of the target process, starting from the moment closest to zero among the first available working time periods, determining the time period corresponding to the single processing time as the start-up time period for the target process, and returning to the step of determining the first available working time period closest to zero among all available working time periods, until the start-up time periods within all available working time periods are determined.
[0069] In one embodiment, attendance data includes multiple attendance time periods for any given natural day. For any target workstation, determining the first available working hours for the target workstation within the target scheduling time period based on the attendance data includes: determining multiple third attendance time periods for all natural days within the target scheduling time period based on the attendance data; determining the second attendance time corresponding to each third attendance time period; and determining the sum of all second attendance times as the first available working hours.
[0070] In one embodiment, determining the first start time and the first end time of the natural time period during which the target workstation is occupied within the target scheduling time period includes: acquiring the processing resources corresponding to each workstation; determining the natural time period during which each processing resource is occupied within the target scheduling time period; and determining the natural time period during which any processing resource is occupied as the natural time period during which the workstation is occupied.
[0071] In one embodiment, the method further includes: for any target workstation, generating a Gantt chart of the target process's scheduling plan within the target scheduling time period based on the target process's scheduling plan.
[0072] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0073] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create a machine for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0074] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0075] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0076] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0077] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0078] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0079] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0080] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. A method for scheduling workstations, characterized in that, The method includes: Obtain process information for the processes within the factory and attendance data for each workstation, wherein the process information includes the workstations corresponding to the processes; Based on production requirements, determine the target process in the process, at least one target workstation corresponding to the target process, and the single processing time of each target workstation for the target process; For any one of the target workstations, the first available working hours of the target workstation within the target scheduling time period to be scheduled are determined based on the attendance data. Determine the time axis of the first available working hours of the target workstation within the target scheduling time period, wherein the zero point of the time axis is the start time when the target workstation starts working for the first time within the target scheduling time period; Determine the natural time period during which the target workstation is occupied within the target shift time period, wherein the natural time period refers to the time period between the first start time and the first end time within the corresponding natural day; The first start time and the first end time are encoded to determine the first start coordinates and the first end coordinates on the time axis, respectively. All time periods on the time axis other than the time period between the first start coordinate and the first end coordinate are determined as the available working time periods for the target workstation; Based on the single processing time, determine multiple start time periods within the available working time period of the target workstation on the time axis, and determine the second start coordinate and the second end coordinate of each start time period on the time axis; For any given construction period, the second start coordinate and the second end coordinate of the construction period are decoded to determine the corresponding target day, as well as the second start time and the second end time of the target day. The scheduling plan for the target workstation for the target process is determined based on the second start time and the second end time of each target natural day.
2. The workstation scheduling method according to claim 1, characterized in that, The attendance data includes multiple attendance time periods for any given natural day. Encoding the first start time and the first end time to determine the first start coordinate and the first end coordinate on the time axis, respectively, includes: Determine the first natural day corresponding to the first start time or the first end time; For either the first start time or the first end time, the first attendance period within the first natural day is determined based on the attendance data. Determine the second working time between the start time of the first working time period and the start time of the first working time period, and sum the working time of each working time period within the first natural day before the first working time period to obtain the third working time period; Obtain the start date of the target shift scheduling period and determine the number of days between the first natural day and the start date; Based on the attendance data, determine the second available working hours for the target workstation on each natural day within the target shift period; The product of the second available working time and the number of days of difference is determined as the fourth working time; The sum of the second working time, the third working time, and the fourth working time is determined as the coordinate of the moment on the time axis.
3. The workstation scheduling method according to claim 1, characterized in that, For any given construction period, decoding the second start coordinates and the second end coordinates of that construction period to determine the corresponding target day, and the second start time and the second end time of the target day include: Determine the coordinate value corresponding to either the second starting coordinate or the second ending coordinate; Based on the attendance data, determine the second available working hours for the target workstation on each natural day within the target shift period; Divide the coordinate value by the second available working time and round it to obtain the first value N, and determine the remainder after rounding as the second value, wherein the first value N and the second value are constants; The start date within the target scheduling period is extended by N days to determine the target natural day corresponding to the coordinates; Based on the attendance data, determine each attendance time period within the target natural day, and determine the attendance duration for each attendance time period; Starting from the first attendance period of the target natural day, the second value and the attendance duration of each attendance period are compared sequentially; If the second value is greater than the first attendance duration of the first attendance period, the second value is reduced by the first attendance duration to obtain a new second value. Then, the process of comparing the second value with the attendance duration of each attendance period is repeated until the second value is less than the attendance duration of any attendance period. The corresponding attendance period is then determined as the second attendance period, and the corresponding second value is determined as the target value. Starting from the beginning of the second attendance period, the target value is incremented to obtain the time of the target natural day corresponding to the coordinates.
4. The workstation scheduling method according to claim 1, characterized in that, The step of determining multiple start-up time periods within the available working time period of the target workstation on the time axis based on the single processing time, and determining the second start coordinate and second end coordinate of each start-up time period on the time axis, includes: Obtain the available working time slots for each target workstation; Determine the first available working time segment that is closest to the zero point among all available working time segments; If the first available working time period is less than the single processing time, mark the first available working time period as temporarily unavailable, and return to the step of determining the first available working time period closest to the zero point among all available working time periods; If the first available working time period is greater than or equal to the single processing time, the inventory data in the factory is obtained, wherein the inventory data includes a bill of materials and material quantities; If the inventory data meets the single processing time of the target process, starting from the moment closest to zero in the first available working time, the time period corresponding to the single processing time is determined as the start time period for the target process, and the process returns to the step of determining the first available working time period closest to zero in all available working time periods, until the start time period in all available working time periods is determined.
5. The workstation scheduling method according to claim 1, characterized in that, The attendance data includes multiple attendance time periods for any given natural day. Determining the first available working hours for any given target workstation within the target scheduling time period based on the attendance data includes: Based on the attendance data, multiple third attendance periods are determined for all natural days within the target scheduling period; Determine the second attendance duration corresponding to each third attendance period; The sum of all second attendance hours is determined as the first available working hours.
6. The workstation scheduling method according to claim 1, characterized in that, Determining the first start and first end times of the natural time period during which the target workstation is occupied within the target scheduling time period includes: Obtain the processing resources corresponding to each workstation; Determine the natural time period during which each processing resource is occupied within the target scheduling time period; The natural time period during which any processing resource is occupied is defined as the natural time period during which the workstation is occupied.
7. The workstation scheduling method according to claim 1, characterized in that, The method further includes: For any target workstation, a Gantt chart of the target process's scheduling plan for the target scheduling period is generated based on the scheduling plan of the target process.
8. A processor, characterized in that, It is configured to perform the workstation scheduling method according to any one of claims 1 to 7.
9. A workstation scheduling device, characterized in that, The device includes the processor as described in claim 8.
10. A machine-readable storage medium storing instructions thereon, characterized in that, When executed by a processor, this instruction causes the processor to be configured to perform the workstation scheduling method according to any one of claims 1 to 7.