The present subject matter is related in general to resource management, more particularly, but not exclusively, to a method and system for dynamic resource management in content delivery system.
With rapid advancement in computing technology, e-commerce has gained huge popularity on the Internet. With advancement in e-commerce systems, performance of delivery systems in delivering contents play a major role in managing the e-commerce business. However, today, effective management and utilization of resources in the delivery system is still challenging.
In the current delivery systems, the last mile delivery is handled in a pre-planned manner, where a certain number of assignments are identified for delivery based on a region and delivery personnel is identified and assigned with those deliveries. Post all the deliveries, a delivery personnel may return to a hub and the next set of deliveries will be allocated. This results in sub-optimal use of resources. For instance, one branch office of a delivery system has multiple delivery hubs and each hub have several delivery personnel. A delivery assignment of 100 Kilograms is assigned to a delivery personnel, and after two deliveries, 50 kilograms' capacity is available and the delivery personnel is near one of the hub which has some deliveries to be made. In the current system, the delivery personnel in such case is not made available to take the assignment from the hub even though the delivery personnel is present very near to the hub location. This may cause sub-optimal utilization of the delivery personnel resource. Thus, the current delivery systems may not efficiently manage and utilize the resources.
The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.
In an embodiment, the present disclosure relates to a method for dynamic resource management in content delivery system, the method comprising identifying a task list for each of a plurality of containers associated with a content delivery system based on pre-defined factors. The task list comprises information of assignments appointed to each of the containers. The method comprising monitoring a plurality of parameters associated with the plurality of containers, engaged in carrying out the assignments, at pre-defined time intervals. The plurality of containers is routed based on a pre-defined route and determining a container from the plurality of containers for delivery of a new content based on the monitoring, details associated with delivery of the new content and amount of route deviation from the pre-defined route by the container for delivery of the new content for dynamic resource management in the content delivery system.
In an embodiment, the present disclosure relates to a resource management system for dynamic resource management in content delivery system. The resource management system comprises a processor and a memory communicatively coupled to the processor, wherein the memory stores processor executable instructions, which, on execution, may cause the resource management system to identify a task list for each of a plurality of containers associated with a content delivery system based on pre-defined factors. The task list comprises information of assignments appointed to each of the containers. The resource management system monitors a plurality of parameters associated with the plurality of containers, engaged in carrying out the assignments, at pre-defined time intervals. The plurality of containers is routed based on a pre-defined route and determine a container from the plurality of containers for delivery of a new content based on the monitoring, details associated with delivery of the new content and amount of route deviation from the pre-defined route by the container for delivery of the new content for dynamic resource management in the content delivery system.
In an embodiment, the present disclosure relates to a non-transitory computer readable medium including instructions stored thereon that when processed by at least one processor may cause a resource management system to identify a task list for each of a plurality of containers associated with a content delivery system based on pre-defined factors. The task list comprises information of assignments appointed to each of the containers. The instruction causes the processor to monitor a plurality of parameters associated with the plurality of containers, engaged in carrying out the assignments, at pre-defined time intervals. The plurality of containers is routed based on a pre-defined route and determine a container from the plurality of containers for delivery of a new content based on the monitoring, details associated with delivery of the new content and amount of route deviation from the pre-defined route by the container for delivery of the new content for dynamic resource management in the content delivery system.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of system and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
In the present document, the word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment or implementation of the present subject matter described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the particular forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternative falling within the spirit and the scope of the disclosure.
The terms “comprises”, “comprising”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by “comprises . . . a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or method.
In the following detailed description of the embodiments of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.
The present disclosure may relate to a method and a resource management system for dynamic resource management in content delivery system. In an embodiment, the content delivery system may comprise a plurality of hubs located at different locations. In an embodiment, the resource management system may be present in the plurality of hubs. In an embodiment, the content delivery system may include any e-commerce systems. In an embodiment, the resources associated with the content delivery systems may include human resource, such as, delivery personnel and the like. The content delivery system may comprise several contents to be delivered to users. To manage time of the delivery personnel of the content delivery system dynamically, a task list may be identified, which may comprise details of assignments to be appointed to various containers. In an embodiment, containers may be any transporting vehicles associated with the content delivery system. In an embodiment, the containers may include various sensors. The containers may be used by the resources for delivery of the assignments based on respective task list and follow a pre-defined route for delivery. In an embodiment, the resource management system may determine an optimal route for each container to deliver the contents in the task list based on one or more business rules. The business rules may include, but are not limited to, historical analytic data, shipping location, grouping on delivery shipping location, number, weight and size of items to be delivery and the like. Once the containers are routed, a plurality of parameters associated with the containers may be monitored at pre-defined intervals of time. In case, when a new assignment arises, a container may be determined which may perform the task of delivering contents associated with the new assignment. In an embodiment, delivering contents may include picking the contents from a nearest hub of the content delivery system and delivering to associated user. The container may be determined based on the monitoring of the parameters of plurality of containers and amount of route deviation which the containers may take for delivery of the new assignment, without affecting delivery of the previous assignments in the list. Thus, the present invention provides an effective utilization of the available resources and timely deliveries of both the existing and new assignments.
As shown in
Returning back to
The received information from the I/O interfaces 109 may be stored in the memory 111. The memory 111 is communicatively coupled to the processors 112 of the resource management system 101 of the plurality of hubs 102. The memory 111 may also store processor instructions which cause the processors 112 to execute the instructions for dynamic resource management in content delivery system 103.
Data 200 and one or more modules 209 of the resource management system 101 of the plurality of hubs 102 are described herein in detail. In an embodiment, the data 200 comprises task list 201, container data 203, new content data 205 and other data 207.
The task list 201 may comprise details about assignments appointed to each of the plurality of containers 105. The details may include number of assignments, pickup location of the contents to be delivered, drop location of each of the contents, type of the contents, size and weight of the contents, delivery priority associated with the contents and time duration required to reach the pickup and each of drop location. In an embodiment, the pickup location may either be the hub where the content is present or the customer's location from where the content is required to be picked. The task list 201 may also comprise pickup and drop points with the pre-defined route for each of the container. The task list 201 may be identified based on the pre-defined factors associated with each container, such as, current location and capacity of container, time taken to traverse location at different time of a day and type of the container.
The container data 203 may include details about the plurality of containers 105 being monitored. The container data 203 may comprise details of the plurality of parameters associated with each of the plurality of containers 105 including, but not limited to, tracking motion of the container, characteristics of the contents, current location of the container, percentage of contents loaded in the container and available capacity of each container.
New content data 205 may comprise details about new content being allocated to a container from the plurality of containers 105. The new content data 205 may comprise the details associated with the delivery of the new content such as, pickup location of the new content, drop location of the new content, type of the content, size and weight of the new content, delivery priority associated with the new content and a time duration required to reach at least the pickup location of the new content and the drop location of the new content.
The other data 207 may store data, including temporary data and temporary files, generated by the one or more modules 209 for performing the various functions of the resource management system 101.
In an embodiment, the data 200 in the memory 111 may be processed by the one or more modules 209 of the resource management system 101. As used herein, the term module refers to an application specific integrated circuit (ASIC), an electronic circuit, a field-programmable gate arrays (FPGA), Programmable System-on-Chip (PSoC), a combinational logic circuit, and/or other suitable components that provide the described functionality. The said modules when configured with the functionality defined in the present disclosure will result in a novel hardware.
In one implementation, the one or more modules 209 may include, but are not limited to, a task list identification module 211, a monitoring module 213 and a container determination module 215. The one or more modules 209 may also comprise other modules 217 to perform various miscellaneous functionalities of the resource management system 101. It will be appreciated that such modules 209 may be represented as a single module or a combination of different modules.
The task list identification module 211 may identify a task list 201 for each of the plurality of containers 105 associated with the content delivery system 103. The task list 201 for each of the container may comprises details about the assignment allotted. In an embodiment, the resources such as delivery personnel may follow the task list to deliver the contents to the users. The task list identification module 211 may identify the task list 201 based on the pre-defined factors such as, current location and capacity of container, time taken to traverse location at different time of a day and type of the container. In an embodiment, the task list identification module 211 may also identify the pre-defined route for the plurality of containers 105 to deliver the content in the corresponding task list 201 based on predefined business rules. In an embodiment, the business rules may include, historical analytic data, dropping location, time-in-transit, grouping on delivery location, number, weight and size of content to be delivered and the like. The optimal pre-defined route may be identified based on real time data collected from containers, contents, route characteristics and from hubs.
The monitoring module 213 may monitor the plurality of parameters associated with the plurality of containers 105. The monitoring module 213 may track the container motion at pre-defined time intervals, percentage load in the container, current location of the container and available capacity of the container in real time. The monitoring module 213 may also tracks each container's transit from a pickup location to drop location and provides time-stamps and GPS location.
The container determination module 215 may determine the container from the plurality of containers whenever any new content arrives for delivery. The container determination module 215 may determine the container based on the plurality of parameters monitored, details associated with the delivery of the new content and amount of route deviation from the pre-defined route by the container for delivery of the new content. In an embodiment, the container determination module 215 may determine the capacity of the plurality of containers 105 after each delivery point. Further, the container determination module 215 may determine the container based on the pre-defined threshold value for allowed route deviation in the pre-defined route depending on priority. In an embodiment, the priority may be based on perishable goods, privilege customer, and the like.
As shown in
As illustrated in
The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method. Additionally, individual blocks may be deleted from the methods without departing from the spirit and scope of the subject matter described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.
At block 401, identifying by the task list identification module 211 the task list for each of the plurality of containers 105 associated with the content delivery system 103 based on the pre-defined factors. The task list may comprise information of assignments appointed to each of the containers.
At block 403, monitoring by the monitoring module 213 the plurality of parameters associated with the plurality of containers, 105 engaged in carrying out the assignments, at pre-defined time intervals. The plurality of containers 105 may be routed based on a pre-defined route.
At block 405, determining by the container determination module 215 the container from the plurality of containers 105 for delivery of the new content based on the monitoring, details associated with delivery of the new content and amount of route deviation from the pre-defined route by the container for delivery of the new content. The details associated with the delivery of the new content may comprise pickup location of the new content, drop location of the new content, type of the content, size and weight of the new content, delivery priority associated with the new content and time duration required to reach the pickup and drop location.
The processor 502 may be disposed in communication with one or more input/output (I/O) devices (not shown) via I/O interface 501. The I/O interface 501 may employ communication protocols/methods such as, without limitation, audio, analog, digital, monoaural, RCA, stereo, IEEE-1394, serial bus, universal serial bus (USB), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (HDMI), RF antennas, S-Video, VGA, IEEE 802.n/b/g/n/x, Bluetooth, cellular (e.g., code-division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long-term evolution (LTE), WiMax, or the like), etc.
Using the I/O interface 501, the computer system 500 may communicate with one or more I/O devices. For example, the input device may be an antenna, keyboard, mouse, joystick, (infrared) remote control, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touchpad, trackball, stylus, scanner, storage device, transceiver, video device/source, etc. The output device may be a printer, fax machine, video display (e.g., cathode ray tube (CRT), liquid crystal display (LCD), light-emitting diode (LED), plasma, Plasma display panel (PDP), Organic light-emitting diode display (OLED) or the like), audio speaker, etc.
In some embodiments, the computer system 500 consists of a resource management system 101. The processor 502 may be disposed in communication with the communication network 509 via a network interface 503. The network interface 503 may communicate with the communication network 509. The network interface 503 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), transmission control protocol/internet protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc. The communication network 509 may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, etc. Using the network interface 503 and the communication network 509, the computer system 500 may communicate with a content delivery system 515 and the container 5141, a container 5142 . . . and a container 515N. The network interface 503 may employ connection protocols include, but not limited to, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), transmission control protocol/internet protocol (TCP/IP), token ring, IEEE 802.11 a/b/g/n/x, etc.
The communication network 509 includes, but is not limited to, a direct interconnection, an e-commerce network, a peer to peer (P2P) network, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, Wi-Fi and such. The first network and the second network may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the first network and the second network may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc.
In some embodiments, the processor 502 may be disposed in communication with a memory 505 (e.g., RAM, ROM, etc. not shown in
The memory 505 may store a collection of program or database components, including, without limitation, user interface 506, an operating system 507 etc. In some embodiments, computer system 500 may store user/application data 506, such as, the data, variables, records, etc., as described in this disclosure. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase.
The operating system 507 may facilitate resource management and operation of the computer system 500. Examples of operating systems include, without limitation, Apple Macintosh OS X, Unix, Unix-like system distributions (e.g., Berkeley Software Distribution (BSD), FreeBSD, NetBSD, OpenBSD, etc.), Linux distributions (e.g., Red Hat, Ubuntu, Kubuntu, etc.), IBM OS/2, Microsoft Windows (XP, Vista/7/8, etc.), Apple iOS, Google Android, Blackberry OS, or the like.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
An embodiment of the present disclosure efficiently manages resources of content delivery system in real-time.
An embodiment of the present disclosure reduces overall delivery time of any new assignment without having a major impact on the existing deliveries.
An embodiment of the present disclosure provides a cost-effective solution for delivering contents in delivery system.
The described operations may be implemented as a method, system or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof. The described operations may be implemented as code maintained in a “non-transitory computer readable medium”, where a processor may read and execute the code from the computer readable medium. The processor is at least one of a microprocessor and a processor capable of processing and executing the queries. A non-transitory computer readable medium may comprise media such as magnetic storage medium (e.g., hard disk drives, floppy disks, tape, etc.), optical storage (CD-ROMs, DVDs, optical disks, etc.), volatile and non-volatile memory devices (e.g., EEPROMs, ROMs, PROMs, RAMs, DRAMs, SRAMs, Flash Memory, firmware, programmable logic, etc.), etc. Further, non-transitory computer-readable media comprise all computer-readable media except for a transitory. The code implementing the described operations may further be implemented in hardware logic (e.g., an integrated circuit chip, Programmable Gate Array (PGA), Application Specific Integrated Circuit (ASIC), etc.).
Still further, the code implementing the described operations may be implemented in “transmission signals”, where transmission signals may propagate through space or through a transmission media, such as, an optical fiber, copper wire, etc. The transmission signals in which the code or logic is encoded may further comprise a wireless signal, satellite transmission, radio waves, infrared signals, Bluetooth, etc. The transmission signals in which the code or logic is encoded is capable of being transmitted by a transmitting station and received by a receiving station, where the code or logic encoded in the transmission signal may be decoded and stored in hardware or a non-transitory computer readable medium at the receiving and transmitting stations or devices. An “article of manufacture” comprises non-transitory computer readable medium, hardware logic, and/or transmission signals in which code may be implemented. A device in which the code implementing the described embodiments of operations is encoded may comprise a computer readable medium or hardware logic. Of course, those skilled in the art will recognize that many modifications may be made to this configuration without departing from the scope of the invention, and that the article of manufacture may comprise suitable information bearing medium known in the art.
The terms “an embodiment”, “embodiment”, “embodiments”, “the embodiment”, “the embodiments”. “one or more embodiments”, “some embodiments”, and “one embodiment” mean “one or more (but not all) embodiments of the invention(s)” unless expressly specified otherwise.
The terms “including”. “comprising”, “having” and variations thereof mean “including but not limited to”, unless expressly specified otherwise.
The enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise.
The terms “a”, “an” and “the” mean “one or more”, unless expressly specified otherwise.
A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention.
When a single device or article is described herein, it will be readily apparent that more than one device/article (whether or not they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be readily apparent that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the invention need not include the device itself.
The illustrated operations of
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.
While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
201741008303 | Mar 2017 | IN | national |