I Introduction
Recent years have seen the rise of efforts to control the wireless propagation within a space, introducing programmable wireless environments (PWEs) [1]. According to the PWE paradigm, planar objects–such as walls in a floorplan–receive a special coating that can sense impinging waves and actively modify them by applying an electromagnetic (EM) function. Examples include altering the wave’s direction, power, polarization and phase [2]. The capabilities of several coating technologies have been demonstrated [3, 4, 5]. The present work builds upon these physicallayer works, and proposes a solution to the networklayer PWE configuration problem, i.e., which functions to deploy at the PWE coatings to serve a set of given user communication objectives.^{†}^{†}This work is part of project VISORSURF: A HyperVisor for Metasurface Functionalities (www.visorsurf.eu). Funded by the European Union Horizon 2020, under the Future Emerging Technologies  Research and Innovation Actions call (Grant Agreement EU 736876).
Evaluated coating technologies for PWEs include relays, phased antenna arrays, and metasurfaces [6]. Each technology comes with a range of supported functions, environmental applicability and efficiency degrees. Relays are 1 input N output antenna pairs that can be placed over walls at regular intervals [5]. At each pair, one out of the N outputs can be selected, thereby redirecting the input wave in a partially customizable manner. Phased antenna arrays–also known as intelligent surfaces and reflectarrays [7, 8, 9]–are panels commonly comprising a number of patch antennas with halfwavelength size, in a 2D grid arrangement. At each patch, active elements such as PIN diodes are used for altering the phase of the reflected EM wave. Consistent wave steering and absorption is attained at the far field. Metasurfaces are similar structures, but with a times higher density of metaatoms (i.e, the repeating unit of a planar antenna and active elements) [2]. This density allows them to form any surface current distribution over them, thereby producing any EM output due to the Huygens principle [10]. Thus, highly efficient EM functions even in the near field can be attained. HyperSurfaces are a novel class of networked metasurfaces that comes with a software programming interface (API) and an EM compiler [11, 12]. The API allows for getting the HyperSurface state and setting its EM function, while abstracting the underlying physics. The EM compiler translates the API callbacks to corresponding active element states.
A PWE is created by coating planar objects–such as as walls and ceilings in an indoor environment–with tiles, i.e., rectangular panels of any aforementioned technology, with internetworking capabilities [1]. The latter allow a central server to connect to any tile, get its state and set its EM function in an automated manner [13]. This maturity level reached at the physical layer of tiles opens a new research direction at the network level: given a set of users with communication objectives within a PWE, what is the optimal EM function per tile to serve them?
The present work contributes a solution to this problem, able to handle multiple users, objectives and EM functions. User mobility, multiple objectives per user, multicast groups and partially coated PWEs are supported. The objectives include power transfer and signaltointerference maximization, as well as eavesdropping and Doppler effect mitigation. In order to achieve these traits, the work also contributes:

A systematic way of formulating and combining EM functions, which takes into account keyoutcomes from the field of Physics (metamaterials).

The EM profile of tiles, a novel concept that describes the supported EM functions per tile and their efficiency.

A graphbased model to describe PWEs, and a way of transforming communication objectives to graph paths.

A novel tool specifically developed for realistically simulating PWEs.
Extensive evaluations in multiple floorplans and topologies yield important conclusions about the maximum potential of PWEs and their user capacity in terms of maximal supported traffic load.
The remainder of this work is organized as follows. Section II surveys related studies. Section III describes the graphbased modeling of PWEs and the concepts of tile EM functions and profile. Section IV details the novel scheme for configuring PWEs. Evaluation takes place in Section V. The discussion follows in Section VI, along with future work directions, and the paper concludes in Section VII.
Ii Related work
PWEs are attracting attention due to the recent advances in the development of new techniques to control the radiation patterns of EM waves [14, 8, 15, 13, 16]. The existing literature mainly refers to PWE tile unit technologies, rather than PWE configuration approaches. We employ the layered taxonomy of Fig. 1 (introduced in [14]) to survey them:
EM behavior Layer. This layer comprises the supported EM function of the tile, and its principle of operation. Reflectarray tiles (and also phased arrays or intelligent surfaces) employ modifiable phase shifts applied over their surface. At the far field, reflected rays can be considered codirectional, and their superposition–constructive or destructive–is controlled by the applied phase shifts [7]. Thus, wave scattering or redirection functions can be attained. Metamaterial tiles operate at a lower level, acting as surfaces with tunable local impedance [2]. Impinging waves create inductive surface currents over the tile, which can be routed by tuning the local impedance across the tile. Notice that the principle of Huygens states that any EM wavefront can be traced back to a current distribution over a surface [10]. Thus, in principle, metamaterials can produce any custom EM function as a response to an impinging wave. Common functions include wave steering, focusing, collimating (i.e., producing a planar wavefront as a response to an impinging wave), polarizing, phase altering, full or partial absorption, frequency selective filtering and even modulation [2, 17]
. Metamaterials can be classified further as nonplasmonic or plasmonic. In the former, the impinging wave does not affect the configured local impedance. In plasmonic metamaterials, the surface impedance is altered by the impinging wave, producing nonlinear effects
[18, 19]. Thus, plasmonic metamaterials pose extra challenges in exerting deterministic control over waves, and are not considered for PWEs in the present work.Actuation and Sensing Layer. This layer includes the actual hardware elements that can be controlled to achieve a phase shift or impedance distribution across a tile. Commonly, the layer comprises arrays of planar antennas–such as copper patches–and multistate switches between them. Reflectarray tiles usually employ PIN diodes with controllable biasing voltage as switches [3]. Metamaterials have employed a wider range of choices, both in the shape and geometry of the planar antennas and in the nature of switches. CMOS transistors, PIN diodes, MicroElectroMechanical Switches (MEMS), microfluidic switches, magnetic and thermal switches are but a few of the considered options in the literature [20]. Notably, some options–such as microfluid switches–are statepreserving in the sense that they require power only to change state but not to maintain it (i.e., contrary to biased PIN diodes).
Sensing impinging waves is also necessary for exerting efficient control over them. While this information can be provided by external systems [13], tiles can incorporate sensing capabilities as well [21]. The sensing can be direct, employing specialized sensors [22], or indirect, e.g., by deducing some impinging wave attributes from currents or voltages between tile elements [14].
Computing Layer. This layer comprises the computing hardware that controls the actuating and sensing elements. Its minimum duties include the mapping of local phase or impedance values to corresponding actuator states. Reflectarray tiles commonly implement this layer using FPGAs and shift registers [3]. Metasurfaces, and specifically HyperSurfaces, can alternatively employ standard InternetofThings (IoT) devices for the same purpose [15]. Moreover, they can optionally include applicationspecific integrated circuits (ASICs) distributed over the tile metaatoms [23, 24]. This can enable autonomous, “thinking” tiles, where metaatoms detect the presence and state of one another, and take local actuating decisions to meet a general functionality objective. Nonetheless, this advanced capabilities are not required for PWEs.
Communication Layer. This layer comprises the communication stack and the means that connect the actuating and sensing layers, the computing layer and tileexternal devices (including other tiles and computers that monitor and configure PWEs [1]). In the simplest case, this layer is implemented within the computing hardware, acting as a gateway to the tileexternal world, using any common protocol (e.g., Ethernet). HyperSurface tiles with embedded ASICs additionally require intertile communication schemes, to handle the information exchange between smart metaatoms. Both wired and wireless intratile communication is possible [23, 24]. In both cases, the ASIC hardware employs custom, nonstandard protocols.
Differentiation. The related studies focus on one or more tile layers. However, to the best of the authors’ knowledge, the topic of configuring a PWE per user directives has not been previously studied. In their previous work, the authors formally introduced the PWE concept, its architecture and challenges [13, 1]. Proof of concept PWE simulations took place in [15, 6]
, which treated the PWE configuration problem as a block box, employing a genetic algorithm to configure the PWE tile functions. Power maximization over an area served as the driving criterion for the genetic algorithm. The present work departs from genetic heuristics and offers an exact configuration process. The novel process can handle multiple users and objectives spanning security, quality of service (QoS), mobility and wireless power transfer. A graphbased model for PWEs is also introduced, that can facilitate future contributions in the networklayer of PWEs, using the related physicallayer studied in tile technologies as input.
Iii A Graphbased Model for Programmable Environments
This Section provides an abstract model of the Physics behind metasurfaces, leading to a functioncentric formulation of their capabilities. This formulation is then used for modeling PWEs as a graph, and describing its workflow and performance objectives as path finding problems.
With no loss of generality, the text considers HyperSurface tiles, since they offer the richest set of supported features. The model, however, remains valid for any other tile technology. Moreover, the study will use an indoors setting as the driving scenario, but it remains valid in any other setting. Finally, the operating principles of PWEs and metasurfaces described in Sections I and II are sufficient for the remainder of the text. Additional introductory material can be found in the literature [13, 1, 6].
Persistent notation is summarized in Table I for ease. (Notation used only locally in the text is omitted).
Symbol  Explanation 

The set of all tiles within an environment.  
A single HyperSurface tile.  
The set of EM functions supported by a tile .  
A single function, deployed to tile .  
Absorption, Steering and Collimation functions.  
EM phase and polarization function modifiers.  
,  Nominal input/output (EM field) of a function. 
,  EM function input/outputs as wave attributes: 
<frequency, direction, power, polarity, phase>.  
Subscripts denoting plain wave and focal wave.  
Wave power gain/loss after impinging at tile .  
Graph with tiles and users as nodes,  
inter tile links and usertotile links .  
A path in as list of links from node to .  
A link in from node to .  
Link labels denoting intended Tx and Rx users.  
A tupple (group) of items.  
A list of objects (single items or tupples).  
Unintended (not nominal) type of quantity .  
The cardinality of a set . 
Iiia General Modeling and Properties of of HyperSurface Functions
Let denote the set of all HyperSurface tiles deployed within an environment, such as the floorplan of Fig. 2. A single tile will be denoted as . Let denote all possible EM functions that can be deployed to a tile . A single function deployed to a tile will be .
As discussed in Sections I and II, a function is attained by setting the active elements of the HyperSurface accordingly. In this work we will assume that the correspondence between functions and active element states is known, and the reader is redirected to studies on EM Compilers for further details [11, 12].
Each function receives a nominal input EM field, , (i.e., impinging upon the tile), and then returns a welldefined output (i.e., a reflected, refracted or no field–in case of perfect absorption), which can be abstracted as:
(1) 
Consider the coordinate system over a tile, as shown in Fig. 3. In the most generic function case, is defined over the plane on the surface, while contains the output field at any point around the tile. It is noted that a function also defines the output to any, even unintended input, , which can exemplary arise when EM sources move, without adapting the tile functions accordingly. Therefore, relation (1) is generalized as:
(2) 
We proceed to remark two important properties of the EM functions, stemming from physics:
The symmetry remark can be used for defining a common format for inputs and outputs in Section IIIB. It will also be called upon later on, to ensure that communication channels created by tuning HyperSurfaces are bidirectional.
Remark 2.
The linearity property, in conjunction with the symmetry property will be promptly employed to reform the input/output format of , without loss of generality.
IiiB Specialized Modeling of Function Inputs/Outputs
In communication scenarios, considering function input/outputs at the level of EM field may not be practical. Instead, considering the signal source location and characteristics that yields the can be more useful. To this end, we define the following input formats:
Planar wave. This case corresponds to a wave with a planar or almost planar wavefront, as shown in Fig. 4.
Planar waves can approximate:

waves impinging on a tile from a distant antenna at its far region,

waves that have been collimated at a preceding tile ( in Fig. 4), by applying the corresponding EM function.
Focusing on the second case, we will treat the collimation output as the source of the planar wave. Employing the coordinate system of the tile receiving this wave ( in Fig. 4) and due to the planarity assumption, a singlefrequency () wave of this class can be simply described by:

its direction, (using the notation to denote irrelevance from the dimension).

the total carried power,
, that impinges upon the surface of the tile (the summation of the Poynting vector norm over any bounded wavefront),

the normalized Jones vector, [25], describing the wave polarization at tile .

the wavefront phase at tile .
Since the field can be reconstructed from the aforementioned quantities, we proceed to replace it with the input parameter set for plane waves, :
(5) 
Likewise, a planar output field defined over the surface of can be alternatively expressed by the output parameter set for plane waves, :
(6) 
where the notation implies generally different values than relation (5).
Focal wave. This case represents any generally noncollimated radiation from a mobile device (cf. Tx in Fig. 4), with its energy dissipating over an evergrowing sphere. In this case, the EM field impinging upon a tile also depends on the characteristics of the antenna device (radiation pattern and orientation). Assuming that this information is known and constant, and using a similar approach as above an input field at a tile, generated by such a source can be replaced as:
(7) 
where , and potentially vary over the tile surface. (I.e., ). In the case where the focal wave is created (output) by a tile with the application of a proper function, the output field is similarly expressed as:
(8) 
Remark 3.
IiiC Modeling Core HyperSurface Functions
We proceed to study specialized HyperSurface functions, which are of practical value to the studied programmable wireless environments. Pure functions that can act as building blocks will be studied first, followed by a model for combining them into more complex ones.
Absorb . Plane wave absorption has constituted one the most prominent showcases of metasurfaces [2]. In the studied programmable environments, absorbing unwanted reflections is important for interference minimization, as well as enforcing determinism over EM propagation. The ideal absorption function for an intended plane wave input is expressed as:
(10) 
where the empty set denotes no output wave. Full absorption is attained by matching the surface impedance of the tile to the incoming wave. For a planar input, this means that the surface impedance is constant across the tile, resulting into zero phase gradient and normal (specular) reflective behavior. This remark facilitates the modeling of unintended inputs as follows:
(11) 
where is a metric of similarity between and , defined by the physical structure of the HyperSurface and incorporating any constant material losses. The specular reflection of is calculated as:
(12) 
where is directed and is the unit normal of the tile surface.
It is noted that relation (11) can be employed to achieve an intended: i) partial attenuation of a wave, and ii) frequency selective absorption (filtering) [2].
Steer . Steering plain waves from an incoming direction to another is achieved by enforcing a gradient surface impedance that corresponds to the required reflection index [2]. This physical phenomenon can be described by considering a virtual surface normal, , supplied as an input parameter of steering, that corresponds to a required reflection direction via relation (12). We proceed to define as follows:
(13) 
where in defined as in relation (11), noting that its specific expression generally differs from that of relation (11). We remark that the variant surface normal approach allows for a uniform expression (13), covering both the intended and unintended inputs.
Collimate . As noted in Section II, collimation is the action of transforming a nonplanar input wave to a planar output [2]. In essence, the HyperSurface is configured for a virtual surface normal that varies across the tile surface, matching the local direction of arrival of the input. In the present scope, collimation will be studied for focal wave input as follows:
(14) 
where the focal wave characteristics and the intended reflection direction are provided as inputs. Relation (14) refers to intended inputs and outputs. Obtaining the output to an unintended input can be based on the surface normal across the tile. Each subarea over which the surface normal can be considered constant interacts with a part of the wavefront that can be considered planar, resulting into a reflection calculated via relation (12). Thus, the outcome to unintended input is a set of planar outputs, each with its own power, polarity and phase:
(15) 
In the context of the studied programmable environments, collimation is intended to be used mainly at the first and last hop of the propagation from one device to another [6]. The first application (at a tile) transforms the waves emitted from a device to a planar form (see Fig. 4). Tiletotile propagation is then performed for planar inputs. At the final tile before reaching the receiver, the planar wave is focused to the intended spot. This focusing is essentially collimation in the reverse, where a planar wave is converted to focal output. The tile configuration for focusing remains the same as in collimation, due to the symmetry in Remark 1.
Polarize . The physics of polarization control can be described qualitatively by assuming equivalent circuits of metaatoms [2]. In essence, each metaatom can be viewed as a circuit with a input and output antennas, as well as crosscouplings among metaatoms. A wave enters via the input antennas, undergoes some alteration via the circuit and exits via output antennas, subject to the connections performed by tuning the active elements. Polarization is thus a shift in the Jones vector, attained by the appropriate choice of output antennas. Pure polarization control does not affect other wave parameters. As such, we define the polarization control not as a standalone function, but rather as a modifier applied to the output of a preceding function:
(16) 
For unintended outputs, the intended shift is not necessarily attained, which can be expressed as:
(17) 
where in general. Notice that power loss concerns are delegated to the preceding pure function.
Phase Alteration . Phase alteration follows the same principle as the polarization. Qualitatively, the modification of the wave phase is accomplished within the equivalent circuit, via an inductive or capacitative element [2]. Once again, this functionality is defined as a modifier:
(18) 
For unintended outputs, the definition is altered similarly to relation (17).
Combination model
The pure functions studied above can be combined to describe a more complex functionality. Complex functions may be an operational requirement (e.g., steer and polarize at the same time), or be imposed by physical imperfections of the metasurface (e.g., being unable to steer without altering the polarization). We proceed to present a common model to describe both cases.
Surface division. This combination approach assigns different functions to different subareas of the same tile [17]. The principle of operation is shown in Fig. 5 (left inset), where an impinging plane undergoes splitting into 3 separate directions and partial attenuation. The power distribution of any output waves depends on the area allocated to each subfunction. For instance, an ideal Nway split of an input towards directions with custom normals can be expressed as:
(19) 
where is the power of each output.
Metaatom merge. A common practice in metasurface analysis is to merge metaatoms to create more complex basic structures, called supercells [26]. Essentially, using the equivalent circuit paradigm, merging metaatom creates circuits with more degrees of tunability. This enables the combination of functions and modifiers, e.g., for steering and polarizing or steering and phase altering at the same time, over the same surface (cf. Fig. 5, right inset), denoted as:
(20) 
Additionally, it is possible to apply a metaatom mergederived function only to a subarea of a tile, thus combining it with surface division.
A summary of combinable functions and combination approaches is given in Table II. Notably: i) the combination patterns are symmetric, ii) combining collimation with any other nonmodifier function is possible but potential unintended, as described in the context of relation (15), iii) combining a modifier with absorption makes sense only when the absorption is partial (i.e., there is an output to apply the modifier upon), and iv) combining several modifiers of the same type to the same tile is the same as applying it once with the total modification. As such, these combinations are trivial. Finally, it is noted that any number of functions (i.e., more than two) can be merged via the surface division model.
Merge with  

Function 
SD  SD  MM  MM  
SD  SD  MM  MM  
MM  MM  
MM  MM  MM    MM  
MM  MM  MM  MM   
SD: Surface Division, MM: Metaatom Merge,
: Possible but potentially unintended.
*: Defined only when produces output (partial absorb).
It is worth noting that merging functions is not without impact on the efficiency of the HyperSurface. Any metasurface requires a minimum amount of metaatoms to yield a consistent behavior (i.e., with nearunitary efficiency) [17]. Both surface division and metaatom merge naturally limit the metaatom numbers available for a given functionality. As such, combining functions will generally amplify discretization, boundary and other errors [7]. This can lead to reduced efficiency, which can be expressed as considerably attenuated intended outputs, as well as the appearance of unintended, parasitic outputs, , even for intended inputs:
(21) 
where is the intended output and is the welldefined output to unintended input. Thus:
Remark 4.
Combining functionalities over a single tile generally reduces the efficiency of the overall function.
The effects of Remark 4 can be quantified only per specific, physical HyperSurface design. Nonetheless, we will employ this remark in ensuing Sections and setup a policy of minimizing function combinations in programmable wireless environments.
Remark 5.
The generic relation (21), in conjunction with the preceding modeling defines the information that a HyperSurface manufacturer should measure and provide, to facilitate the use in programmable environments. This information, collectively referred to as EM profile contains the following information:

The supported function types and allowed combinations, as a subset of the entries of Table II.

The intended and parasitic outputs to intended inputs.

The unintended and parasitic outputs to unintended inputs.
The EM profile can be obtained, e.g., by measuring the scattering pattern in controlled conditions, for the complete array of supported functions and intended inputs. Nonetheless, an exhaustive measurement for any unintended input may be prohibitive. In this case, the profile may provide a calculation model for outputs, such as the metric employed in Section IIIC.
For the remainder of this study, we will consider the EM profile as a given, provided by the tile manufacturer.
IiiD A Graph Model for Simulating and Optimizing Programmable Wireless Environments
Propagation within a 3D space comprises Lineofsight (LOS) and NonLOS (NLOS) components. Naturally, PWEs control the NLOS component only, without affecting the LOS [1]. Therefore, the following model will focus on the NLOS case. It is noted that a workaround for total control over NLOS and LOS with PWEs is discussed in Section VI.
Consider two tiles, and , in a 3D space. We will consider these tiles as connectable if there exist any input and functions , , such that:
(22) 
In other words, intertile connectivity means that one tile can redirect impinging EM energy to another. It is implied that the redirected power in significant, i.e., it surpasses a practical threshold defined by the application scenario. Thus, connectability may be precluded due to physical obstacles between tiles, or by the lack of supported tile functions to redirect significant energy to one another.
Additionally, we consider a set of user devices, , in the same space. User will be considered connected to tile if there exists any LOS input and a function such that:
(23) 
i.e., getting zero output from a tile connected to a user is only possible if a full absorption functionality is employed.
Based on relations (22) and (23), we define the notion of:

the set of intertile links, , where each contained link denotes tile connectivity potential by relation (22), and

the set of usertile links, , where each contained link denotes connection by relation (23).
Following the symmetry Remark 1, all links in and are bidirectional and symmetric. Additionally all links will be considered to have an associated label, , defined as the wave propagation delay, inclusive of any delay within the receiving end. Finally, lasttiletoreceivinguser links may be labeled as , to designate the transmitting user that may employ them. Likewise, transmittingusertofirsttile links may be labeled as , to designate the receiving user that must be reached via them. The labeling is intended to capture the MultipleInputMultipleOutput (MIMO) potential of the user devices at a high level.
Based on the above definitions, we proceed to define the graph , as well as subgraphs of the form . The latter represent environments that have been configured by applying specific functions to tiles, thus instantiating some of the allowed links . We consider an EM flow, , from a transmitter to a receiver , following a path via tiles within , defined as an ordered selection of links without repetitions:
(24) 
Remark 6.
The above formulation with nonrepeating links in paths is also posed in compliance with Remark 4, which dictates the avoidance of function combinations. To understand this claim, consider a counterexample with a repetitive path. This path must have the form where . Due to the symmetry Remark 1, a reverse input via the repeated link must exit from both and . This requires a splitting function at tile , which is a combined function, as described in the context of relation (19).
Any input at tile is transformed over the path as:
(25) 
where implies passing only the output of that impinges tile to , and ignoring any other outputs of . Without loss of generality, relation (25) omits the propagation over the first and last link, which are subject to antenna characteristics and standard (nonprogrammable) propagation. The endtoend delay of a path can be calculated in a trivial manner as the sum of all link delays:
(26) 
We proceed to consider all paths that reach the receiver , from any transmitter (noting the possible multiplicity of paths for the same pair). The total received output is then:
(27) 
Relations (26), (27) contain all the required information for deriving the communication quality of a pair . Moreover, due to the symmetry Remark 1, the derivations of relations (26), (27) are identical for the reverse path, . Finally, the labeling of the receiver’s links can be employed to classify outputs as useful or interfering based on the MIMO configuration.
The paths are directly derived from the deployed tile functions and the corresponding graph . The simulated NLOS propagation procedure is modeled as NLOSprop (Algorithm 1). The process receives as inputs: i) the configured tiles, ii) a receiver, and iii) all transmitting users and their inputs ( for each link connecting the transmitter to a tile). The process produces the paths leading from any transmitter to the receiver. Internally, a tupple denoted as ray is used for holding a path (cf. rel. (24)) and its input. A stack of is initialized per transmitter link (lines ). The model then continuously updates each ray, accounting for tile interactions (line ). It is noted that each interaction may yield more than one outputs. Once a path reaches the intended user, it is added to the model outputs (lines ) and the corresponding ray is discarded. If a tile is reached, a copy of the ray with an updated path is added to the ray set for further processing (lines ). The model accounts for attenuated rays, by using the connectivity definitions (22), (23)–weak rays are treated as null outputs. Furthermore, notice that rays escaping the consider space are discarded as expected (lines will yield null outputs). Finally, notice that the model can also provide the paths to a set of receivers, , by modifying the condition in line as .
Remark 7.
Programmable wireless environments seek to optimize the communication for any set , by deploying the corresponding, performance optimizing tile functions. This can be generally formulated as:
(28) 
where objective is a fitness function applied to the propagation outcome, and the inputs of NLOSProp are omitted for clarity. The objective may freely refer to:

transmitter to receiver (unicast), ,

1 transmitter to many receivers (multicast or broadcast), ,

many transmitters to many receivers, .
The latter two categories inherently incorporate resource sharing policies among communicating pairs.
IiiE Modeling connectivity objectives
We proceed to study specific objectives for core aspects of wireless system performance. We focus on objectives pertaining to a single receiver, since resource sharing policies are subjective. It is noted, however, that Section IV casestudies the integration of objectives and policies. Additionally, all LOS components will be omitted for clarity, since they are either not affected by PWEs or be manipulated for control in the same manner as NLOS, as described later in Section VI.
We proceed to define a pathcentric formulation for various core objectives. In other words, we employ the correspondence between a set of deployed functions and formed paths interconnecting the various users within the PWE. The practicality of this choice will be explained in the remainder of the current subsection and in Section IV.
Power transfer maximization.
We study the objective of maximizing the total power received by a specific user, emitted by a group of transmitters. This objective is practical for wireless power transfer [1], as well as for formulating subsequent objectives. Using a pathcentric approach, relation (28) can be rewritten as:
(29) 
I.e., the maximization of the aggregate output of all paths leading to the studied receiver, , where indexes multiple paths for the same transmitterreceiver pair. Since the objective is the maximization of power, only the attribute of needs to be retained (cf. def. (6), (8)). Moreover, the output can be expressed as the product of all gain metrics (defined in Section IIIC) over the tiles comprising each path, multiplied by the input power of the path:
(30) 
It is noted that the pathcentric formulation allows for the employing the expression in relation (30). In other words, treating a path as input to the optimization, allows for calculating (and caching) its total effect on the transmitter power. An alternative centric formulation would not allow this simple expression, since the output of a tile–and, thus, its gain–depends on the input wave and the deployed tile function (e.g., cf. rel.(13)). Thus, a functioncentric formulation would have to follow expression (25), where each gain would receive as input the preceding gains and be passed as argument to the next one, i.e., .
QoS optimization.
QoS refers to optimizing some aspect of the communication channel between two users. Without loss of generality, we will focus on the maximization of the usefulsignaltointerference ratio () at the studied receiver, . The useful received signal is expressed as:
(31) 
where
(32) 
(33) 
Restriction (33) (defining path set ) states that a path carries useful signal : i) if the transmission is intended for the studied receiver, and ii) is received by a link labeled to expect the transmitter emission. Therefore, it is implied that the MIMO capabilities of the user devices have also been configured. (This is accomplished in Section IV). Restriction (32) defines a subset of , based on the latency of each path. Accounting for constructive signal superposition, the selected paths carrying useful signal must have bounded latency (i.e., within a time window defined by the fastest path, plus an applicationspecific threshold value ).
The interference is expressed similarly to but over all paths leading to the studied receiver, but not found in :
(34) 
Finally, the QoS optimization objective is expressed as:
(35) 
Eavesdropping mitigation.
Security concerns pertaining to eavesdropping can be taken into account and be combined with other objectives [6]. Eavesdropping mitigation is achieved by ensuring that the employed communication paths avoid all but the intended user. To this end, consider a 3D surface, , around a user . can exemplary be a sphere centered at the user’s position. We proceed to discard the paths produced by Algorithm 1 that geometrically intersect with the (i.e., a check for intersection between any link in the path and the surface). Avoiding any user but the intended receiver can then be expressed as:
(36) 
Restriction (36) can be further customized, e.g., to avoid a targeted set of users only, to discard paths prone to eavesdropping based on the intersection with some convex hull surface covering many users, or even to quantify the eavesdropping risk as a scalar value, such as the minimum distance between a path and a user device.
The expression of a security concern as a restriction over paths, allows for natural combination between security and QoS or power transfer objectives. Restriction (36) can simply filter out paths before (restriction (33)) or after (restriction (32)). In the former case security is prioritized over connectivity, while in the latter case connectivity comes first.
Remark 8.
The described eavesdropping mitigation approach naturally limits the interference caused to unintended recipients. Thus, the eavesdropping mitigation is not antagonistic to other QoS objectives.
Doppler effect mitigation
The geometric approach in path restrictions can be extended to mitigate Doppler effects. Frequency shifts owed to Doppler effects are especially important in mmwave communications (and higher frequencies), where even pedestrian movement rapidly deteriorates the reception quality [27]. To this end, PWE can strive to keep the last link of communication paths perpendicular to the trajectory of the user, , as follows:
(37) 
Restriction (37) can alternatively be relaxed to a scalar metric of perpendicularity, e.g., as the inner product of the unary vector across and the unary derivative of at the user position. Finally, restriction (37) can be combined with all preceding objectives in a manner identical to the eavesdropping case.
User blocking
Blocking a user from gaining access to another device, such as an access point, can be facilitated by configuring a PWE to absorb its NLOS emissions. In this manner, potential security risks can be mitigated at the physical layer, before expending resources for blocking them at a higher level (e.g., MAC slots, software authorization steps) [1, 13, 6]. The mathematical formulation follows naturally from relation (30), by replacing with within the objective. It is implied that information on user authorization is passed to the PWE configuration as an input.
Finally, it is noted that this objective needs not be combined with any other, given that it intends to fully block the physical connectivity of a user, rather than assign resources to him.
Iv A Kpaths Approach for MultiUser MultiObjective Environment Configuration
The preceding Section formulated the PWE configuration objectives, using graph paths as inputs. We proceed to define the KpConfig heuristic, which configures a PWE for serving a set of user objectives (Algorithm 2). KpConfig receives the following input parameters:

The PWE graph comprising the subgraphs of connected users, , and connectable tiles, . We consider the latter as static and, therefore, preprocessable. Particularly, we assume that a custom number of nodedisjoint shortest paths can be precalculated and cached, for each tile pair. The link weight for such calculations is the link Delay, and the ensuing paths are considered to be filtered based on their total steering gain (cf. the expression in relation (30)) and a custom acceptable threshold. Subsequent calls to wellknown path finding algorithms (e.g., ShortestPath, KShortestPaths [28]) are considered to be executed on top of this cache.

The set of communicating user pairs and their objectives. Multicast groups are expressed as multiple pairs with the same transmitter. The objective obj is a set of binary flags, each denoting a type from Section IIIE. We assume that symmetric pairs have been filtered out of this parameter. Complimenting Remark 1, a pair is symmetric to , highlighting that the objective must also be the same. Moreover, disconnected pairs (i.e., without any ShortestPath in ) are also considered as filtered out.

The inputs and the affected tiles, for each transmitter.
The use of the link Delay as the link weight prioritizes shorter
links to assemble a path. In practice, the output of a tile function
may digress from the intended as the distance from the tile increases [17, 2].
In this aspect, shorter links may favor a more consistent behavior.
Additionally, the output of KpConfig is a set of paths
per pair (which correspond to tile functions as described in Section IIIE).
Thus, the Tx and Rx labels per user link are naturally
produced by KpConfig, without further steps.
Since KpConfig seeks to serve multiple user pairs, a resource sharing policy needs to be employed in the general case. Thus, at line 2, KpConfig, calls upon the ’MostDistantFirst’ (MDFPolicy) subroutine, which is an exemplary policy.
MDFPolicy, formulated as Algorithm 3, primarily returns a sorting of the user pairs () by descending priority order, as well as the number of paths to allocate per pair , . At lines , MDFPolicy filters out any pairs with user access block objectives, since these will not require connecting paths. Remaining pairs are sorted by descending average delay, calculated over shortest paths in graph , being the minimum number of user links in the pair . This simple heuristic intends to prioritize distant pairs, on the grounds of experiencing a lesser degree of propagation control. Finally, the tentative number of paths, , to allocate pair pair is returned at line , as the minimum ratio of number of user links divided by the number of pairs this user belongs to.
KpConfig (Algorithm 2)
then resumes its operation. In general, it comprises an exploratory
evaluation of paths per sorted pair (lines ), eventually
keeping and deploying at most subject to compliance with
objectives (lines ). Leftover path allocations are redistributed
to ensuing pairs via the variable (lines ).
The exploration of paths at lines is also a point
for enforcing eavesdropping and Doppler effect mitigation objective
types. At line , the FilterLinksByObj subroutine is called
(Algorithm 4), which returns the links
of that are in conflict with the objectives. The use
of switch without break statements implies
that both objectives can be active for the same user pair.
At line of KpConfig (Algorithm 2),
the links are passed to the FindComplexPath
subroutine (Algorithm 5), which seeks to find
a path in that connects the pair while avoiding the
links and the links over the already deployed .
Two subgraphs are created at lines and of Algorithm 5.
The subgraph , which removes the aforementioned links
from the original graph , and which
also removes the already configured tiles (nodes) of .
FindComplexPath first tries to find a connecting path in
(line ). If found, the path comprises unconfigured tiles only,
thus being in compliance with Remark 4 and avoiding
the combination of tile functions. If not found, the search continues
on . A found path is then bound to contain already
configured tiles. Lines iterate over the path links and tiles
until the first configured tile is found (lines ). Then, the
output (link and reached tile ) of the already deployed
function are calculated (line ). The subroutine is then recursively
called to find a path from to the intended receiver, while also
avoiding links already visited.
R
Comments
There are no comments yet.