51
EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc networks Cross-layer adaptation Distributed power control Joint scheduling and power control for wireless ad hoc networks (Haleh Tabrizi) Adaptation and interference (wideband CDMA) Adaptation via game theory (Manas Deb)

EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Embed Size (px)

Citation preview

Page 1: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

EE360: Lecture 9 OutlineResource Allocation in Ad

Hoc Nets

AnnouncementsPaper summaries due next Wednesday

Overview of resource allocation in ad-hoc networks

Cross-layer adaptation Distributed power control

Joint scheduling and power control for wireless ad hoc networks (Haleh Tabrizi)

Adaptation and interference (wideband CDMA)

Adaptation via game theory (Manas Deb)

Page 2: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Adaptive Techniques forWireless Ad-Hoc

Networks

Network is dynamic (links change, nodes move around) Adaptive techniques can adjust to and exploit variations Adaptivity can take place at all levels of the protocol

stack Negative interactions between layer adaptation can

occur

Page 3: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

What to adapt, and to what?

QoSAdapts to application needs, network/link

conditions, energy/power constraints, …

RoutingAdapts to topology changes, link changes, user

demands, congestion, …

Transmission scheme (power, rate, coding, …)Adapts to channel, interference, application

requirements, throughput/delay constraints, …

Adapting requires information exchange across layers and should happen on different time scales

Page 4: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Bottom-Up View:Link Layer Impact

“Connectivity” determines everything (MAC, routing, etc.)Link SINR and the transmit/receive strategy

determine connectivity

Can change connectivity via link adaptation

Link layer techniques (MUD, SIC, smart antennas) can improve MAC and overall capacity by reducing interference

Link layer techniques enable new throughput/delay tradeoffsHierarchical coding removes the effect of burstiness

on throughputPower control can be used to meet delay constraints

Page 5: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Power Control Adaptation

Each node generates independent data.

Source-destination pairs are chosen at random.

Topology is dynamic (link gain Gijs time-varying)

Different link SIRs based on channel gains Gij

Power control used to maintain a target Ri value

jijiji

iiii PG

PGR

Gij

Gii

Pi

Pj

Page 6: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Power Control for Fixed Channels

Seminal work by Foschini/Miljanic [1993]

Assume each node has an SIR constraint

Write the set of constraints in matrix form

jiG

G

ji

F

ii

ijiij ,

,0

i

jijiji

iiii PG

PGR

0P0,uPFI

T

NN

NN

11

11

G

ηγ,,

G

ηγu

Scaled Interferer Gain Scaled Noise

Page 7: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Optimality and Stability

Then if F <1 then a unique solution to

P* is the global optimal solution

Iterative power control algorithms PP*

uFIP -1*

uFP(k)1)P(k :dCentralize

(k)P)(R

γ1)(kP :dDistribute i

i

ii k

Page 8: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

What if the Channel is Random?

Can define performance based on distribution of Ri:

Average SIROutage ProbabilityAverage BER

The standard F-M algorithm overshoots on average

How to define optimality if network is time-varying?

ii γERγlog]R[logE ii

Page 9: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Can Consider A New SIR Constraint

Original constrainti

jijiji

iiii γ

PGη

PGR

0PGηγPGEji

jijiiii

Multiply out and take expectations

0uPFI Matrix form

ji,GE

GEγ

ji0,

F

ii

ijiij

T

u

]E[G

ηγ,,

]E[G

ηγ

NN

NN

11

11

Same form as SIR constraint in F-M for fixed channels

Page 10: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

New Criterion for Optimality

If F<1 then exists a global optimal solution

For the SIR constraint

Can find P* in a distributed manner using stochastic approximation (Robbins-Monro)

uFIP-1*

i

ijjiji

iii γ

PGηE

PGE

Page 11: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Robbins-Monro algorithm

Where k is a noise term

Under appropriate conditions on

kkk εaP(k)ga-P(k)1)P(k

k

n 1

2k

k

1nkk aa0a :size Step

u(k)uP(k)F(k)Fεk

kε*PP(k)

Page 12: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Admission ControlWhat happens when a new user powers up?

More interference added to the systemThe optimal power vector will moveSystem may become infeasible

Admission control objectivesProtect current user’s with a “protection

margin”Reject the new user if the system is unstableMaintain distributed nature of the algorithm

Tracking problem, not an equilibrium problem

Page 13: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Fixed Step Size Algorithm Properties

Have non-stationary equilibria So cannot allow ak 0

A fixed step size algorithm will not converge to the optimal power allocation

This error is cost of tracking a moving target

O(a)||P~

*P||EwhereP~

P(k)

k

n 1

2k

k

1nkk aaaa :size Step

Page 14: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Example: i.i.d. Fading Channel

Suppose the network consists of 3 nodes

Each link in the network is an independent exponential random variable

Note that F=.33 so we should expect this network to be fairly stable

104.02.

04.10375.

02.0375.1

E[G] i1η5γ ii

Page 15: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc
Page 16: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc
Page 17: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Power Control + … Power control impacts multiple layers of

the protocol stack Power control affects interference/SINR,

which other users react to Useful to combine power control with other

adaptive protocolsAdaptive routing and/or scheduling (Haleh)Adaptive modulation and codingAdaptive retransmissionsEnd-to-end QoS…

Page 18: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Multiuser Adaptation

TrafficGenerator

DataBuffer

SourceCoder

ChannelCoder

Modulator(Power)

Receiver

Channel

Cross-Layer Adaptation

Channel interference is responsive to the cross-layer adaptation of each user

Page 19: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Multiuser Problem Formulation

Optimize cross-layer adaptation in a multi-user setting

Users interact through interferenceCreates a “Chicken and Egg” control problemWant an optimal and stable equilibrium state and

adaptation for the system of users

The key is to find a tractable stochastic process to describe the interference

Page 20: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Linear Multi-User Receiver

Assume each of K mobiles is assigned a N-length random spreading sequence

The receiver ci takes different values for

different structures (MMSE, de-correlator, etc.)

ijjjj

Tii

Ti

iiiTi

K

iNii

tztaSccc

tztaSctiSIR

VVN

S

)()()()(

)()()(),(

,,1

22

2

1

Interference term

Page 21: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Interference Models

Jointly model the state space of every mobile in the systemProblem: State space grows exponentially

Assume unresponsive interferenceAvoids the “Chicken and Egg” control issueProblem: Unresponsive interference models

provide misleading results

Approximations use mean-field approach Model aggregate behavior as an averageCan prove this is optimal in some cases

Page 22: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

CDMA Wideband Limit

• Let and the “system load”

• Previous research has proved convergence of the SIR in the wideband limit [Tse and Hanly 1999,2001]

• Can apply a wideband approximation to the stochastic process describing a CDMA system and the corresponding optimal control problem

NK, N

K

Pow

er

Hz123

KK= number of users, N=spreading gain

Page 23: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Optimization in the Wideband Limit

Want to find optimal multi-user cross-layer adaptation for a given performance metric, subject to QoS constraints

Approximate the network dynamics with wideband limit

Optimize the control in the wideband limit

Check convergence and uniqueness to ensure the solution is a good approximation to a finite bandwidth system

Special case of using mean field theorems

Page 24: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Equilibrium in the Wideband Limit

For any K, N, the system state vector is the fraction of users in each state

Define as the single user transition matrix

In the wideband limit we have deterministic non-linear dynamics for the system state

Furthermore has a unique fixed point

)(tK

gtPtttt KNK

),()()1(and)(lim)(,

gP ,

gtP K ),(

Page 25: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Wideband Optimal Control Problem

Very similar to the single user optimization

The non-linear constraint can introduce significant theoretical and computational complications

The non-linear program is not convex Can show that it can be solved by a sequence of linear

programs

)( ,1)( ),()(,)(

:tosubject

)()(min

fggggPg

grg T

g

Page 26: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Example: Power Adaptation With Deadline Constrained Traffic

Assume deadline sensitive data (100ms)

50 km/h Microcell (same channel as before)

Minimize average transmission power subject to a deadline constraint

Assume we have a matched filter receiver

What happens as system load increases?Let “number of users per Hz” vary between 0 and 1

Page 27: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Power vs. System Load vs. Deadline Constraint

Users/Hz

Prob. Of Packet Loss

Ave

rage

Pow

er

InfeasibleRegion

Page 28: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Crosslayer Design in Ad-Hoc Wireless

Networks

ApplicationNetworkAccessLink

Hardware

Substantial gains in throughput, efficiency, and end-to-end performance

from cross-layer design

Page 29: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Crosslayer Design

HardwareLinkAccessNetwork

Application

Delay ConstraintsRate RequirementsEnergy Constraints

Mobility

Optimize and adapt across design layersProvide robustness to uncertainty

Page 30: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Crosslayer Adaptation Application Layer

Design optimization criterion Data prioritization Adaptive QoS

Network Layer Adaptive routing

MAC Layer Access control MUD/interference cancellation/smart antennas

Link Layer Adaptive rate, coding, power, framing, etc. Adaptive retransmission/hierarchical coding

Link, MAC, and network have the most obvious synergies,but the application layer dictates the optimization criterion

Page 31: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Why a crosslayer design?

The technical challenges of future mobile networks cannot be met with a layered design approach.

QoS cannot be provided unless it is supported across all layers of the network. The application must adapt to the underlying

channel and network characteristics.

The network and link must adapt to the application requirements

Interactions across network layers must be understood and exploited.

Page 32: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Adaptive Routing

Routing establishes the mechanism by which a packet traverses the network

As the network changes, the routes should be updated to reflect network dynamics

Updating the route can entail significant overhead.

SourceDestination

Page 33: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Route dessemination

Route computed at centralized nodeMost efficient route computation.Can’t adapt to fast topology changes.BW required to collect and desseminate information

Distributed route computationNodes send connectivity information to local nodes.Nodes determine routes based on this local information.Adapts locally but not globally.

Nodes exchange local routing tablesNode determines next hop based on some metric.Deals well with connectivity dynamics.Routing loops common.

Page 34: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Reliability Packet acknowledgements needed

May be lost on reverse linkShould negative ACKs be used.

Combined ARQ and codingRetransmissions cause delayCoding may reduce data rateBalance may be adaptive

Hop-by-hop acknowledgementsExplicit acknowledgementsEcho acknowledgements

Transmitter listens for forwarded packet More likely to experience collisions than a short

acknowledgement.Hop-by-hop or end-to-end or both.

Page 35: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

MIMO in Ad-Hoc Networks

• Antennas can be used for multiplexing, diversity, or interference cancellation

•Cancel M-1 interferers with M antennas

• What metric should be optimized?Cross-Layer Design

Page 36: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

How to use Feedback in Wireless Networks

Output feedbackCSIAcknowledgementsNetwork/traffic informationSomething else

Noisy/Compressed

Page 37: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Diversity-Multiplexing-Delay Diversity-Multiplexing-Delay Tradeoffs for MIMO Multihop Tradeoffs for MIMO Multihop

Networks with ARQNetworks with ARQ

MIMO used to increase data rate or robustness Multihop relays used for coverage extension ARQ protocol:

Can be viewed as 1 bit feedback, or time diversity, Retransmission causes delay (can design ARQ to control delay)

Diversity multiplexing (delay) tradeoff - DMT/DMDT

Tradeoff between robustness, throughput, and delay

ARQ ARQ

H2 H1

Error Prone

Multiplexing

Low Pe

Beamforming

Page 38: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Fixed ARQ: fixed window size Maximum allowed ARQ round for ith hop satisfies

Adaptive ARQ: adaptive window size Fixed Block Length (FBL) (block-based feedback, easy synchronization)

Variable Block Length (VBL) (real time feedback)

Multihop ARQ Protocols

1

N

ii

L L

iL

Block 1ARQ round 1

Block 1ARQ round 1

Block 1ARQ round 2

Block 1ARQ round 2

Block 1ARQ round 3

Block 1ARQ round 3

Block 2ARQ round 1

Block 2ARQ round 1

Block 2ARQ round 2

Block 2ARQ round 2

Block 1ARQ round 1

Block 1ARQ round 1

Block 1ARQ round 2

Block 1ARQ round 2

Block 1 round 3Block 1 round 3

Block 2ARQ round 1

Block 2ARQ round 1

Block 2ARQ round 2

Block 2ARQ round 2

Receiver has enough Information to decodeReceiver has enough Information to decode

Receiver has enough Information to decodeReceiver has enough Information to decode

Page 39: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

39

Asymptotic DMDT Optimality Theorem: VBL ARQ achieves optimal DMDT in MIMO multihop

relay networks in long-term and short-term static channels.

Proved by cut-set bound

An intuitive explanation by stopping times: VBL ARQ hasthe smaller outage regions among multihop ARQ protocols

0 4 8 Channel Use

Short-Term Static ChannelAccumlatedInformation

(FBL)

re

t1 t212

Page 40: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Delay/Throughput/Robustness across

Multiple Layers

Multiple routes through the network can be used for multiplexing or reduced delay/loss

Application can use single-description or multiple description codes

Can optimize optimal operating point for these tradeoffs to minimize distortion

A

B

Page 41: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Application layer

Network layer

MAC layer

Link layer

Cross-layer protocol design for real-time

media

Capacity assignment

for multiple service classes

Capacity assignment

for multiple service classes

Congestion-distortionoptimizedrouting

Congestion-distortionoptimizedrouting

Adaptivelink layer

techniques

Adaptivelink layer

techniques

Loss-resilientsource coding

and packetization

Loss-resilientsource coding

and packetization

Congestion-distortionoptimized

scheduling

Congestion-distortionoptimized

scheduling

Traffic flows

Link capacities

Link state information

Transport layer

Rate-distortion preamble

Joint with T. Yoo, E. Setton, X. Zhu, and B. Girod

Page 42: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Video streaming performance

3-fold increase

5 dB

100

s

(logarithmic scale)

1000

Page 43: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Approaches to Cross-Layer

Resource Allocation*

Network Optimization

DynamicProgramming

State Space Reduction

*Much prior work is for wired/static networks

Distributed Optimization

DistributedAlgorithms

Network UtilityMaximization

Wireless NUMMultiperiod NUM

GameTheory

Mechanism DesignStackelberg GamesNash Equilibrium

Page 44: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Network Utility Maximization

Maximizes a network utility function

Assumes Steady state Reliable links Fixed link capacities

Dynamics are only in the queues

RArts

rU kk

..

)(max

routing Fixed link capacity

flow k

U1(r1)

U2(r2)

Un(rn)

Ri

Rj

Page 45: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Wireless NUM

Extends NUM to random environments

Network operation as stochastic optimization algorithm Physical

Layer

UpperLayers

PhysicalLayer

UpperLayers

PhysicalLayer

UpperLayers

PhysicalLayer

UpperLayers

PhysicalLayer

UpperLayers

user video

SGSE

GGSREGrE

GrUE m

)]([

)]),(([)]([

st

))](([max

Stolyar, Neely, et. al.

Page 46: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

WNUM Policies Control network resourcesInputs:

Random network channel information Gk

Network parameters Other policies

Outputs: Control parametersOptimized performance, thatMeet constraints

Channel sample driven policies

Page 47: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Example: NUM and Adaptive Modulation

Policies Information rate r() Tx power S() Tx Rate R() Tx code rate

Policy adapts to Changing channel

conditions (G) Packet backlog Historical power

usage

Data

Data Data)( 11 rU

)( 22 rU

)( 33 rU

PhysicalLayer

Buffer

UpperLayers

PhysicalLayer

Buffer

UpperLayers

Block codes used

Page 48: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Rate-Delay-Reliability

Policy Results

Page 49: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Game theoryCoordinating user actions in a large ad-hoc

network can be infeasible

Distributed control difficult to derive and computationally complex

Game theory provides a new paradigmUsers act to “win” game or reach an

equilibriumUsers heterogeneous and non-cooperative Local competition can yield optimal outcomesDynamics impact equilibrium and outcomeAdaptation via game theory

Page 50: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Capacity Delay

Outage

Capacity

Delay

Robustness

Network Fundamental Limits

Cross-layer Design andEnd-to-end Performance

Network Metrics

Application Metrics

(C*,D*,R*)

Fundamental Limitsof Wireless Systems

(DARPA Challenge Program)

Research Areas- Fundamental performance limits and tradeoffs - Node cooperation and cognition- Adaptive techniques- Layering and Cross-layer design- Network/application interface- End-to-end performance optimization and guarantees

A

BC

D

Page 51: EE360: Lecture 9 Outline Resource Allocation in Ad Hoc Nets Announcements Paper summaries due next Wednesday Overview of resource allocation in ad-hoc

Summary

The dynamic nature of ad-hoc networks indicate that adaptation techniques are necessary and powerful

Adaptation can transcend all layers of the protocol stack

Approaches to optimization include dynamic programming, utility maximization, and game theory

Network dynamics make centralized/distributed control challenging

Game theory provides a simple paradigm that can yield near-optimal solutions