z Message transfer on OppN such that reported agent lo turning a search operation i z The prior knowledge of th agent took may not be use location of a mobile agent too.
Therefore, it is difficult to calcu location of a mobile agent.
III. Control Networ
3.1 Basic Concept of Contr
We assume that there is a network (e.g. Internet) deployed i construct a control network by i over the concerned area and conne IP network. (Actually, control poi YushanNet’s APs.) A search age network to the control point neare Control Point, and then hop to a toward the target. The above proce
Fig 2. Use Control Network
e target.
urrent mobile agent search cuss the concept of control ment model. Section 4 will nd present several heuristic
presented in Section 5.
nd Challenges
nology has been studied for classified into two categories:
ed. In a report-based system, ts locations periodically to the tion can be easily determined.
-based system, a mobile agent at a special search mechanism t location. All of them only ut not the mobility of hosting adequate for OppNet for the
Net requires longer delay time ocations are usually outdated into a hide-and-seek game.
e path and schedule a mobile eful in estimating the current because its hosts are moving ulate or to estimate the exact
k for Mobile Agent
rol Network
conventional high speed IP n the concerned area. We can installing control points (CP) ecting them together using the
ints can also be embedded in ent can move rapidly on this est to the target, called Egress a mobile node that is moving edure is illustrated in Fig. 2.
k to assist agent search
3.2 Agent Search Based on Control Network
The following is a simple agent search algorithm, which is designed by modifying the Basic Binary Search (BBS) algorithm we designed for conventional networks [4]:
1. Sort the CPs along the path that the target agent took to create CPlist.
2. Visit the CP in the middle of CPlist. If the target had visited the selected CP, then delete the first half of CPlist. Otherwise, delete the other half.
3. Repeat Step 2 until either the target can be reached directly from the visited CP or only one CP remained on CPlist. Take it as the Egress CP.
4. If the target can be reached directly from Egress CP, then hop the search agent to the target. Otherwise, hop to a mobile node that is moving toward the target.
The selection of Egress CP may be inaccurate such that the above search procedure may have to be repeated several times to locate the target. Therefore, there is a need to design a more sophisticated search algorithm to improve the accuracy of search algorithms. It is beyond the scope of this paper, though.
3.3 Deployment of Control Network
To deploy a control network under resource constraint is a typical combinatorial optimization problem. We propose several optimization models addressing to different objectives based on the OppNet of YushanNet style.
3.3.1 Assumptions of Experiment Environment Based on YushanNet style, we assume:
1. Each hiker moves in walking speed along a pre-determined trail.
2. All hikers move in approximately the same speed.
3. The deployment cost of a CP is location dependent.
4. Most candidate CPs are located at the end points and intersections of trails. They can also be deployed in the middle of a trail if the trail is too long.
3.3.2 Design Considerations and Objectives
Because resources are limited and deployment cost is location dependent, the selection of CPs to maximize the design objective becomes a combinatorial optimization problem, called Control Point Selection Problem (CPSP).
The best design objective might be “the average time to locate an agent”. Thus, we define MC_distance (MCD) to be the distance (time) between a target agent and its Egress CP, which is the CP to be visited by the target agent in the nearest future.
Although MC_distance is a good performance index, it is very difficult to be formulated in mathematical format.
Therefore, we designed several optimization models addressing to different objectives. It is up to the user to select the model
that is the most appropriate with respect to his/her own need.
Furthermore, all models have a common available resource constraint.
3.4 Maximum Flow Model
In Maximum Flow Model (CPSP-Flow), the number of hikers entering a trail per time unit is a known constant. The objective is to maximize the total amount of hiker flows passing through the selected CPs:
Given a graph G V E=
( )
, , where number of hikers per time unit passing a trail,the CPSP-Flow Problem is to find the set of nodes S V⊆ , to
The advantage of CPSP-Flow model is its simplicity. However, it may lead to an uneven CP distribution. A good CSPS-Flow algorithm will inevitably choose the trails that have large hiker flows and neglect others. The mobile nodes that are hiking on less popular trails may never get a chance to meet any CP.
3.5 Maximum Coverage Model
To solve the uneven distribution problem, we modify CPSP model as follows:
1. Each trail must have at least one CP if resource is sufficient.
2. CPs have to be evenly distributed to the geographic areas.
However, since graph is composed of nodes and edges carrying no geographic information, the objective of Maximum Coverage Model (CPSP-Coverage) is set to maximize the number of covered edges, instead. The model is as follows:
Given a graph G V E=
( )
, , whereThis model is set to maximize edge coverage. All edges have the same unit weight. However, in reality, trail segments may have different weights. For instance, hikers may be easier to get lost at some trail segments. It makes more sense to raise the priority of the nodes near such trail segments. Therefore, the model is refined by taking edge priority into account in next section.
3.6
Maximum Utility ModelMaximum Utility Model (CPSP-Utility) assumes each edge has a weight representing the priority of a trail segment.
We first define the total profit (utility) for a given set of nodes, M, as follows:
P(M) = { zij | eij M }
In above equation, zij is the weight of edge eij. If M is the selected nodes, P(M) is the total profit, the optimization objective. The model is defined as follows:
IV. Complexity Analysis and Solutions
We can easily transform CPSP-Flow problem into a NP-Hard 0-1 knapsack problem by letting the deployment cost and the total amount of flows passing a node to be the weight and the profit of an object respectively in the knapsack problem.
0-1 knapsack problem has a good heuristic solution, which is to select objects in descending order of profit density. The other two problems can also be easily proved NP-hard. The details are shown in [5].
To solve CPSP-Coverage problem, we propose a heuristic algorithm, called Node Potential First (NPF). As shown in Fig 3.
Candidate ListV all nodes
Iterate until Committed Cost >= Available Resources {
1. Delete the nodes from the candidate ListV if cost[node] > Remaining Resources.
2. Select the node from the candidate ListV with the largest value of edge_potential[node];
i. If (tie) Then select the node with the largest value of trail_potential[node];
ii. If (tie) Then select the node with the smallest value of cost[node].
3. Mark the edges and trails that are connected to the selected node to “covered”
4. Update the value of edge_potential[node] and trail_potential[node] of all nodes in ListV }
# edge_potential [node] is the (no. of unmarked edges/cost) w.r.t. the node
# trail_potential[node] is the no. of unmarked trail w.r.t.
the node
Fig. 3. Node Potential First (NPF) Algorithm
To solve CPSP-Utility problem, we modify NPF into another algorithm, NPF-U, by adding edge weights to the formula of edge_potential. The new formula is the total weight of unmarked edges divided by deployment cost of a node.
V. Performance Evaluation
The performance of three models and their solution algorithms (0-1 knapsack, NPF, and NPF-U) were evaluated using simulative experiments on a regular personal computer.