Embodiments herein provide geospatial-temporal next-best-action decisions. Specifically, a predictive modeling tool is configured to receive, from a user, a first instance of unstructured data, the unstructured data containing an indicator of a transacting opportunity, and generate a profile for the user by combining the unstructured data with structured data, the profile including personality characteristics and identifying information of the user. The profile is used to identify the user as a producer of a second instance of unstructured data by comparing the personality characteristics and identifying information of the user to the second instance of unstructured data. A commercial offer is then generated based on information from the profile of the user and at least one of the first instance of unstructured data or the second instance of unstructured data, and the offer is communicated to the user when the user is located within a predetermined proximity to a retailer.

DETAILED DESCRIPTION OF THE INVENTION

The invention will now be described more fully herein with reference to the accompanying drawings, in which exemplary embodiments are shown. Embodiments of the invention provide geospatial-temporal next-best-action decisions. Specifically, a predictive modeling tool is configured to receive, from a user, a first instance of unstructured data, the unstructured data containing an indicator of a transacting opportunity, and generate a profile for the user by combining the unstructured data with structured data, the profile including personality characteristics and identifying information of the user. The profile is used to identify the user as a producer of a second instance of unstructured data by comparing the personality characteristics and identifying information of the user to the second instance of unstructured data. A commercial offer is then generated based on information from the profile of the user and at least one of the first instance of unstructured data or the second instance of unstructured data, and the offer is communicated to the user when the user is located within a predetermined proximity to a retailer.

This disclosure may be embodied in many different forms and should not be construed as limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided so that this disclosure will be thorough and complete and will fully convey the scope of this disclosure to those skilled in the art. In the description, details of well-known features and techniques may be omitted to avoid unnecessarily obscuring the presented embodiments. Reference throughout this specification to “one embodiment,” “an embodiment,” or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment,” “in an embodiment,” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.

Unless specifically stated otherwise, it may be appreciated that terms such as “processing,” “computing,” “determining,” “evaluating,” or the like, refer to the action and/or processes of a computer or computing system, or similar electronic data center device, that manipulates and/or transforms data represented as physical quantities (e.g., electronic) within the computing system's registers and/or memories into other data similarly represented as physical quantities within the computing system's memories, registers or other such information storage, transmission or viewing devices. The embodiments are not limited in this context.

Referring now toFIG. 1, a computerized implementation100of the present invention will be described in greater detail. As depicted, implementation100includes computer system104deployed within a computer infrastructure102. This is intended to demonstrate, among other things, that the present invention could be implemented within a network environment (e.g., the Internet, a wide area network (WAN), a local area network (LAN), a virtual private network (VPN), etc.), a cloud-computing environment, or on a stand-alone computer system. Communication throughout the network can occur via any combination of various types of communication links. For example, the communication links can comprise addressable connections that may utilize any combination of wired and/or wireless transmission methods. Where communications occur via the Internet, connectivity could be provided by conventional TCP/IP sockets-based protocol, and an Internet service provider could be used to establish connectivity to the Internet. Still yet, computer infrastructure102is intended to demonstrate that some or all of the components of implementation100could be deployed, managed, serviced, etc., by a service provider who offers to implement, deploy, and/or perform the functions of the present invention for others.

Computer system104is intended to represent any type of computer system that may be implemented in deploying/realizing the teachings recited herein. In this particular example, computer system104represents an illustrative system for providing geospatial-temporal next-best-action decisions. It should be understood that any other computers implemented under the present invention may have different components/software, but will perform similar functions. As shown, computer system104includes a processing unit106capable of communicating with a next-best-action (NBA) tool118stored in memory108, a bus110, and device interfaces112.

Processing unit106refers, generally, to any apparatus that performs logic operations, computational tasks, control functions, etc. A processor may include one more subsystems, components, and/or other processors. A processor will typically include various logic components that operate using a clock signal to latch data, advance logic states, synchronize computations and logic operations, and/or provide other timing functions. During operation, processing unit106collects and routes signals representing inputs and outputs between external devices115and predictive modeling tool118. The signals can be transmitted over a LAN and/or a WAN (e.g., T1, T3, 56 kb, X.25), broadband connections (ISDN, Frame Relay, ATM), wireless links (802.11, Bluetooth, etc.), and so on. In some embodiments, the signals may be encrypted using, for example, trusted key-pair encryption. Different systems may transmit information using different communication pathways, such as Ethernet or wireless networks, direct serial or parallel connections, USB, Firewire®, Bluetooth®, or other proprietary interfaces. (Firewire is a registered trademark of Apple Computer, Inc. Bluetooth is a registered trademark of Bluetooth Special Interest Group (SIG)).

In general, processing unit106executes computer program code, such as program code for operating predictive modeling tool118, which is stored in memory108and/or storage system116. While executing computer program code, processing unit106can read and/or write data to/from memory108, storage system116, and predictive modeling tool118. Storage system116can include VCRs, DVRs, RAID arrays, USB hard drives, optical disk recorders, flash storage devices, and/or any other data processing and storage elements for storing and/or processing data. Although not shown, computer system104could also include I/O interfaces that communicate with one or more external devices115(e.g., a cellular phone, a smart phone, a keyboard, a pointing device, a display, etc.) that enable interaction with computer system104.

Referring now toFIG. 2, operation of predictive modeling tool218will be described in greater detail. As shown,FIG. 2is a block diagram illustrating an example of a combination of processing components that can be used for implementing predictive modeling tool118in implementation100illustrated inFIG. 1. Predictive modeling tool218receives, aggregates, and analyzes user data202from a plurality of sources/channels to generate a commercial offer for a user204. In an exemplary embodiment, unstructured social data206is received from user204(e.g., customers or potential customers) via a social media application208. To accomplish this, predictive modeling tool218comprises an analyzing component210configured to receive a first instance of unstructured social data206from user204, wherein the first instance of unstructured social data206comprises one or more indicators from an action within social media application126(e.g., Twitter®, Facebook®, LinkedIn®, etc.) that reveal sentiment (e.g., towards a particular product or company), personality traits of user204, emotion state of user204, etc. (Twitter is a registered trademark of Twitter, Inc. having an address at 1355 Market Street, Suite 900 San Francisco, Calif. 94103, Facebook is a registered trademark of Facebook, Inc. having an address at 1601 Willow Road Menlo Park, Calif. 94025, and LinkedIn is a registered trademark of LinkedIn Corporation having an address at Stierlin Court Mountain View, Calif. 94043.) The indicators from an action within social media application may be written text from a posting (i.e., a message sent to a social media application), a Facebook® or LinkedIn® “like”, etc., and represent a transacting opportunity for user204, a selling opportunity for a retailer212, or a customer satisfaction issue.

In one embodiment, analyzing component210is also configured to receive structured data214(e.g., a history of past transactions), consortium data216(e.g., shared anonymized data pooled from banking institutions, retailers, etc.), and telecommunications (telco) data220(e.g., network/wireless/wireline usage by the user). The combination of unstructured social data206, structured data214, consortium data216, and telco data220can provide even deeper insight into what the next-best-action can be with user204or a group of users. To accomplish this, predictive modeling tool218comprises a resolution component222configured to combine one or more sources of user data202to generate a profile224for user204, wherein profile224includes personality characteristics of user204and identifying information of user204for recognizing user204as a same entity across a plurality of data sources. In one embodiment, resolution component140receives consortium data134and/or telco data220from user204, and generates user profile224based on the combination of unstructured social data206, structured data214, consortium data216and/or telco data220. User profile224contains user sentiment (e.g., towards a particular product or company), personality traits of user204, emotion state of user204, etc., as well as data obtained from a number of disparate sources/accounts of user204. For example, user profile224may contain the home address of user204discovered through a telco call record. Resolution component222is then able to use the information of user profile224to recognize user204as the same entity across a plurality of sources. Specifically, profile224is used to identify user204as a producer of a second instance of unstructured data206by comparing the personality characteristics and identifying information of user204to the second instance of unstructured data.

Furthermore, in some embodiments, linguistic style or probability of event occurrence may also be used to identify user204. For example, user204may communicate the same specific event (e.g., “I'm watching a hockey game with my daughter, Avery.”) via Facebook® and Twitter®. In another example, similar connections and/or messages between users across both Facebook® and Twitter® may be leveraged to identify user204. Resolving user204into a single entity enables discovery of additional unstructured data without explicitly tying the social media account to a structured account of user204.

As shown inFIG. 2, predictive modeling tool218further comprises an offering component226configured to generate a commercial offer228based on user profile224and at least one of the first instance and the second instance of unstructured data206. In one embodiment, a next-best-action (NBA) model230is used to accomplish this. NBA model230is a marketing and advertising model that provides next-best-action decision-making, wherein NBA model230considers the different actions that can be taken for user204and decides on the ‘best’ one. The NBA (e.g., an offer, proposition, service, etc.) is determined by the attributes (e.g., personality characteristics and identifying information) of user204within user profile142, as well as a marketing organization's business objectives, policies, and regulations on the offer. NBA model230reliably achieves NBA capabilities in high volumes as well as in real-time. In one embodiment, this requires some form of decisioning hub that leverages decision logic to combine an advertisers business rules with predictive and adaptive decisioning models to help determine how to target and solicit user204. The decisioning authority takes into account each user's expectations, propensities and likely behavior through the use of predictive modeling. The result is one or more commercial offers228generated for user204or selected from a predetermined selection of commercial offers. If feedback is received from user204in response to the commercial offering(s)228, offering component226is configured to re-evaluate the offer228based on the response.

Offering component226is configured to then communicate commercial offer228to user204when user204is located within a predetermined proximity (e.g., 2 miles) to a retailer212, wherein retailer212is identified as being capable of fulfilling the commercial offer to user204. In one embodiment, commercial offer228is communicated to user204via at least one of: a message generated within social media application208, a short message-system (SMS) text to a cell phone or smart phone (not shown) of user204, or an electronic message (e-mail) to the cell phone or smart phone of user204. Furthermore, commercial offer228is preferable communicated to user204soon after it's generated.

Offering component226also considers time and/or location to make sure the offer is delivered at the right time and place for maximum effectiveness. To accomplish this, analyzing component210is configured to receive temporal data for the indicator of the transacting opportunity (e.g., time of posting by user204), as well as spatio temporal data for user204(e.g., time and location of user204at the time of the posting). Commercial offer228is then generated by offering component226based on the temporal data for the indicator of the transacting opportunity and the spatio-temporal data for user204. In one embodiment, the home address of user204may match attributes of a Facebook®, LinkedIn®, or Twitter® profile, which contains location information, e.g., approximated through IP addresses, cookie history, etc. Offering component226may then determine that user204is located within a predetermined proximity to retailer212at the time of a social media posting and, therefore, identify a promotion being offered by retailer212.

Location detection could be done through real time location information transmission, or through a predictive model based on historical telco data220. For example, if user204frequently visits the same coffee shop on Saturdays at 10 AM, the predictive model knows the user's home location is 10 miles away, the predictive model can predict, with a certain degree of certainty, that user204will pass certain shops in between the two locations between 9:45 and 10:00 AM. If a shoe store is within the path of user204, and unstructured social data120previously received contains an indicator representing a desire for new shoes, user204will receive an offer for shoes.

In another example, a browsing history from telco data220would enable a deeper analysis of unstructured social data120. Consider an example in which user204is located inside an electronics store. Telco data220indicates that user204has previously searched a number of electronics websites, while a prior transaction record from structured data214indicates that user204purchased a TV five years ago. Based on this, user204could receive a targeted real time offer meant to entice user204into purchasing an item (e.g., a new TV) from the electronics store. Or, user204could receive a targeted real time offer that provides a better price/deal, e.g., from a competing electronics retailer to dissuade user204from making the purchase. This is an example of resolving user204across different dimensions, which then results in the next best action decision.

In yet another embodiment, a placed call, text message, or other action requiring interaction with a cellular tower could identify the right timing of offer228. For example, a cell phone event inside a grocery store may trigger a time-based promotion for bread or cereal. A deep integration with cellular data, transacting history, and what user204has been talking about online enables a highly targeted offer with increased granularity.

It will be appreciated that offer228is communicated according to a set of communication permission settings established by user204. Offering component226is configured to receive and manage these customer communication permission settings in real time, including across all instances of user204, and support real time validation of the communication permission settings before any interaction with user204is executed. As such, user204is not inundated with unwanted offers from retailers (i.e., SPAM).

Referring now toFIG. 3, an implementation of predictive modeling tool218fromFIG. 2will be shown and described. In this non-limiting example, user304posts a tweet (302), e.g., about needing shoes, wherein the tweet may originate as an SMS message (306). The analyzing component reviews the tweet to identify a transacting opportunity (308), selects a communication channel (i.e., method and mode) (310), and writes the message of the offer (312). The offering component then generates the commercial offer (314), and sends the commercial offer to user204as an SMS containing a uniform resource locator (URL) (316). User204may click the URL to view the offer (318), e.g., in a web browser. If user204accepts the offer and completes the purchase (320), then the process ends (322). However, if user204does not click the offer or complete the purchase, then user204is queued up for a future offering (324). That is, if user204later moves into range of a shoe store, the offer will be re-triggered (326), sent to user204(328), which can then be redeemed in the shoe store (330), and the process ends (332).

As described herein, the present invention provides a tool, which reviews e-mails, blog entries, forum posts, social media postings, etc., and combines this data with structured data, telco data, consortium data, and spatio-temporal data to generate a next-best-action decision. In this case, predictive modeling tool218can be provided, and one or more systems for performing the processes described in the invention can be obtained and deployed to computer infrastructure102(FIG. 1). In one embodiment, predictive modeling tool218can be built from the following components:

Data services layer on top of a database with the in memory option (e.g. DB2). The in memory option enables predictive modeling tool218with real time capabilities;

Software Part Semantics Specification (SPSS) model execution engine; and/or

iLOG Business Rule Management System model execution engine;

A workflow engine that invokes the calculation of predictive values any time the predictor Key Performance Indicators (KPI) change;

A consumer behavior pattern detection store capturing and refining business rules for NBA execution;

Business Glossary to explain the meaning of the predictive values and the KPIs used; and

Telecom Operations Model (eTOM) based and Tivoli Data Warehouse (TDW) aligned customer model.

This framework of predictive modeling tool218uses G2 entity analytics to create a single identity by identifying the probabilities that a user is the same person across multiple channels and sources. This framework separates capture of data in real time from modeling done offline and execution based on a received real time event and activation of the analytics model created by modeling. In one embodiment, once a user has crossed a certain threshold probability, the entity may be considered ‘resolved’ until another discordant event puts that resolution into question.

The deployment of predictive modeling tool218can comprise one or more of: (1) installing program code on a data center device, such as a computer system, from a computer-readable storage medium; (2) adding one or more data center devices to the infrastructure; and (3) incorporating and/or modifying one or more existing systems of the infrastructure to enable the infrastructure to perform the process actions of the invention.

The exemplary computer system104(FIG. 1) may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, people, components, logic, data structures, and so on that perform particular tasks or implements particular abstract data types. Exemplary computer system104may be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.

The program modules carry out the methodologies disclosed herein, as shown inFIG. 4. Shown is a process400for providing geospatial-temporal next-best-action decisions, wherein, at402, a first instance of unstructured social data is received from a user, the unstructured data including an indicator of a transacting opportunity. At404, the unstructured social data is combined with other data types (e.g., structured, consortium, telco, etc.) to generate a profile for the user. The profile is used, at406, to identify the user as a producer of a second instance of unstructured data by comparing the personality characteristics and identifying information of the user to the second instance of unstructured data. At408, a commercial offer is generated based on the profile of the user and at least one of the first instance and second instance of unstructured data. At410, the commercial offer is initiated to communicate to the user when the user is located within a predetermined proximity to a retailer.

The flowchart ofFIG. 4illustrates the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks might occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently. It will also be noted that each block of flowchart illustration can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

Many of the functional units described in this specification have been labeled as modules in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like. Modules may also be implemented in software for execution by various types of processors. An identified module or component of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.

Furthermore, as will be described herein, modules may also be implemented as a combination of software and one or more hardware devices. For instance, a module may be embodied in the combination of a software executable code stored on a memory device. In a further example, a module may be the combination of a processor that operates on a set of operational data. Still further, a module may be implemented in the combination of an electronic signal communicated via transmission circuitry.

As noted above, some of the embodiments may be embodied in hardware. The hardware may be referenced as a hardware element. In general, a hardware element may refer to any hardware structures arranged to perform certain operations. In one embodiment, for example, the hardware elements may include any analog or digital electrical or electronic elements fabricated on a substrate. The fabrication may be performed using silicon-based integrated circuit (IC) techniques, such as complementary metal oxide semiconductor (CMOS), bipolar, and bipolar CMOS (BiCMOS) techniques, for example. Examples of hardware elements may include processors, microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, application specific integrated circuits (ASIC), programmable logic devices (PLD), digital signal processors (DSP), field programmable gate array (FPGA), logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth. The embodiments are not limited in this context.

“Communication media” typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as carrier wave or other transport mechanism. Communication media also includes any information delivery media.

The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above are also included within the scope of computer readable media.

It is apparent that there has been provided an approach for providing geospatial-temporal next-best-action decisions. While the invention has been particularly shown and described in conjunction with a preferred embodiment thereof, it will be appreciated that variations and modifications will occur to those skilled in the art. Therefore, it is to be understood that the appended claims are intended to cover all such modifications and changes that fall within the true spirit of the invention.