Method for improving programming efficiency based on idle time
By generating a timeline, statistics, and merging the gap in the bus advertising machine, the problem that the bus advertising machine cannot make full use of the spare time improves the efficiency of program arrangement and user experience.
Patent Information
- Application Number
- CN202411615707.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-13
- Publication Date
- 2025-01-24
AI Technical Summary
Because the bus advertising machine cannot make full use of its spare time, the subsequent advertisements cannot be effectively broadcasted, affecting the user experience.
By generating a timeline, programming programs in sequence, counting and merging time gaps, and using time gap positioning algorithms and loop algorithms to rationally utilize gap time and improve program arrangement efficiency.
Effectively use the gap time to increase the free time utilization rate during the programming process, can arrange more programs, and improve the user experience.
Smart Images

Figure CN119364068A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of multimedia, and specifically relates to a method for improving program scheduling efficiency based on idle time. Background Art
[0002] Buses are currently the main means of transportation for urban commuting, with huge passenger flow, and are therefore also an important location for outdoor streaming media advertising.
[0003] The current process of streaming media advertising on buses generally involves arranging multiple advertisements into a playback timeline based on business requirements and broadcast time, and then the screen device on the bus plays the corresponding program according to this timeline.
[0004] Generally speaking, a device can only play one program at the same time.
[0005] And because the system will randomly arrange programs into any time period, the delivery time of each program is not certain, which will result in the scheduling time of multiple programs not necessarily being continuous. When there are more programs to be arranged, there will be multiple small time gaps between the multiple programs. If at this time there is a program that is longer than the sum of the lengths of these time gaps and wants to be arranged in this time period, it will be found that although the total time is enough, in fact, because this total time is composed of various small time gaps, this program cannot be arranged.
[0006] For example, we now have an idle time period of 9:00:00-9:01:00. Suppose now a program is 20 seconds long and is included in the time period of 9:00:00-9:00:20, and another 20-second program is included in the time period of 9:00:30-9:00:50. A 10-second time gap is created between the two programs from 9:00:20-9:00:30. At this time, if another 20-second program wants to be included in the time period of 9:00:00-9:01:00, it will find that the idle time of 20 seconds is enough, but this 20 seconds is composed of two 10-second time gaps of 9:00:20-9:00:30 and 9:00:50-9:01:00, so it cannot be included.
[0007] When there are many programs involved in the arrangement, such situations where arrangements cannot be made will become more and more frequent, greatly affecting the user experience.
[0008] For example, the patent application number CN201310741089.2 provides a program schedule arrangement method and device, which solves the technical problem of how to arrange programs in program gaps (paragraphs 0003 and 0004 of the specification). Obviously, this technology only detects the gap duration, selects programs with the same time as the gap, and inserts related programs. Summary of the invention
[0009] The technical problem to be solved by the present invention is that the bus advertising machine cannot make full use of the idle time, resulting in the inability to effectively schedule the subsequent advertisements. In view of the above-mentioned defects of the prior art, a method for improving program scheduling efficiency based on idle time is provided, comprising the following steps: S01 generates a timeline; S02 all programs are sequentially compiled into the timeline according to the time sequence of the order, until a program is suspended due to insufficient scheduling time; S03 counts all the gap points on the timeline to determine whether the total length of all gaps meets the scheduling requirements. If so, all the gap collection points are calculated according to the time gap positioning algorithm; S04 uses a loop algorithm to merge each gap collection point with other gaps in turn; S05 after each gap collection point is merged, the program with insufficient scheduling time in S02 is inserted; S06 performs the above operations on other collection points in turn until the program scheduling rules are met.
[0010] According to the method for improving program scheduling efficiency based on idle time described in the present invention, in S01, a time axis with 17280 time units is generated, and each unit is equal to a duration of 5 seconds.
[0011] According to a method for improving program scheduling efficiency based on idle time described in the present invention, in S01 and S03, the time slot positioning algorithm is as follows: count all time slots and form them into a set A "A0, A1, A2..."; the number of times currently required to be scheduled is N, and the amplitude floor(A / N) = B (rounded down) is selected for each set point, the first set point is A (floor(B / 2)), the second set point subscript amplitude + B, and so on.
[0012] According to a method for improving program scheduling efficiency based on idle time described in the present invention, in S04, the loop algorithm is as follows: a for loop is implemented using a counter, the for loop will first initialize the counter, then check the loop condition before each loop, and update the counter after each loop.
[0013] According to a method for improving program scheduling efficiency based on idle time described in the present invention, in S04, the operation of merging other time slots is as follows: first, according to the order of left first and right later, near first and far later, search for available time slots to the left and right in turn; then use a moving method to move the programs between the time slots and the collection points toward the direction of the time slots.
[0014] According to the method for improving program arrangement efficiency based on idle time described in the present invention, the moving method is as follows: Now assume that program A (time axis coordinate: 6480-6484); there is a 5-second gap D in front (time axis coordinate: 6479-6480); there is a 15-second gap F (time axis coordinate: 6484-6487) behind; at this time there is a 20-second program B that needs to be arranged, then at this time we can add the time unit length 3 of the gap F behind the time axis coordinate of program A to achieve the goal of moving program A. Move program A backwards by 3 units to the position of 6483-6487. In this way, the gap F at the back automatically comes to the position of the original program A (time axis coordinate: 6480-6483), and can form a new gap of 20 seconds with gap D (time axis coordinate: 6479-6484), which meets the scheduling requirements of program B and can be included in this time. Then use the loop algorithm to perform the above operations on other collection points in turn until the program scheduling rules are met.
[0015] Compared with the related art, the method for improving program scheduling efficiency based on idle time provided by the present invention has the following beneficial effects:
[0016] The method for improving program arrangement efficiency based on idle time of the present invention reasonably utilizes the idle time and improves the utilization rate of the idle time generated in the program arrangement process through an algorithm, so that more programs can be arranged. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 is a flow chart of the present invention;
[0018] Figure 2 It is a schematic diagram of program arrangement in the present invention. DETAILED DESCRIPTION
[0019] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0020] First of all, it is explained that in the advertising system used in the present method (this system is a well-known technology, which mainly includes a display device system, a cloud program scheduling system, and a front-end data transceiver system. The display device system includes an LED screen with a display function and a 4G signal transmission system with a signal transmission function, which is generally installed in a bus or elevator; the front-end data transceiver system is a computer, which receives and stores relevant program information, uploads it to the cloud for program scheduling, and sends it to each display device system after the cloud scheduling is completed), the program duration is a multiple of 5. The advantage of this is to standardize the advertising duration and facilitate unified management.
[0021] Now, we regard a 24-hour day as a timeline, and all programs are arranged on this timeline. The programs on the timeline are moved by the moving method (this method refers to the method of moving objects or data in the program. The specific implementation depends on the type of object moved and the context, and here it specifically refers to the program unit on the timeline), and multiple time gaps that are smaller than the program arrangement length requirement are merged into a large gap, and then the program is edited.
[0022] Embodiment 1, Figure 1-2 A method for improving program scheduling efficiency based on idle time is given. The method includes the following steps:
[0023] 1. Generate a timeline with 17280 time units, each unit is equal to 5 seconds (because the program is a multiple of 5 seconds), so 86400 seconds a day corresponds to 17280 units.
[0024] 2. Now use the generated timeline to schedule multiple programs.
[0025] The basic logic of scheduling is as follows:
[0026] A program A needs to be scheduled to 9:00:00-9:00:20, so program A is scheduled to the four objects with corresponding coordinates 6480-6484 (9:00:00 is the 6480th second of the day, and based on a unit of 5 seconds, it is the 6480th unit, and so on for other times).
[0027] 3. All programs are added to the timeline in the order of order placement, until a program is suspended due to insufficient scheduling time. At this time, time gap processing is required.
[0028] 4. The time gap processing method is as follows:
[0029] 4.1. First count all the gap points on the time axis to determine whether the total duration of all gaps meets the scheduling requirements; if it does, calculate all the gap collection points based on the time gap positioning algorithm to merge other gaps.
[0030] The time gap positioning algorithm is as follows:
[0031] Count all the time gaps on this day and group them into a set A "A0, A1, A2...". The number of times that need to be arranged is N. The amplitude of each set point is floor(A / N) = B (round down). The first set point is A(floor(B / 2)), the second set point is subscripted with amplitude + B, and so on.
[0032] Once the gap collection point is determined, it cannot be merged, and can only be merged with other time gaps;
[0033] 4.2. Use the loop algorithm to merge each gap collection point with other gaps in turn.
[0034] The loop algorithm is as follows:
[0035] Use a counter to implement a for loop (a for loop is a loop statement in a programming language, and a loop statement consists of two parts: the loop body and the loop condition). The for loop will first initialize the counter, then check the loop condition before each loop, and update the counter after each loop. The counter variable is usually named i (here we generally set the length of the time slot set point list to the counter length).
[0036] The operation of merging other time slots is to first search for available time slots in the order of left first, then right, and near first, then far (i.e., first to the left, from near to far, and after completion, to the right, and then from near to far). Then, the program between the time slot and the assembly point is moved to the direction of the time slot using the moving algorithm. In this way, the original time slot and the assembly point can be combined into a large time slot (see the attached figure for explanation).
[0037] Mobile algorithm:
[0038] Now suppose program A (coordinates: 6480-6484)
[0039] There is a 5-second gap D in front (coordinates: 6479-6480).
[0040] There is a 15-second gap after that at F (coordinates: 6484-6487).
[0041] At this time, there is a 20-second program B that needs to be arranged.
[0042] At this time, we add the difference 3 between the gap F and the program position coordinates of program A to move program A backward by 3 units, so that it comes to the position 6483-6487.
[0043] In this way, the gap F at the back comes to the position of the original program A (coordinates: 6480-6483), and can form a new gap of 20 seconds with gap D (coordinates: 6479-6484), so that program B can be included in this time.
[0044] Repeat the above operations for other collection points in turn until the program scheduling rules are met.
[0045] Although the embodiments of the present application have been shown and described, those skilled in the art will appreciate that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present application, and that the scope of the present application is defined by the claims and their equivalents.
Claims
1. A method for improving program scheduling efficiency based on idle time, characterized in that: The steps include: S01 generates a timeline; S02 All programs are added to this timeline in the order of order placement, until a program is suspended due to insufficient scheduling time; S03 counts all the gap points on the time axis and determines whether the total duration of all the gaps meets the broadcast scheduling requirements. If yes, all the gap collection points are calculated according to the time gap positioning algorithm; S04 uses a cyclic algorithm to merge each gap collection point with other gaps in turn; After each gap assembly point is merged in S05, the program that has insufficient programming time in S02 is inserted; S06 performs the above operations on other collection points in turn until the program scheduling rules are met.
2. A method for improving program arrangement efficiency based on idle time according to claim 1, characterized in that: In S01, a time axis with 17280 time units is generated, and each unit is equal to a duration of 5 seconds.
3. A method for improving program arrangement efficiency based on idle time according to claim 2, characterized in that: In S01 and S03, the time gap positioning algorithm is as follows: Count all time gaps and group them into a set A "A0, A1, A2..."; The current number of arrangements required is N. The amplitude selected for each collection point is floor(A / N)=B. The first collection point is A(floor(B / 2)), the second collection point is subscripted with amplitude +B, and so on.
4. A method for improving program arrangement efficiency based on idle time according to claim 3, characterized in that: In S04, the loop algorithm is as follows: Use a counter to implement a for loop; Then, the loop condition is checked before each iteration and the counter is updated after each iteration.
5. A method for improving program arrangement efficiency based on idle time according to claim 4, characterized in that: In S04, the operation of merging other time slots is as follows: First, look for available time gaps to the left and right in the order of left first, right second, near first, far second; The moving method is then used to move the programs between the time slot and the collection point toward the time slot.
6. A method for improving program arrangement efficiency based on idle time according to claim 5, characterized in that: The moving method is as follows: Calculate the duration data of programs that do not have enough time for programming; Calculate the duration data of the current time gap; According to the order of left first then right, near first then far, the broadcast time of the programs in the timeline is adjusted horizontally; After completing several translations, a gap appears whose duration data is greater than or equal to the duration data of the program that does not have enough time to be scheduled. In this case, the program that does not have enough time to be scheduled is inserted into the adjusted time gap; Then use the loop algorithm to perform the above operations on other collection points in turn until the program scheduling rules are met.
Citation Information
Patent Citations
Program list arranging method and device
CN103747342A