Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DYNAMIC RATE MATCHING FOR MATERIAL HANDLING
Document Type and Number:
WIPO Patent Application WO/2016/028857
Kind Code:
A1
Abstract:
A method and apparatus for supplying a unit of work in a material-handling process includes a set-point of work units desired at a material-processing station and an actual measure of work units at the material-processing station. A feedback control algorithm is performed to establish the set point of work units at the material-processing station and an error between the work units at the material-processing station and the set-point of work units at the material-processing station. The feedback control algorithm also determines a desired amount of units that should be supplied to the material-processing station as a function of the error. The feedback control algorithm causes a work unit to be released from the inventory store for a particular processing station when the actual amount of work units supplied to that processing station is less than the amount of work units that should be supplied to that processing station.

Inventors:
OGDEN, Richard W. (1836 Chamberlain Avenue, S.E.Grand Rapids, Michigan, 49506, US)
Application Number:
US2015/045835
Publication Date:
February 25, 2016
Filing Date:
August 19, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
DEMATIC CORP. (507 Plymouth Ave, N.E.Grand Rapids, Michigan, 49505, US)
International Classes:
B65G1/137; G05B19/418; G06Q10/06
Foreign References:
US20070129843A12007-06-07
US20090204234A12009-08-13
US20110203231A12011-08-25
Attorney, Agent or Firm:
GARDNER, LINN, BURKHART & FLORY, LLP (2851 Charlevoix Dr, S.E. Suite 20, Grand Rapids Michigan, 49546, US)
Download PDF:
Claims:
The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:

1. A method of supplying units of work to a material -processing station in a material-handling system, said method comprising:

setting a set-point of work units desired at a material-processing station;

determining an actual measure of work units at the material-processing station; and

performing a feedback control algorithm to establish the set-point of work units at the material-processing station and an error between the work units at the material- processing station and the set-point of work units at the material-processing station; the performing further including determining a desired amount of work units that should be supplied to the material-processing station as a function of the error and releasing a work unit from the inventory store for a particular processing station when the actual amount of work units supplied to that material-processing station is less than the amount of work units that should be supplied to the material-processing station.

2. The method as claimed in claim 1 wherein the desired amount of work units that should be supplied to the material-processing station comprise the number of work units desired to be enroute to the material-processing station and the actual amount of work units supplied to that material-processing station comprises the actual number of work units enroute to the material-processing station.

3. The method as claimed in claim 1 including dynamically adjusting the set-point as a function of whether actual work units being supplied are outside of a particular range.

4. The method as claimed in claim 1 including performing said feedback control algorithm repetitively according to a particular time interval.

5. The method as claimed in claim 4 wherein said feedback control algorithm combines an integral of error values for each time interval with a scaled value of each error.

6. The method as claimed in claim 5 wherein the integral of error values gives greater weight to positive error values than to negative error values, wherein a positive error value is one in which the set-point of inventory receptacles at or near a processing station is greater than the actual number of inventory receptacles at or near that processing station and wherein a negative error value is one in which the actual number of inventory receptacles at or near a processing station is greater than the set-point of inventory receptacles at or near that processing station.

7. The method as claimed in claim 6 wherein the integral of error values is restricted to a range of values in order to limit wind-up of the integral of error values.

8. A method of supplying inventory receptacles from an inventory store to a plurality of processing stations in an order fulfillment system, said method comprising: establishing a set-point for each processing station of inventory receptacles desired to be at that particular station;

determining an actual measure for each processing station of inventory receptacles at that processing station; and

performing a feedback control algorithm for each processing station to establish the set-point for that particular processing station and an error between the inventory receptacles at that material-processing station and the set-point of inventory receptacles for that processing station;

said performing further determines a desired number of inventory receptacles that should be enroute to the processing station as a function of the error and causes an inventory receptacle to be delivered from the inventory store for a processing station if the actual number of inventory receptacles enroute to that processing station is fewer than the desired number of inventory receptacles that should be enroute to that processing station.

9. The method as claimed in claim 8 wherein the material-handling system has a transfer system that transfers inventory receptacles from the inventory store to the processing stations and wherein the desired number of inventory receptacles that should be enroute to the processing station is also a function of operation of the transfer system.

10. The method as claimed in claim 8 including increasing the set-point for a processing station if the actual number of inventory receptacles at that processing station is below a minimum number and decreasing the set-point for a processing station if the actual number of inventory receptacles at that processing station is above a maximum number.

11. The method as claimed in claim 10 wherein the increasing and decreasing is proportional to a time base of the material-handling system.

12. The method as claimed in claim 8 wherein said feedback control algorithm is a dual-loop feedback control algorithm, one of said dual loops controls the amount of inventory receptacles at a process station, the other one of said dual loops affects operation of the one of said dual loops as a function of overall system operation.

13. The method as claimed in claim 10 wherein each of said processing stations has an inventory receptacle buffer and wherein the number of inventory receptacles at a processing station is a function of the number of inventory receptacles at said buffer.

14. The method as claimed in claim 8 including a sorter that receives inventory receptacles from said inventory store and delivers inventory receptacles to said processing stations and wherein the number of inventory receptacles at a processing station is a function of the number of inventory receptacles at said sorter for that processing station.

15. The method as claimed in claim 8 including adjusting the set-point for a processing station if that processing station has an actual number of inventory receptacles that is outside of a particular range.

16. The method as claimed in claim 8 including performing said feedback control algorithm repetitively according to a particular time interval.

17. The method as claimed in claim 16 wherein said feedback control algorithm combines an integral of error values for each time interval and a scaled value of each error value.

18. The method as claimed in claim 17 wherein the integral of error values gives greater weight to positive error values than to negative error values, wherein a positive error value is one in which the set-point of inventory receptacles at a processing station is greater than the actual number of inventory receptacles at that processing station and a negative error value is one in which the actual number of inventory receptacles at or near a processing station is greater than the set-point of inventory receptacles at that processing station.

19. The method as claimed in claim 18 wherein the integral of error values is restricted to a range of values in order to limit windup of the integral of error values.

20. The method as claimed in any of claims 8 through 19 wherein said processing stations comprise picking stations.

21. The method as claimed in claim 20 wherein said picking stations comprise goods- to-person stations or goods-to-robot stations.

22. The method as claimed in any of claims 8 through 19 wherein said inventory store comprises an automated warehouse.

23. A material-handling system, said method comprising:

a plurality of material-processing stations and an inventory store supplying work units to individual processing stations; and

a computer system that monitors said processing stations and controls the inventory store to release work units from the inventory store to individual processing stations;

said computer system programmed to establish a set-point of work units desired at a material-processing station and determine an actual measure of work units at the material-processing station; and

said computer system programmed to performing a feedback control algorithm to establish the set-point of work units at the material -processing station and an error between the work units at the material-processing station and the set-point of work units at the material-processing station;

said computer system further programed to determine a desired amount of work units that should be supplied to the material-processing station as a function of the error and release a work unit from the inventory store for a particular processing station when the actual amount of work units supplied to that material-processing station is less than the amount of work units that should be supplied to the material-processing station.

24. An order fulfillment system, comprising:

a plurality of processing stations and an inventory store supplying inventory receptacles to said processing stations;

a computer system that monitors said processing stations and controls the inventory store to release inventory receptacles from the inventory store to individual processing stations;

said computer system programmed to establish a set-point for each processing station of inventory receptacles desired to be at that particular station;

said computer system programmed to determine an actual measure for each processing station of inventory receptacles at that processing station; and

said computer system programmed to perform a feedback control algorithm for each processing station to establish the set-point for that particular processing station and an error between the inventory receptacles at that material-processing station and the set- point of inventory receptacles for that processing station;

said computer system programmed to determine a desired number of inventory receptacles that should be enroute to the processing station as a function of the error and cause an inventory receptacle to be delivered from the inventory store for a processing station if the actual number of inventory receptacles enroute to that processing station is fewer than the desired number of inventory receptacles that should be enroute to that processing station.

Description:
DYNAMIC RATE MATCHING FOR MATERIAL HANDLING

BACKGROUND OF THE INVENTION

[001] The present invention is directed to a material-handling system and method of supplying work units in such a material-handling process. While the invention is illustrated for use in an order fulfillment system, it has other applications as well.

[002] In a particular order fulfillment system, work units such as inventory receptacles, containing inventory items, are supplied to processing stations, such as goods-to-person stations for sorting by human operators into transport receptacles. The transport receptacles may represent individual orders or interim receptacles that are sent to further processing, such as at a put wall for organization into individual orders. The inventory receptacles are supplied under a warehouse management system from an inventory store, such as an automated warehouse system. An inventory receptacle transfer system transports the receptacles to a sorter which sorts inventory receptacles to the individual processing stations. The receptacles are allowed to accumulate at a buffer or accumulator at each processing station to allow individual operators to work at their own pace.

However, when the buffer at a processing station cannot accept additional receptacles, the receptacles get recirculated in the sorter that supplies the receptacles to the processing stations. If enough receptacles are over- supplied, then the sorter gets filled with recirculation of receptacles intended for the slower operators thus preventing receptacles getting supplied to the faster operators who have an inadequate inventory receptacle at their station to process. Thus the system gets bogged down and must be operated at a slower pace to accommodate slower operators. Meanwhile the faster operators are idle.

SUMMARY OF THE INVENTION

[003] The present invention provides a material-handling system and rate-matching process that allows the operators of processing stations to operate at a wide variety of rates without bogging down the system. In this manner, maximum throughput can be achieved under varied conditions and/or staffing makeup without needing to build additional capacity into the system.

[004] A method and apparatus for supplying a unit of work in a material-handling

process, according to an aspect of the invention, includes a set-point of work units desired at a material-processing station and an actual measure of work units at the material- processing station. A feedback control algorithm is performed to establish the set point of work units at the material-processing station and an error between the work units at the material-processing station and the set-point of work units at the material-processing station. The feedback control algorithm also determines a desired amount of units that should be supplied to the material-processing station as a function of the error. The feedback control algorithm causes a work unit to be released from the inventory store for a particular processing station when the actual number of work units supplied to that processing station is less than the number of work units that should be supplied to that processing station.

[005] The desired amount of work units that should be supplied to the material- processing station may be the number of work units desired to be enroute to the material- processing station and the actual amount of work units supplied to that material- processing station may be the actual number of work units enroute to the material- processing station.

[006] The set-point may be dynamically adjusted as a function of whether actual work units being supplied are outside of a particular range. The feedback control algorithm may be performed repetitively according to a particular time interval. The feedback control algorithm may combine an integral of error values for each time interval with a scaled value of each error. The integral of error values may give greater weight to positive error values than to negative error values. A positive error value is one in which the set-point of inventory receptacles at or near a processing station is greater than the actual number of inventory receptacles at or near that processing station and wherein a negative error value is one in which the actual number of inventory receptacles at or near a processing station is greater than the set-point of inventory receptacles at or near that processing station. The integral of error values may be restricted to a range of values in order to limit wind-up of the integral of error values.

[007] A method and apparatus for supplying inventory receptacles from an inventory store to a plurality of processing stations in an order fulfillment system, according to an aspect of the invention, includes a computer system programmed to establish a set-point for each processing station of inventory receptacles desired to be at that particular station and determine an actual measure for each processing station of inventory receptacles at that processing station. The computer system is programmed to perform a feedback control algorithm for each processing station to establish the set-point for that particular processing station and an error between the inventory receptacles at that material- processing station and the set-point of inventory receptacles for that processing station. The feedback control algorithm further determines a desired number of inventory receptacles that should be enroute to the processing station as a function of the error and causes an inventory receptacle to be delivered from the inventory store for a processing station if the actual number of inventory receptacles enroute to that processing station is fewer than the desired number of inventory receptacles that should be enroute to that processing station.

The material-handling system may have a transfer system that transfers inventory receptacles from the inventory store to the processing stations and wherein the desired number of inventory receptacles that should be enroute to the processing station is also a function of operation of the transfer system.

The set-point for a processing station may be increased if the actual number of inventory receptacles at that processing station is below a minimum number and decreased for a processing station if the actual number of inventory receptacles at that processing station is above a maximum number. The increasing and decreasing may be proportional to a time base of the material-handling system. The feedback control algorithm may be a dual-loop feedback control algorithm, in which one of said dual loops controls the amount of inventory receptacles at a process station and the other one of said dual loops affects operation of the one of said dual loops as a function of overall system operation.

Each of the processing stations may have an inventory receptacle buffer and wherein the number of inventory receptacles at a processing station is a function of the number of inventory receptacles at the buffer. A sorter may be provided that receives inventory receptacles from the inventory store and delivers inventory receptacles to the processing stations. The number of inventory receptacles at a processing station is a function of the number of inventory receptacles at the sorter for that processing station.

The set-point for a processing station may be adjusted if that processing station has an actual number of inventory receptacles that is outside of a particular range. The feedback control algorithm may be repetitive according to a particular time interval. The feedback control algorithm may combine an integral of error values for each time interval and a scaled value of each error value. The integral of the error values may give greater weight to positive error values than to negative error values. A positive error value is one in which the set-point of inventory receptacles at a processing station is greater than the actual number of inventory receptacles at that processing station and a negative error value is one in which the actual number of inventory receptacles at or near a processing station is greater than the set-point of inventory receptacles at that processing station.

[012] The integral of error values may be restricted to a range of values in order to limit wind-up of the integral of error values. The processing stations may be picking stations such as goods-to-person stations or goods-to-robot stations. The inventory store may be an automated warehouse.

[013] These and other objects, advantages and features of this invention will become apparent upon review of the following specification in conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[014] Fig. 1 is a block diagram of a material-handling system, according to an

embodiment of the invention;

[015] Fig. 2 is a process block diagram; and

[016] Figs. 3a and 3b are a flow diagram of an algorithm useful in carrying out the

process in Fig. 2.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[017] Referring now to the drawings and the illustrative embodiments depicted therein, a material-handling system 10 has an inventory store 14, a plurality of material- processing stations, such as picking stations 16, each operated by an operator, and a receptacle transfer system 18 for transferring inventory receptacles (not shown) from inventory store 14 to processing station 16 (Fig. 1). A computer system 20, such as a warehouse management system, has a program 25 that carries out a rate-matching method or process of supplying a unit of work from inventory store 14 to a buffer 22 of a processing station 16. Computer system 20 monitors each processing station 16 and/or receptacle transfer system 18 to instruct inventory store 14 when to release an inventory receptacle for a particular processing station 16. While the invention is illustrated for use with an order fulfillment system for delivering inventory receptacles to processing stations, such as goods-to-person pick stations, it has broad applicability to other material-handling processes in which individual units of work are paid out to individual operators.

[018] Computer system 20 runs rate-matching program 25 that carries out a feedback control algorithm 26 illustrated in Fig. 2. Feedback control algorithm 26 receives as an input, a set-point 28 that represents a number of inventory receptacles that are desired to be at or near a particular processing station 16. It should be understood that algorithm 26 is carried out with respect to each processing station 16 and a set-point that may be different for the different processing stations. The set-point of work units, such as inventory receptacles, that are desired at a material-processing station 16 may initially be set by a routine, such as by trial-and error, or the like.

[019] A set-point adjust process is performed at 30 in order to adjust the set-point for boundary conditions that is summed with the set-point to arrive at an adjusted set-point 32. A difference is taken between the adjusted set-point 32 and a process variable 34 which are the actual work units, such as inventory receptacles, at the particular processing station. The difference results in an error 36. A proportion of the error is carried out at 37 and an integral of the error is carried out at 38, the results of which are summed to arrive at a manipulated variable (MV) at 40. The manipulated variable is an enroute limit of a number of inventory receptacles that are to be in transfer system 18. A receptacle retrieval and delivery function 41 compares the number of receptacles currently being destined for the particular processing station with the enroute limit for that processing station. If the number of actual enroute receptacles exceeds the enroute limit, no action is taken. If the actual number of enroute receptacles is less than the enroute limit, retrieval and delivery function 41 causes inventory store 14 to output one inventory receptacle destined for the particular processing station 16 which will eventually result in an increase in the actual units at the processing station at 34.

[020] As the operator continues to process inventory receptacles at the processing

station 16, the actual units at processing station 34 will go down and additional inventory receptacles will be delivered to transfer system 18 from inventory store 14. Each processing station 16 includes a buffer or accumulator 22 which accumulates inventory receptacles for processing. The number of inventory receptacles in each buffer 22 is monitored by computer system 20 as a representation of the number of inventory receptacles that are at the processing station. Receptacles transfer system 18 includes a sorter 24, such as a cross-belt sorter, or other recirculating sorter. Any inventory receptacles on sorter 24 that are designated to be diverted to a particular processing station 16 are deemed to be near that processing station. Thus, the process variable 34 is the number of inventory receptacles that are in the buffer 22 for a processing station or on sorter 24 and destined for that processing station. The number of inventory receptacles in the buffer for a processing station is supplied to set-point adjust function 30 to adjust the set-point for two boundary conditions. If the buffer is empty, adjust function 30 increases the set-point at 32. If the buffer or the discharge lane from sorter 24 is full, adjust function 30 decreases the set-point 32. Thus, the adjusted set-point should generally result in a buffer 22 that is partially full.

[021] Thus, the rate matching process determines an actual measure of work units at the material-processing stations using actual units 34 as the process variable (PV) and performs a feedback control algorithm 26 to establish a desired amount of work units 40 as the manipulated variable MV that should be supplied to the material-processing station as a function of an error 36 between the work units at the material-processing station and the adjusted set-point of work units 32 at the material-processing station. Retrieval and delivery function 41 compares the desired amount of work units that should be supplied to the material-processing station 40 with the actual work units being supplied to the material-processing station, as maintained in the memory of computer system 20, and supplies an additional work unit, such as an inventory receptacle, if the desired work units that should be supplied to the material-processing station are greater than the actual work units being supplied to the material processing.

[022] Feedback control algorithm 26 is repetitively carried out according to a particular time interval T. The time interval T is a function of amount of time that work units being supplied to the material-processing station are varied. In the illustrated embodiment, that time interval is approximately every five (5) seconds but a greater or lesser amount may be used. Feedback control algorithm 26 has an integrating function 38 that performs an integral of error values for each interval of time and a proportional function 37 that obtains a scaled value of each error value. The proportional and integral values are summed to arrive at the manipulated variable 40. While feedback control algorithm 26 could also use the derivative of the error value 36, such function is not performed in the illustrated embodiment because of the length of time required for each inventory receptacle, or unit of work, to be discharged from inventory store 14 and transported to the targeted processing station 16. However, such derivative value can be used to provide a complete PID feedback control algorithm, if desired.

[023] When the rate-matching process is applied to the supplying inventory receptacles from an inventory store 14 to a plurality of processing stations 16, set-point 28 and adjusted set-point 32 are established for each processing station 16. The set-point adjustment is scaled by a factor of 1/T where T is the time base of the delivery system. An actual measure for each processing station of inventory receptacles at or near that processing station 34 is provided as the process variable (PV) and feedback control algorithm 26 is performed repetitively to establish as the manipulated variable MV a desired number of inventory receptacles enroute in the receptacle transfer system from the inventory store 14 for each processing station 16 as a function of an error value 36 between the actual number of inventory receptacles 34 and the adjusted set-point of inventory receptacles 36 at each processing station 16. Function 41 compares the desired amount of inventory receptacles that should be enroute from the inventory store 40 with the actual number of inventory receptacles enroute for each processing station, as maintained in the memory of computer system 20, and supplying an additional inventory receptacles from inventory store 14 for a processing station 16 if the inventory receptacles that should be enroute is greater than the actual number of receptacles enroute for that processing station.

[024] The PV for system 10 is at least the number of inventory receptacles in inventory receptacle buffer 22. In the illustrated embodiment, system 10 includes a sorter 24 that receives inventory receptacles from inventory store 14. Sorter 24 sorts the inventory receptacles according to destination and delivers inventory receptacles to the processing stations. The PV 34 for feedback control algorithm 26 includes the number of inventory receptacles near the particular processing station as a function of the number of inventory receptacles destined for the particular processing station at sorter 24. Set-point adjusting function 30 functions by adjusting the set-point for a processing station if that processing station has an actual number of inventory receptacles in buffer 22 or on sorter 24 that is outside of a particular range. For example, the set-point is reduced by function 30 if the buffer and/or the divert lane of sorter 24 is full and is increased for a processing station if the buffer 22 for that processing station is empty.

[025] Referring now to Fig. 3a, a program 25 executed by computer system 20 starts by waiting at 43 for the passage of a particular interval of time which may be a number of seconds, such as five (5) seconds or some other chosen interval. Set-point adjust function 30 is carried out by determining at 44a whether the processing station is starved because its buffer is empty. If so the set-point is adjusted by twice the time interval at 45a. If not, then it is determined at 44b whether the processing station is over- supplied because its lane from sorter 24 is full. If so, the set-point is decremented by the value of the time interval at 45b. It is then determined at 46 whether the adjustment to the set-point exceeds a maximum value and at 48 whether the adjustment to the set-point is less than a minimum value. If either is true, the adjustment set-point is set to its respective maximum or minimum value in order to keep the adjustment to the set-point within a given range. The initial set-point is adjusted at 50 by adding to or subtracting from initial set-point 28 scaled by 1/T according to the determination of set-point adjust function 30. An error value 36 is established by subtracting the process variable 34 from the adjusted set-point 32.

[026] The integral 38 of the error value begins at 52 by determining whether the

particular error value at this time interval is positive or negative. A positive error value is one in which the set-point of inventory receptacles at a processing station is greater than the actual number of inventory receptacles. A negative error value is the opposite. An integrated error value is determined by summed and adjusting the sum according to a factor that is determined at 52 whether the particular error value is positive or negative. If the particular error value is positive, then the integrated error value is increased by adding a factor equal to the present error multiplied by the time interval 43. If negative, then the integrated error is made more negative by subtracting a factor equal to the error multiplied by half the time interval 43. Thus, positive integrated errors are accentuated versus negative errors. This provides "push" to the algorithm in order to tend to move more inventory receptacles toward the operator of the processing station being considered in order to encourage the operator to work faster. The adjusted integral is then limited to a range at 60 in order to limit wind-up of the integral of error values. Integrator windup refers to a situation in a feedback controller where a large change in set-point causes an integral term to accumulate sufficient error during the windup thus overshooting.

[027] The feedback program is then continued in Fig. 3b where the proportional term is calculated at 37 by multiplying the error value by a gain factor K and adding the product to the integral value determined at 38 and 60 in order to determine the manipulated variable MV at 40. The gain factor K used in the proportion term is system dependent and relates to the time base of the system and the rate of processing of inventory receptacles at the processing stations 16. Gain factor K generally relates the number of inventory receptacles at processing stations 16 with the enroute limit of receptacles. Gain factor K may be set by using various techniques, such as a heuristic technique or by trial and error for a particular installation. Retrieval and delivery function 41 is then carried out by determining at 64 whether the enroute count of inventory receptacles for that processing station is greater than MV. If so, then no further receptacles are needed for that processing station and a false outcome is determined at 66 and no receptacles are added. If it is determined at 64 that the enroute count is greater than the MV, it is then determined at 68 whether the enroute count is greater than or equal to a maximum value and at 70 whether the enroute count is greater or equal to a balance target that is calculated to avoid overloading sorter 24. If either is true, meaning that no more inventory receptacles should be added to the receptacle transfer system 18, then false outcome 66 is also found. If, however, the enroute count is not greater than or equal to the manipulated variable MV and is less than its max value and less than the balance target, then one inventory receptacle is ordered from inventory store 14 for that processing station. A delay may be built into retrieval and delivery function 41 in order to allow the program to react to the addition of another inventory receptacle before determining if another receptacle should be ordered.

[028] In the illustrated embodiment, each processing station 16 is a goods-to-person station of the type described in U.S. Pat. No. 8,713,899, the disclosure of which is hereby incorporated herein by reference. However, the techniques described herein can be applied to other material-handling operations. In the illustrated embodiment, inventory store 14 is an automated warehouse of the type described in U.S. Pat. No. 8,790,061. However, other types of inventory, stores such as automatic storage and retrieval systems (ASRS), and the like, can be used. In the illustrated embodiment, receptacle transfer system 18 may be a conveyor system made up of conveyors and merge units particularly where inventory store 14 is made up of multiple rack units each with a lift assembly. However, other transfer systems such as automated guided vehicles (AGV) or other types of vehicles may be used. In the illustrated embodiment, sorter 24 is a circulating sorter, such as a cross-belt, tilt-tray, or other circulating sorter, but a linear sorter with recirculation or other type of sorter may be used.

While the foregoing description describes several embodiments of the present invention, it will be understood by those skilled in the art that variations and

modifications to these embodiments may be made without departing from the spirit and scope of the invention, as defined in the claims below. The present invention

encompasses all combinations of various embodiments or aspects of the invention described herein. It is understood that any and all embodiments of the present invention may be taken in conjunction with any other embodiment to describe additional embodiments of the present invention. Furthermore, any elements of an embodiment may be combined with any and all other elements of any of the embodiments to describe additional embodiments.