The present invention is embodied in computer software or computer readable program code that can be executed on a general purpose computer. When executed on a general purpose computer, the present invention is able to optimally allocate any number of subscribers of communications services to common carrier plans, based on usage history, to provide a lower cost solution for their service usage.
The present invention finds particular application in connection with organizations that have a corporate (funded) liable wireless/cellular communication program. Each such organization determines which wireless carrier or provider (one or more) they will select based on their internal business needs related to service, cellular signal coverage, cost drivers, individual subscriber's needs as well as satisfying the organization's communication policies. Each wireless telecommunication carrier rate plan has its own unique way of describing how its service is used and a list of terms that define the costs of using their service. At any one time, there is a large number (e.g., over 100) of standard voice plans to choose from in the market for an organization to assign one or more subscribers.
In order to deal with each carrier's market strategies of their service offering that constitutes the carriers' wireless rate plans, the present invention defines a flexible and extensible rate plan data model that is configured to accept each wireless telecommunication's rate plan idiosyncrasies or strategies, service attributes and capabilities.
The flexibility of the present invention enables wireless telecommunications carrier rate plan changes to be added or removed from consideration as required. This flexibility enables the optimization process to select the present attributes that represent the subscriber's usage model. These selected attributes are then reflected in the choices within the optimization model which then associates an optimal cost effective rate plan based on the subscriber's rate plan attributes and usage. This universal data model is designed in a way that enables it to be seamlessly expanded as the features in the cellular voice and data market expand. It also accounts for the removal of attributes in the data model once those features are no longer available in the market place.
The present invention is an optimization process that considers the historic usage of a set of subscribers over one or more foregone months. It includes a global optimization to determine the lowest total cost for providing service to all of those subscribers. Its output is a set of binary values that correlate to an assignment of each subscriber to a specific wireless plan.
With reference to
Examples of the optimization process will now be described with reference to the following scenarios and the accompanying figures.
Flat Rate Plans—Free Assignment Scenario:
With reference to
With reference to
In the analysis of John Doe's and Sally Sue's usage, the computer software of the present invention would determine, by way of solving an optimization problem (described next), which wireless rate plan has the lowest cost per month. The optimization is global across all subscribers under consideration (in this example, for both John Doe and Sally Sue), and considers every candidate wireless rate plan.
The optimization problem is formulated as a Mixed Integer Program (MIP) with the following objective function:
Minimize the sum of 21.19(x1)+71.99(x2)+63.59(x3)+99.99(x4)+29.99(x5)+29.99(x6)+
29.99(x7)+36.99(x8)+32.99(x9)+32.99(x10)+32.99(x11)+32.99(x12)+
207.99(x13)+329.59(x14)+159.19(x15)+357.59(x16)+131.49(x17)+237.89(x18)+
88.79(x19)+262.39(x20)+86.99(x21)+269.39(x22)+32.99(x23)+311.391(x24)
and the following set of linear constraints:
c1:x1+x5+x9=1
c2:x2+x6+x10=1
c3:x3+x7+x11=1
c4:x4+x8+x12=1
c5:x13+x17+x21=1
c6:x14+x18+x22=1
c7:x15+x19+x23=1
c8:x16+x20+x24=1
where each variable, xi (where i=1, 2, . . . , etc.), represents the assignment of a particular subscriber to a particular wireless rate plan in a particular month. For example, variables x1-x4 represent the assignment of John Doe to the Wireless Carrier “V” Flat Rate Plan in January, February, March and April, respectively; variables x13-x16 represent the assignment of Sally Sue to the Wireless Carrier “V” Flat Rate Plan in January, February, March and April, respectively; and so forth. The coefficient in front of each variable in the objective function represents the cost that would have been realized had the subscriber been assigned to the wireless rate plan in the corresponding month.
Constraints c1 through c8 ensure that each subscriber is assigned to only one wireless rate plan. For example, constraint c1 restricts John Doe to be assigned to only one of the Wireless Carrier “V”, Wireless Carrier “C”, and Wireless Carrier “T” plans, in January. Constraints c2 through c4 are analogous for the months of February, March, and April, respectively, for John Doe, while constraints c5 through c8 are analogous for Sally Sue for the months of January through April, respectively.
The foregoing MIP can be solved with any commercially available MIP solver, such as the CPLEX® optimizer available from ILOG, Inc., 1080 Linda Vista Avenue, Mountain View, Calif. 94043, or the Xpress-MP™ optimizer available from Dash Optimization, Inc., 560 Sylvan Avenue, Englewood Cliffs, N.J. 07632. In the U.S., CPLEX® is a Registered Trademark, Registration No. 1790210, of ILOG, Inc.
With reference to
Flat Rate Plans-All Time Intervals Required Assignment Scenario:
From a cost standpoint, it may be impractical for a subscriber to change wireless rate plans within a contract period due to cancellation charges associated with each plan. However, it may be beneficial to allow a subscriber to switch wireless carrier rate plans if it can be determined that it is more cost effective to change a subscriber's rate plan and pay the cancellation charges versus not changing wireless rate plans. Accordingly, in contrast to permitting the MIP solver to freely assign a rate wireless plan to a subscriber in a particular month, it would be desirable that the MIP solver only assign one wireless rate plan to each subscriber for a number of months (or time intervals). To this end, in order to determine which wireless rate plan to allocate to each subscriber, the following additional constraints are added to the set of linear constraints that the MIP solves:
For John Doe:
c9:x1−x25≦0
c10:x2−x25≦0
c11:x3−x25≦0
c12:x4−x25≦0
c13:x5−x26≦0
c14:x6−x26≦0
c15:x7−x26≦0
c16:x8−x26≦0
c17:x9−x27≦0
c18:x10−x27≦0
c19:x11−x27≦0
c20:x12−x27≦0
c21:x25+x26+x27≦1
c22:x13−x28≦0
c23:x14−x28≦0
c24:x15−x28≦0
c25:x16−x28≦0
c26:x17−x29≦0
c27:x18−x29≦0
c28:x19−x29≦0
c29:x20−x29≦0
c30:x21−x30≦0
c31:x22−x30≦0
c32:x23−x30≦0
c33:x24−x30≦0
c34:x28+x29+x30≦1
In constraints c9 through c34 above, binary variables x1-x24 have the same meanings as discussed above, binary variables x25, x26 and x27 represent the assignment of John Doe to the Wireless Carrier “V” plan, the Wireless Carrier “C” plan and the Wireless Carrier “T” plan, respectively, and binary variables x28, x29 and x30 represent the assignment of Sally Sue to the Wireless Carrier “V” plan, the Wireless Carrier “C” plan and the Wireless Carrier “T” plan, respectively. The sum of variables x25, x26 and x27 that represent the assignment of John Doe to a wireless rate plan is constrained (c21) to be less than or equal to 1. This constraint (c21) forces John Doe to be allocated only one of the wireless rate plans. Similarly, constraint c34 forces Sally Sue to be allocated only one of the wireless rate plans.
Plan Pooling Scenario:
As part of the wireless rate plan selection process, the MIP formulation can guide the MIP solver to determine if two or more subscribers can be grouped together. The process of grouping subscribers is called pooling. The wireless service market as defined by the wireless telecommunication providers has created several forms of pooling that the present invention can optimize as follows:
With reference to
Example: Suppose a carrier has 2 wireless rate plans that facilitate pooling peak voice minutes and that 4 subscribers purchase (i.e., are allocated) two rate plans that have 1000 Peak Pooled Minutes and two rate plans that have 800 Peak pooled Minutes whereupon the four subscribers have a total of 3600 minutes (2×1000+2×800) between them which can be pooled.
Given the base charge shown in
In the instance where we have the subscribers John Doe and Sally Sue with usages described above, where a subscriber must be assigned to the same wireless rate plan for four months, the only available wireless rate plans are the Pool 1000 (with cost $87/month) and Pool 800 (with cost $68/month), and subscribers assigned to a pool may use minutes in excess of those granted by the pool at a rate of $0.10/minute, the optimization problem is formulated as a Mixed Integer Program (MIP) with the following objective function:
Minimize the sum of: 272(x1)+348(x2)+272(x3)+348(x4)+0.10(x5)+0.10(x6)+0.10(x7)+0.10(x8)
and linear constraints:
c1:x1+x2=1
c2:x3+x4=1
c3:777(x1)+977(x2)+310(x3)+510(x4)+(x5)>=0
c4:650(x1)+850(x2)+6(x3)+206(x4)+(x6)>=0
c5:671(x1)+871(x2)+432(x3)+632(x4)+(x7)>=0
c6:580(x1)+780(x2)−64(x3)+136(x4)+(x8)>=0
The encoding of the forgoing MIP is as follows:
Variables x1 and x2 are associated with the assignment of John Doe to the Pool 800 plan and the Pool 1000 plan, respectively, for the four-month period of
Variables x5 . . . x8 represent for the four-month period of
The coefficients of variables x1-x8 in the objective function represent either the cost of assigning a subscriber to a plan for the four month period (x1-x4) or the overage cost per minute of the pool, (x5-x8) respectively. For example, for x1, the coefficient 272=(4 months)($68 per month charge for Pool 800 plan). For x5, the coefficient 0.10 is the cost per minute for any overage minutes in Jan. Similarly for x6-x8 for February-April, respectively.
Constraints c1 and c2 ensure that each subscriber is assigned to only one wireless rate plan. Specifically, constraint c1 restricts John Doe to being allocated to only one pool plan, namely, Pool 800 plan (x1) or Pool 1000 plan (x2). Similarly for Sally Sue and constraint c2 for Pool 800 plan (x3) or Pool 1000 plan (x4).
Each constraint c3 . . . c6 ensures that for each month, January, February, March, and April, respectively, the total number of minutes available to the pool plus the total number of overage minutes used by the pool is greater than or equal to the total number of minutes used by subscribers in the pool. For example, constraint c6(for April) has constants 580, 780, −64 and 136 associated with variables x1-x4, respectively. Constant 580 (associated with x1) is the number of surplus minutes John Doe would have in April if he were assigned to the Pool 800 plan, i.e., 800-220 (See
In the example of John Doe and Sally Sue above, the MIP solver, a.k.a. the optimizer, would assign the value of 1 to the variables: x1 and x3. Each other variable would be assigned a value of 0. The interpretation of this solution is that both John Doe and Sally Sue are assigned to Pool 800 for the four month period, for a total cost of $544. As the total usage of the two does not exceed 1600 minutes in any month, no pool overage charges are necessary.
Buckets of Minutes Pooling Scenario:
With reference to
Example: Suppose a carrier has the two plans shown in
Minimize the sum of: 0(x1)+0(x2)+0(x3)+0(x4)+0.10(x5)+0.10(x6)+0.10(x7)+0.10(x8)+348(x9)+0.10(x10)+0.10(x11)+0.10(x12)+0.10(x13)+1566(x14)
and linear constraints:
c1:x1+x2=1
c2:x3+x4=1
c3:−23(x1)−490(x3)+(x5)+1000(x9)>=0
c4:−150(x1)−794(x3)+(x6)+1000(x9)>=0
c5:−129(x1)−368(x3)+(x7)+1000(x9)>=0
c6:−220(x1)−864(x3)+(x8)+1000(x9)>=0
c7:−(x1)−(x3)+2(x9)>=0
c8:−23(x2)−490(x4)+(x10)+5000(x14)>=0
c9:−150(x2)−794(x4)+(x11)+5000(x14)>=0
c10:−129(x2)−368(x4)+(x12)+5000(x14)>=0
c11:−220(x2)−864(x4)+(x13)+5000(x14)>=0
c12:−(x2)−(x4)+2(x14)>=0
The encoding of the Buckets of Minutes Pooling MIP is similar to the Plan Pooling Mixed Integer Program (MIP) described above, with the addition of variables x9 and x14 which represent purchasing a Bucket 1000 plan and purchasing a Bucket 5000 plan, respectively. For x9 in the objective function, the constant 348=(4 months)($87 per month charge for Bucket 1000 plan). For x14 in the objective function, the constant 1566=(4 months)($319.50 per month charge for Bucket 5000 plan).
The variables x1 and x3 now represent the assignment of John Doe and Sally Sue, respectively, to a Bucket 1000 Plan for the months of January, February, March and April, and x2 and x4 represent the assignment of John Doe and Sally Sue, respectively, to a Bucket 5000 Plan for the months of January, February, March and April. The constant “0” preceding each of x1-x4 in the objective function implies that there is no cost associated with assigning John Doe and Sally Sue to either plan.
Variables x5 . . . x8 represent the overage minutes in January, February, March, and April for all subscribers assigned to the Bucket 1000 plan, while variables x10 . . . x13 represent the overage minutes in January, February, March, and April for all subscribers assigned to the Bucket 5000 plan.
Constraints c1 and c2 ensure that each subscriber (in the present example, John Doe and Sally Sue) is assigned to only one wireless rate plan. Constraints c3 . . . c6 are the surplus/deficit constraints for the Bucket 1000 plan for the months of January, February, March, and April, respectively, for all subscribers assigned to the Bucket 1000 plan, and each constraint c3-c6 includes a term for the number of minutes provided in a particular month from the purchase of minutes from the plan. For example, constraint c3 for the month of January includes the constants −23 and −490 associated with variables x1 and x3 for the minutes used in January by John Doe and Sally Sue, respectively, the variable x5 is for the overage minutes in January, and the constant 1000 associated with variable x9 is for the total number of minutes available in the Bucket 1000 plan in the month of Jan. Similarly for constraints c4-c6 for the surpluses/deficits in the Bucket 1000 plan in February, March and April and constraints c8-c11 for the surpluses/deficits in the Bucket 5000 plan in January, February, March and April.
Constraint c7 ensures that no subscribers are assigned to the Bucket 1000 plan unless the Bucket 1000 plan has been purchased. Similarly, constraint c12 ensures that no subscribers are assigned to the Bucket 5000 plan unless the Bucket 5000 plan has been purchased.
Given the above MIP, the MIP solver would assign the value of 1 to the following variables: x1, x3 and x9; would assign a value of 84 to x8; and a value of 0 to each other variable. The interpretation of this solution is that one Bucket 1000 plan is purchased, and both John Doe and Sally Sue are assigned to this bucket for the four month period, for a total cost of $348. As the total usage of the two exceeds 1000 minutes only in April, overage charges of $0.10*(0+0+0+84)=$8.40 also apply.
Add a Phone Scenario:
With reference to
Example: Suppose a carrier has the three plans shown in
Minimize the sum of: 272(x1)+348(x2)+272(x3)+348(x4)+0.10(x5)+0.10(x6)+0.10(x7)+0.10(x8)+60(x9)+60(x10)
and linear constraints:
c1:(x1)+(x2)+(x9)=1
c2:(x3)+(x4)+(x10)=1
c3:777(x1)+977(x2)+310(x3)+510(x4)+(x5)−23(x9)−490(x10)>=0
c4:650(x1)+850(x2)+6(x3)+206(x4)+(x6)−150(x9)−794(x10)>=0
c5:671(x1)+871(x2)+432(x3)+632(x4)+(x7)−129(x9)−368(x10)>=0
c6:580(x1)+780(x2)−64(x3)+136(x4)+(x8)−220(x9)−864(x10)>=0
c7:(x1)+(x2)+(x3)+(x4)−(x9)−(x10)>=0
The encoding of the objective function is the same as in the Plan Pooling MIP discussed above, with the addition of variables x9 and x10 which represent the assignment of John Doe and Sally Sue, respectively, to the Add-A-Phone plan for January, February, March and April. The constant 60 preceding variable x9 represents the cost of the Add-A-Phone plan for John Doe for January, February, March and April, i.e., $60=(4 months)($15/month). Similarly, the constant 60 preceding variable x10 represents the cost of the Add-A-Phone plan for Sally Sue for January, February, March and April.
Constraints c1 and c2 ensure that each subscriber is assigned to only one plan. Specifically, constraint c1 restricts John Doe to being allocated to only one pool plan, namely, the Pool 800 plan (x1), the Pool 1000 plan (x2), or the Add-a-Phone plan (x9). Similarly, for Sally Sue and constraint c2 for the Pool 800 plan (x3), the Pool 1000 plan (x4), or the Add-a-Phone plan (x10).
Constraints c3-c6 ensure that for the months of January, February, March, and April, respectively, the total number of pool plan minutes available to the pool plus the total number of overage minutes used by the pool is greater than or equal to the total number of minutes used by subscribers in the pool. For example, constraint c6(for April) has constants 580, 780, −64 and 136 associated with variables x1-x4, respectively. Constant 580 (associated with x1) is the number of surplus minutes John Doe would have in April if he were assigned to the Pool 800 plan, i.e., 800-220 (See
Constraint c7 ensures that no Add-A-Phone plan is assigned unless at least one subscriber is assigned to a pooling plan (Pool 800 or Pool 1000 plan).
Given the above MIP, the MIP solver would assign the value of 1 to the variables: x1 and x10; would assign the value of 144 to x6; and would assign the value of 284 to x8. Each other variable is assigned the value of 0. The interpretation of this solution is that John Doe would be assigned to Pool 800 and Sally Sue would be assigned to the Add-A-Phone plan for this pool. The total plan costs are $272 (4 months×$68/month)+$60 (4 months×$15/month)=$332. In January and March, the total usage of the pool is less than the 800 minutes allowed, so there is no overage. In February, the total usage of the two subscribers is 944 minutes, so 144 minutes of overage are used. In April, the total usage of the two subscribers is 1084, so 244 minutes of overage are used. The total overage costs are $0.10*(0+144+0+244)=$28.80.
Shared Plans Scenario:
With reference to
Example: Suppose a carrier has the two shared wireless rate plans shown in
The total base cost for the 5 subscribers is $150.00 (40+(2*20)+50+(1*20)).
Just as a single subscriber optimization process can determine what the lowest cost rate plan is for one or more months of usage, the pooling process for the shared plan is very similar with two exceptions. As shown, each pooling shared plan has its own type of subscriber grouping and each subscriber shares the same minutes as a primary subscriber. The present invention allows for the plan's grouping properties and the outcome of the pooling process to determine which subscribers should belong to what type of pooling process at the lowest possible cost. By default, the present invention determines the lowest cost subscriber pooling plan (multiple subscribers in either a single pool or in multiple pools) and type for more than one subscriber group, the type of pooling plan they should be assigned to and which subscribers should be grouped together.
Often, as part of the optimization process, there may be one or more pooling groups for four or more subscribers that are based on the usage for the subscribers in each defined group. (Pooling requires at least 2 subscribers in a pool)
In summary, the present invention determines whether it is cost effective to group or select a pooling method with more than one subscriber together and, if so, the following must be true:
A group of subscribers placed in an optimal pool with a defined pooling structure must have a lower cost than any other pooling for the selected subscribers; and
The group of pooled subscriber's total cost must be lower than the sum of the same group of subscribers' single lowest plan cost.
Conditional Discounts:
The present invention can also facilitate the incorporation of conditional discount offers into the optimization model (or MIP formulation) for organizations that sign a contract commitment to a wireless telecommunication provider. Examples of conditional discounts include: (1) one based on a achieving a subscriber volume level of business, (2) the second is meeting a corporate volume level of monetary level of business (dollar volume) or a monetary volume commitment discount and (3) the third is a flat rate discount.
The subscriber volume discount is based on a carrier being awarded a certain number of subscribers. These discounts can be tiered whereupon the more subscribers awarded to a carrier the greater the discount. For example:
The monetary volume commitment discount requires an organization to spend a certain amount of business with a wireless telecommunications service carrier before a discount can be applied. These discounts can be tiered whereupon the more subscribers awarded to a carrier the greater the discount. The amount upon which these discounts are based is called a Minimum Revenue Commitment (MRC). For example:
The flat rate discount is a discount that is provided by the wireless telecommunication carrier to an organization. This discount is a general or flat rate discount that is given to an organization if they do business with the carrier or are awarded the business for one or more subscribers. The only commitment to obtain this discount is to do business with the carrier. For example:
The present invention can also facilitate unique discount structures per rate plan type or device type. For example, separate discounts can be allocated for data devices and voice based devices, or voice rate plans versus data or data packet rate plans.
For each subscriber, one or more discount types may be incorporated in the MIP. If the discounts are incorporated or allowed in the MIP, the MIP solver will determine which is the optimal discount type and level or tier. Or rather, if feasible, the MIP solver will select the discount level within the discount structure that offers the largest incentive or total lowest cost for all subscribers. Multiple discounts and multiple types of discounts can be applied in one allocation.
Wireless telecommunication carrier discounts can also apply to different groups in an organization or a subscriber group. An example of different groups within an organization would be a business group. Therefore, conditional discounts can be based on properties other than the number of subscribers, monetary commitments, or general business requirements. The discounts could be based on, for example, without limitation, the one or more of the following which can be encoded into an MIP:
Side Constraints:
If desired, one or more of the following so-called side constraints, that impose an additional restriction or limitation on the outcome determined by the MIP solver, can also be encoded into the MIP formulation:
Scenario Demand (modifies each subscriber's usage or consumption pattern to accommodate changes in the future demand of minutes, kilobytes, short message usage, picture message and text messages usage and text message usage);
Discount minutes (e.g., free in-carrier calls);
User Defined Pooling Structures.
In order to collectively group or pool voice and or data minutes (i.e., text, IP, etc.) together, the MIP formulation must be coded to represent group plans, subscriber's minutes and subscribers together.
When a plan is defined in a carrier rate plan data model, a single rate plan is defined if it has the ability to pool or share minutes with another plan. If a plan has pooling or sharing capability, or both, it then is defined as to what type of pooling it can perform within the carrier's billing/subscriber usage system. A single rate plan may have several different pooling types that may be purchased as an individual or single subscriber plan.
The second part of determining the modeling of a plan is to determine what other plans can be linked together and, if they are linked together, whether they are to share the same type of pooling properties. Pooling plans that have the same pooling properties are to be known as a pooling group.
During optimization by the MIP solver, pooling plans that have the same pooling linkage will be analyzed against two or more subscribers. If two or more subscribers are determined to be pooled together, then they must be pooled with plans that have direct linkage or within the same pooling plans. Subscribers that are pooled together must always belong in the same pooled group.
Subscriber Rate Plan Pooling Optimization Selection.
The MIP can be formulated to guide the MIP solver to allocate pooling structures during the optimization process. The MIP formulation can also be coded whereupon it guides the MIP solver to determine if one or more subscribers can be included in one or more pooling structures.
During optimization, the MIP formulation can guide the MIP solver to quantify if a subscriber should be on a single plan or on a pooling plan, provided pooling plans are permitted to be incorporated in the optimization. The MIP solver, as controlled by the formulation, will determine, based on service costs and a subscriber's usage profile, if the subscriber should be on a single plan or in a pooling plan with one or more subscribers. The optimization process will not only look at a single plan for a single subscriber but will also determine if one or more subscribers can be grouped or pooled together based on the pooling types available.
Automated Implementation of Project Plans Based on a User Defined Allocation.
The MIP formulation guides the MIP solver to determine the appropriate allocation for one or more subscribers. The allocation must be communicated so a corporation can assign contractual obligations for subscribers to their identified wireless telecommunication service providers (carriers). The allocation identifies the following for each subscriber in every project or implementation:
The allocation identifies the following for subscribers that have been pooled:
The results of the allocation will reflect changes for a given subscriber:
If carrier switching has occurred—the MIP formulation can guide the MIP solver to automatically generate the necessary information that is given to the incumbent carrier to deactivate the subscriber's service.
If a subscriber keeps their business with their existing carrier or switches to a new carrier, the system automatically generates the necessary information to activate the new service, change the rate plan and details of the existing services or to alter the existing service.
In addition, the foregoing two steps can be automatically generated together so the past, current and future transition plans can be managed in a project format.
If desired, a prior allocation of subscribers to rate plans determined in accordance with the method of one of scenarios described above can subsequently be analyzed to validate whether such allocation is optimal in view of one or more subscriber's usage after said allocation and/or in view of other scenarios that may be applicable.
For example, an allocation of subscriber's to one or more rate plans for a first four-month period can be determined in accordance with the method of one of the above-described scenarios, e.g., plan pooling. Thereafter, a new, similar scenario, e.g., plan pooling, (i.e., a suitable new MIP) can be prepared for a second four-month period, that may or may not include some of the same months as the first four-month period. The cost (projected or actual) of the original allocation can be compared to the anticipated cost of a new allocation resulting from the new scenario to assess whether costs savings can be realized and, if so, the new allocation can be implemented.
Also or alternatively, the costs (projected or actual) of allocations determined according to different scenarios (e.g., plan pooling and buckets of minutes) can be compared to determine which allocation should realize the most savings whereupon said allocation can be implemented.
Also or alternatively, the effect of two or more instances of the same scenario can be compared, where at least one of said scenario instances has one or more conditional discounts, one or more side constraints, and/or the like, different that the other scenario instances to determine the effect said conditional discount(s) and/or side constraint(s) has on the cost of the allocation. If one of such allocations is more cost effective than the other(s), the former allocation can be implemented.
If a new allocation doesn't identify changes that indicate a favorable cost reduction or program restructuring (flat rate plans to pooling plans), then one or more new scenarios with unique side constraints or rules along with selected historical months for comparison may be analyzed for potential cost savings.
In essence, the user selects the months they wish to compare data for analysis and historical cost savings. The allocation will identify if the scenario can generate a savings against the historical data and the analyzed data. This comparison does not have to be a direct comparison of a subscribers historical month(s) of usage and their analyzed month(s) of usage. The analysis can be for the entire program, a group of subscribers (scope) or a single subscriber.
Still further, the computer that implements the present invention can be configured to take as input data regarding subscriber's historical usage and information regarding a number of rate plans and to automatically generate from such input one or more of the above-described scenarios. Each scenario can be automatically processed by the MIP solver running on the computer to determine a solution therefor. The computer can compare two or more thus determined solutions and can automatically output an allocation of the most cost effective solution.
Also or alternatively, a side constraint that requires a minimal savings amount and the time period over which such savings must be realized for one or more subscribers can be included in one or more scenarios. If this side constraint is infeasible, the MIP solver would not generate a corresponding allocation for this scenario. However, if this side constraint is feasible, the MIP solver would generate a corresponding allocation for this scenario.
Lastly, if the computer implementing the present invention determines that a newly generated allocation will cost less than an existing allocation, the new allocation can be output along with the cost savings. Desirably, the computer implementing the present invention is programmed to automatically implement, on a desired time schedule, each new allocation it determines will cost less than a currently implemented allocation. For example, if it is determined that making an allocation change amid a subscription period will cost less, then the computer implementing the present invention will make such change. Alternatively, if it is determined that it costs less delaying making an allocation change until the end of a subscription period, then the computer implementing the present invention will delay making such change until the end of the subscription period.
As can be seen, the present invention enables a number of subscribers to be optimally allocated to two or more rate plans at the same time. Each rate plan can be for voice, data or a combination thereof. While only a few MIP formulations have been described, it is believed that one skilled in the art of MIP formulation could, based on the foregoing disclosure, readily prepare a MIP formulation for each plan, discount, side constraint, etc. described above that can be combined with the illustrated MIP formulations for solution by the MIP solver.
The invention has been described with reference to the preferred embodiments. Obvious modifications and alterations will occur to others upon reading and understanding the preceding detailed description. It is intended that the invention be construed as including all such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.
The present application claims priority from U.S. Provisional Patent Application No. 60/810,955, filed Jun. 5, 2006, which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60810955 | Jun 2006 | US |