Method and apparatus for locating a nearby alternate vending machine for a desired product

A communication network (FIG. 1) makes available, to a first vending machine (102) of a plurality of vending machines, information from nearby ones of the plurality of vending machines for coordinating product availability and vending machine location. The first vending machine then determines 502 that the desired product is no longer available at the first vending machine. Thereafter, the first vending machine obtains (504–520) the information including a location of the nearby alternate vending machine for the desired product. The first vending machine then conveys (410) the location of the nearby alternate vending machine to a customer who wishes to purchase the desired product.

FIELD OF THE INVENTION

This invention relates in general to wireless communication systems, and more specifically to a method and apparatus in a plurality of vending machines for locating a nearby alternate vending machine for a desired product.

BACKGROUND OF THE INVENTION

Vending machines are well known. Such machines have been used for decades to dispense soft drinks, snacks, tickets, and other non-perishable products. An advantage of vending machines is that they can provide products for potential buyers on a twenty-four hour per day basis without the need for a salesperson.

The inventory of vending machines is replenished periodically by an attendant. A potential problem with vending machines is that certain high-demand products can be depleted before the attendant's next scheduled restocking visit. Most people have experienced the frustration of visiting a vending machine to purchase a favorite soft drink or snack, only to find that the vending machine has sold out of the desired product. While the desired product may be available in another nearby vending machine, this information has not been presented to the potential buyer by the prior-art vending machine. Such information would be valuable in helping the potential buyer locate a nearby vending machine that can supply the desired product.

Thus, what is needed is a method and apparatus in a first vending machine of a plurality of vending machines for locating a nearby alternate vending machine having a desired product. Preferably, the method and apparatus will operate to quickly convey to the potential buyer the location of the nearby alternate vending machine having the desired product.

SUMMARY OF THE INVENTION

An aspect of the present invention is a method in a first vending machine of a plurality of vending machines for locating a nearby alternate vending machine having a desired product. The method comprises the steps of making available to the first vending machine information from nearby ones of the plurality of vending machines for coordinating product availability and vending machine location; and determining, by the first vending machine, that the desired product is no longer available at the first vending machine. The method further comprises the steps of obtaining thereafter, by the first vending machine, the information comprising a location of the nearby alternate vending machine for the desired product, and conveying by the first vending machine the location to a customer.

Another aspect of the present invention is an apparatus in a first vending machine having an inventory sensor and a customer interface, the apparatus for locating a nearby alternate vending machine having a desired product. The apparatus comprises a transceiver for providing communications, and a processing system coupled to the transceiver for controlling the transceiver and processing the communications, the processing system further coupled to the inventory sensor and the customer interface. The processing system is programmed to cooperate with the inventory sensor to determine that the desired product is no longer available at the first vending machine, and cooperate with the transceiver to obtain information made available to the first vending machine from a plurality of vending machines for coordinating product availability and vending machine location, the information comprising a location of the nearby alternate vending machine for the desired product. The processing system is further programmed to cooperate with the customer interface to convey the location to the customer.

Another aspect of the present invention is a server for determining a location of an alternate vending machine near a first vending machine, the alternate vending machine having a desired product that is unavailable at the first vending machine. The server comprises a processing system, and a transceiver coupled to the processing system for communicating with a plurality of vending machines. The processing system is programmed to cooperate with the transceiver to receive from the first vending machine a first query regarding the desired product, and to determine a candidate alternate vending machine near the first vending machine. The processing system is further programmed to transmit a second query regarding the desired product to the candidate alternate vending machine, and to receive a response from the candidate alternate vending machine indicating that the desired product is available, thereby defining the candidate alternate vending machine as the alternate vending machine for the desired product. The processing system is also programmed to return to the first vending machine the location of the alternate vending machine.

Another aspect of the present invention is a server for locating an alternate vending machine near a first vending machine, the alternate vending machine having a desired product that is unavailable at the first vending machine. The server comprises a processing system, and a transceiver coupled to the processing system for communicating with a plurality of vending machines. The processing system is programmed to receive from ones of the plurality of vending machines a product availability indicator whenever a product availability changes, and to maintain a database of current product availability indicators and corresponding vending machine locations. The processing system is further programmed to receive a request from the first vending machine for a location of the alternate vending machine for the desired product, when the customer selects the desired product at the first vending machine; and to send the location to the first vending machine.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1is a simplified block diagram of a communication network of vending machines102in accordance with the present invention. The communication network comprises a plurality of vending machines102coupled by conventional communication links106for coordinating product availability and vending machine location. In some embodiments, the communication network includes a server104, which acts as a central repository of product availability and location information for the communication network.

The communication links106preferably are wireless for simplifying vending machine placement. Virtually any type of wireless link can be utilized, including direct peer-to-peer links, and repeated links such as those of conventional radio messaging and cellular telephone systems. It will be appreciated that wired links can be used as well for all, or a portion of, the communication links106.

FIG. 2is an electrical block diagram of an exemplary vending machine102in accordance with the present invention. The vending machine102comprises a processing system202, including a processor204and memory206, for directing the operation of the vending machine102in accordance with the present invention. The processing system202is coupled to a conventional transceiver209for providing two-way communications. The processing system202is further coupled to a conventional inventory sensor208for sensing the inventory of products stocked by the vending machine102. The processing system202is also coupled to a conventional customer interface211for interfacing with a customer. The customer interface211preferably includes a conventional display210and conventional user controls212e.g., selection buttons. It will be appreciated that, alternatively, the customer interface211can include additional devices, such as a loudspeaker and a touch screen. The processing system202is further coupled to a conventional vending means214for vending the products through well-known techniques. In some embodiments, the vending machine102also includes a location detection device216, such as a Global Positioning System (GPS) receiver.

The memory206includes a communication processing program218for programming the processing system to process communications in accordance with the present invention. The memory206preferably also includes an alternate machines database220for storing information about the locations of nearby alternate vending machines that are able to supply products that are no longer available in the vending machine102. In one embodiment, the memory206further comprises a distance calculation program222for programming the processing system202to calculate the distance between the vending machine102and a candidate alternate vending machine102. In addition, the memory206preferably includes a conventional vending operations program224for programming the processing system202to vend products through well-known techniques. It will be appreciated that, alternatively, the vending operations can be performed and controlled independently of the processing system202.

The memory206also includes a location information processing program226for programming the processing system202to process location information through well-known techniques, such as location determination that uses the resources of the wireless communication system itself. This may be based on tokens (TX ID, zone, Local Area ID) or on the measurement of timing, RSSI, and the like. For embodiments that include the location detection device216and the server104, the location information processing program226preferably programs the processing system202to cooperate with the server104to determine the geographic coordinates at which the vending machine102is positioned, using well-known techniques. Operation of the vending machine102in accordance with the present invention is described in further detail herein below.

FIG. 3is an electrical block diagram of an exemplary server104in accordance with the present invention. The server104comprises a processing system303, including a conventional computer302and a mass medium304, e.g. a conventional magnetic disc drive. The processing system303is coupled to a conventional transceiver305for communicating with the plurality of vending machines102. In one embodiment, the server104includes a location detection device306, e.g., a GPS receiver, coupled to the processing system303for cooperating with a similarly equipped vending machine102to determine the location of the vending machine102.

The mass medium304comprises a communications processing program308for programming the processing system303to communicate with the plurality of vending machines102in accordance with the present invention. The mass medium304further comprises a candidate locating program310for programming the processing system303to find a candidate alternate vending machine102that is near, e.g., within one-hundred meters of, a first vending machine102that has exhausted its supply of a desired product. The mass medium304also includes a candidate checking program312for programming the processing system303to check whether the candidate alternate vending machine102has the desired product. The mass medium304further comprises space for a transactions list314which includes identifiers of the first vending machine, the alternate vending machine, and the desired product that associates the two machines.

In one embodiment of the present invention, the mass medium304includes an availability database316for indicating the current availability of products in the vending machines102of the communication system. The mass medium further comprises a machine location database318for cross-referencing vending machine identities with vending machine locations. Preferably, the machine location database318also includes sufficient information to provide instructions about how to get from one vending machine102to a nearby alternate vending machine102. In some embodiments, the mass medium304includes a location information processing program320for programming the processing system303to cooperate with the plurality of vending machines102to help determine the locations of the plurality of vending machines, through well-known techniques, e.g., server-aided GPS technology. Operation of the server104in accordance with the present invention is described in greater detail herein below.

FIG. 4is an flow diagram summarizing operation of the vending machine102in accordance with the present invention. The flow begins when a customer pays and selects402a desired product. (It will be appreciated that, for some types of payment methods, e.g., credit cards, payment is not taken until the desired product is determined to be available.) In response, the processing system202checks404the inventory sensor208for availability of the desired product. If the product is available, the processing system202cooperates with the vending means214to vend406the product. If the product is not available, the processing system202determines whether a nearby alternate vending machine102is available for the desired product. If so, the vending machine102displays410the location of the nearby alternate vending machine102, preferably along with brief instructions concerning how to get to the alternate machine, and then returns414the payment to the customer. If there is not an alternate machine available nearby, the vending machine102displays412that the product is not available, and then returns414the payment to the customer. It will be appreciated that unavailability of the desired product can result from several causes. For example, the desired product can be sold out, the dispenser for the desired product can be jammed or otherwise inoperative, a local ordinance can prevent the sale of the desired product at this time, and a refrigeration failure can render the desired product unpalatable, thereby terminating dispensing of the product, to name a few possible causes of unavailability. Any such causes that can be detected can trigger a search for a nearby alternate vending machine in accordance with the present invention. Detailed operation of several embodiments are presented herein below.

FIG. 5is a flow diagram depicting a first operation of a server-based network in accordance with the first embodiment of the present invention. Flow begins when a first vending machine102exhausts502all stock of a product. In response, the first vending machine102sends504a first query to the server104, asking for the location of a nearby alternate vending machine102that has availability of the product. (It will be appreciated that, alternatively, the first vending machine102could merely report that the product has become unavailable, leaving the query implicit.) The server104accesses506the machine location database318to locate a candidate alternate vending machine102near the first vending machine102. The server104then checks whether it has located a candidate alternate vending machine102less than a predetermined distance from the first vending machine102. If not, the server sends a negative response to the first vending machine102If, on the other hand, the server104has located a candidate alternate vending machine102, the server.104transmits510a second query to the candidate alternate vending machine102asking whether the candidate alternate vending machine102has availability of the product. The server104then receives514a response from the candidate alternate vending machine102. The server then checks516whether the candidate alternate vending machine102has the product. If not, the flow returns to step506where the server continues to search for another candidate alternate vending machine102that may have the product. If, on the other hand, at step516the candidate alternate vending machine102does have the product, then the server104defines518the candidate alternate vending machine102as the nearby alternate vending machine102for the product. The server then checks the machine location database318and returns520the location of the nearby alternate vending machine102to the first vending machine102. The server104then records in the transactions list314an entry comprising identifiers of the first vending machine102and the nearby alternate vending machine102, along with the product, so that the server104can send future updates to the first vending machine102, as described inFIG. 6.

FIG. 6is a flow diagram depicting a second operation of the server-based network in accordance with the first embodiment of the present invention. The flow begins when the server receives602a report from one of the plurality of vending machines102. The server104then checks604the report type. If the report type is an PRODUCT UNAVAILABLE type, then the server compares606the machine identifier and the product with the transactions list314to learn whether the reporting machine is serving as a nearby alternate vending machine102for the product. If not, the process ends. If, on the other hand, the reporting machine is serving as a nearby alternate vending machine102, then the server104tries610to find for the associated first vending machine102another nearby alternate vending machine102for the product, as described in steps506through522ofFIG. 5.

If at step604the report type is PRODUCT NOW AVAILABLE, then the server104compares612the machine identifier and product with the transactions list314to learn whether the machine is a first vending machine102using a nearby alternate vending machine102for the product. If so, the first vending machine102has been restocked, and the server104clears616the associated entry in the transactions list314and proceeds to step618. If not, the server104proceeds directly to step618to determine from the transactions list314whether the product is a desired product for which a nearby alternate vending machine102is currently assigned. If not, at step620the process ends. If so, at step620the flow proceeds to step622, where the server104determines whether the reporting machine is nearer to the associated first vending machine102than the currently assigned nearby alternate vending machine102. If so, at step624the flow moves to step626, where the server104redefines, for the associated first vending machine102, the reporting machine as the nearby alternate vending machine102for the desired product. If, on the other hand, the reporting machine is not nearer, at step624the process ends. It will be appreciated that the steps618–626can be repeated for multiple vending machines102near the reporting vending machine102. Thus, in the manner just described in the flow chart ofFIG. 6, the server104advantageously continuously updates the product availability status of vending machines102that have a nearby alternate vending machine102defined for a product.

The first embodiment, just described, is particularly suitable when the communication links106have high latency. This is because the nearby alternate vending machine102and updates thereto are defined in advance of a customer selection of a desired product. By storing the nearby alternate vending machine information in the associated first vending machines102, no communication with the server104is required when the customer selects a desired product. Thus, advantageously, there is little delay in displaying the message identifying the location of a nearby alternate vending machine102which has the desired product.

FIG. 7is a flow diagram depicting operation of a server-based network in accordance with a second embodiment of the present invention. The second embodiment is preferred for systems in which the communication link latency is low. The flow begins with ones of the plurality of vending machines102communicating702to the server104a product availability update whenever a product availability changes, i.e., becomes either sold out or becomes restocked. The server104maintains704a database of current product availability indicators and corresponding vending machine locations.

A customer then selects706a desired product at a first vending machine102. In response, the first vending machine102checks708availability of the desired product through the inventory sensor208. When at step710the first vending machine102has the desired product, it vends712the product. When the first vending machine102does not have the product, flow moves to step714, where the first vending machine102requests from the server104the location of a nearby alternate vending machine102for the desired product. The server104then sends716the location to the first vending machine102, and the first vending machine102displays718the location of the nearby alternate vending machine102for the product. An advantage of the second embodiment is that the availability database316of the server104is updated quickly in response to product availability changes, and thus the information is kept highly current.

FIG. 8is a flow diagram depicting operation of a non-server-based network in accordance with a third embodiment of the present invention. In this embodiment, the first vending machine102maintains802a list of candidate vending machines located near the first vending machine102. The list, for example, can be pre-programmed during installation of the first vending machine102, identifying candidate alternate vending machines102in order of nearness to the first vending machine102, along with directions for getting to the alternate machine. The first vending machine102then communicates804with at least one of the candidate alternate vending machines of the list to locate a desired product, when the first vending machine has no availability of the desired product. The third embodiment advantageously is simple and inexpensive, and requires no server104.

FIG. 9is a flow diagram depicting operation of a non-server-based network in accordance with a fourth embodiment of the present invention. In the fourth embodiment, the transceivers209have a limited transmission range. The flow begins when a transceiver209of a first vending machine102communicates902about a desired product with at least one candidate alternate vending machine102within range of the transceiver209, when the first vending machine102has no availability of the desired product. The first vending machine102then checks904whether the candidate alternate vending machine102has responded that it does have the desired product. If not, the first vending machine102returns to step902to attempt to communicate with another candidate alternate vending machine102. When the candidate alternate vending machine102has the desired product, the first vending machine102then queries906the at least one candidate alternate vending machine102for its location. After receiving the location of the candidate alternate vending machine102, the first vending machine102calculates908the distance between the first vending machine102and the candidate alternate vending machine102. Only when the distance is less than a predetermined distance, the first vending machine102then defines910the candidate alternate vending machine102to be the nearby alternate vending machine102for the desired product. The fourth embodiment preferably utilizes the location detection device306for providing geographic coordinates of the position of the vending machine102. This embodiment advantageously can be used even when the vending machines102are moved frequently. In this embodiment, directions to the nearby alternate vending machine can be conveyed, for example, by a compass heading and a distance.

Thus, it should be clear from the preceding disclosure that the present invention advantageously provides a method and apparatus in first vending machine of a plurality of vending machines for locating a nearby alternate vending machine having a desired product. Advantageously, the method and apparatus operate to quickly convey to the potential buyer the location of the nearby alternate vending machine having the desired product. Both server-based and non-server-based systems have been disclosed.

Many modifications and variations of the present invention are possible in light of the above teachings. Thus, it is to be understood that, within the scope of the appended claims, the invention can be practiced other than as specifically described herein above.