Method for controlling an elevator
By applying artificial neural networks in the elevator control system, processing sensor data and generating control commands, the problem of complexity of traditional elevator control algorithms in super-high-rise buildings is solved, and more efficient elevator transportation and lower passenger waiting time is achieved.
Patent Information
- Application Number
- CN202380054618.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-07-19
- Filing Date
- 2023-07-13
- Publication Date
- 2025-03-28
AI Technical Summary
In super high-rise buildings, when using traditional elevator control algorithms for trip scheduling, it is very complex and it is difficult to effectively optimize the elevator transportation efficiency and passenger waiting time.
The elevator control is performed using artificial neural network. By generating input data, the sensor data is converted into the output value indicating the control command, and the actual control command is selected based on the output value to optimize the elevator's trip scheduling.
It improves the transportation efficiency of elevators, reduces the waiting time for passengers, and enhances the overall control efficiency of elevators.
Smart Images

Figure CN119731102A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to a method for controlling an elevator. The invention also relates to an elevator controller, a computer program and a computer-readable medium for performing at least one of these methods. Background Art
[0002] An elevator may include one or more cars for transporting people and / or objects between different floors of a building. Given a list of calls indicating desired floors, the elevator controller of the elevator needs to be able to determine the order of floors at which the car(s) should stop in order to fulfill the calls in an efficient manner. This may also be referred to as trip scheduling.
[0003] Especially in very high-rise buildings with many floors and multiple elevators operating simultaneously, solving the trip scheduling problem using traditional elevator control algorithms, which are usually based on a set of known rules, can become very complex. In such cases, machine learning models can be used to make better control decisions. Such models are usually trained using reinforcement learning, where the actions of a simulated elevator (the "agent") are evaluated with rewards, and the algorithm controlling the agent (e.g., in the form of an artificial neural network) is optimized based on the rewards so that future control decisions are better than past control decisions.
[0004] US 5,767,461 A describes a method for controlling elevators having cars located in separate elevator shafts using an artificial neural network. Summary of the invention
[0005] It can be seen that the object of the invention is to improve the efficiency of an elevator controller which uses an artificial neural network to process sensor data indicating the current state of the elevator. The high efficiency of the elevator controller is reflected in particular in low waiting times for passengers and / or high transport capacity. Another object of the invention may be to provide a corresponding method for controlling an elevator, a corresponding elevator controller, a corresponding elevator, a corresponding computer program and a corresponding computer-readable medium.
[0006] These objects are achieved by the subject-matter of the independent claims. Advantageous embodiments are defined in the dependent claims and in the following description and the drawings.
[0007] A first aspect of the invention relates to a computer-implemented method for controlling an elevator, wherein the elevator comprises a car arranged to be movable between different floors of a building. The method comprises: generating input data using the method described below; inputting the input data into an artificial neural network trained to convert the input data into at least one output value indicating a control command from a set of possible control commands for controlling the elevator; selecting one of the possible control commands as an actual control command using the at least one output value; applying the actual control command.
[0008] Examples of possible control commands are "go up", "go down", "go to next floor", "go to floor X", or, if the elevator comprises two or more cars, "assign call 1 to car A", "assign call 2 to car B", etc. In other words, the output value(s) may be used to control the movement of each car and / or to assign calls to cars.
[0009] Applying the actual control command may cause the car to fulfill the current call, for example to stop at the floor indicated by the current call, and / or to assign the current call to a different car of the elevator (if the elevator has more than one car).
[0010] For example, the artificial neural network may calculate an output value, such as a Q value, for each possible control command. In this case, the actual control command may be the possible control command corresponding to the highest output value (eg, the highest Q value).
[0011] The input data of the method according to the first aspect of the invention is generated using a computer-implemented method for processing sensor data from a sensor system of an elevator, wherein the elevator comprises a car arranged to be able to move between different floors of a building and an elevator controller for controlling the elevator, and wherein the elevator controller is configured to execute an artificial neural network, the artificial neural network being trained to convert the input data into at least one output value indicating a possible control command for controlling the elevator. The method comprises: receiving sensor data at the elevator controller, wherein the sensor data comprises a current position of the car relative to the floor, a current direction of movement of the car, and a list of current calls indicating the floors at which the car should stop; using the current position and the current direction of movement to convert the current calls into a set of arrays, wherein each array stores a variable indicating the floors at which the car should stop during a trip in one direction to the lowest floor or the highest floor of the building, wherein the number of arrays is a function of the number of trips required for the car to fulfill the current call; generating the input data by concatenating or connecting the arrays.
[0012] A second aspect of the invention relates to a computer-implemented method for controlling an elevator, wherein the elevator comprises different cars arranged to be movable along different vertical axes between different floors of a building. The method comprises: generating input data using the method described below; inputting the input data into an artificial neural network, the artificial neural network being trained to convert the input data into one output value for each car, wherein the output value indicates a probability and / or tendency of a car to be assigned to a new call indicating a desired floor of the building; determining one of the cars as a selected car using the output value; and assigning the new call to the selected car.
[0013] For example, the output value may be a Q value. In this case, the selected car may be the car corresponding to the highest Q value.
[0014] With regard to the method according to the third aspect of the invention, the artificial neural network may have been trained using training data generated by simulating an environment in which at least one car of an elevator moves between different floors of a building in response to calls indicating floors at which the car should stop.
[0015] With regard to the method according to the fourth aspect of the invention, the artificial neural network may have been trained using training data generated by simulating an environment in which different cars of an elevator move along different vertical axes between different floors of a building in response to calls indicating the floors at which the cars should stop.
[0016] In either case, the environment can be considered as a computer computational space in which the elevator acts as a virtual agent. The environment can have the same and / or similar characteristics as a real elevator and / or a real building in which the real elevator is installed.
[0017] As an example, the simulation of the environment may include the following components: elevator simulation, traffic simulation, interaction between elevator simulation and traffic simulation. The elevator simulation may be configured with at least one of the following parameters: maximum speed, acceleration, door opening time, door closing time, minimum door opening time, car capacity. The traffic simulation may be performed according to a specific traffic pattern that determines the local and / or temporal distribution of calls to be fulfilled by the elevator. For example, as described above, each call may be characterized by a unique ID, a timestamp, a starting floor, and a destination floor. During the simulation, the traffic pattern may change. The simulation of the interaction between the elevator and the call (i.e., the passenger) may be configured with parameters such as waiting time (i.e., the time the passenger waits before entering the car), travel time (i.e., the time the passenger travels before leaving the car), or destination time (i.e., the total time spent fulfilling the call).
[0018] Typically, the agent can be configured to receive observations of the environment at each simulation step and perform actions based on the observations, such as controlling the car(s) and / or assigning a new call to one of the cars. In reaction, the environment can update its state and emit observations of its updated state, as well as rewards for training the agent to improve its actions in future simulation steps.
[0019] Rewards can be positive, negative, or zero. For example, a positive reward value could indicate a "more useful" action, while a negative reward value could indicate a "less useful" action. Rewards can be calculated at regular intervals, or only in certain circumstances, such as when the environment is observed to transition from the current state to the next state.
[0020] The environmental state can be considered as a combination of both the elevator state and the traffic state. For example, the elevator state can be defined by at least one of the following parameters: the current floor of each car, the current moving direction of each car, the current door state of each car (open, moving, closed), the current number of passengers in each car, the next reachable floor of each car. For example, the traffic state can be defined by at least one of the following parameters: active calls from and / or to each floor, the current number of passengers in each car, the current number of passengers waiting on each floor.
[0021] Actions may be chosen with some degree of randomness during training, for example by using an epsilon-greedy algorithm. The degree of randomness may change, and in particular decrease, as training proceeds.
[0022] It is possible to use different artificial neural networks to assign a new call to one of the cars and control the movement of the cars.
[0023] The methods described above and below may be automatically performed by a processor.
[0024] The input data of the method according to the second aspect of the invention are generated by a computer-implemented method for processing sensor data from a sensor system of an elevator, wherein the elevator comprises different cars arranged to be movable along different vertical axes between different floors of a building and an elevator controller for controlling the elevator, wherein the elevator controller is configured to execute an artificial neural network trained to convert the input data into one output value for each car, and wherein the output value indicates a probability and / or tendency of a car to be assigned to a new call. The method comprises: receiving sensor data at an elevator controller, wherein the sensor data comprises a current position of each car relative to a floor, a current direction of movement of each car, a list of current calls assigned to the car, and a new call to be assigned to one of the cars, wherein each call indicates a desired floor of a building; performing the following conversion steps for each car, assuming that a new call is assigned to the car: using the current position and current direction of movement of the car, converting the current call assigned to the car into a first set of arrays, and converting the new call into a second set of arrays, wherein each array stores variables indicating the floors at which the car should stop during a trip in one direction to the lowest floor or the highest floor of the building, wherein the number of arrays in the first set is a function of the number of trips required for the car to fulfill the current call, wherein the number of arrays in the second set is a function of the number of trips required for the car to fulfill the new call; generating input data by concatenating or connecting arrays from different conversion steps, in particular from all conversion steps.
[0025] The artificial neural network may be, for example, a multilayer perceptron (MLP), a convolutional neural network (CNN), a recurrent neural network (RNN), a long short-term memory (LSTM), a graph neural network (GNN), or a combination of at least two of these examples. In particular, the artificial neural network may have been trained using a policy-based and / or value-based reinforcement learning algorithm.
[0026] The output value can be a value from a discrete and / or continuous range of values. For example, the output value can be a Q value or an output value. The output value can also be a percentage or a Boolean value between 0 and 1.
[0027] A call may include one or more car operating panel (COP) calls and / or one or more landing operating panel (LOP) calls. For example, each call may be defined by a unique ID, a timestamp, an origin floor (especially for LOP calls only), and a destination floor.
[0028] The current location may be the ID of the floor on which the car is currently located or a floor nearby.
[0029] The number of arrays in the same group may be a function of the minimum number of direction changes required for the car to fulfill the call(s) associated with these arrays. In particular, the number of arrays in the same group may be equal to the number of trips required for the car to fulfill the call(s) associated with these arrays.
[0030] For example, each array may store a variable for each floor, where the variable indicates whether the car should stop at that floor. In other words, arrays of the same group and / or arrays of different groups may store the same number of variables. For example, the variables may be set to 1 for "stop" and 0 for "not stop".
[0031] The number of required trips can be determined by assuming that the car follows a known single-car control logic, such as collective selective or down-selective control logic. In this case, no more than three trips in alternating directions may be required for a car to fulfill all calls assigned to it. Therefore, a set of no more than three arrays, one for each trip, can be generated to encode the stops of the car.
[0032] This significantly reduces the size of input data compared to traditional methods and helps process sensor data in a more efficient manner.
[0033] In particular, the input data resulting from concatenating or connecting the arrays may be or include a vector whose length is proportional to the number of floors n, whereas a vector obtained by conventional methods (as described below) may be much longer, for example having a length proportional to n. 2 Proportional length.
[0034] A simple way to encode a car call may be to combine the following three components.
[0035] 1) All the LOP calls assigned to the car can be set as origin-destination tuples and aggregated into a (two-dimensional) origin-destination matrix. This matrix can then be converted into a length n 2 The first vector of , where n is the number of floors in the building.
[0036] 2) All new LOP calls to be assigned to the car can be converted into a length n LOP call in the same way as described in 1). 2 In particular, only one new LOP call is made at a given time. If there are more than one LOP calls at the same time, they are processed one after the other in sequence.
[0037] 3) All car operating panel (COP) calls from the car can be directly stored in a third vector of length n, since there is no need to remember the starting point of the COP call.
[0038] Then, the first vectors, the second vectors and the third vectors of all cars may be connected in series or concatenated to form an observation vector to be processed by the artificial neural network.
[0039] A third aspect of the present invention relates to an elevator controller, comprising a processor configured to perform at least one of the above and below methods. The elevator controller may include hardware and / or software modules. In addition to the processor, the elevator controller may also include a memory and one or more data communication interfaces for data communication with peripheral devices.
[0040] A fourth aspect of the invention relates to an elevator. The elevator comprises: a car arranged to be able to move between different floors of a building; a sensor system adapted to provide sensor data, the sensor data comprising the current position of the car relative to the floors, the current direction of movement of the car and a list of current calls indicating the floors at which the car should stop; an elevator controller as described above and below, wherein a processor of the elevator controller is configured to perform the method according to the first aspect of the invention.
[0041] Alternatively, the elevator comprises: different cars, which are arranged to be able to move along different vertical axes (or in other words, in different shafts) between different floors of a building; a sensor system, which is suitable for providing sensor data, the sensor data including the current position of each car relative to the floor, the current movement direction of each car, a list of current calls assigned to the cars and new calls to be assigned to one of the cars, wherein each call indicates a desired floor of the building; an elevator controller as described above and below, wherein the processor of the elevator controller is configured to perform the method according to the second aspect of the invention.
[0042] Other aspects of the invention relate to a computer program comprising instructions which, when executed by a processor, cause the processor to perform at least one of the methods described above and below, and to a computer-readable medium storing the computer program.
[0043] The computer readable medium may be a volatile or non-volatile data storage device. For example, the computer readable medium may be a hard drive, a USB (Universal Serial Bus) storage device, a RAM (Random Access Memory), a ROM (Read Only Memory), an EPROM (Erasable Programmable Read Only Memory) or an EEPROM (Electrically Erasable Programmable Read Only Memory), a flash memory, or a combination of at least two of these examples. The computer readable medium may also be a data communication network such as the Internet or the cloud for downloading program code.
[0044] It should be noted that features of the methods described above and below may also be features of the elevator controller, the computer program and the computer readable medium (and vice versa).
[0045] Without limiting the invention, embodiments of the invention may be viewed as being based upon the ideas and findings described below.
[0046] According to one embodiment, the arrays of the same group may include: a first array storing variables indicating the floors that the car should stop at during a first trip in a first direction to the lowest or highest floor of a building; a second array storing variables indicating the floors that the car should stop at during a second trip in a second direction opposite to the first direction to the lowest or highest floor of the building; and a third array storing variables indicating the floors that the car should stop at during a third trip in the first direction to the lowest or highest floor of the building. The second trip may be immediately after the first trip, and / or the third trip may be immediately after the second trip, that is, there may be no other trips for the car between the first trip and the second trip and / or between the second trip and the third trip. Each trip may end at the lowest or highest floor of the building. In other words, assuming a control logic according to which all calls assigned to a car can be fulfilled in no more than three trips in which the car reaches the lowest or highest floor of the building in alternating directions, no more than three arrays are needed to encode the corresponding stops of the car. This improves the efficiency of the method.
[0047] The same group of arrays may also include less than or more than three of the arrays. In other words, a control logic may be assumed according to which all calls assigned to a car may be fulfilled in less than or more than three trips of the car in alternating directions to the lowest or highest floor of the building.
[0048] According to one embodiment, the first direction may be the current moving direction. For example, if the current moving direction is "upward", the first direction may also be "upward".
[0049] According to one embodiment, the first trip may start from the current location. The current location may be the lowest floor or the highest floor, or a location between the lowest floor and the highest floor, such as the current floor. In the latter case, the first trip may be shorter than each of the second trip and the third trip.
[0050] According to one embodiment, the second trip may start at the same floor as the floor where the first trip ends. For example, the second trip may start at the lowest floor or the highest floor. If the second trip starts at the lowest floor, it may end at the highest floor (and vice versa).
[0051] According to one embodiment, the third trip may start at the same floor as the floor where the second trip ends. For example, the third trip may start at the lowest floor or the highest floor. If the third trip starts at the lowest floor, it may end at the highest floor (and vice versa).
[0052] According to one embodiment, each array may be one-dimensional. Such a one-dimensional array may also be referred to as a vector. Shorter one-dimensional arrays may then be serially connected or concatenated into longer one-dimensional arrays.
[0053] According to one embodiment, the arrays can be connected in series or connected into a one-dimensional array. This can be achieved by connecting in series or connecting shorter one-dimensional arrays and / or converting a multi-dimensional array into a one-dimensional array.
[0054] According to one embodiment, the input data is a one-dimensional array, ie a vector.
[0055] According to one embodiment, the input data may include additional data indicating the current state of the elevator. For example, the additional data may include at least one of the following data: current position (e.g., "0", "1", "2"), current moving direction (e.g., "up", "down", "parked"), current occupancy of each car (e.g., "full", "not full"), door status (e.g., "opening", "opened", "closed"), direction after landing (e.g., "none" when the elevator is moving; if the elevator is "parked" and the door is moving: "up" or "down"). This may improve the accuracy of the method. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] Advantageous embodiments of the invention are described in more detail below with reference to the accompanying drawings. Neither the description nor the drawings should be interpreted as limiting the invention.
[0057] Figure 1 An elevator according to an embodiment of the invention is shown.
[0058] Figure 2 An elevator controller according to an embodiment of the present invention is shown.
[0059] Figure 3 An elevator controller according to an embodiment of the present invention is shown.
[0060] Figure 4 A single car control logic for processing sensor data in a method according to an embodiment of the present invention is illustrated.
[0061] The figures are schematic and not drawn to scale. The same reference symbols in the figures denote the same features or features having the same effect. DETAILED DESCRIPTION
[0062] Figure 1 An example of an elevator 1 installed in a building 3 having a first floor F0, a second floor F1 and a third floor F2 and three vertical shafts 5 connecting the three floors F0, F1, F2 to each other is shown. The elevator 1 includes three cars 7 for transporting passengers 9 between the floors F0, F1, F2. Each car 7 is arranged to be movable vertically along one of the three shafts 5.
[0063] The elevator 1 further comprises an actuator system 11 adapted to control the movement of each car 7. The actuator system 11 comprises, in this example, one electric drive ("M") for each car 7.
[0064] In addition, the elevator 1 comprises an elevator controller 13 for controlling the elevator 1 and a sensor system 15 for detecting the current state of the elevator 1. The elevator controller is referred to as the controller in the following. The controller 13 can be configured to generate control commands 17 for controlling the actuator system 11 (i.e., the electric drive) based on sensor data 19 provided by the sensor system 15.
[0065] The controller 13 includes a processor 21 and a memory 23. The processor 21 may be configured to perform one or both of the following methods by executing one or more computer programs stored in the memory 23.
[0066] like Figure 2 As shown, the controller 13 may be configured to process the sensor data 19 separately for each car 7 using the following method.
[0067] In a first step, sensor data 19 are received at the controller 13, here at the conversion module 25 of the controller 13. The sensor data 19 include the current position 27 of the car 7 relative to the floors F0, F1, F2 (e.g. "F0", "F1" or "F2"), the current direction of movement 29 of the car 7 (e.g. "up", "down" or "park"), and a list 31 of current calls assigned to the car 7. Each call indicates the floor at which the car 7 should park. For example, each call may be defined by a unique ID, a timestamp, an origin floor, and a destination floor.
[0068] In a second step, the conversion module 25 converts the items from the list 31 into a set of arrays 33a, 33b, 33c using the current position 27 and the current direction of movement 29. Each array 33a, 33b, 33c stores a variable, such as "0" or "1", indicating the floor at which the car 7 should stop during a trip in one direction to the lowest floor (F0) or the highest floor (F2) of the building 3. The number of arrays 33a, 33b, 33c included in the set is a function of the number of trips (or direction changes) required for the car 7 to fulfill all the calls stored in the list 31. In this example, each array 33a, 33b, 33c stores a variable for each of the three floors F0, F1, F2, where "1" indicates that the car 7 should stop and "0" indicates that the car 7 should not stop. The arrays 33a, 33b, 33c can then be input into the series connection module 35 of the controller 13.
[0069] In a third step, the concatenation module 35 concatenates or connects the arrays 33 a , 33 b , 33 c into input data 36 for an artificial neural network 37 executed by the controller 13 .
[0070] In this example, the one-dimensional arrays 33a, 33b, 33c are concatenated or connected into a longer (one-dimensional) vector whose length is proportional to the number of floors of the building 3. This vector can then be used as input data 36.
[0071] In a fourth step, the input data 36 may be input into a neural network 37 which has been trained to convert the input data 36 into one or more output values 39 indicating a possible control command from a set of possible control commands for controlling the elevator 1, such as "go up", "go down", "go to floor X" or "go to next floor".
[0072] In a fifth step, the control module 41 of the controller 13 can use the output value(s) 39 to select one of the possible control commands as the actual control command 17 (e.g., the possible control command corresponding to the highest output value 39), and apply the control command. This can cause the actuator system 11 to move the car 7 in a manner that fulfills the current call in the list 31.
[0073] In this example, the conversion module 25 is configured to convert the sensor data 19 into a first array 33a, a second array 33b, and a third array 33c. The first array 33a stores three variables indicating the floors that the car 7 should stop at during a first trip to F0 or F2 in the current moving direction 29. The second array 33b stores three variables indicating the floors that the car 7 should stop at during a second trip to F0 or F2 in the direction opposite to the current moving direction 29. The third array 33c stores three variables indicating the floors that the car 7 should stop at during a third trip to F0 or F2 in the current moving direction 29.
[0074] For example, a first trip may start from a floor (e.g., F1) corresponding to the current position 27 and end at F0 if the current moving direction 29 is "downward," or end at F2 if the current moving direction 29 is "upward." Then, a second trip may start from the floor where the first trip ends and end again at one of the remaining floors (i.e., F0 or F2). Then, a third trip may start from the floor where the second trip ends and end again at one of the remaining floors (i.e., F0 or F2).
[0075] This makes it possible to fulfill all calls from list 31 in only three consecutive trips and to encode the corresponding stops in only three arrays.
[0076] Processing the sensor data 19 based on this known single car control logic enables the neural network 37 to more efficiently process the input data 36, ie the information relating to the current state of the elevator 1. This may also speed up the training process.
[0077] Figure 4 It is illustrated how the arrays 33a, 33b, 33c are determined in a building 3 having five floors F0, F1, F2, F3, F4. In this example, car 7 is currently located at the highest floor F4. The current direction of movement 29 of car 7 is "down". Car 7 has two calls assigned to it: the first call defines F2 as the origin floor OF and F0 (the lowest floor) as the destination floor DF; the second call defines F1 as the origin floor OF and F4 as the destination floor DF.
[0078] The first array 33a may then define the following stops for the first run in the first direction (ie the current moving direction 29): [1, 0, 1, 0, 0]. This means that the car 7 stops at F0 and F2.
[0079] Thus, the second array 33b may define the following stops for a second trip in a second direction ("up"): [0, 1, 0, 0, 1]. This means that car 7 stops at F1 and F4.
[0080] Since both calls have been fulfilled after the first and second runs, there is no need to define any further stops for the third array 33c for the third run in the first direction: [0, 0, 0, 0, 0].
[0081] By connecting the arrays 33a, 33b, and 33c in series, the following vector can be obtained: [1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0].
[0082] Optionally, the input data 36 may include additional data 43, such as the current position 27, the current direction of movement 29, or the occupancy status (e.g. "full", "not full") of the car 7. As with the arrays 33a, 33b, 33c, the additional data 43 may be a component of a vector used as the input data 36.
[0083] Figure 3 An alternative method is illustrated which may be performed by the processor 21 of the controller 13. The method may comprise the following steps.
[0084] In a first step, sensor data 19 is received at a conversion module 25. Figure 2 Compared to the method described, the sensor data 19 now include the current position 27 and the current movement direction 29 of all three cars 7 , as well as a list 31 of current calls assigned to the cars 7 and new calls 45 assigned to one of the cars 7 .
[0085] In a second step, the conversion module 25 uses the current position 27 and the current moving direction 29 of the car 7 to perform the following conversion steps for each car 7. Assuming that a new call 45 is assigned to car 7, the current calls assigned to this car 7 from the list 31 are converted into an array 33a, 33b, 33c of a first group 47a, while the new call 45 is converted into an array 33a, 33b, 33c of a second group 47b. The first group 47a encodes the stops required by the car 7 to fulfill all the current calls assigned to it, while the second group 47b encodes the stops required by the car 7 to fulfill the new call 45. The above reference may be used to describe the conversion steps. Figure 2 and Figure 4The same single car control logic described above determines the arrays 33a, 33b, 33c. The second set 47b of arrays 33a, 33b, 33c may contain all stops of the elevators, given old calls and new calls. The second set 47b of arrays 33a, 33b, 33c may also be generated taking into account all old calls and new calls, but only retaining the stops associated with the origin and destination of the new call.
[0086] All groups 47a, 47b of arrays 33a, 33b, 33c from all three conversion steps, here 18 arrays in total, can then be input into a concatenation module 35 which concatenates or connects them into input data 36 in a third step.
[0087] In a fourth step, the input data 36 may be input into a neural network 37 which has been trained to convert the input data 36 into three output values 39, one for each car 7. Each output value 39 indicates the probability and / or tendency of the corresponding car 7 being assigned to the new call 45.
[0088] In a fifth step, the control module 41 may use the output values 39 to determine the car 7 corresponding to the highest output value 39 as the selected car and assign the new call 45 to the selected car.
[0089] Alternatively, the control module 41 may generate a control command 17 to cause the actuator system 11 to move the selected car so that the new call 45 is fulfilled in addition to other calls assigned to the selected car.
[0090] The above modules may be software and / or hardware modules.
[0091] Finally, it is worth noting that terms such as "comprises", "comprising", "having" or "with" do not exclude other elements or steps and that the indefinite article "a" or "an" does not exclude a plurality. It should also be noted that features or steps described with reference to one of the above embodiments can also be used in combination with features and steps described with reference to any other embodiment described above. Reference signs in the claims shall not be construed as limiting the scope of the claims.
Claims
1. A computer-implemented method for controlling an elevator (1), wherein: The elevator (1) comprises a car (7) arranged to be movable between different floors (F0, F1, F2, F3, F4) of a building (3) and an elevator controller (13) for controlling the elevator (1), wherein the elevator controller (13) is configured to execute an artificial neural network (37) trained to convert input data (36) into at least one output value (39) indicating a possible control command for controlling the elevator (1), wherein the method comprises: Input data (36) are generated using a computer-implemented method for processing sensor data (19) from a sensor system (15) of the elevator (1), wherein the steps for generating the input data (36) include: - receiving the sensor data (19) at the elevator controller (13), wherein the sensor data (19) comprises a current position (27) of the car (7) relative to a floor (F0, F1, F2, F3, F4), a current direction of movement (29) of the car (7) and a list (31) of current calls indicating floors (F0, F1, F2, F3, F4) at which the car (7) should stop; It is characterized in that The step of generating input data (36) further comprises: - using the current position (27) and the current direction of movement (29) to convert the current call into a set of arrays (33a, 33b, 33c), wherein each array (33a, 33b, 33c) stores variables indicating the floors (F0, F1, F2, F3, F4) at which the car (7) should stop during a trip in one direction to the lowest floor (F0) or the highest floor (F2, F4) of the building (3), wherein the number of arrays (33a, 33b, 33c) is a function of the number of trips required for the car (7) to fulfill the current call; - generating said input data (36) by concatenating said arrays (33a, 33b, 33c), and The method for controlling an elevator (1) further comprises: inputting the input data (36) into the artificial neural network (37), the artificial neural network being trained to convert the input data (36) into at least one output value (39) indicative of a control command from a set of possible control commands for controlling the elevator (1); selecting one of the possible control commands as an actual control command (17) using the at least one output value (39); The actual control command (17) is applied.
2. A computer-implemented method for controlling an elevator (1), wherein: The elevator (1) comprises different cars (7) arranged to be movable along different vertical axes between different floors (F0, F1, F2, F3, F4) of a building (3) and an elevator controller (13) for controlling the elevator (1), wherein the elevator controller (13) is configured to execute an artificial neural network (37) trained to convert input data (36) into one output value (39) for each car (7), wherein the output value (39) indicates the probability and / or tendency of the car (7) to be assigned to a new call (45), wherein the method comprises: Input data (36) are generated using a computer-implemented method for processing sensor data (19) from a sensor system (15) of the elevator (1), wherein the steps for generating the input data (36) include: - receiving the sensor data (19) at the elevator controller (13), wherein the sensor data (19) comprises a current position (27) of each car (7) relative to a floor (F0, F1, F2, F3, F4), a current direction of movement (29) of each car (7), a list (31) of current calls assigned to the cars (7), and new calls (45) to be assigned to one of the cars (7), wherein each call indicates a desired floor (F0, F1, F2, F3, F4) of the building (3); It is characterized in that The step of generating input data (36) further comprises: - performing the following conversion steps for each car (7), assuming that the new call (45) is assigned to the car (7): converting the current call assigned to the car (7) into an array (33a, 33b, 33c) of a first group (47a) using the current position (27) and the current moving direction (29) of the car (7), and converting the new call (45) into an array (33a, 33b, 33c) of a second group (47b), wherein each array (33a, 33b, 33c) stores a number indicating the position of the car (7) a variable of floors (F0, F1, F2, F3, F4) to be stopped at during a trip in one direction to the lowest floor (F0) or the highest floor (F2, F4) of the building (3), wherein the number of arrays (33a, 33b, 33c) of the first group (47a) is a function of the number of trips required for the car (7) to fulfill the current call, and wherein the number of arrays (33a, 33b, 33c) of the second group (47b) is a function of the number of trips required for the car (7) to fulfill the new call (45); - generating said input data (36) by concatenating arrays (33a, 33b, 33c) from different transformation steps, and The method for controlling an elevator (1) further comprises: inputting the input data (36) into the artificial neural network (37), the artificial neural network being trained to convert the input data (36) into an output value (39) for each car (7), wherein the output value (39) indicates a probability and / or tendency that the car (7) is to be assigned to a new call (45) indicating a desired floor (F0, F1, F2, F3, F4) of the building (3); using the output value (39) to determine one of the cars (7) as a selected car; The new call (45) is assigned to the selected car.
3. The method according to any one of the preceding claims, in, The arrays (33a, 33b, 33c) of the same set (47a, 47b) include: a first array (33a) storing variables indicating floors (F0, F1, F2, F3, F4) at which the car (7) should stop during a first trip in a first direction; a second array (33b) storing variables indicating floors (F0, F1, F2, F3, F4) at which the car (7) should stop during a second trip in a second direction opposite to the first direction; A third array (33c) stores variables indicating floors (F0, F1, F2, F3, F4) at which the car (7) should stop during a third trip in the first direction.
4. The method according to claim 3, in, The first direction is the current moving direction (29).
5. The method according to claim 3 or 4, in, The first trip starts from the current position (27).
6. The method according to any one of claims 3 to 5, in, The second trip starts at the same floor (F0, F1, F2, F3, F4) as the floor where the first trip ends; and / or The third trip starts at the same floor (F0, F1, F2, F3, F4) as the floor where the second trip ends.
7. The method according to any one of the preceding claims, in, Each array (33a, 33b, 33c) is one-dimensional; and / or The arrays (33a, 33b, 33c) are connected in series to form a one-dimensional array.
8. The method according to any one of the preceding claims, in, The input data (36) is a one-dimensional array.
9. The method according to any one of the preceding claims, in, The input data (36) include additional data (43) indicating the current state of the elevator (1).
10. An elevator controller (13), comprising a processor (21) configured to perform at least one of the methods according to any one of claims 1 to 9.
11. An elevator (1), comprising: a car (7) arranged to be movable between different floors (F0, F1, F2, F3, F4) of a building (3); a sensor system (15) adapted to provide sensor data (19), the sensor data comprising a current position (27) of the car (7) relative to a floor (F0, F1, F2, F3, F4), a current direction of movement (29) of the car (7) and a list (31) of current calls indicating floors (F0, F1, F2, F3, F4) at which the car (7) should stop; The elevator controller (13) according to claim 10; or, Different cars (7) arranged to be movable along different vertical axes between different floors (F0, F1, F2, F3, F4) of a building (3); A sensor system (15) adapted to provide sensor data (19), the sensor data comprising a current position (27) of each car (7) relative to a floor (F0, F1, F2, F3, F4), a current direction of movement (29) of each car (7), a list (31) of current calls assigned to the cars (7), and new calls (45) to be assigned to one of the cars (7), wherein each call indicates a desired floor (F0, F1, F2, F3, F4) of the building (3); An elevator controller (13) according to claim 10.
12. A computer program comprising instructions which, when executed by a processor (21) of an elevator controller (13), cause the processor (21) to perform at least one of the methods according to any one of claims 1 to 9.
13. A computer-readable medium comprising instructions which, when executed by a processor (21) of an elevator controller (13), cause the processor (21) to perform at least one of the methods according to any one of claims 1 to 9.
Citation Information
Patent Citations
Method and device for controlling operation of elevator, electronic equipment and storage medium
CN114408689A
Method for controlling an elevator
CN119486958A
Targeted call control for lifts
CN1420836A
Method and elevator scheduler for scheduling plurality of cars of elevator system in building
CN1705610A
Elevator control neural network
US5672853A