Patent ID: 8620715

Claim:
A method of managing a plurality of wells in a field, comprising: receiving, during runtime of a Field management Framework, on a user's platform, a custom balancing action defined in a scripting language; receiving, during the runtime of the Field Management Framework on the user's platform and by the Field Management Framework, a custom strategy associated with the plurality of wells, wherein the custom strategy comprises an instruction relating the custom balancing action to a triggering criterion defining a first target associated with a respective first well of the plurality of wells, wherein the custom balancing action comprises adjusting a flow rate associated with a second well of the plurality of wells to a target flow rate, and wherein the custom strategy is defined in the scripting language; determining, by the Field Management Framework executing the instruction and based on input data collected by one or more sensors associated with the first well, that the first target is outside an acceptable range; implementing, by the Field Management Framework using a surface network simulator, the custom balancing action to bring the first target within the acceptable range; identifying, by the Field Management Framework, that the custom balancing action fails to bring the first target within the acceptable range; implementing, by the Field Management Framework, a topology modifying action to modify a topology of the plurality of wells in response to the custom balancing action failing to bring the first target within the acceptable range, wherein the topology modifying action adds a new flow rate constraint for the second well, wherein the new flow rate constraint is a boundary condition for flow rate in an optimization problem, and wherein the optimization problem comprises an objective to increase a ratio of oil to gas; and executing, by the Field Management Framework and based on modifying the topology, the surface network simulator to simulate a flow through the plurality of wells and obtain a simulated flow, wherein the surface network simulator interfaces via an open application programming interface with an adapter connected to the Field Management Framework.