You are on page 1of 58

ADAPTIVE FUZZY CONTROLLER TO CONTROL

TURBINE SPEED

K. Gowrishankar, Vasanth Elancheralathan


Rajiv Gandhi College Of Engg. & tech., Puducherry, India
gowri200@yahoo.com, vasanth.elan@yahoo.com

Abstract: It is known that PID controller is employed in every facet of industrial automation.
The application of PID controller span from small industry to high technology industry. In this
paper, it is proposed that the controller be tuned using Adaptive fuzzy controller. Adaptive fuzzy
controller is a stochastic global search method that emulates the process of natural evolution.
Adaptive fuzzy controller have been shown to be capable of locating high performance areas in
complex domains without experiencing the difficulties associated with high dimensionality or
false optima as may occur with gradient decent techniques. Using Fuzzy controller to perform
the tuning of the controller will result in the optimum controller being evaluated for the system
every time. For this study, the model selected is of turbine speed control system. The reason for
this is that this model is often encountered in refineries in a form of steam turbine that uses
hydraulic governor to control the speed of the turbine. The PID controller of the model will be
designed using the classical method and the results analyzed. The same model will be redesigned
using the AFC method. The results of both designs will be compared, analyzed and conclusion
will be drawn out of the simulation made.

Keywords: Tuning PID Controller, ZN Method, Adaptive fuzzy controller.

1 INTRODUCTION tuning capability [2, 3]. There are many parameters


in fuzzy controller can be adapted. The Speed
Since many industrial processes are of a complex
control of turbine unit construction and operation
nature, it is difficult to develop a closed loop control
will be described. Adaptive controller is suggested
model for this high level process. Also the human
here to adapt normalized fuzzy controller, mainly
operator is often required to provide on line
output/input scale factor. The algorithm is tested on
adjustment, which make the process performance
an experimental model to the Turbine Speed Control
greatly dependent on the experience of the individual
System. A comparison between Conventional
operator. It would be extremely useful if some kind
method and Adaptive Fuzzy Controller are done. The
of systematic methodology can be developed for the
suggested control algorithm consists of two
process control model that is suited to kind of
controllers process variable controller and adaptive
industrial process. There are some variables in
controller (normalized fuzzy controller).At last, the
continuous DCS (distributed control system) suffer
fuzzy supervisory adaptive implemented and
from many unexpected disturbance during operation
compared with conventional method.
(noise, parameter variation, model uncertainties, etc.)
so the human supervision (adjustment) is necessary
2 BACKGROUND
and frequently. If the operator has a little experience
the system may be damage or operated at lower
In refineries, in chemical plants and other
efficiency [1, 4]. One of these systems is the control
industries the gas turbine is a well known tool to
of turbine speed PI controller is the main controller
drive compressors. These compressors are normally
used to control the process variable. Process is
of centrifugal type. They consume much power due
exposed to unexpected conditions and the controller
to the fact that very large volume flows are handled.
fail to maintain the process variable in satisfied
The combination gas turbine-compressor is highly
conditions and retune the controller is necessary.
reliable. Hence the turbine-compressor play
Fuzzy controller is one of the succeed controller used
significant role in the operation of the plants. In the
in the process control in case of model uncertainties.
above set up, the high pressure steam (HPS) is
But it may be difficult to fuzzy controller to
usually used to drive the turbine. The turbine which
articulate the accumulated knowledge to encompass
is coupled to the compressor will then drive the
all circumstance. Hence, it is essential to provide a
compressor. The hydraulic governor which, acts as a

UbiCC Journal - Volume 3 1


control valve will be used to throttle the amount of
steam that is going to the turbine section. The 1
governor opening is being controlled by a PID 𝐺 𝑠 =
𝑆 𝑆+1 (𝑆+5)
which is in the electronic governor control panel. In (1)
this paper, it is proposed that the controller be tuned
using the Genetic Algorithm technique. Using The identified model is approximated as a linear
genetic algorithms to perform the tuning of the model, but exactly the closed loop is nonlinear due
controller will result in the optimum controller to the limitation in the control signal.
being evaluated for the system every time. For this
study, the model selected is of turbine speed control 4 PID CONTROLLER
system.
PID controller consists of Proportional Action,
Electronic Governor Integral Action and Derivative Action. It is
Speed SP
Control system commonly refer to Ziegler-Nichols PID tuning
parameters. It is by far the most common control
HPS Control Valve Speed Signal (PV)
algorithm [1]. In this chapter, the basic concept of
Opening (MV)
the PID controls will be explained. PID controller’s
algorithm is mostly used in feedback loops. PID
controllers can be implemented in many forms. It
can be implemented as a stand-alone controller or as
part of Direct Digital Control (DDC) package or
even Distributed Control System (DCS). The latter
GT KP is a hierarchical distributed process control system
Turbine Compressor
which is widely used in process plants such as
pharceumatical or oil refining industries. It is
interesting to note that more than half of the
industrial controllers in use today utilize PID or
modified PID control schemes. Below is a simple
diagram illustrating the schematic of the PID
Figure 1: Turbine Speed Control controller. Such set up is known as non- interacting
form or parallel form.
The reason for this is that this model is often
encountered in refineries in a form of steam turbine
that uses hydraulic governor to control the speed of P
the turbine as illustrated above in figure 1. The
complexities of the electronic governor controller I Plant
I/P P
will not be taken into consideration in this
dissertation. The electronic governor controller is a D
big subject by it and it is beyond the scope of this
study. Nevertheless this study will focus on the
model that makes up the steam turbine and the
Figure 2: Schematic of the PID Controller – Non-
hydraulic governor to control the speed of the
Interacting Form
turbine. In the context of refineries, you can
consider the steam turbine as the heart of the plant.
This is due to the fact that in the refineries, there are In proportional control,
lots of high capacities compressors running on
steam turbine. Hence this makes the control and the Pterm = KP x Error (2)
tuning optimization of the steam turbine significant.
It uses proportion of the system error to control
the system. In this action an offset is introduced in
3 EXPERIMENTAL PROCESS the system.
IDENTIFICATION In Integral control,
To obtain the mathematical model of the process
Iterm = K1 x Error dt (3)
i.e. to identify the process parameters, the process is
looked as a black box; a step input is applied to the
It is proportional to the amount of error in the
process to obtain the open loop time response.
system. In this action, the I-action will introduce a
From the time response, the transfer function of
lag in the system. This will eliminate the offset that
the open loop system can be approximated in the
was introduced earlier on by the P-action.
form of a third order transfer function:

UbiCC Journal - Volume 3 2


In Derivative control, If the maximum overshoot is excessive says
about greater than 40%, fine tuning should be done
𝑑(𝐸𝑟𝑟𝑜𝑟) to reduce it to less than 25%.
𝐷𝑡𝑒𝑟𝑚 = 𝐾𝐷𝑥 𝑑𝑡 From Ziegler-Nichols frequency method of the
(4)
second method [1], the table suggested tuning rule
according to the formula shown. From these we are
It is proportional to the rate of change of the error . able to estimate the parameters of Kp, Ti and Td.
In this action, the D-action will introduce a lead in
the system. This will eliminate the lag in the system
that was introduced by the I-action earlier on.
Controller Kp Ti Td
5 OPTIMISING PID CONTROLLER BY
CLASSICAL METHOD P 0.5Ker  0
PI 0.45Ker 1 / 1.2 Per 0
For the system under study, Ziegler-Nichols 0.125
tuning rule based on critical gain Ker and critical PID 0.6 Ker 0.5 Per
Per
period Per will be used. In this method, the integral
time Ti will be set to infinity and the derivative time Figure 4: PID Value setting
Td to zero. This is used to get the initial PID setting
of the system. This PID setting will then be further Consider a characteristic equation of closed loop
optimized using the “steepest descent gradient system
method”. 3 2
s + 6s + 5s+ Kp = 0
In this method, only the proportional control
From the Routh’s Stability Criterion, the value of
action will be used. The Kp will be increase to a
Kp that makes the system marginally stable can be
critical value Ker at which the system output will
determined. The table below illustrates the Routh
exhibit sustained oscillations. In this method, if the
array.
system output does not exhibit the sustained
oscillations hence this method does not apply. In
this chapter, it will be shown that the inefficiency of s³ 1 5
designing PID controller using the classical method. s² 6 Kp
This design will be further improved by the s¹ (30-Kp)/6 0
optimization method such as “steepest descent sº Kp -
gradient method” as mentioned earlier [6].
With the help of PID parameter settings the
5.1 Design of PID Parameters obtained closed loop transfer function of the PID
controller with all the parameters is given as
From the response below, the system under study
is indeed oscillatory and hence the Z-N tuning rule 1
based on critical gain Ker and critical period Per 𝐺𝑐 (𝑆) = 𝐾𝑝 (1 + 𝑇𝑖𝑆
+ 𝑇𝑑𝑆)
can be applied. The transfer function of the PID
controller is 1
Gc(s) = Kp (1 + Ti (s) + Td(s)) (5) = 18 ( 1 + + 0.3512 )
The objective is to achieve a unit-step response 1.4𝑆
curve of the designed system that exhibits a
6.3223 ( 𝑆+1.4235 )2
maximum overshoot of 25 %.
=
𝑆 (6)
From the above transfer function, we can see that
the PID controller has pole at the origin and double
zero at s = -1.4235. The block diagram of the control
system with PID controller is as follows.
R(s)
(S  1.4235) 2 1
6.3223
S S ( S  1)( S  5)

PID
ControllerFeedback
Figure 3: Illustration of Sustained Oscillation Figure 5: Illustrated Closed Loop Transfer Function

UbiCC Journal - Volume 3 3


Hence the above block diagram is reduced to
C
5 OPTIMIZING OF THE DESIGNED PID
R 6.3223s 2 17.999s 12.8089 ( CONTROLLER
( s 4  6s3  5s 2 s
s ) The optimizing method used for the designed PID
) controller is the “steepest gradient descent method”.
In this method, we will derive the transfer function
of the controller as the minimizing of the error
Figure 6: Simplified System function of the chosen problem can be achieved if
the suitable values of can be determined. These
Therefore the overall close loop system response three combinations of potential values form a three
of dimensional space. The error function will form
some contour within the space. This contour has
𝐶𝑆 6.3226𝑆2 + 17.999𝑠 + 12.808 maxima, minima and gradients which result in a
= 4
𝑅𝑆 𝑆 + 6𝑆3 + 11.3223𝑆2 + 18𝑠 + 12.8089 continuous surface.
(7) In this method, the system is further optimized
using the said method. With the “steepest descent
The unit step response of this system can be gradient method”, the response has definitely
obtained with MATLAB. improved as compared to the one in Fig. 9 (a). The
settling time has improved to 2.5 second as
compared to 6.0 seconds previously. The setback is
that the rise time and the maximum overshoot
cannot be calculated. This is due to the “hill
climbing” action of the steepest descent gradient
method. However this setback was replaced with the
quick settling time achieved. Below is the plot of
the error signal of the optimized controller. In the
figure below it is shown that the error was
minimized and this correlate with the response
shown in Figure 9(b).

Figure 7: Step Response of Designed System

To optimize the response further, the PID


controller transfer function must be revisited. The
transfer function of the designed PID controller is

𝑞𝑜+ 𝑞1𝑍−1 +𝑞2𝑍−2


𝐺𝑐 (𝑍) =
1−𝑍−1
(8)

Figure 8: Improved System. Figure 9 (a) & (b): Optimization of Steepest Descent
Gradient Method & Error Signal

UbiCC Journal - Volume 3 4


From the above figure, the initial error of 1 is
finally reduced to zero. It took about 2.5 to 3
seconds for the error to be minimized.

6 IMPLEMENTATION OF ADAPTIVE
FUZZY CONTROLLER ON EXPERIMENT
CASE STUDY

6.1 Normalized Fuzzy Controller

To overcome the problem of PID parameter


variation, a normalized Fuzzy controller with
adjustable scale factors is suggested. In our
experimental case study, the fuzzy controller
designed has the following parameters:
• Membership functions of the input/output signals
have the same universe of discourse equal to 1
• The number of membership functions for each Figure 11: Actual responses for different input
variable is 5 triangle membership functions denoted output gains
as NB (negative big), NS (negative small), Z (zero),
PS (positive small) and PB (positive big) as shown From the analysis of the above responses, we can
in Fig. 10. conclude that:
• Decreasing input scale factors increase the
response offset.
NB NM Z PM PB • Increasing output scale factor fasting the response
of the system but may cause some oscillation.
So the selection must compromise between input
and output scale factors.
In the following section we try to adapt the
output scale factor with constant input scale factor
-1 -0.5 0 0.5 1 at 10 error scale, and 15 rate of error scale based on
manual tuning result. There are two method tested
Figure 10: Normalized membership function of to adapt the output scale factors, GD (Gradient
inputs and output variables Decent) adaptation method and supervisor fuzzy.

• Fuzzy allocation matrix (FAM) or Rule base as in 6.2 Fuzzy Supervisory Controller
Table1.
In this method I try to design a supervisor fuzzy
Table 1: FAM Normalized Fuzzy Controller controller to change the scale factors online design
of the supervisor can be constructed by two
e methods:
NB NM Z PM PB a) Learning method
e
b) Experience of the system and main
NB PB PB PM Z Z requirements must be achieved.
NM PM PB PM Z Z In this paper, the supervisor controller is built
according to the accumulative knowledge of the
Z PM PM Z NM NM previous tuning methods.
PM Z Z NM NB NB
The supervisor fuzzy controller has the following
parameters:
PB Z NM NB NB NB • The universe of discourse of input and output is
selected according to the maximum allowable range
and that is depend on process requirements
• Fuzzy inference system is mundani.
• The number of membership functions for input
• Fuzzy inference methods are “min” for AND,
variables is 3 triangle membership functions denoted
“max”for OR, “min” for fuzzy implication, “max”
as N (negative), Z (zero) and P (positive). For output
for fuzzy aggregation (composition), and “centroid”
variable is 2 membership functions denoted as L
for Defuzzification.
(low) and H (High) as shown in Fig, 12.
Adjusting the gains according to the simulation
results, the system responses for different
input/output gains are shown in Fig. 11.

UbiCC Journal - Volume 3 5


N Z P N Z P two responses are almost similar. The response of
supervisor fuzzy is relatively faster. Tuning both
input and output scale factors using supervisor
controller, the supervisor fuzzy will be multi-input
multi-output fuzzy controller without coupling
between the variables, i.e. the same supervisor
algorithm is applied to each output individually
-1 0 1 -1 0 1 with different universe of discourses.
a) Error b) rate of error

L H

6 10
c) Output Scale Factor

Figure 12: Membership Function of Inputs and


Output of supervisory fuzzy control

• Fuzzy allocation matrix (FAM) or rule base as in


Table 2. Figure 14: System responses for single and multi-
output supervisor
Table 2: FAM of Supervisory Fuzzy Controller
All the previous results are taken with considering
that the reference response is step. In practice, there
e is no physical system can be changed from initial
N Z P value to final value in now time. So, the required
e
performance is transferred to a reference model and
N H H L the system should be forced to follow the required
Z L L H response (overshoot, rise time, etc.). The desired
P L H H specification of the system should to be:
overshoot≤ 20%; rise time ≤ 150sec; based on the
• Fuzzy Interference system is mundani. experience of the process. The desired response
• Fuzzy Inference methods are “min” for AND, which achieves the desired specification is
“max” for OR, “min” for fuzzy implication, “max” described by equation.
for fuzzy aggregation (composition), and “centroid”
for Defuzzification. yd(t)=A*[1-1.59e-0.488tsin 0.3929t+38.83*π/180)]
(9)
Where A: step required. Fig. 15 compares between
+ - the two responses at different values and reference
Ref Superv model response. This indicates a good responses
ere isory Contr and robustness controller.
nce Fuzzy oller
Mo Control
del ler
Normal
+ Inp ized Out Pro
ut Fuzzy put ces
Sca Control Sca s
le ler le

Figure 13: Supervisory Fuzzy Controller

Firstly, we supervise the output gain only as in


GD method to compare between them. Reference
model is a unity gain. Fig. 14 shows the system Figure 15: Analysis of Steepest gradient &
response using supervisory fuzzy controller. The Adaptive Fuzzy Method

UbiCC Journal - Volume 3 6


8 RESULTS OF IMPLEMENTED designed PID is much better in terms of the rise time
ADAPTIVE FUZZY CONTROLLER and the settling time. The steepest descent gradient
method has no overshoot but due to its nature of “hill
In the following section, the results of the climbing”, it suffers in terms of rise time and settling
implemented Adaptive Fuzzy Controller will be time. With respect to the computational time, it is
analyzed [4]. The Adaptive Fuzzy designed PID noticed that the SDGM optimization takes a longer
controller is initially initialized and the response time to reach it peak as compare to the one designed
analyzed. The response of the with GD. This is not a positive point if you are to
Adaptive Fuzzy designed PID will then be implement this method in an online environment. It
analyzed for the smallest overshoot, fastest rise time only means that the SDGM uses more memory
and the fastest settling time. The best response will spaces and hence take up more time to reach the
then be selected. peak. This paper has exposed me to various PID
From the above responses fig 15, the Adaptive control strategies. It has increased my knowledge in
Fuzzy designed PID will be compared to the Control Engineering and Adaptive Fuzzy Controller
Steepest Descent Gradient Method. The superiority in specific. It has also shown me that there are
of Adaptive Fuzzy Controller against the SDG numerous methods of PID tunings available in the
method will be shown. The above analysis is academics and industrial fields.
summarized in the following table.
10 REFERENCES
Table 3: Results of SDGM Designed Controller and
Adaptive Fuzzy Designed Controller. [1] Astrom, K., T. Hagglund: PID Controllers;
Theory, Design and Tuning, Instrument
Measuring SDGM AF % Society of America, Research Triangle Park,
Factor Controller Controller Improvement 1995.
[2] M. A. El-Geliel: Supervisory Fuzzy Logic
Rise Time 10 0.592 40.8 Controller used for Process Loop Control in
Max. DCS System, CCA03 Conference, Istanbul,
NA 4.8 NA Turkey, June 23/25, 2003.
Overshoot
[3] Kal Johan Astroum and Bjorn Wittenmark:
Settling
2.5 1.66 33.6 Adaptive control, Addison-Wesley, 1995
Time
[4] Yager R. R. and Filer D. P.: Essentials of
Fuzzy Modeling and Control, John Wiley,
From Table 3, we can see that the Adaptive Fuzzy 1994.
designed controller has a significant improvement [5] J. M. Mendel: Fuzzy Logic Systems for
over the SDGM designed controller. However the Engineering: A tutorial, Proc. IEEE, vol. 83,
setback is that it is inferior when it is compared to the pp. 345-377, 1995.
rise time and the settling time. Finally the [6] L. X. Wang: Adaptive Fuzzy System &
improvement has implication on the efficiency of the Control design & Stability Analysis,
system under study. In the area of turbine speed Prentice-Hall, 1994.
control the faster response to research stability, the
better is the result for the plant.

9 CONCLUSION

In conclusion the responses had showed to us that


the designed PID with Adaptive Fuzzy Controller has
much faster response than using the classical method.
The classical method is good for giving us as the
starting point of what are the PID values. However
the approached in deriving the initial PID values
using classical method is rather troublesome. There
are many steps and also by trial and error in getting
the PID values before you can narrow down in
getting close to the “optimized” values. An optimized
algorithm was implemented in the system to see and
study how the system response is. This was achieved
through implementing the steepest descent gradient
method. The results were good but as was shown in
Table 3 and Figure 15. However the Adaptive Fuzzy

UbiCC Journal - Volume 3 7


MIDDLEWARE FOR UBIQUITOUS ACCESS TO MATHEMATICAL
EXPRESSIONS FOR VISUALLY-IMPAIRED USERS

Ali Awde1, Manolo Dulva Hina1,2, Chakib Tadj1


1
Université du Québec, École de technologie supérieure, Montréal Québec, Canada
2
PRISM Laboratory, Université de Versailles-Saint-Quentin-en-Yvelines, France
ali.awde.1@ens.etsmtl.ca, manolo-dulva.hina.1@ens.etsmtl.ca, ctadj@ele.etsmtl.ca
Yacine Bellik,
Université de Paris-Sud, France LIMSI-CRNS, Université de Paris-Sud, France
yacine.bellik@limsi.fr
Amar Ramdane-Cherif 2,3
3
LISV Laboratory, Université de Versailles-Saint-Quentin-en-Yvelines, France
rca@prism.uvsq.fr

ABSTRACT
Providing visually-impaired users with ubiquitous access to mathematical
expressions is a challenge. Our investigation indicates that most, if not all, of the
current state-of-the art systems and solutions for presentation of mathematical
expressions to visually-impaired users are generally not pervasive, that they do not
take into account the user’s interaction context (i.e. combined contexts of the user,
his environment and his computing system) into their system’s configuration and
that they present mathematical expressions in only one format. We address these
weaknesses by providing a middleware that provides a ubiquitous access to
mathematical expressions. Our middleware gathers various suppliers in which one
supplier is selected based on its suitability to the given instance of interaction
context and of the user’s preferences. The configuration of the chosen supplier,
including its quality of service (QoS) dimensions, is also adaptive to the user’s
preferences. This paper discusses the challenges in designing this middleware and
presents a proposed solution to each of these challenges. This paper discusses the
concepts and principles applied on the middleware design as well as their
validation through case studies and formal specification. This work is intended to
contribute on the ongoing research to make informatics accessible to handicapped
users, specifically providing them ubiquitous access to mathematical expressions.

Keywords: pervasive computing, visually-impaired users, mathematical


expressions presentation, multimodal computing, adaptive system.

1 INTRODUCTION To realize the ubiquity of documents contain-


ing mathematical expressions, the document is
In pervasive computing [1], the user can con- stored in a server and its copy is replicated on every
tinue working on his computing task whenever and member of the server group, making it accessible to
wherever he wishes. The task is usually realized the user whenever and wherever he wishes. The
through the use of one or more software applica- mathematical document serves as input file to the
tions. If the task is the ubiquitous access to mathe- middleware.
matical expressions for visually-impaired users, This research work is a result of an investiga-
then the applications are those that will correctly tion of the current state-of-the-art systems and solu-
present mathematical expressions to these users tions in which we found out that the available sys-
with special needs. There are available applications tems for presentation of mathematical expressions
that can do the task. Hence, instead of inventing to visually-impaired users are not pervasive; that
another one, it is more practical to collect all these most of them do not take into account the current
applications and put them in one middleware. The interaction context in the system’s configuration
middleware then selects an application, henceforth and that the prevailing systems provide only one
called a supplier, based on its suitability to the type of format for the presentation of mathematical
given context. The quality-of-service (QoS) dimen- expressions. As such, they are not multimodal. Our
sions of the chosen supplier are also configured work addresses these weaknesses.
based on user’s preferences. This paper presents the concepts and principles

UbiCC Journal - Volume 3 8


used in the design of this middleware. Data valida- countries adopting different Braille code notations.
tion is done through case studies and formal speci- Some of these are the Nemeth Math code [13]
fications. This proposed middleware is functional which is used in the USA, Canada, New Zealand,
under these assumed conditions: (i) that wired and Greece and India; the Marburg code [14] used in
wireless communication facilities are available to Germany and Austria, the French Math code [15].
support our system, (ii) that the mathematical ex- Lambda [16] translates expression in MathML
pression as input to the middleware is stored in a format into multiple Braille Math codes that are
MathML [2] or LaTex [3] input file, and (iii) that used in the European Union. ASTER (Audio Sys-
there are available application suppliers and media tem for Technical Readings) [17] reformats elec-
devices to support the optimal modalities selected tronic documents written in LaTeX into their corre-
by the middleware. sponding audio equivalent. AudioMath provides
Apart from this introductory section, the rest of vocal presentation of mathematical content encoded
this paper is structured as follows. Section 2 pro- in MathML format.
vides a brief review of the state of the art related to Of all the tools cited above, none is pervasive.
our work; Section 3 lists down the challenges, pro- None takes into account the user’s interaction con-
posed solutions and contributions of our work. Sec- text into its configuration. Our approach, therefore,
tion 4 presents the infrastructure and system archi- is to get the strength of each tool, integrate each one
tecture of our middleware. In Section 5, we explain of them into our work in order to build a middle-
the concept of machine learning in relation to the ware that (1) broadens the limits of utilization, (2)
system design so it adapts seamlessly to the given provides the user with opportunities to access
interaction context. Section 6 presents our method- mathematical expressions written in either MathML
ology to configure an application supplier and op- or LaTex format, and (3) selects appropriate appli-
timize settings, taking into account user’s satisfac- cation supplier and its configuration depending on
tion. Section 7 discusses interaction contexts, mo- the given instance of interaction context.
dalities and media devices that characterize a typi- In [18], the use of multimodal interaction for
cal scenario of a blind user trying to access mathe- non-visual application was demonstrated. The mul-
matical expressions. Through scenario simulations timodal system selects the modality over another
in Section 8, we show the design specification of after determining its suitability to a given situation.
our infrastructure. Future works and conclusion are Multimodality is important to visually-impaired
presented in Section 9. users because it provides them equal opportunities
to use informatics like everybody else.
2 REVIEW OF THE STATE OF THE ART
Recently, agents or multi-agent systems (MAS)
To a visually-impaired user, the mere under- [19, 20] have been widely used in many applica-
standing of a mathematical expression is already a tions, such as on a large, open, complex, mission-
challenge. It requires repeated passage on an ex- critical systems like air traffic control [21]. Gener-
pression where user often skips secondary informa- ally, agency is preferred over traditional techniques
tion only to revert back to it again and again until (i.e. functional or object-oriented programming)
he fully grasps the meaning of the expression. A because the latter is inadequate in developing tools
complicated task like this is explained in [4]. Fortu- that react on environment events. Some works on
nately, some applications were developed to lessen MAS for visually-impaired users include [18, 22].
the complexity of performing similar task, some of In contrast to those works, ours focuses on ubiquit-
them are MathTalk [5], Maths [6] and AudioMath ous access to mathematical expressions.
[7, 8]. MathTalk and Maths convert a standard al- Incremental machine learning (IML) is a pro-
gebraic expression into audio information. In gressive acquisition of knowledge. In the literature,
Maths, the user can read, write and manipulate various IML algorithms exist but in this work, su-
mathematics using a multimedia interface contain- pervised learning is adopted because limited scena-
ing speech, Braille and audio. VICKIE (Visually rios have been considered. Supervised learning is a
Impaired Children Kit for Inclusive Education) [9] ML method by which the learning process produces
and BraMaNet (Braille Mathématique sur Inter- a function that maps inputs to certain desired out-
Net) [10] are transcription tools that convert puts. More details of ML design are in Section 5.
mathematical document (in LaTex, MathML, Our focus has always been pervasive multimo-
HTML, etc.) to its French Braille representation. dality for the blind. This work was initially inspired
Labradoor (LaTex-to-Braille-Door) [11] converts an by [23]. As our work evolves, however, the domain
expression in LaTex into its Braille equivalent us- of application and its corresponding optimization
ing the Marburg code. MAVIS (Mathematics Ac- model becomes completely different as this paper is
cessible To Visually Impaired Students) [12] sup- reflective of our intended user. The methodology is
ports LaTex to Braille translation via Nemeth code. different; this work adopts machine learning (ML)
As a background, some special Braille notations to acquire knowledge. Such knowledge is stored
have been developed for mathematics, different onto the knowledge database (KD) so that it can be

UbiCC Journal - Volume 3 9


made omnipresent, accessible anytime and any- learning mechanism wherein the system remembers
where via wired or wireless networks. scenarios – the input conditions and the resulting
A major challenge in designing systems for output conditions of each scenario. This learning
blind users is how to render them autonomy. To this mechanism assists the system in selecting the op-
end, several tools and gadgets have emerged, timal supplier based on the given scenario. Differ-
among them are the GPS (global positioning sys- ent suppliers are apt for different scenarios. Part of
tem), walking stick that detects user context [24] this learning mechanism is the ranking of applica-
and a talking Braille [25]. Our work aims the same. tion suppliers; the ranking takes into account the
Ours is adaptive to user’s condition and environ- user’s preference. In general, it is possible that in a
ment. Through pervasive computing networks, the given scenario, two or more suppliers may be found
ML acquired knowledge, and user’s task and profile suitable for invocation, with the top-ranked supplier
all become omnipresent, and the system’s know- being activated by default. When the chosen suppli-
ledge on the feasible configuration for the user’s er is not available, then the next-ranked supplier is
task is generated without any human intervention. taken as its replacement.
3 CHALLENGES, PROPOSED SOLUTIONS Contribution 3: Design of a system that is tolerant
AND CONTRIBUTION to faults due to failure of servers and media devices.
In this section, we define the requirements in Related Questions: In case of server failure, what
designing a pervasive system that will present ma- must be done to guarantee that the current user’s
thematical expressions to visually impaired users by data, profile and machine knowledge are not lost? If
posing specific technical challenges to solve and selected media devices are malfunctioning, what
then describe the approach to address them. must be done to keep the system remain operational
and persistent?
Contribution 1: Design of a scheme in which a
Proposed Solutions: Like any pervasive system,
mathematical document can be made accessible
ours assume that there are many members of the
anytime and anywhere to visually-impaired users.
server group by which the user can connect. During
Related Questions: Given that the computing task the time that the server to which the user is con-
is to provide ubiquitous access to a mathematical nected is down, the user may continue working and
document, how can this document be made accessi- that his data, profile and machine knowledge are all
ble whenever and wherever the user wishes to given stored in the local cache. As soon as the server is up,
that the user can be either stationary or mobile? the server starts communicating with the user’s
Also, given that any computing machine or server terminal, and the server’s copy of ubiquitous infor-
may fail, what configuration must be established in mation is updated. Afterwards, the server’s ubiquit-
order to ensure the ubiquity of such document? ous information is sent to all members of the server
group. Our system also adopts a ranking scheme for
Proposed Solutions: A mathematical expression
media devices’ suitability to a given modality.
becomes accessible if it is stored as a MathML or
When a highly-ranked media device is not available
LaTex document. This document, along with the
or has failed, a lower-ranked media device is taken
user’s data and profile, becomes available for ubi-
as its replacement. If no replacement is found, then
quitous computing if it is stored in a server. The
the system re-evaluates the current instance of inte-
content of this server becomes omnipresent if it is
raction context and accordingly chooses the optimal
replicated to the other members of the server group.
supplier and modalities. Afterwards, the system
Hence, the server group renders the user’s docu-
activates the available media device(s) that support
ment ubiquitous, available anytime and anywhere.
the chosen modalities.
The user connects to a member of the server group
upon login. This server, one that is closest to the Contribution 4: Design of a system that provides
user’s location, becomes a point of access for the configuration suitable to the user’s satisfaction.
user’s profile, data and mathematical document. Related Questions: How do we represent and quan-
Contribution 2: Conceptualization of an adaptive tify user’s satisfaction? What parameters are used
system that selects an optimal application supplier, to measure the user’s satisfaction with regards to
one that provides visually-impaired users access to system configuration?
mathematical expressions, based on the given in- Proposed Solutions: We use the utility measure
stance of interaction context. [0,1] to denote user satisfaction in which 0 = condi-
tion is inappropriate while 1 = user is happy with
Related Questions: How do we associate a mathe- the condition. In general, the closer the configura-
matical document to an optimal application suppli- tion setting is to the user’s pre-defined preferences,
er? What would be the basis of such association? If the higher is the user satisfaction. In this work, we
this optimal supplier happens to be not available, consider the application supplier and its QoS di-
how will the system find a relevant replacement? mensions as parameters for system configuration.
Proposed Solutions: We incorporate machine

UbiCC Journal - Volume 3 10


4 INFRASTRUCTURE AND SYSTEM (5) The Context Gathering Layer – Here, the cur-
ARCHITECTURE rent interaction context is detected. Also, the user’s
media devices and application supplier preferences
Here, we present the architectural framework of are also detected. The layer’s agents detect the
our pervasive multimodal multimedia computing available media devices and the contexts of the
system that provides ubiquitous access to mathe- user’s environment and of the computing system.
matical expression for blind users. (6) The Physical Layer – It contains all the physical
entities of the system, including media devices and
4.1 System Architecture
sensors. The raw data from this layer are sampled
Figure 1 shows the layered view of our perva-
and interpreted and forms the current instance of
sive multimodal multimedia computing system. It is
interaction context.
a multi-agent system organized into layers. Layer-
ing is a method by which communication takes 4.2 The Ubiquitous Mathematical Document
place only between adjacent layers. It limits the We define task as user’s work to do and its
undesirable ripple-effect propagation of errors with- accomplishment requires the use of a computing
in the boundary of the layer involved. The various system. Hence, in this paper, the user’s task is to
system layers and their functionalities are: access (i.e. read, write, edit) a mathematical expres-
sion in a document in a ubiquitous fashion.
4.2.1 Creating a mathematical document
The processes of creating a ubiquitous mathe-
matical document are as follows: (i) Using Braille
or speech as input media, the user writes a mathe-
matical equation using the syntax of MathML or
LaTex; (ii) There is a supplier (selected by the mid-
dleware as the most appropriate to the current inte-
raction context) that takes in this input equation and
yields its corresponding output – via speaker or
Braille (note that in a Braille terminal, there is a
separate section where the user can touch/sense the
output); (iii) The supplier saves the document in the
local cache; and (iv) Our middleware saves the
document onto the server which is also propagated
to other members of the server group. Figure 2
shows a specimen fraction (in bi-dimensional form)
Figure 1: The architectural abstraction of a generic and its equivalent representation in MathML, La-
MM computing system for visually-impaired users. Tex and Braille.

(1) The Presentation Layer – Here, the mathemati-


cal expression is presented to the user via optimal
presentation format. This layer is responsible for
the conversion of the mathematical expression’s
encoded format (from Data Analysis Layer) into its
final presentation format.
(2) The Data Access Layer – Here, users may edit x + 1
or search for a term in a mathematical expression. x − 1
(3) The Data Analysis Layer – Here, the mathemat-
ical expression presentation format is selected
based on available media devices and supplier, and
interaction context. Also, an agent takes in a
MathML or LaTex expression and converts it to its
encoded format. Furthermore, its machine learning Figure 2: A fraction in bi-dimensional form and its
component selects the optimal presentation format corresponding equivalent in LaTex, MathML and
of the expression based on parameters just cited. Braille.
(4) The Control and Monitoring Layer – This layer
4.2.2 Reading and presenting the mathematical
controls the entire system, coordinating the detec-
expression in a document
tion of user’s interaction context, and the manipula-
A ubiquitous mathematical document becomes
tion and presentation of the mathematical expres-
readily available to the user once a connection is
sion. In this layer, there is an agent that retrieves
made between the user’s terminal and a member of
MathML or LaTex document and the user‘s profile.
the server group. In general, the processes for read-

UbiCC Journal - Volume 3 11


ing or presenting a mathematical document to the The user may continue working on the same
user are as follows: (i) Our middleware retrieves the mathematical document in, say, a park. In this new
mathematical document from the server and down- setting, the middleware detects the user’s interac-
load it to the user’s cache/local terminal; (ii) The tion context and the available media devices. The
middleware selects a supplier based on the given system then provides an application supplier that is
interaction context; (iii) The middleware reads or likely different from what the user used when he
presents the mathematical equation to the visually- was at home. Although different in setting, the
impaired user via speech or Braille. point is that the user is still able to continue work-
4.2.3 Modifying a mathematical document ing on an interrupted task.
At any time, the user may delete or modify a
5 DESIGNING AN INTERACTION
mathematical equation within a document. Once a
CONTEXT ADAPTIVE SYSTEM
mathematical document is identified, our middle-
ware opens up the file and our Data Access Layer Here, we elaborate on the system’s knowledge
(see Section 4.1) allows users to search for a term acquisition that makes it adaptive to the given inte-
within the equation and edit same. Once editing is raction context.
done, the document is saved accordingly.
5.1 Theoretical Machine Learning
4.3 Anytime, Anywhere Mathematical In machine learning (ML), a program is said to
Computing have learned from experience E with respect to a
As shown in Figure 3, computing with mathe- class of task T and a performance measure P if its
matical equations for visually-impaired users is performance P at task T improves with experience
possible anytime, anywhere the user wishes to. In E [26]. In this work, the learning problem is defined
the diagram, the user is assumed to be working at as follows: (i) task T: selecting the modalities (and
home using our middleware. later the media devices) that are appropriate to the
given instance of interaction context, (ii) perfor-
mance P: measure of the selected modalities’ suita-
bility to the given interaction context, as given by
their “suitability score” (iii) training experience E:
various combinations of possible modalities for
visually-impaired users.
Figure 4 shows the functionality of a generic
ML-based system. In general, a scenario is an event
that needs to be acted upon appropriately. An input
to the ML component is the pre-condition of a sce-
nario. Here, the pre-condition scenario is a specific
instance of an interaction context. The ML compo-
nent analyzes the input, performs calculations and
decisions and yields an output called the post-
condition of a scenario. For knowledge acquisition
purposes, the pre- and post-conditions of every sce-
nario are stored in a databank called the scenario
repository (SR). Each entry in SR forms a distinct
scenario.
Figure 3: An anytime, anywhere adaptive comput-
ing with mathematical document for visually-
impaired users.

The system detects the user’s interaction con-


text (i.e. getting the values of parameters that make
up the contexts of the user, his environment and his
computing system – more details in Section 7), de-
tects the currently available media devices and se-
lects the most suitable application supplier, and Figure 4: A generic ML system: an instance of
eventually accessing the user’s mathematical doc- interaction context serves as input to a ML compo-
ument. The user then reads or modifies the mathe- nent yielding a corresponding post-condition result.
matical equations in this document or writes a new
one. At the end of the user’s session, his mathemat- When a ML component is given a situation (i.e.
ical document is saved onto the server and on all pre-condition of a scenario), it consults SR for a
other members of the server group. similar entry. If a match is found then it simply

UbiCC Journal - Volume 3 12


retrieves the post-condition scenario and imple- 5.2 Basic Principles of Interaction Context
ments it. If no match is found (i.e. scenario is new), In this paper, the following logic symbols are
then the ML component, using its acquired knowl- used: ⊗ = Cartesian product yielding a set com-
edge, performs calculations producing the post- posed of tuples, £1 = set of positive integers ex-
condition of the scenario. If accepted by the expert cluding zero, ∀ = universal quantifier, ∃ = existen-
(i.e. the user), then the complete scenario is stored tial quantifier, the basic logical connectives ∧
onto SR as a new entry. This process is performed
(AND) and ∨ (OR), and the intervals [x, y] which
whenever a new scenario is encountered. Over
denotes that a valid data is in the range of x and y,
time, the ML component accumulates enough
knowledge that it knows the corresponding reaction and (a, b] which denotes that a valid data is higher
(i.e. post-condition) given a certain situation (i.e. than a and up to a maximum of b.
pre-condition). The interaction context, IC = {IC1, IC2,…, ICmax},
Incremental machine learning (IML) is a pro- is a set of all possible interaction contexts. At any
gressive acquisition of knowledge. In the literature, given time, a user has a specific interaction context
various IML algorithms exist, such as the candidate i denoted ICi, 1 ≤ i ≤ max. Formally, an interaction
elimination [26], and ID5 (i.e. the iterative di- context is a tuple composed of a specific user con-
chotomizer version 5, an incremental implementa- text (UC), environment context (EC) and system
tion of ID3 which itself is a decision-tree induction context (SC). An instance of IC may be written as:
algorithm developed by Quinlan) [28]. In this work,
supervised learning is adopted because limited sce- ICi = UC k ⊗ EC l ⊗ SC m (1)
narios have been considered. Supervised learning is
where 1 ≤ k ≤ maxk, 1 ≤ l ≤ maxl, and 1 ≤ m ≤
a ML method by which the learning process pro-
maxm, and maxk = maximum number of possible
duces a function that maps inputs to certain desired
outputs. Let there be a set of inputs X with n com- user contexts, maxl = maximum number of possible
ponents and a set of outputs Y with m components. environment contexts, and maxm = maximum num-
Let f be the function to be learned which will map ber of possible system context. The Cartesian prod-
some elements in X to the elements in Y, and h be uct means that at any given time, IC yields a specif-
the hypothesis about this function. Furthermore, let ic combination of UC, EC and SC.
X be the set of interaction context instances, i.e. set The user context UC is made up of parameters
of pre-condition scenarios. Hence, Y would be a set that describe the state of the user during the conduct
of post-condition scenarios, and the mapping be- of an activity. A specific user context k is given by:
tween the pre- and post-condition scenarios is de-
max k
noted by f: X  Y. See Figure 5.
UC k = ⊗ ICParam (2)
x =1 kx

where ICParamkv = parameter of UCk where k is the


number of UC parameters. Similar in form with UC,
any environment context ECl and system context
SCm are given as follows:

max l
EC l = ⊗ ICParam (3)
y =1 ly
Figure 5: The relation between pre-condition sce-
narios and the post-condition scenarios using su- max m
pervised learning. SC m = ⊗ ICParam (4)
z =1 mz
As shown in the diagram, Xi = an element of X,
and i ∈ 1 ... n, and Yj = a element of Y, and j ∈ 1 ... The first knowledge the ML component must
m. When a new pre-condition Xnew occurs, the learn is to relate the interaction context to an appro-
learning system finds the best possible output value priate modality. In general, a modality is possible if
Ybest using hypothesis. In general, the learner com- there exists at least one modality for data input and
pares the results of hypothesis functions h(f(Xnew) at least one modality for data output. Given a mo-
= Y1), h(f(Xnew) = Y2), … , h(f(Xnew) = Ym) and dality set M = {Vin, Tin, Vout, Tout} wherein Vin = vocal
selects one that yields the best score. The new case input, Vout = vocal output, Tin = tactile input and
is the newly-acquired knowledge which is later on Tout = tactile output then modality is possible under
added to the knowledge repository. This learning the following condition:
process is called incremental machine learning.
Modality Possible = (Vin ∨ Tin ) ∧ (Vout ∨ Tout ) (5)

UbiCC Journal - Volume 3 13


The failure of modality, therefore, can be speci- Equation 11 can also be written as:
fied by the relationship:
n
Modality Failure = ((Vin = Failed) ∧ ( Tin = Failed)) ∨ P(M j ) ∏ P(A i | M j )
(6) i =1 (12)
((Vout = Failed) ∧ (Tout = Failed)) P(M j | A1...A n ) =
m n
∑ P(M k ) ∏ P(A i | M k )
Let Mj = element of the power set of M, that is, k =1 i =1
Mj ∈ P(M) where 1 ≤ j ≤ mod_max (maximum mo-
which is the fundamental equation for the Naive
dality). Also, let M̂ = the most suitable Mj for a giv- Bayes classifier. Given a new instance of interac-
en interaction context ICi. As stated, X is a set of tion context ICnew = (A1 …An), the equation shows
pre-condition scenarios. Hence, the relationship how to calculate the probability that Mj will take on
between X and IC may be written as Xi = ICi. For any given value, given the observed attribute values
simplicity purposes, we let the pre-condition set X of ICnew and given the distributions P(Mj) and
be represented by interaction context IC. Each inte- P(Ai|Mj) estimated from the training data (SR). If we
raction context i, denoted as ICi, is composed of are interested only in the most suitable value of Mj,
various attributes of n components, that is, ICi = then we have the Naive Bayes classification rule:
(A1, A2, ...,An ) where an attribute may be a para-
meter belonging to UC or EC or SC. We also let  n 
the set of post-condition Y be represented by a set  P(M j ) ∏ P(A i | M j ) 
 i =1 
of modality M. Let the function f map the set of IC h best = M̂ = arg max  (13)
m n
to the set of M, in which h calculates the suitability j  ∑ P(M ) ∏ P(A | M ) 
 k i k 
score of such mapping, that is,  k =1 i =1 

( )
h f (ICi ) → M j = < suitability_score > (7) Given that the denominator does not depend on
parameter j, then the above equation becomes:
In Mathematics, function h can be written as:
 n 
h best = M̂ = arg max  P(M j ) ∏ P(A i | M j )  (14)
h = P(M j/ICi ) (8)  
j  i =1 

which should be read as the probability of the oc- where P(Mj) = the frequency of Mj in SR ÷ cardi-
currence of Mj given ICi. To simplify calculation, nality of (SR).
Bayes Theorem [29], given below, can be adopted:
5.3 Finding Optimal Modalities for
P(ICi /M j ) × P(M j ) Interaction Context
P(M j/ICi ) = (9) Given that M = {Vin, Tin, Vout, Tout}, then the
P(ICi )
power set (i.e. the set of all subsets) of M is given
by P(M) = {{Vin}, {Tin}, {Vout}, {Tout}, {Vin, Tin}, {Vin,
The implementation of Bayes Theorem leads to
Vout}, {Vin, Tout}, {Vin, Tin, Vout}, {Vin, Tin, Tout}, {Vin, Vout,
the Naive Bayes algorithm [26]. The Naive Bayes
Tout}, {Vin, Tin, Vout, Tout}, {Tin, Vout}, {Tin, Tout}, {Tin, Vout,
algorithm is a classification algorithm that assumes
Tout}, {Vout, Tout}, {}}. Mj, therefore, evaluates the suit-
that ICi attributes A1,…,An are all conditionally in-
dependent of one another given a post condition Mj. ability score of each element of P(M). M̂ = hbest is
The representation of P(ICi|Mj) becomes: then chosen from one of these elements. The se-
lected element is one that satisfies Eq. (14) and one
n with the highest suitability score.
P(ICi | M j ) = ∏ P(Ai | M j ) (10)
i =1 5.4 Realizing User Task Using Optimal
Modalities and Supporting Media Devices
Here, our goal is to train a classifier that, given Given that an optimal modality has just been
a new ICi to classify, will provide the probability selected based on the given instance of interaction
distribution over all possible values of M (i.e. M1, context, the next step is to find the media devices
M2, …, Mm). Given that ICi = (A1, A2, ...,An ), then that will support the chosen modality. To do so, let
Eq. (9) becomes: there be a function f1 that maps a specific modality
to its appropriate media device(s) as given by
P(M j )P(A1...An | M j ) (11) f1: Modality  Media, Priority. See Figure 6.
P(M j | A1...An ) =
m
∑ P(Mk )P(A1...An | M k )
k =1

UbiCC Journal - Volume 3 14


filename extension .tex) and MathML (with exten-
sion .xml) is supported by several suppliers. Let
there be a function f2 that maps a given mathemati-
cal document (of type MathML and LaTex) and
available media device(s) to the user’s preferred
supplier and its priority ranking as given by f2:
Document, {media devices}  Preferred suppli-
er, Priority. For demonstration purposes, let us
assume that the user chooses his 3 preferred suppli-
Figure 6: Media selections to support a modality. ers and ranks them by priority. The learned function
is saved onto knowledge repository and is called
user supplier preference.
Throughout this paper, the following acronyms Given that Media Devices = {MIC, KB, OKB, SPK,
will be used to denote names of media devices: MIC HST, BRT, TPR} and Supplier = {MAVIS, LaBraDoor,
= microphone, KB = keyboard, OKB = overlay key- ASTER, AudioMath, BraMaNet, Lambda} and Docu-
board, SPK = speaker, HST = headset, BRT = Braille ment = {.tex, .xml} then the following are some poss-
terminal, TPR = tactile printer. The availability of ible mappings within f2:
supporting media devices is important if a modality
is to be implemented. The following is a sample set f2 = {((.tex, BRT) (MAVIS, 1)), ((.tex, BRT) (LaBraDoor,
of elements of f1 for visually-impaired users: 2)), ((.tex, {BRT, SPK |HST}), (ASTER, 1)), ((.tex, {BRT,
SPK|HST}), (MAVIS, 2)), ((.tex, {BRT, SPK|HST}), (La-
f1 = {(Vin, (MIC,1)), (Vin, (Speech Recognition,1)), (Vout, BraDoor, 3)), ((.tex, {SPK|HST}), (ASTER, 1)), ((.xml,
(SPK,1)), (Vout, (HST,2)), (Vout, (Text-to-Speech,1)), (Tin, {BRT}), (Lambda, 1)), (.xml, {BRT}), (BraMaNet, 2)),
(KB,1)), (Tin, (OKB,2)), (Tout, (BRT,1)), (Tout, (TPR,2))} ((.xml, {BRT, SPK|HST}), (AudioMath,1)), ((.xml, {BRT,
Note that although media technically refers to SPK|HST}),(Lambda, 2)), ((.xml, {BRT, SPK|HST}),
hardware components, a few software elements, (BraMaNet, 3)), etc.}
however, are included in the list as vocal input mo-
dality would not be possible without speech recog-
nition software and the vocal output modality can-
not be realized without the presence of text-to-
speech translation software. From f1, we can obtain
the relationship in implementing multimodality:
f1(Vin) = (MIC,1) ∧ (Speech Recognition,1)
f1(Vout) = ((SPK,1) ∨ (HST,2)) ∧ (Text-to-Speech,1)
f1(Tin) = (KB,1) ∨ (OKB,2)
f1(Tout) = (BRT,1) ∨ (TPR,2)
Therefore, the assertion of modality, as ex-
pressed in Eq. (5), with respect to the presence of Figure 7: The training process for ML knowledge
media devices becomes: acquisition: (Up) the mapping of data type to a sup-
plier and (Down) building a user’s preferred QoS
Modality Possible =
dimensions for a supplier.
((MIC ∧ Speech Recognition) ∨ (KB ∨ OKB)) ∧ (15)
(((SPK ∨ HST) ∧ Text - to - Speech) ∨ (BRT ∨ TPR)) Every supplier has its set of quality of service
(QoS) dimensions that consumes computing re-
5.5 Machine Learning Training for Selection sources. Here, the only important QoS dimensions
of Application Supplier are those that are valuable to visually-impaired us-
In supervised learning, there exists a set of data, ers. A function f3 creates a mapping of a supplier
called training set, from which the learning know- and its QoS dimensions that the user prefer (f3:
ledge is based. The function to be learned maps the Supplier  QoS dimension j, Priority) Also, 1 ≤ j
training set to a preferred output. The user provides ≤ qos_max (maximum number of QoS dimensions).
the result of the mapping. A successful mapping, Priority is of type £1. Since there are many possible
called positive example, is saved while an incorrect values for each QoS dimension, the user arranges
mapping, called negative example, is rejected. The these values by their priority ranking. A sample f3 is
positive examples are collected and form part of the given below:
system’s knowledge. The acquired knowledge is f3 = {(Lambda, (40 characters per line, 1)), (Lambda, (60
then saved onto the knowledge database (KD). Fig- characters per line, 2)), (Lambda, (80 characters per line,
ure 7 shows the ML knowledge acquisition. 3)), (Lambda, (French Math code, 1)), (Lambda, (Nemeth
A mathematical document of type LaTex (with

UbiCC Journal - Volume 3 15


code, 2)), (AudioMath, (medium volume, 1)), (AudioMath, where s ∈ Supplier space is an application supplier
(high volume, 2)), (AudioMath, (low volume, 3)), etc.} and the term cs ∈ [0, 1] reflects how the user cares
about supplier s. Given a task of n suppliers ar-
6 CONFIGURATION AND OPTIMIZATION ranged in order of user’s preference, then csupplier1 =
OF APPLICATION SUPPLIER 1, csupplier2 = 1 – 1/n, csupplier3 = 1 – 1/n – 1/n, and so
Here, we discuss the method by which the sys- on. The last supplier therefore has cs value close to
tem would self-configure taking into account the zero which means that the user cares not to have it
user’s satisfaction. if given a choice. In general, in a task, the cs as-
signed to supplier i, 1≤ i ≤ n, is given by:
6.1 Alternative Configuration Spaces
Given a user task, application suppliers are i -1
instantiated to realize the task. For each supplier, csupplier i = 1 - ∑ (1/n) (18)
however, there are various QoS dimensions that can 1
be invoked in its instantiation. Respecting the user’s
preferences is the way to instantiate a supplier, but The term fs: dom(s) → [0, 1] is a function that
if this is not possible, the dynamic reconfiguration denotes the expected features present in supplier s.
mechanism should look upon the various configura- The supplier features are those that are important to
tion spaces and determine the one that is suitable the user, other than the QoS dimensions. For exam-
and optimal for the user’s needs. ple, for a supplier that produces an audio output, the
A QoS dimension is an application’s parameter user might prefer one that provides wave intonation,
that consumes computing resources (battery, CPU, or capable of informing the user of the nature of the
memory, bandwidth). As an application’s QoS di- next mathematical expression, etc. For example, if
mension improves, then the application’s quality of the user listed n = 3 preferred features for an appli-
presentation (e.g. clarity of sound, etc.) also im- cation, and the selected supplier supports them all,
proves but at the expense of larger resources’ con- then fs = 1. If, however, one of these features is
sumption. Given a task and its various applications, missing (either because the feature is not installed
the task’s QoS dimension space is given by: or the supplier does not have such feature), then the
number of missing feature m = 1 and fs = 1 – m/(n
qos_max + 1) = 1 – ¼ = 0.75. In general, the user satisfac-
QoS Dimension space = ⊗ Di (16) tion with respect to supplier features is given by:
i =1
In this work, the QoS dimensions that matter m
f supplier = 1 - (19)
are those that are valuable to blind users. For sup- n +1
pliers that convert LaTex or MathML to Braille, the
QoS dimensions of importance are the number of The term hs Xs expresses the user’s satisfaction
characters per line, and the number of Math codes with respect to the change of the supplier, and is
that it can support. For suppliers that convert .tex specified as follows: hs ∈ (0, 1] is the user’s toler-
and .xml document into its audio equivalent, the ance for a change in the supplier. If this value is
QoS dimensions are the volume, age of the speaker, close to 1, then the user is fine with the change
gender of the speaker, words uttered by the speaker while a value close to 0 means the user is not happy
per unit of time, and the speaker’s language. with the change. The optimized value of hs is:

6.2 Optimizing Configuration of User’s Task  cs + c rep  (20)


h s = arg max  
An optimal configuration is a set-up that tries  2× c 
 s 
to satisfy the user’s preferences given the current
interaction context and available media devices. where crep is value obtained from Eq. (18) for the
When the configuration is optimal, it is said that the replacement supplier. The term xs indicates if
user’s satisfaction is achieved. Let the user’s satis- change penalty should be considered. xs = 1 if the
faction to an outcome be within the Satisfaction supplier exchange is done due to the dynamic
space. It is in the interval of [0, 1] in which 0 means change of the environment, while xs = 0 if the ex-
the outcome is totally unacceptable while a 1 cor- change is instigated by the user.
responds to a user’s satisfaction. Whenever possible, The algorithm for finding the optimized suppli-
the system tries to achieve a result that is closer to 1. er configuration of a task is given in Figure 8. In the
Given a supplier, user’s satisfaction improves if algorithm, the default configuration is compared
his preferences are enforced. The supplier prefe- with other possible configurations until the one that
rences in instantiating an application are given by: yields the maximum value of user’s satisfaction is
found and is returned as result of the algorithm.
Supplier preferences = h s x s • f s cs (17)

UbiCC Journal - Volume 3 16


on the following parameters: (1) the workplace’s
noise level – identifies if it is quiet/acceptable or
noisy, and (2) the environment restriction – identi-
fies whether a workplace imposes mandatory si-
lence or not. Based on the specified parameters, the
environment context, therefore, is formally given
by the relationship:

EC = (Noise Level) ∧ ( Environment Restriction) (22)

Table 1 shows the affected modality based on


environment’s context. It also shows the convention
table we have adopted for EC.

Table 1: The tabulation for affected modalities by


Figure 8: Algorithm for optimized supplier and its combined noise level and environment restriction
QoS configuration.

7 INTERACTION CONTEXT, MODALITY


AND MEDIA DEVICES
Interaction context is formed by combining the
contexts of the user, his environment, and his com-
puting system. The user context, in this work, is a
function of user profile (including any handicap)
and preferences. A sample user profile, in generic
format, is shown in Figure 9. The user’s special
needs determine other affected modalities (i.e. the
user is already disqualified from using visual in- The unit of noise is decibel (dB). In our work,
put/output modalities). For example, being mute 50 dB or less is considered “acceptable” or “quiet”
prevents the user from using vocal input modality. while 51 dB or more is considered “noisy”. In our
system design, this range can be modified, through
user interface, by the end user based on his percep-
tion. In general, when the user’s workplace is noisy,
the effectiveness of vocal input modality is doubt-
ful; hence an alternative modality is necessary.
In an environment where silence is required,
Figure 9: A sample user profile. sound-producing media (e.g. speaker) needs to be
muted or deactivated. For environment noise re-
As a function of modality, the user context UC striction, we have defined a database of pre-defined
can be represented by a single parameter, that of the places (e.g. library, park) and their associated noise
user’s special needs. This parameter is a 4-tuple restrictions (e.g. library: silence required, park: si-
representing additional handicaps, namely the lence optional). User can modify some database
manual disability, muteness, deafness, and unfa- records. Also, new ones can be added through the
miliarity with Braille. Each handicap affects user’s user interface.
suitability to adopt certain modalities. The failure of In our work, the system context (SC) signifies
modality, adopted from Eq. (6), with respect to UC the user’s computing device and the available me-
parameters is: dia devices. See Figure 10. The computing device
(e.g. PC, laptop, PDA, cellular phone) also affects
Modality Failure = ((Manually- Disabled) ∧ (Mute)) the modality selection. For example, using a PDA
∨ ((Manually- Disabled ∨ Unfamiliar with Braille) (21) or cell phone prevents the user from using tactile
∧ (Deaf))
input or output modality.
Let SC, for the purpose of modality selection,
be represented by a single parameter, the user’s
The environment context EC is the assessment computing device. Let Computing Device = {PC,
of a user’s workplace condition. To a blind user, a MAC, Laptop, PDA, Cellular phone}. The computing
parameter such as light’s brightness has no signific- device convention is shown in Table 2. For exam-
ance, while others, such as noise level, are signifi- ple, SC = 1 means that the user’s computer is either
cant. In this work, the environment context is based a PC, a laptop or a MAC. Note that when SC = 2

UbiCC Journal - Volume 3 17


(i.e. PDA), Tin = Failed because the computing de- • A2 = {true | false} = if user is mute,
vice has no tactile input device; its Tout = Failed be- • A3 = {true | false} = if user is deaf,
cause, in a regular set-up, it is not possible to attach • A4 = {true | false} = user familiarity with Braille,
a tactile device (e.g. Braille terminal) onto it. • A5 = {quiet | noisy} = environment’s noise level,
• A6 ={silence required | silence optional} = envi-
ronment’s noise level restriction, and
• A7 = {PC or Laptop or MAC | PDA | Cellphone}
= user’s computing device.
The set of possible modalities (i.e. refer to Eq.
(5)) is given by M = {M1,M2,M3,M4,M5,M6, M7, M8,
M9} wherein M1 = {Tin, Tout}; M2 = {Tin, Vout}; M3 = {Vin,
Vout}; M4 = {Vin, Tout}; M5 = {Vin, Tout, Vout}; M6 = {Tin,
Tout, Vout}; M7 = {Tin, Vin, Vout}; M8 = {Tin, Vin, Tout}; M9 =
{Tin, Vin, Tout, Vout} (see its derivation from Section
Figure 10: The system context as function of user’s 5.3). In this example, let us assume the following
computing device and available media devices. interaction context: (i) user context: blind with no
further handicaps, familiar with Braille; hence A1 =
Table 2: The convention table of user’s computing False, A2 = False, A3 = False, A4 = True, (ii) envi-
device and its effect on modality selection
ronment context: the user is in a classroom, then A5
= noisy, A6 = silence required, (iii) system context:
the user works on a laptop; A7 = Laptop. The sys-
tem now finds the modality that suits the given in-
teraction context. The system does so using the
principles discussed in Section 5. Let us assume
that the computing system’s SR contains recorded
scenarios as shown in Figure 11. The given figure is
generated by using WEKA (Waikato Environment
for Knowledge Analysis) [30] which is a collection
Using ML, the following are the derived rules on
of machine learning algorithms for data mining
modality failures given the parameters of interac-
tasks. It is used in testing a machine learning algo-
tion context:
rithm as it contains tools for data pre-processing,
Vin Failure = (User = Mute) ∨ (Noise Level = Noisy) (23)
classification, regression, clustering, association
rules, and visualization. In this work, a sample SR
∨ (Environme nt Restrictio n = Silence required)
is shown using arff viewer (i.e. a WEKA tool).
As shown in the diagram, there are already 19
Vout Failure = (User = Deaf) (24) scenarios representing the system’s acquired
knowledge. The 20th scenario represents a new
Tin Failure = (User = Manually- Disabled) case. Using Equation 14, and with reference to the
(25)
∨ (Computing Device = PDA) given interaction context and SR, the suitability
score of Mj (where j = 1 to 9) can be calculated. Let
Tout Failure = (User = Manually - Disabled) ∨ us consider, for instance, the calculations involved
(User = Unfamiliar with Braille) ∨ with modality M1:
(26) Suitability_Score (M1) = P(A1 = False | M1) × P(A2 =
(Computing Device = PDA) ∨
False | M1) × … × P(A7 = Laptop | M1) × P(M1) = 1 × 0.67
(Computing Device = Cellphone) × 0 × …. × 3/19 = 0
wherein P(A1 = False | M1) = 3/3, P(A2 = False | M1) = ⅔,
8 DESIGN SPECIFICATION AND
P(A3 = False | M1) = 0/3, P(A4 = True | M1) = 3/3, P(A5 =
SCENARIO SIMULATIONS
Noisy | M1) = ⅓, P(A6 = silence optional | M1) = ⅓, and
P(A7 = Laptop | M1) = ⅓. Also, P(M1) = 3/19.
Having formulated various ML knowledge to
Similarly, we do calculate the suitability score
optimize the configuration setting of user’s task,
of all other remaining modalities. Using the same
this knowledge is then put to test via sample scena-
procedure, the calculations involved with the mod-
rios. The design specification comes along as these
ality that yields the highest suitability score, M6, is
scenarios are further explained.
shown below:
8.1 Selection of Modalities
Suitability_Score (M6) = P(A1 = False | M6) × P(A2 =
Consider, for example, an interaction context
False | M6) × … × P(A7 = Laptop | M6) × P(M6) = 1× ⅔ ×
that is composed of the following parameters: IC =
1 × 1 × ⅔×⅔× ⅓× 3/19 = 0.015671
(A1, A2, A3, A4, A5, A6, A7) wherein:
• A1 = {true | false} = if user is manually disabled,

UbiCC Journal - Volume 3 18


Formally, ∀x: data format d: media devices, ∃y:
Supplier and p: Priority of type £1| (x, d) (y, p) ∈ f2.
Given that supplier priority is involved in f2
then the most-preferred supplier is sought. With
reference to Eq. (19), the numerical values asso-
ciated with user’s preferred suppliers are as fol-
lows: (i) priority = 1 (high), user satisfaction = 1,
(ii) priority = 2 (medium), user satisfaction = 2/3,
and (iii) priority = 3 (Low), user satisfaction = 1/3.
Now, consider further that the user’s preferred sup-
plier, MAVIS, is absent as it is not available in the
user’s laptop. The method by which the system
finds the optimal supplier configuration is shown
below:
Case 1: (Lambda, MAVIS)  not possible
Case 2: (Lambda, LaBraDoor)  alternative 1
Case 3: (Lambda, VICKIE)  alternative 2
Then the replacement selection is based on user
satisfaction score:
Figure 11: A sample of a scenario repository (SR). User Satisfaction (Case 2) =(1+1+⅔)/3 = 8/9 = 0.89
User Satisfaction (Case 3) =(1+1+⅓)/3 = 7/9 = 0.78
As explained in Section 5.3, M6 = {Tin, Tout, Vout} Hence, Case 2 is the preferred alternative. Formally,
respects the conditions imposed in Eq. (5), hence, it if f2: Document Format, {Media devices} 
is chosen as the optimal modality for the given IC. (Supplier, Priority) where Priority: £1, then the
This new scenario is added to SR as a newly-
chosen supplier is given by: ∃(doc, m): (Document,
acquired knowledge (i.e. scenario #20 in SR).
Media devices) ∀y: Supplier, ∃p1: Priority, ∀p2:
8.2 Selection of Media Devices Priority | (doc, m) ● y (y, p1) ∈ f2 ∧ (p1 < p2).
As stated in Section 5.4, function f1 associates
selected modalities to available media devices. For 8.4 Optimizing User’s Task Configuration
simulation purposes, let us assume that currently Consider a scenario where all suppliers that
available media devices are the MIC, Speech Recog- convert LaTex document to its Braille equivalent
nition, SPK, HST, Text-to-Speech, KB, and BRT. Giv- are available. For example, given the suppliers
en this scenario, Vin is not part of optimal modali- MAVIS, LaBraDoor, VICKIE, then the correspond-
ties, then media devices MIC, and Speech Recogni- ing user satisfaction with respect to these suppliers
tion which support Vin are automatically excluded are as follows:
from the set of supporting media devices: cMAVIS = 1.0, cLaBraDoor = 2/3, cVICKIE = 1/3.
f1 = {(Vin, (Mic,1)), (Vin, (Speech Recognition,1)), (Vout, This indicates that the user is most happy with
(SPK,1)), (Vout, (HST,2)), (Vout, (Text-to-Speech,1)), (Tin, the top-ranked supplier (MAVIS) and least happy
(KB,1)), (Tin, (BRT,2)), (Tout, ((BRT,1)} with the bottom-ranked supplier (VICKIE). Con-
Since the selection of media device is based on sider further that these suppliers have n = 3 pre-
the user preferences, therefore the system automati- ferred features (i.e. Math Braille code, capability of
cally activates the media devices having 1 as priori- informing the user of the nature of the next mathe-
ty for each modality. matical expression, navigation within the expres-
sion). If in MAVIS set-up, the Nemeth Math code
8.3 Selection of Application Supplier is not installed, then the missing feature m = 1 and
Consider for example a user on the go (i.e. in a the user satisfaction becomes fs = 1 – m/(n + 1) = 1
park) working on a LaTex document (work1.tex) – ¼ = 0.75. This also reduces the user’s satisfaction,
and another document MathML (work2.xml) as as given by the relationship cMAVIS * fMAVIS =
part of his homework. To do so, our user needs (1.0)(0.75) = 0.75.
instantiation of these files using appropriate suppli- Now, consider a case of a dynamic reconfigura-
ers. Finding relevant suppliers can be done using tion wherein the default supplier is to be replaced
function f2 which yields the following values: by another. Not taking fs into account yet (assump-
f2 = {((.tex, {KB, BRT}) (MAVIS, 1)), ((.tex, {KB,BRT}) tion: fs = 1), if the current supplier is BraMaNet,
(LaBraDoor, 2)), ((.tex, {KB,BRT}) (VICKIE, 3)), ((.tex, then the user’s satisfaction is cBraMaNet = 2/3 = 0.67.
{KB, SPK |HST}), (ASTER, 1)),((.xml, {KB,BRT}), (Lamb- What would happen if it will be replaced by another
da, 1)), (.xml, {KB,BRT}), (BraMaNet, 2)),((.xml, {KB, supplier through dynamic reconfiguration (xsupplier =
SPK|HST}), (AudioMath,1)), ((.xml, {KB, SPK|HST}), 1.0)? Using the relationship hsupplier = (csupplier +
(VoiceXML, 2))} creplacement) / 2* csupplier then the results of possible
alternative configurations are as follows:

UbiCC Journal - Volume 3 19


Replacing BraMaNet (supplier 2):
Case 1: Replacement by MAVIS (supplier 1):
(0.67)(1) * [(0.67 + 1)/2*(0.67)]1 = 0.835
Case 2: Replacement by itself (supplier 2):
(0.67)(1) * [(0.67 + 0.67)/2*(0.67)]1 = 0.67
Case 3: Replacement by VICKIE (supplier 3):
(0.67)(1) * [(0.67 + 0.33)/2*(0.67)]1 = 0.50

Hence, if the reconfiguration aims at satisfying


the user, then the second-ranked supplier should be
replaced by the top-ranked supplier.

8.5 Specification for Detecting Suitability of


Modality
Petri Net 1 is a formal, graphical, executable
technique for the specification and analysis of a
concurrent, discrete-event dynamic system. Petri
nets are used in deterministic and in probabilistic
variants; they are a good means to model concur-
rent or collaborating systems. In the specifications
in this paper, only a snapshot of one of the many
outcomes is presented due to space constraints. We
use HPSim2 in simulating Petri Net.
In Figure 12, a Petri Net specification is shown
with modalities and interaction context. As shown,
the combination of interaction context’s parameters
yields the implementation of some modalities (M1 Figure 12: A snapshot of the simulated selection of
up to M9). The Net illustrates the snapshot simula- optimal modality based on interaction context.
tion of the case cited in Section 7. As shown, the
simulation begins with a token in “Modality” place 1 1

and “Interaction Context” place. The firing of the


0,8 0,8

User Satisfaction
User Satisfaction

0,6 0,6

token in Interaction Context yields a specific value 0,4 0,4

for “User Context”, “Environment Context” and 0,2 0,2

“System Context based on Computing Device” 0


1 2 3
0
1 2 3

places, which is exactly similar to the values of Suppliers


(by priority)
No missing feature
One missing f eature
Tw o missing f eatures
Supplie rs
(by priority)

A1,…,A7 in the previous section. The traversal of


the tokens in different places is noted by green co- 1 1

lored places. As shown, the result yields modality 0,8 0,8


User Satisfaction

User Satisfaction

M6 being selected as the optimal modality. The 0,6

0,4
0,6

Petri Net simulation confirms the result obtained in 0,2


0,4

the previous section. Also, the same case yields a


0,2
0
0

Vin failure result (i.e. due to noisy environment).


1 2 3 4 5 6 7 8 9
Supplie rs 1 2 3
Supplier1
Supplier2 (by priority) QoS
Supplier3 (by priority)

8.6 Simulation Results


Using user’s preferences, we have simulated Figure 13: Various graphs showing variations of
the variations in user’s satisfaction as these prefe- user’s satisfaction with respect to its preferred sup-
rences are modified through dynamic configuration. plier and QoS dimension and their replacements.
The results are presented through various graphs in
Figure 13. The first three graphs deal with applica- 9 CONCLUSION
tion supplier, and the variation of user’s satisfaction
as additional parameters (supplier features and al- Our investigation on the state of the art systems
ternative replacements) are taken into account. The and solutions for providing visually-impaired users
last two graphs deal with QoS dimensions and their with access to mathematical expressions indicates
variations. In general, user is satisfied if the suppli- that none of these systems are pervasive and not a
er and its desired features and QoS dimensions are single one adapts its configuration based on the
provided. Whenever possible, in a dynamic confi- given interaction context. To address these
guration, the preferred setting is one where the pa- weaknesses, we have designed a multimodal
rameters are those of user’s top preferences. multimedia computing system that would provide
mathematical computing to blind users whenever
1 http://www.winpesim.de/petrinet and wherever the users wish. This paper presented
2 "HPSim. http://www.winpesim.de

UbiCC Journal - Volume 3 20


the infrastructure design of a middleware that 11. Batusic, M., et al., A Contribution To Making
realizes a successful migration and execution of Mathematics Accessible For The Blind. in Interna-
user’s task in a pervasive multimodal multimedia tional Conf. on Computers Helping People with
computing system, the task being the ubiquitous Special Needs. 1998. Oldenbourg, Wien, München.
access to mathematical expressions for visually- 12. Karshmer, A.I., et al., Reading and writing ma-
impaired users. Through ML training, we illustrated thematics: the MAVIS project, in Proceedings of the
the acquisition of positive examples to form user’s third international ACM conference on Assistive
preferred suppliers and QoS dimensions for technologies. 1998, ACM Press. p. 136-143.
13. Nemeth, A., The Nemeth Braille Code for Ma-
selected applications. In a rich computing
thematics and Science Notation. American Printing
environment, alternative configuration spaces are
House for the Blind, 1972.
possible which give the user some choices for 14. Epheser, H., et al., Internationale Mathematiks-
configuring the set-up of his application. We have chrift fur Blinde, Deutsche Blindenstudienanstalt.
illustrated that configuration could be dynamic or Marburg (Lahn) 1992.
user-invoked, and the consequences, with respect to 15. Commission Evolution du Braille Francais. Nota-
user’s satisfaction, of these possible configurations. tion Mathematique Braille, mise à jour de la nota-
Optimization is achieved if the system is able to tion mathematique de 1971. 2001.
configure set-up based on user’s preferences. 16. Edwards, A.D.N., et al., Lambda: a Multimodal
In this work, we have listed modalities suitable Approach to Making Mathematics Accessible to
to blind users. Given sets of suppliers, modalities, Blind Students. in Proceedings of the 8th interna-
computing devices, and the possible variations of tional ACM SIGACCESS conference on Computers
interaction context, we stated conditions in which and accessibility. 2006. Portland, Oregon, USA.
modality will succeed or fail. Similarly, we showed 17. Raman, T.V., Audio System For Technical Read-
a scenario wherein even if a specific modality is ings 1994, Cornell University.
already deemed possible, still it is conceivable that 18. Awde, A., et al., Information Access in a Multi-
it would fail if there are not sufficient media modal Multimedia Computing System for Mobile
devices that would support it or the environment Visually-Impaired Users, in ISIE 2006, IEEE Intl.
restriction imposes the non-use of the needed media Symp. on Industrial Elec. 2006: Montreal, Canada.
19. Weiss, G., Multiagent systems. MIT-Press, 1999.
devices. We validated all these affirmations through
20. Ferber, J., Les systemes multi-agents, ed. V.u.i.
scenario simulations and formal specifications.
collective. 1995, Paris: InterEditions.
10 REFERENCES 21. Jennings, N.R., et al., Applications of Intelligent
Agents, in Agent Technology: Foundations, Appli-
1. Satyanarayanan, M., Pervasive Computing: Vision cations, and Markets, 1998, Springer-Verlag: Hei-
and Challenges. IEEE Personal Communications, delberg, Germany. p. 3-28.
2001(August): p. 10-17. 22. Awde, A., et al., A Paradigm of a Pervasive Mul-
2. MathML. http://www.w3.org/Math [cited. timodal Multimedia Computing System for the Vi-
3. Lamport, L., LaTeX: The Macro Package, sually-Impaired Users, in The First International
http://web.mit.edu/texsrc/source/info/latex2e.pdf. Conference on Grid and Pervasive Computing.
1994. 2006: Tunghai University, Taichung, Taiwan.
4. Stöger, B., et al., Mathematical Working Environ- 23. Sousa, J.P., et al., Task-based adaptation for ubi-
ment for the Blind Motivation and Basic Ideas, in quitous computing. IEEE Transactions on Systems,
ICCHP. 2004, Springer. p. 656-663. Man and Cybernetics, Part C: Applications and Re-
5. Edwards, A.D.N. et al., A Multimodal Interface for views 2006. 6(3): p. 328-340.
Blind Mathematics Students. in INSERM. 1994. Par- 24. Jacquet, C., et al. A Context-Aware Locomotion
is, France. Assistance Device for the Blind. in ICCHP 2004,
6. Cahill, H., et al., Ensuring Usability in MATHS, in 9th International Conference on Computers Helping
The European Context for Assistive Technology. People with Special Needs. Université Pierre et Ma-
1995, IOS Press: Amsterdam. p. 66-69. rie Curie, Paris, France. .
7. Ferreira, H., et al., Enhancing the Accessibility of 25. Ross, D.A., et al., Talking Braille: A Wireless
Mathematics for Blind People: The AudioMath Ubiquitous Computing Network for Orientation and
Project. in ICCHP-9th Intl Conf. on Computer Help- Wayfinding in Proceedings of the 7th International
ing People with Special Needs. 2004. Paris, France. ACM SIGACCESS Conf. on Computers and Acces-
8. Ferreira, H., et al., AudioMath: Towards Automatic sibility 2005. Baltimore, MD, USA ACM Press.
Readings of Mathematical Expressions. in Human- 26. Mitchell, T., Machine Learning. 1997, McGraw-
Computer Interaction Intl (HCII). 2005. L. V., USA. Hill.
9. Moço, V. et al., VICKIE: A Transcription Tool for 28. Utgoff, P., ID5: An incremental ID3, in 5th Intl.
Mathematical Braille. in AAATE-Asso. for the Adv. Workshop on Machine Learning. 1988. p. 107-120.
of Assistive Tech. in Europe. 2003. Dublin, Ireland. 29. Kallenberg, O., Foundations of Modern Probabil-
10. Schwebel, F., et al., BraMaNet: Quelques règles ity, ed. S.S.i. Statistics. 2002: Springer. 650.
simples à connaître pour qu'un aveugle puisse lire 30. Witten, I.H. and E. Frank, Data Mining: Practical
vos documents mathématiques et vos pages web. in Machine Learning Tools and Techniques, 2nd ed.
Journées nationales Caen. 2005. Caen, France. 2005, San Francisco: Morgan Kaufmann. 525.

UbiCC Journal - Volume 3 21


On the Implementation of Differential Encoder for Spectral Shaping in
56Kbps Embedded Modems

Davinder Pal Sharma


Department of Physics, University of the West Indies, St. Augustine Campus, Tinidad & Tobago, West Indies
davinder.sharma@sta.uwi.edu

Jasvir Singh
Department of Electronics Technology, Guru Nanak Dev University, Punjab, India
j_singh00@rediffmail.com

ABSTRACT
Present paper deals with the simulation and implementation of two functional units,
parse-to-shaping-frame and differential encoder, for spectral shaping in 56Kbps
digital modem transmitter. The idea behind spectral shaping is to adapt the shape
of the transmitted signal, to conform to the shape or spectral limitations of the
channel, without changing the basic pulse shape or peak-to-average-ratio. This unit
suppresses the signal component close to dc to minimize the effect of ac couplings
or to provide sufficient data transitions for reliable clock recovery. A combined
algorithm for implementation of the parse-to-shaping-frame and differential
encoder functions utilized in transmitter of 56Kbps digital modem has been
presented. An algorithm to perform parse-to-shaping-frame and differential
encoding functions has been developed during present study. Proposed algorithm
has been simulated and implemented on the Digital Signal Processor. Practical
results obtained have been found almost similar to the theoretical and simulated
results.

Keywords: Spectral Shaping, 56Kbps Modem, Differential Encoder, Digital Signal Processor.

1 INTRODUCTION using telephone dial up technology to access the


Internet in 2001 and the user strength is growing up
Technologies are changing very frequently in the continuously. The Gartner Group estimates that
field of data communication over twisted copper pair about 55% of the user were relying on voice-band
(plain old telephone lines). These changes are due to services even till 2004[5], [6]. Moreover voice-band
quick advancement in computer and digital modem has many advantages over others like they
communication technologies along with powerful are inexpensive, easy to install, more reliable, widely
digital signal processing algorithms [1]. In the available and easy in functioning.
present cyber age everyone wants to enjoy Internet Seeing the huge consumer market of voice-band
services like teleconferencing, web-surfing, e- modem for Internet access, present study was carried
learning, e-banking, online movies and voice-over- out on data transmission over analog telephone lines.
telephony at very lower cost, which demands high V.90/V.92 is the current 56Kbps modem standard
over the PSTN telephone lines, which uses entirely
speed. Even though it has been repeatedly predicted
different technology. Block diagram of 56Kbps
that network access via telephone lines would be
modem communication system is shown in Fig. 1.
replaced by new services based on emerging
Traditional analog modem like V.34 assumes both
technologies [2], 56Kbps voice-band modems seem the ends of the modem session to have an analog
to be the best solution [3], [4] as these modems are connection to PSTN whereas V.90/V.92 standard
still used by the majority of home computer users assumes one end of the modem section to be purely
and small business owners for data communication digital to take the advantage of high-speed
and network access. In accordance with a study made connection [7]. Internet Service Providers (ISPs) are
by Georgia Tech, in 1998 approximately 70% of already using digital connection at their end. There is
Internet users were connected to the network with only one analog portion on the downstream
analog voice-band modems and according to the transmission path (from ISP to DTE) and the
survey conducted by a firm (Jupiter Communication) upstream data conforms to the V.34 standard. TCM
more than 50 million people in the US alone were is used in upstream direction whereas in downstream

UbiCC Journal - Volume 3 22


Pulse Coded Modulation (PCM) as specified by ITU Each symbol position within the data frame is called
in G.711 recommendation [8] is used in this modem, a data frame interval and is indicated by a time index,
also known as PCM modem. i = 0, ..., 5.
56Kbps
I/P
Data
User Server Scrambler Bit Parser Encoder
PC
AM DM PC
PSTN

48Kbps To
PSTN Linear to µ
DAC or A Law LPF
Convertor
Figure 1: Block diagram of 56Kbps modem
communication system
Figure 2: Transmitter of 56Kbps digital
modem (server side)
2 DISCRIPTION OF 56Kbps DIGITAL
MODEM TRANSMITTER During startup, the following encoder parameters are
established:
Transmitter of V.90/V.92 56Kbps digital modem
is shown in the Fig. 2. First unit is scrambler whose ‰ Ci equals the positive constellation points for
purpose is to facilitate effective transmission of the data frame interval i .
data over the telephone channel and to improve the ‰ Mi is the number of code points in each
convergence of the adaptive equalization and echo constellation C i .
cancellation in the receiver. It helps the receiver to ‰ K is the number of modulus encoder input data
recover the timing information from the received bits per data frame.
data to facilitate synchronous operation. The ‰ Sr is the number of PCM code sign bits per data
downstream encoder in Draft Recommendation frame used as redundancy for spectral shaping.
V.90/V.92 uses multiple modulus conversion for ‰ S is the number of differential encoder input
mapping scheme and convolutional spectral shaping data bits per data frame, where S + Sr = 6.
as its spectral shaping scheme. The block diagram in
Fig. 3 shows an overview of the downstream encoder The positive constellations (Ci ) to be used in
and represents one data frame. Data frames in the each data frame interval are specified by the analog
digital modem have a six-symbol structure (since the modem during training procedures. The signaling
robbed-bit signaling pattern repeats every six rate is determined by the selection of the parameters
symbols).

Mi Ci

Sign
Assign MUX
Ui PCMi
b0: bk-1 Modulus Ki Data Unit
Encoder Mapper
Bit Parser

$0:$5
Serial PCM Octets

d0: dD-1 Ui

Spectral
Parse To tj (n) Shaper
S0: Ss-1 Pj
Shaping Differential
Frame Encoder

Sr

Figure 3: Encoder of 56Kbps digital modem

UbiCC Journal - Volume 3 23


K and S during the startup phase using formula given ($i) so as to minimize the spectral shaping metric
by without violating the constraint specified in
V.90/V.92 recommendation [7, 9]. The six sign bits
Ds = [(K + S) × 8000]/(6) (1) generated by the spectral shaper ($i) are attached to
the six unsigned mapper outputs (Ui) to form the six
output symbols (PCMi), which are then multiplexed
Description of each of the components or functional to form the stream of PCM octets to be transmitted.
blocks as presented in Fig. 3 is given below [7]: This completes the encoding process.
Bit Parser partitions the block of binary data for 8-bit PCM codes generated by the transmitter
one mapping frame into different groups of bits for arrive at the central telephone office through the
processing by subsequent stages of the transmitter. It internal digital telephone network and are applied to
takes bits from scrambled data stream and parses the digital to analog converter in the Codec at the
them into two groups, which are fed to two different rate of 8000 samples per second. The Codec converts
parts of encoder i.e. to differential encoder and each code to one of 256 voltage levels and passes the
modulus encoder. It takes D (equal to S + K) resulting staircase waveforms through a low pass
scrambled input data bits (d0 : dD-1) and parses them filter with a 4kHz cut-off frequency [10].
into K modulus encoder input bits (b0 : bK-1) and S The linear to µ/A-Law Converter, who expands
differential encoder input bits ( s0 : sS-1 ). The the 8 encoded PCM bits to 14 bits in accordance with
modulus encoder takes K bits from the bit parser and the ITU recommendation G.711 [8]. The procedure
maps them into six integers Ki, where i = 1, 2 ,…, 6. of expanding 8-bit input to 14-bit data at transmitter
Each Ki is an integer between 0 and Mi, where the and the compressing the 14-bit data to 8-bit at other
Mi’s are called the mapping moduli and represent the end is called Companding. The device, which
number of elements in each of the PCM code sets accomplishes this task, is called CODEC and is
defined for data frame interval 0 to data frame generally situated at the central office. A-law is used
interval 5. In order to be able to represent the by European countries whereas in U.S.A. µ-law is
information in the K bits taken from the parser with popular.
these six integers, the values of Mi and K must Low pass filter in the modem design is generally
satisfy the following inequality used to avoid the aliasing problem caused by ADC in
the communication path. To avoid the aliasing
5 problem it should be ensured that the ADC never
K ≤ ∏ (M ) (2)
i =0 i sees any signals that are to high in frequency. This is
also known as anti-aliasing filter. As discussed above
Each frame interval has an independent mapper this filter has cut-off frequency equal to the
associated with it. Each one of them also has a bandwidth of the channel used i.e. 4 KHz. The
tabulation of Mi PCM codes corresponding to the output of filter is connected to the twisted pair
positive elements of the constellation to be used by it (telephone line) through the hybrid circuit installed at
and denoted by Ci. The specific PCM codes that the local telephone office of a client.
assemble each of the constellations are selected by
the analog modem during the startup phase of the 3 SPECTRAL SHAPING IN 56KBPS
communication. It is required that the members of Ci DIGITAL MODEM
should be labeled in descending order so the label 0
corresponds to the largest PCM code in the Spectral shaping affects only the signs of the
constellation and the label Mi correspond to the transmitted PCM symbols. From the six sign bits of
smallest. The output of each mapper (Ui) is generated each frame, Sr are the redundancy bits and S are the
by selecting the constellation point in Ci information bits. The number of redundancy bits Sr is
corresponding to Ki. determined by the analog modem during the startup
The S differential encoder input bits (s0 : sS-1 ) procedures; it can take the values 0, 1, 2, or 3. By
are parsed into j = Sr spectral shaping frames of setting the value of Sr = 0, the spectral shaping
length 6/Sr . The six Pj ( n) bits are then differentially capabilities can be disabled [7].
encoded to produce six input sign bits, tj ( n) , to the Spectral shaping is used to adapt the shape of the
spectral shaper. transmitted signal to conform to the shape or spectral
The spectral shaping is intended to change the limitations of the channel without changing the basic
shape of the spectrum of the transmitted signal to pulse shape or peak to average ratio. Spectral
make it better suited to the channel used. Spectral shaping codes achieve this objective by adding some
shaping affects only the signs of the transmitted redundant information or modifying the symbol
PCM symbols. The spectral shaper modifies input sequence [11]-[13].There are many varieties of
sign bits tj (n) to corresponding PCM code-sign bits spectral shaping codes like those presented in [14]-

UbiCC Journal - Volume 3 24


[18] depending on the particular requirements of s0
each application. Typical applications of spectral
shaping codes include the suppression of the signal
s1
s0 - s5 bits s2 Pj(i)
component close to dc to minimize the effect of ac PSF
for i = 0-5
couplings, or to provide sufficient data transitions for from parser s3
reliable clock recovery. Simulation and s4
implementation of functional units such as parse-to-
shaping-frame and differential encoder of spectral
s5
shaping block of 56Kbps digital modem transmitter Sr = 0 and S = 6
is discussed in the subsequent sections.
Sr
3.1 Parse to Shaping Frame
0
s0
This unit takes S input bits (s0-sS-1) from the bit s0 – s5 bits
parser and parsed them into j = Sr spectral shaping PSF
s1 Pj(i)
for i = 0-5
frames of length 6/Sr. This unit produces six outputs from parser s2
Pj(n) where j(n) represents the nth bit of the jth s3
spectral shaping frame in a data frame. The spectral s4
shaping function depends on selected values of Sr,
which may ranges from 0 to 3. Sr bits which are Sr = 1 and S = 5
determined during startup procedure selects the value
Sr
of S bits as Sr + S = 6. When Sr = 0 & S=6, spectral
shaping is disabled and when Sr = 1 & S=5 sign bits
s0 to s4 shall parse to one six-bit shaping frame per
data frame according to Table 1. As per ITU
0
Recommendations V.90/V.92, for Sr=2 & S=4, the s0 Pj(i)
s0 – s5 bits for
sign bits s0 to s3 shall be parsed into two three-bit PSF s1
from parser i = 0-2
shaping frames per data frame and when Sr=3 & S=3, 0
sign bits s0 to s2 shall be parsed to three two-bit s2 Pj+1(i)
shaping frames per data frame [7]. Block diagram of
parse-to-shaping-frame (PSF) units for different
s3
value of Sr is given in Fig. 4. Pj(i) is current shaping
Sr = 2 and S = 4
frame, Pj+1(i) stands for next 1st frame and Pj+2(i)
stands for next 2nd frame. Sr

Table 1: Parsing process of input sign bits


0 Pj(i)
s0
s0 – s5 bits
PSF 0 Pj+1(i)
for
from parser i = 0-1
s1
Data
frame Sr = 1, S = 5 Sr = 2, S = 4 Sr = 3, S = 3 0 Pj+2(i)
interval s2
0 Pj (0) = 0 Pj (0) = 0 Pj (0) = 0 Sr = 3 and S = 3

1 Pj (1) = s0 Pj (1) = s0 Pj (1) = s0 Figure 4: Block diagram of parse to shaping frame


(PSF) units for different values of Sr
2 Pj (2) = s1 Pj (2) = s1 Pj+1 (0) = 0
3.2 Differential Encoder
3 Pj (3) = s2 Pj+1 (0) = 0 Pj+1 (1) = s1
The power spectral density (PSD) of a digital
4 Pj (4) = s3 Pj+1 (1) = s2 Pj+2 (0) = 0 communication signal can be controlled and shaped
by selecting the transmitted signal pulse and by
5 Pj (5) = s4 Pj+1 (2) = s3 Pj+2 (1) = s2
introducing correlation through coding, which is

UbiCC Journal - Volume 3 25


used to combat channel distortion and noise in $0 = s0 ⊕ ($5 of the previous data frame); and
transmission. Coding for spectrum shaping is $i = si ⊕ $i–1 for i = 1, ..., 5 (4)
introduced followed by the channel encoding so that
the spectrum of the transmitted signal matches the When Sr=1 and S=5 the odd bits may be
spectral characteristics of a base band or equivalent differential encoded to produce the output Pj' and a
low-pass channel. Codes that are used for spectrum second order differential encoding may be performed
shaping are generally called either modulation codes to produce the initial shaping sign bit assignment,
or line codes, or data translation codes. Such codes tj(0) to tj(5) using the rule
generally place restrictions on the sequence of bits
into the modulator and thus introduce correlation and tj(k) = Pj'(k) ⊕ tj-1(k) (5)
hence memory into the transmitted signal.
Modulation codes are usually employed in digital Finally spectral shaper converts each bit tj(k) to PCM
communication over cable systems to achieve code sign bit $k .
spectral shaping and to eliminate or minimize the dc For Sr=2 and S=4, after processing through parse
content in the transmitted (or stored) base band to-shaping-frame, the odd bit in each shaping frame
signal [19]. may be differentially encoded to produce outputs Pj'
Differential encoding technique has been and P'j+1 and a second order differential encoding
recommended by the ITU for providing spectral may be performed to produce the initial shaping sign
shaping in V.90/V.92 56Kbps digital modem, which bit assignment, tj(0) to tj(2) and tj+1(0) to tj+1(2) using
is basically Non-Return-to-Zero-Invert-on-ones the differential encoding rules:
(NRZI) line coding technique. In this scheme tj(k) = Pj'(k) ⊕ tj-1(k)
transitions from one amplitude level to another
occurs only when a ‘1’ is transmitted. The encoding tj+1(k) = P'j+1(k) ⊕ tj(k) (6)
operation is described mathematically by the relation and finally the spectral shaper converts each tj(k) bit
bk = ak ⊕ bk-1 (3) to PCM code sign bit $k and each tj+1(k) bit to PCM
code sign bit $k+3 .
where {ak} is the binary information sequence In the case when Sr=3 and S=3, the odd bit in
into the encoder, {bk} is the output sequence of the each shaping frame may be differentially encoded to
encoder and ⊕ denotes modulo-2-addition operation. produce differentially encoded outputs P'j, P'j+1, and
The differential encoding operation introduces P'j+2. A second order differential encoding may be
memory in the signal. The most direct performed on each shaping frame to produce the
implementation of the differential encoder is to use initial shaping sign bit assignments tj(0) to tj(1),
an exclusive – OR (XOR) function with a delay in tj+1(0) to tj+1(1), and tj+2(0) to tj+2(1) using the
the feedback path as given in the Fig. 5 [19]-[20]. differential encoding rules:

ak tj(k) = P'j(k) ⊕ tj–1(k)


bk = ak ⊕ bk-1
tj+1(k) = P'j+1(k) ⊕ tj(k)
XOR
tj+2(k) = P'j+2 (k) ⊕ tj+1(k) (7)

The spectral shaper converts each tj(k) bit to PCM


code sign bit $k, each tj+1(k) bit to PCM code sign bit
$k+2, and each tj+2(k) bit to PCM code sign bit $k+4.
1-Bit
Period Delay 4 ALGORITHM FOR IMPLEMENTATION
bk-1
OF PARSE-TO-SHAPING-FRAME AND
DIFFERENTIAL ENCODER
Figure 5: Differential encoder direct impleme -
ntation using a XOR function. An algorithm to implement spectral shaping unit
of the 56Kbps digital modem transmitter is shown in
For the present case spectral shaping function Appendix I, First of all, S sign bits (s0-s1-S) received
depends on the selected value of Sr. In the case of from bit parser can be stored at appropriate data
Sr=0 and S=6, the PCM code sign bits, $0 to $5 may memory address (dma) and thereafter various 'dma'
be assigned using input sign bits s0 to s5 with the help can be assigned for the storage of outputs of different
of following differential coding rules: stages of spectral shaping unit. After that Sr bit is

UbiCC Journal - Volume 3 26


received from the analog modem during startup j+1 and j+2 to obtain sign bits to form PCM code
operation and then its value can be checked. If it is words as per subroutine (c).
equal to 0 then a subroutine for parse to shaping
frame corresponding to Sr=0 and S=6 is followed
otherwise query tasks for Sr=1 and Sr=2 can be 5 DEVELOPMENT OF ASSEMBLY
performed and then corresponding subroutines LEVEL PROGRAM FOR PARSE - TO
LOOP-A, LOOP-B or LOOP-C can be followed. SHAPING - FRAME AND
Upon qualifying query task Sr=0, all the six sign DIFFERENTIAL ENCODER
bits (S) s0-s5 can be parsed as specified in the ITU
Recommendation V.90/V.92. Bit masking technique
can be used to perform this parse to shaping frame Assembly level program corresponding to the
function and after parsing all the six bits they can be algorithm discussed in previous section to implement
stored at an appropriate 'dma' Pji for further parse to shaping frame and differential encoding
processing by differential encoder. At this stage functions of 56Kbps digital modem transmitter on
differential encoding on these parsed bits is TMS320C50PQ57 DSP has been developed during
performed as per Eq. (4) using the basic structure as present study. Query task has been implemented
with the help of CPL (compare the specified constant
given in Fig. 5 and finally obtained sign bits ( $0 - $5)
with the contents of 'dma' specified by the Auxiliary
are stored at 'dma' tji , where i= 0-5 for jth data frame.
resister) and BCND (conditional branch, get
If the analog modem sends Sr=1 during startup activated when carry-bit is high) instructions. Parse
procedure then subroutine (a) can be followed. Five to-shaping-frame function has been implemented
sign bits, out of six (s0-s5), are parsed as specified in with the help of bit masking technique, which can be
Table 1. In this case bit-masking technique can also implemented with the help of AND instruction with
be used to perform parse to shaping frame function appropriate shift. This is used to AND the content of
and after parsing all the six bits they can be stored at accumulator with a constant, to mask a particular bit.
an appropriate 'dma' Pji for further processing by Differential encoding (both odd bit and second order)
function has been implemented with the help of
differential encoding section. The next task is to
XOR (the content of dma are exclusive-ORed with
perform differential encoding on odd bits of data
the contents of the accumulator) instruction. Various
frame interval 'j' using bits from present and previous
‘dma’, which acts like 1-bit delay along with other
data frame 'j-1' after odd bit differential operation, supporting instructions, have been used to implement
the encoded bits are stored at new 'dma' Pnji. In the differential encoder as shown earlier in Fig. 5.
next step, second order differential encoding
according to Eq. (5) is performed on Pnji bits of data
frame j and previously second order differential 6 SIMULATION OF PARSE –TO – SHAPING
encoding bits. Finally the output of second order FRAME AND DIFFERENTIAL ENCODER
differential encoder is stored at 'dma' tji, which
represents the corresponding sign bits and can be
used to assign the sign to the PCM code words. For simulation purpose Code Composer Studio
(CCS) software package from Texas Instruments,
In the case, if query task for Sr=2 get satisfied,
subroutine (b) can be used. Initially the data bits USA has been used. Assembly level program has
received from bit parser are again parsed according been converted into the appropriate format for
to Table 1 using bit masking technique and parsed loading into the simulator of CCS using assembler
bits may be stored at 'dma' Pji and Pjp1i and linker programs. Simulator status before
corresponding to jth and j+1th data frames. Then odd execution of the spectral shaping program for Sr = 0
bit differential encoding is performed on odd bits of (stored at 'dma' 802CH) and incoming data 0025H
data frame 'j' and 'j+1' using bits from present (j) (i.e. s0 – s5 having values 1,0,1,0,0,1 respectively)
previous (j -1) and next (j+1) data frames. Then after corresponding to data frame j (stored at 'dma' 8000H)
encoded bits may be stored at 'dma' Pnji and Pnjp1i for along with the previous sign bit $5 =1(stored at dma
further processing. Furthermore to achieve sign bits, 802BH), is shown in Fig.6. Program has been
second order differential encoding may perform as debugged and after execution simulation results have
per Eq. (6) using previously encoded bits been obtained which are shown in Fig. 7.
corresponding to data frame j and j+1 along with the
present bits. Process ends with the storage of so Results corresponding to parse to shaping frame
obtained sign bits to form PCM code word at 'dma' tji have been stored at 'dma' 8003H to 8008H, which are
and tjp1i corresponding to data frame j and j+1. in accordance with the theoretically predicted results
Similar tasks can be performed for the case of Sr=3 as per Table 1. Similarly the outputs of differential
using Eq. (7) corresponding to three data frames j,

UbiCC Journal - Volume 3 27


Figure 6: Simulator status before execution of spectral shaping program for Sr = 0

Figure 7: Simulator status after execution of spectral shaping program for Sr = 0

UbiCC Journal - Volume 3 28


encoder have been stored at 'dma' 801BH to 8020H Table 2: Summery of implementation parameters
which again exactly matches with the theoretically
predicted results as per Eq. (5) and hence confirm the
successfulness of assembly program corresponding Data Program Program
to option Sr=0. Function Memory Memory Execution Time
Used Used (µs)
To further confirm the successfulness of (W) (W)
developed algorithm and corresponding assembly
Parse to Depends upon
level program, another case for Sr=3 is considered Shaping 44 251 the value of Sr
here. In this case three data frames are required so Frame
output of bit parser corresponding to data frame and (1.123 – 1.368)
j(000BH), j+1(0002H) and j+2 (0005H) has been Differential
Encoding
stored at 'dma' 8000H, 8001H and 8002H
respectively. Another initialization includes Sr = 3
('dma' 802CH), previous odd bit differential
encoding output in data frame interval 1 of data
frame j-1 (i.e. P 'j-1(1) = 1 stored at 'dma' 801AH) and
previous outputs of second order differential 8 CONCLUSION
encoding in data interval 0 & 1 corresponding to data
frame j-1 (i.e. tj-1(0)=0 at 'dma' 8026H and tj-1(1) = 1 Simulation and implementation of functional
stored at 'dma' 8027H). With above initialization the units such as parse - to - shaping - frame and
status of the simulator is shown in Fig. 8 and differential encoder etc. of spectral shaping block of
simulation results after debugging and executing the 56Kbps digital modem transmitter have been
program have been presented in the Fig. 9. Parse to discussed in the present paper. A combined
shaping frame results have been stored at 'dma' algorithm for implementation of the parse to shaping
8003H to 8008H and results of odd bit differential frame and differential encoder functions utilized in
encoding along with second order differential transmitter of 56Kbps digital modem has been
encoding have been stored at 'dma' 8009H-800AH, suggested. Parse - to - shaping - frame function has
8014h-8015H, 8017-8018H and 801BH-801CH, been implemented with the help of bit masking
8021H-8022H, 8024H-8025H respectively which are technique where as differential encoder has been
in accordance with the theoretically predicted results. implemented with the help of XOR functioning and
Similarly program was simulated for other options delay line implementation. Assembly level program
Sr=1 and Sr=2 with different outputs of bit parser and corresponding to algorithm developed during present
absolute performance have been achieved. study has been simulated and loaded into the DSP
module to implement parse - to - shaping - frame and
differential encoding process. Practical results
7 IMPLEMENTATION OF PARSE - TO obtained have been found to be same as of
SHAPING - FRAME AND DIFFERENTIAL theoretical and simulated ones.
ENCODER ON TMS320C50PQ57 DSP CHIP

ACKNOWLEDGEMENTS
Program for parse - to - shaping - frame and
differential encoder to perform spectral shaping has
been loaded into the DSP Module for its practical One of the authors Davinder Pal Sharma is
implementation using communication software thankful to Guru Nanak Dev University, Amritsar,
program XTALK provided by VI Microsystems Pvt. for providing Research facilities at Department of
Ltd. Same inputs and initialization parameters as Electronics Technology for the present research
used during simulation have been taken again here work.
and it has been observed that practical results are in
accordance with the simulated or theoretically
predicted results which confirms the successfulness 10 REFERENCES
of the present study. Various implementation
parameters regarding present implementation of
parse to shaping frame and differential encoding [1] A. A. Gokhale: Introduction to Telecomm-
functions to perform spectral shaping in the unication, Thomson Asia Pvt. Ltd. (2001).
transmitter of 56Kbps digital modem have been
given in Table 2. [2] D. E. A. Clarke et. al: Emerging Broadband

UbiCC Journal - Volume 3 29


Figure 8: Simulator status before execution of spectral shaping program for Sr=3

Figure 9: Simulator status after execution of spectral shaping program for Sr=3

UbiCC Journal - Volume 3 30


Access Technologies, British Telecomm- Constrained Optimization Problem, Proc. of
unication Technology Journal, Vol. 16, pp. IEEE ISIT, pp. 330 (June 1994).
187-195 (Oct. 1998). [17] M. Campanella, G. Garbo, G. Mamola: A
[3] V. U. Reddy: Voice-band Modems: A Device Design Technique for Spectral Shaping in
to Transmit Data over Telephone Networks - CPM Systems, IEEE Transactions on
Part (I): Basic Principles of Data Transmission, Communications, Vol. 45 (May 1997).
Resonance, Vol. 6, pp. 56-65 (May 2001). [18] J.K. Cavers, R.F. Marchetto: A New Coding
[4] V. U. Reddy: Voice-Band Modems: A Device Technique for Spectral Shaping of Data, IEEE
to Transmit Data over Telephone Networks - Transactions on Communications, Vol. 40
Part (II): Advanced Ideas which made High (Sept. 1992).
Data Rates possible, Resonance, Vol. 6, pp. 60- [19] J. G. Proakis, D.G. Manolakis: Digital
70 (June 2001). Communication, McGraw Hill Inc. (2000).
[5] F. Adams et. al: Today's Access Technologies, [20] H. Shankar, P. V. Wagt: Implementing a
British Telecommunication Technology High-Speed Differential Encoder, Inphi
Journal, Vol. 16, pp. 21-33 (Oct. 1998). Corporation, White Paper.
[6] Georgia Tech Studies: (1998). [21] L. M. Caraballo: System Level Design and
http://www.gvu.gatech.edu/user_surveys/surve Simulation of a PCM Voiceband Modem
y-1998-10/graphs/technology/q01.htm. Compliant with the ITU V.90 Standard, Texas
[7] ITU-T Recommendation V.90: A Digital and A & M University, M. S. Thesis (May 2000).
Analog Modem pair for use on the PSTN at
Data Signaling Rates of up to 56000 bits/s
Downstream and 33600 bits/s Upstream, ITU-
T V Series Recommendations (1998).
[8] Recommendation G.711: Pulse Coded
Modulation (PCM) of Voice Frequencies, ITU-
T G Series Recommendations (1988).
[9] L. Brown: PCM Modem Design: V.90
Characteristics, Communication System
Design Magazine, Vol. 6 (1998).
[10] S. A. Tretter: Constellation Shaping,
Nonlinear Precoding and Trellis Coding for
Voice band Telephone Channel Modems,
Kluwer Academic Publishers (2002).
[11] H. Kobyashi: A Survey of Coding Schemes for
Transmission or Recording of Digital Data,
IEEE Trans. Comm. Tech., Vol. COM-19, pp
1067-1100 (Dec. 1971).
[12] A. Croiser: Introduction to Pseudoternary
Transmission Codes, IBM Journal of Research
& Development, Vol. 14, pp. 354-367 (July
1970).
[13] E. Gorog: Redundant Alphabets with Desirable
Frequency Spectrum Properties, IBM Journal
of Research & Development, Vol. 12, pp 234-
241 (May 1968).
[14] H. Waldman, C. A. M. Pingarilho: Spectral
Shaping Codes” Proc. of IEEE ISIT, pp 209
(June, 1994).
[15] H. Waldman, C.A.M. Pingarilho: Coding for
Spectral Shaping, Proc. of Global
Telecommunications Conference, pp. 132-135
(Nov. 1994).
[16] A. K. Khandani,: Constellation Shaping as a
Geometrical Approach to Solving a

UbiCC Journal - Volume 3 31


APPENDIX – I

Main algorithm to perform spectral shaping in 56Kbps digital modem transmitter

Start

Save I/P data frame


received from parser
at appropriate ‘dma’.

Assign 'dma' to O/P's of


different stages of
Differential Encoder.

Save Sr bit received


from analog modem.

NO
YES YES
Sr = 0 Sr = 1

Use bit masking technique to NO


parse bits of data frame 'j' Loop B
as specified in Table 1

YES
Sr = 2

Store the masked bits


(O/P of PSF) at 'dma' Pji
(i =0,- - - - ,5) NO
Loop C

Loop D

Perform differential encoding as


$0 = s0 ⊕ ($5)
$i = si ⊕ $i–1

Store Sign bits $0 - $5 at 'dma' tji STOP

UbiCC Journal - Volume 3 32


APPENDIX – I (contd…..)

LOOP-B LOOP-C LOOP-D

Use bit masking technique to


Use bit masking technique to Use bit masking technique to parse
parse bits of data frame 'j' as
parse bits of data frame 'j' as bits of data frame 'j' as specified in
specified in Table 1
specified in Table 1 Table 1

Store the masked bits Store the masked bits at dma


Store the masked bits at dma 'Pji' ,
(O/P of PSF) at dma 'Pji' 'Pji' and 'Pjp1i' corresponding
'Pjp1i' and 'Pjp2i' corresponding to jth
(i =0,- - - - ,5) to jth and j+1th data frame
, j+1th and j+2nd data frames (i =0,1)
(i =0,1,2)

Perform odd bit differential


Perform odd bit differential Perform odd bit differential
encoding on odd bit of data
encoding on odd bit of data encoding on odd bit of data frame
frame 'j' and 'j+1' according
frame 'j' according to Eq. (5) 'j', 'j+1' and 'j+2' according to Eq.
to Eq. (6) using bits from
also using bits from previous (7) using bits from present (j)
present (j) previous (j - 1) and
data frame ' j - 1 ' previous (j - 1) and next (j+1, j+2)
next (j+1) data frames
data frames

Store the encoded bits at dma Store the encoded bits at dma
'Pnji' and 'Pnjp1i' Store the encoded bits at dma 'Pnji' ,
'Pnji'
corresponding to data frames 'Pnjp1i' and 'Pnjp2i' corresponding to
j and j+1 data frames j , j+1 and j+2

Perform second order


differential encoding as Perform second order
specified in Eq. (5) differential encoding as Perform second order differential
specified in Eq. (6) encoding as specified in Eq. (7)

Store the sign bits ($0 - $5 )


obtained from differential Store the sign bits ($0 - $5 ) at Store the sign bits ($0 - $5 ) at dma tji
encoder at dma 'tji' dma tji and tjp1i corresponding ,tjp1i and tjp2 corresponding to data
to data frames j and j+1 frames j , j+1 and j+2

STOP
STOP STOP

(a) Subroutine to perform spectral (b) Subroutine to perform (c) Subroutine to perform spectral shaping
shaping corresponding to Sr=1 and S=5 spectral shaping corresponding to corresponding to Sr=3 and S=3
Sr=2 and S=4

UbiCC Journal - VolumeUbiquitous


3 Computing and Communication Journal 12 33
EFFICIENT ENERGY MANAGEMENT FOR MOBILE AD HOC
NETWORKS

M.Tamilarasi1 , S.Chandramathi2 T.G. Palanivelu3

Department of Electronics and Communication Engineering


Pondicherry Engineering College, Pondicherry, India.
Email: 1tamilarasim@gmail.com;2 schandrarajan@yahoo.com; 3tgp@rediffmail.com;

ABSTRACT
A Mobile Ad Hoc network (MANET) is a collection of digital data terminals that can
communicate with one another without any fixed networking infrastructure. Since the
nodes in a MANET are mobile, the routing and power management become critical
issues. Wireless communication has the advantage of allowing untethered communication,
which implies reliance on portable power sources such as batteries. However, due to the
slow advancement in battery technology, battery power continues to be a constrained
resource and so power management in wireless networks remains to be an important
issue. Though many proactive and reactive routing protocols exist for MANETs the
reactive Dynamic Source Routing (DSR) Protocol is considered to be an efficient
protocol. But, when the network size is increased, it is observed that in DSR overhead
and power consumption of the nodes in the network increase, which in turn drastically
reduce the efficiency of the protocol. In order to overcome these effects, in this paper it is
proposed to implement overhead reduction and efficient energy management for DSR in
mobile Ad Hoc networks.

Key words: MANET, DSR, Energy Management, overhead reduction.

1. INTRODUCTION network is discovered on the fly, after the network’s


deployment. Thus, such a network must exchange a
An Ad Hoc network is a collection of wireless mobile number of messages which are used to “set-up” various
hosts forming a temporary network without the aid of any parameters in the network. Example of such parameters is
established infrastructure or centralized administration [1]. the very existence of other nodes in the network, their
The absence of any fixed infrastructure, such as access points, position, information about their neighbors, what they offer
makes Ad-Hoc networks prominently different from other (e.g., local maps, files, printing facilities etc).
wireless LANs. In such an environment each node may act as Various solutions for Overhead Reduction and Power
a router, source and destination, and forwards packets to the Management in DSR protocol are found in the literature.
next hop allowing them to reach the final destination through Dynamic Source Routing protocol is a simple and efficient
multiple hops. routing protocol designed specially for use in multi-hop
With the proliferation of portable computing platforms wireless Ad Hoc networks of mobile nodes. DSR allows
and small wireless devices, Ad Hoc wireless networks have network to be completely self-organising and self-
received more and more attention as a means for providing configuring, without the need for any existing
data communications among devices regardless of their infrastructure or administration [2].Energy management is
physical locations. The main characteristic of Ad-Hoc an essential requirement for the efficient operation of the
networks is the absence of pre-planning. The topology of the battery powered MANETs. Rong Zheng and Robin Kravats

UbiCC Journal - Volume 3 34


proposed an extensible on-demand power management Management algorithm. Section 4 presents the simulation
framework for Ad Hoc networks in [3] that adapts to traffic results and conclusions are given in Section 5.
loads.Sheetalkumar Doshi and Timothy X Brown[4] identified
the necessary features of an on-demand minimum energy 2. MODIFIED DSR
routing protocol and suggested mechanisms for their
implementation. Jorge Nuevo[5] elucidates the simulating The propagation of Route Request and Route Reply
software used in this work. It presents an easy tutorial to use packets in DSR are as shown in Figure.1 and Figure.2
and simulate Ad Hoc networks in GloMoSim as well as the respectively.
basic structure of the simulator. Several distributed power
aware routing protocols in mobile ad hoc networks are
discussed in [6]. Gill Zussman et al [7] introduced
iterative algorithms for energy efficient routing in ad hoc
networks. The problem is formulated as an anycast routing
problem in which the objective is to maximize the time until
the first battery drains out.Nicolaos B.Karayiannis et al present
an approach which relies an entropy constrained routing
algorithm for power conservation, which were developed by
utilizing the information theoretic concept of the entropy to
gradually reduce the uncertainty associated with route
Figure.1 DSR Route Request
discovery through a deterministic annealing process [8].
Stephanie Lindsey and Cauligib S. present energy efficient
one-to-all and all-to-all broadcast operations of ad hoc network
in [9]. Although establishing correct and efficient routes is an
important design issue in MANETs, a more challenging goal is
to provide energy efficient routes. Authors of [10] give the idea
of minimize the active communication energy required to
transmit or receive packets or energy consumed by the idle
nodes. Incorporating current estimates of battery levels into
routing metrics has been shown in [11] to reduce the demand
on nodes with little remaining energy and allow them to
participate in the network longer.The Energy Saving Dynamic
Source Routing (ESDSR) protocol is introduced in [12] to
maximize the life span of a mobile ad hoc network. Pierpaolo Figure. 2 DSR Route Reply
Bergamo et al [13] proposed distributed power control as a
means to improve the energy efficiency of routing algorithms
in ad hoc networks. A table-driven protocol called BEST and
an on demand routing protocol called DST were introduced in
[15] which are compared to DSR. Samir R Das et al introduce
several routing protocols including protocols specifically
designed for Ad hoc networks in [16] and traditional protocols
such as link state and distance vector used for dynamic
networking. It is found that the new generation of on-demand
routing protocols use much lower routing load while the
traditional link state and distance vector protocols provide
better packet delivery and delay performance.Three routing Figure.3 DSR (modified) Route Reply
protocols for ad hoc networks namely DSR, DSDV and AODV
are compared in [17]. Three different realistic scenarios are The main drawback in DSR protocol is the large
considered and it is found that the reactive protocols (AODV number of unwanted Route Replies, because a Route
and DSR) perform significantly better than DSDV. AODV Reply is sent through all the available routes leading to
fared better than DSR at higher traffic loads while DSR unnecessary congestion and waste of energy (battery
performed better than AODV at moderate traffic load. power). It is found through observations that it is
In this paper we propose an algorithm for modifying DSR sufficient if the destination node sends the Route Reply
to reduce overhead by reducing the number of route reply through one selected route rather than through all the
packets and the header size of DSR data packets. Besides this routes. Hence it is proposed to limit the number of Route
an algorithm for energy management is incorporated in the Replies to only one. This is sent via the route through
Modified DSR by transmitting the data packets with which the destination received the first Route Request,
minimum required energy .The rest of the paper is organized because it is the most active route for the particular
as follows: Section 2 deals with the Modified DSR for source-destination pair at the moment of sending the
overhead reduction. Section 3 describes the Efficient Energy request. Moreover this is the route through which the data

UbiCC Journal - Volume 3 35


packets can be transmitted fastest. Hence the same is chosen Step7: After re-broadcasting the data packet,
as the route for the data transmission, which can reduce the acknowledgement will be sent to the previous node
propagation delay to a great extant. Furthermore it leads to
the decrease in control packets generated in the network and 3. Efficient Energy Management in Modified DSR
the increase in packet delivery ratio. Thus these modifications
make the data transmission optimum. Figure.3 shows the In the Ad Hoc networks, each node is powered by a
modified DSR for route reply mechanism. battery which has a limited energy supply [4]. Over the
Another drawback of the DSR protocol is the overhead, time, various nodes will deplete their energy supplies and
which occurs due to appending of the addresses of drop out from network. Unless nodes are replaced or
intermediate nodes present on the route from source to recharged, the network will eventually become
destination (this happens especially as the number of nodes in partitioned. In a large network, relatively few nodes may
a particular network increases). The Data Packet Format of be able to communicate directly with their intended
existing DSR protocol is shown below. destinations. Instead, most nodes must rely on other radios
to forward their packets. Some radios may be especially
critical for forwarding these packets because they provide
the only path between certain pairs of radios. Associated
with each radio that depletes its battery and stop operating,
Figure .4 Data Packet Format of existing DSR protocol there may be a number of other radios that can no longer
communicate. For this reason a number of researchers
Here it is proposed to exclude the addresses of have focused on the design of communication protocols
intermediate nodes from the header of the data packets in that preserve energy so as to network failures for as long as
order to reduce the overhead in existing protocol. Thus the possible [12].
header of Data Packet contains only source and destination In existing DSR, each node uses constant power to
addresses as shown below. forward the packet or to transmit the packet. According to
the DSR draft [1] each node uses 280mw power.
Irrespective of the distance between adjacent nodes, each
node transmits with a constant power. In the proposed
MDSR the transmit power is tuned according to the
Figure.5 Data Packet Format of modified DSR protocol distance between transmitting node and receiving node
[3].
SNA- Source Node Address
INA- Intermediate Node Address 3.1 Algorithm for implementing power management:
DNA- Destination Node Address
Step1: Once the route request process is over and the
2.1 Implementation of Overhead Reduction route is established, the Route Reply packet is broadcast
by the destination
2.1.1 Algorithm for overhead reduction:
Step2: The immediately previous node in the selected
Step1: Source broadcasts Route Request packets which are path determines the distance between itself and the
heard by nodes within the coverage area destination, by means of the time taken by the Route
Reply packet to reach it.
Step2: The neighboring nodes re-broadcast the route
request Step3: All the nodes in the selected path follow the same
Step3: Destination sends Route Reply only to the first procedure and the distance between the nodes is
received Route Request determined and stored in the cache.

Step4: Source address, destination address and previous Step4: The transmitted power is determined using the
node addresses are stored during route reply. following formula,

Step5: The data packet contains only source & destination Transmitted Power = (a x d4) +c (1)
addresses in its header.
Where‘d’ is the distance between two adjacent nodes
Step6: When the data packet travels from source to ‘a’ and ‘c’ are arbitrary constants
destination, through intermediate nodes, for re-broadcasting
of data packet, the node verifies source and destination a=Pr*k (2)
addresses in its cache. If it is present, the data packets are
forwarded, otherwise it is rejected. Pr=Minimum Received power=-91dbm
. k =8 then find c
a = 6.48 x 10-11 and c = 30 x 10-3 W

UbiCC Journal - Volume 3 36


Step5: Transmitted power is varied in accordance with the
distance

4.SIMULATION RESULTS

Using GloMoSim (Global Mobile Simulator) the DSR


was simulated. Then the proposed modifications are
introduced and the modified protocol is simulated to verify
the predicted changes in parameters of packet delivery ratio,
end to end delay and number of control packets at different
pause times, with respect to the number of nodes in the
network.
The packet delivery ratio(PDR) is the ratio of the number
of packets received by the destination to the number of
packets transmitted by the source. PDR reduces as the pause
time decreases from 900 seconds to 0 seconds. This is due to Figure.7 Packet Delivery ratio Vs. No. Of nodes
the mobility of the network and the probability of link for a pause time of 600 s
failures increases as the pause time decreases. It is observed
that the MDSR maintains a better Packet delivery Ratio than
the existing DSR. This may be attributed to the reduction in
the number of control packets which reduces the collisions
between the transmitted data packets and control packets. It is
also observed that the MDSR maintains a significantly high
Packet Delivery Ratio than the existing DSR as the pause
time decreases. This is a result of the fact that in the MDSR,
unlike in existing DSR, the most active path is selected which
is less probable to fail and in turn increases the Packet
Delivery Ratio.
The number of control packets is the sum of all the Route
Requests, Route Replies and Route Error packets. In existing
DSR, the destination initiates Route Reply for all the Route
Requests received, but in MDSR, destination initiates Route
Reply only to the first received Route Request. Thus, it is
seen that the MDSR maintains less number of control packets
than the existing DSR. As the pause time decreases, the
Figure.8 Packet Delivery ratio Vs. No. Of nodes
complexity of the network increases and the probability of for a pause time of 300 s.
link failures increases. Though the MDSR reduces the
number of Route Replies, the source has to re-perform the
route discovery process in case of link failures, unlike in
existing DSR, where it chooses the next path in its route
cache. Thus, as the mobility increases, the MDSR requires
almost the same number of control packets as the existing
DSR.

Figure.9 Packet Delivery ratio Vs. No. Of nodes


for a pause time of 0s
Figure.6 Packet Delivery ratio Vs. No. Of nodes for pause
time of 900s

UbiCC Journal - Volume 3 37


Figure.10 Number of Control Packets vs. No. Of nodes for Figure.13 Number of Control Packets vs. No. Of nodes
a pause time of 900 s. for a pause time of 0 s

Figure.11 Number of Control Packets vs. No. Of nodes foa Figure.14 Delay Vs. No. Of nodes for a pause
pause time of 600 s time of 900 s

Figure.12 Number of Control Packets vs. No. Of nodes for a Figure.15 Delay Vs. No. Of nodes for a pause time
pause time of 300 s of 600 s

UbiCC Journal - Volume 3 38


Figure.18 shows the change in the percentage energy
saving in accordance with the distance between the
adjacent nodes for the modified DSR .It is observed that
more energy is saved when the distance of separation is
less and hence, an effective energy management is
obtained in the modified DSR while in the existing DSR
there is no energy management since the transmitting
energy is constant regardless of the distance between the
adjacent nodes.

Figure.16 Delay vs. No. Of nodes for a pause time of


300 s

Figure.19 Percentage energy saving with respect to the distance


between the adjacent nodes for energy efficient MDSR compared
to DSR
Figure.17 Delay Vs. No. Of nodes for a pause time .
of 0 s
The end-to-end delay is the time taken by a data
packet to reach destination from the source. As the number of
nodes increases, the complexity of the network increases and
hence the end-to-end delay increases. As the pause time
decreases, the mobility increases, which increases the
probability of link failures and hence the end-to-end delay
increases. In MDSR, the header of the data packet is reduced
and the route cache is limited to contain the addresses of only
the previous node, source and destination nodes which
improve the processing capacity of the nodes. This reduces
the processing time of the nodes which in turn reduces the
end-to-end delay when MDSR is compared to existing DSR.
Figure.20 Comparison of existing DSR, MDSR without
energy management and MDSR with energy management

In Figure.19 it is observed that irrespective of the


number of nodes in the network, the modified DSR shows
an average percentage energy saving of 37.9 % in
comparison to the existing DSR .This efficient energy
saving results due to the reduction in the number of
control packets and also due to the variation of the
transmit power between two nodes as a function of the
distance between the adjacent nodes rather than the
constant power used for transmission between nodes
irrespective of the distance between them as in the
existing DSR.
Figure.18 Energy consumption variation with respect Figure20 shows a comparison between the existing
to Distance of separation between the nodes DSR, modified DSR before energy management and
MDSR after energy management for varying network
densities. It is observed that MDSR due to overhead and
delay reduction gives a better energy management than

UbiCC Journal - Volume 3 39


the existing DSR but MDSR with energy management still Figure21,Figure.22 and Figure23 show the
enhances the energy consumption. It may also be seen that comparison among exiting DSR, Modified DSR and
the power is almost independent of the density of the network Modified DSR with energy management for packet
connections in all the three cases. Thus it may be justified delivery ratio, number of control packets and delay. There
that the MDSR after energy management becomes an energy is no much change in packet delivery ratio before energy
efficient protocol for mobile ad hoc networks. management and after energy management when number
of nodes is less in network. As number of nodes increases
PDR has decreased and same as existing DSR. Regarding
the number of control packets there is no significant
change. Delay has increased after incorporation of energy
management.

5. CONCLUSIONS

It is observed that the modifications brought about in


the existing DSR reduces the end to end delay and the
number of control packets which is the sum of Route
Request, Route Reply and Route Error packets while it is
observed that the modifications do not reduce the packet
delivery ratio. The average percentage energy saved per
node is found to be 37.9 %.Thus there is an enhancement
of energy management in the DSR protocol due to the
Figure.21Packet Delivery Ratio For Energy Efficient MDSR
modifications made and hence it can be considered a
Compared to DSR
energy efficient protocol.

6. REFERENCES
[1] Charles E. Perkins, “Mobile Ad-Hoc
Networks,” Addison-Wesley, 2000.
[2] David B. Johnson, David A. Maltz and
Yih-Chun Hu, “The Dynamic Source
Routing Protocol for Mobile Ad Hoc
Networks (DSR),” Internet Draft, draft-
ietf-manet-dsr-09.txt,15April2004.
URL:http://www.ietf.org/internetdraft/draf
t-ietf-manet-dsr-09.txt
Figure.22 Number Of Control packets For Energy Efficient [3] Rong Zheng and Robin Kravats, “On-
MDSR compared to DSR demand Power Management for Ad-hoc
Networks,” Journal of Ad Hoc networks,
vol.3, pg: 51-68, ELSEVIER, 2005.
[4] Sheetalkumar Doshi and Timothy X
Brown, “Design Considerations for an On-
demand Minimum Energy Routing
Protocol for Wireless Ad Hoc Network,”
Mobile Computing and Communication
Review, Vol.6, No.2, July 2002.
[5] Jorge Nuevo, “A Comprehensible
GloMoSim Tutorial” September 2003.
[6] Qun Li, Javed Aslam and Daniela Rus,
“Distributed Energy-Conserving Routing
Protocols,” Proceedings of 36th HICSS
Figure.23 Comparison Of Delay for Energy Efficient
MDSR,MDSR and Existing DSR 2003.

UbiCC Journal - Volume 3 40


[7] Gill Zussman, Adrian Segall, “Energy analysis of Routing Protocols for Mobile
Efficient routing in ad hoc disaster recovery Ad-hoc Networks”, International
networks” ELSEVIER, 2003. conference on Mobile computing and
[8] Nicolaos B.Karayiannis, Sreekanth networking,pp.195-206,1999.
Nadella, “Power-conserving routing of ad hoc
mobile wireless networks based on entropy-
constrained algorithms”, ELSEVIER, pp.24-
35, 2006.
[9] Stephanie Lindsey, Cauligib S. Ragavendra,
“Energy efficient all-to-all broadcasting for
situation awareness in wireless ad hoc
networks”, journal of parallel and distributed
Computing, pp.15-21, 2003.
[10] Chansu Yu, Ben Lee, Hee Yong
Youn,”Energy efficient routing protocols for
mobile ad hoc networks”.
URL:eecs.oregonstate.edu/~ben1/pulications/
Book_chapters/Handbook_AHWN_routing03
.pdf.
[11] Frederic.J.Block, Carl W.Baum, “Information
for routing in energy-constrained ad hoc
networks”, ELSEVIER, pp.499-508, 2006.
[12] Mohommed Tatique, Kamal E.Tape,
Mohomad Naserian, "Energy saving
dynamic source routing for ad hoc wireless
network", proceeding of the third
international symposium on Modeling and
optimization in mobile, Ad Hoc wireless
networks, pp 305-310,2005.
[13] Pierpaolo Bergamo, Alessandra Giovanardi,
Andrea Travasoni, Daniela Maniezzo,
Gianluca Mazzini, Michelle
Zorzi,”Distributed power control for energy
efficient routing in ad hoc networks”,
Wireless networks, pp.29-42, 2004.
[14] Jyoti Raju, J.J Garcia-Luna-Aceves,
“Scenario-based Comparison of Source-
Tracing and Dynamic Source Routing
Protocols for Ad Hoc Networks”,
proceedings of the 36th Hawaii international
Conference on System Sciences, 2002.
[15] Samir R Das, Robert Castafieda, Jiangatao
Yan, Rimli Sengupta, "Comparative
Performance Evaluation of Routing
Protocols for Mobile, Ad Hoc Networks",
IEEE,1998.
[16] Per Johansson, Tony Larsson, Nicklas
Hedman, Bartosz Mielczarek, Mikael
Degermark, “Scenario-based Performance

UbiCC Journal - Volume 3 41


SELECTIVE SUSPENSION OF TRANSMISSION FOR AVOIDING
PRIORITY REVERSAL IN MOBILE AD HOC NETWORKS

#R.Gunasekaran, Dr.V.Rhymend Uthariaraj


Department of Information Technology, Anna University, Chennai, India
#gunamit@annauniv.edu

ABSTRACT
Ad hoc wireless networks are a very potential field offering lot of scope for research.
In these networks, the Medium Access Control (MAC) protocols are responsible for
coordinating the access from active nodes. These protocols assume greater
significance since the wireless communication channel is inherently prone to such
problems as hidden terminal, exposed terminal and fading effects .The scheme
proposed here is used to perform priority scheduling in nodes resolving any
contention scenario that can arise for the channel in the best possible manner. Alert
transmission packets are used as a means of notification whenever a high priority
node wants to transmit data. Suspend transmission packets are used to avoid priority
reversal issue and a retry count is implemented to avoid starvation among the nodes.

Keywords: Ad Hoc Networks, Alert Transmission, Suspend Transmission,


Priority, Retry Count

1 INTRODUCTION A and C are hidden from each other. Now consider


another case where B is transmitting to A. Since C is
Contention for channel among the nodes is within B’s range it receives the transmission too and
resolved using Contention based protocols. In a can eventually defer its own transmission which is
heterogeneous network like ad-hoc several problems unnecessary as C’s transmission is in no way going
like hidden terminal and exposed terminal problem to affect A receiving the packets from B. This is
can arise. The popular Carrier Sense Multiple Access known as the exposed terminal problem i.e. C is
MAC scheme and its variations such as CSMA [1] exposed to B.
with Collision Detection (CSMA/CD) developed for
wired networks, cannot be used for wireless
networks. Priority scheduling is a means to avoid
channel contention among the various nodes in the
network. The scheme here proposes a new protocol
for effective priority scheduling. Two new packets
have been designed namely Alert Transmission and
Suspend Transmission packets which form the crux
of the new scheme. A retry count is implemented to
avoid priority starvation. Figure 1: Hidden Terminal Problem

The rest of this paper is organized as follows. Different flows in multi-hop networks have different
Section 2 presents the related work. The proposed degree of contention. Here, the contention degree for
Priority Scheduling scheme with a Suspend a flow is defined as the number of flows with which
Transmission mechanism is explained in Section 3. it is competing for the channel. Two types of MAC
Simulation results are given in section 4. schemes are prominently used. Reservation and
contention based schemes. Reservation based
2 RELATED WORK schemes usually make some assumptions about high
priority traffic. Flow scheduling is done locally
2.1 Classic CSMA problems while contention resolving probabilistically. Black-
In fig 1 Node B is within the range of A and C burst dealt in [8] is a typical example where a high
but nodes A and C are not visible to each other Let priority node transmits this black-burst signal as a
us consider the case where A is transmitting to B. notification for its transmission. Reference [9]
Node C, unaware of the transmission at B can generalizes this for wireless ad-hoc network. That is
UbiCC Journal
transmit data -toVolume 3
B thus causing collision at B. This is each station can sense the transmission of the other42
referred to as the hidden-terminal problem, as nodes nodes in the network. Reference [6] explains a
dynamic priority scheduling with a CAN MAC low priority packets that hear either BT1 or BT2 will
protocol. defer their transmissions for some duration. In this
way, channel access priority of a high priority node
2.2 IEEE MAC 802.11 DCF can be ensured. Certainly, if there is no high priority
The 802.11 DCF function [5] is subjected to packet backlogged at a high priority node, a low
several research modifications, which is giving a priority node will not receive any busy tone.
back-off counter to each node such a way that every
node can choose a random number between 0 to 3 PROPOSED SCHEME
maximum contention window size. After sensing the
channel to be idle for an inter-frame space the nodes In this scheme priority scheduling in wireless
start counting their back-off counters to zero, and if ad-hoc networks, using alert transmission
the channel is found to be busy they freeze the back- mechanism is implemented. This way contention for
off counters. The value of Contention Window is channel access between nodes is resolved. This is
constrained to be between CWmin and CWmax. A also seen to eliminate the hidden terminal and
source station sends an RTS for which it receives exposed terminal problems occurring frequently in
back CTS following which it transmits data and gets ad-hoc networks. Individual nodes are assigned
an ACK packet back. In the event of CTS or ACK priority ‘Low and High’ based on the back off
not received the source is led to believe that collision counter value. It is computed using the formula
has occurred, so it is imperative that there is shown in Eq. (1)
adequate waiting time for the source before it arrives
at some decision. There are two waiting stages in Back Off = (1%cw)*priority*slot time …..(1)

where cw is the size of the contention window for


each node. And, priority is a user defined integer
value. For each node slot-time is 20µs, and CWmin <
CW < CWmax, where CWmin is the minimum CW,
and it is usually set to 32 and CWmax is the
maximum CW and often set to 1024.

Figure 2: Distributed Coordination Function (DCF)

ad hoc network, the inter frame space (IFS) stage


and the back off stage. The back off counter is a
random value between zero and the Contention
Window. For example high priority source stations
randomly choose the back off interval from [0, 2i+1
-1] and low priority source stations choose from
[2i+1, 2i+2 -1], where i is the number of consecutive
times a station attempts to send a packet. Two
different values of CWmin and CWmax are set for
different priority classes. It proposes an exponential
increase by a factor of 2 in the event of collision.

2.3 Existing Scheme


In order to effectively perform a priority
scheduling among these nodes in the network, a
priority scheduling scheme was proposed. Whenever
a high priority packet is backlogged at some high
priority node 0, it will send a primary busy tone
signal every M slots before it acquires the channel,
where M is a parameter of the proposed scheme.
When another node1 of lower priority hears this
primary busy tone signal (BT1), it will send a
secondary
UbiCC busy
Journal tone signal
- Volume 3 (BT2). All nodes with 43
Figure 3: Transmission of AT1 and AT2 packets Figure 5: Suspend Transmission Packet during
and Data between the sender, receiver and neighbors. Priority Reversal
After DIFS idle time, the station senses the Therefore in order to eliminate such a scenario,
medium to determine whether or not it is idle. If it is whenever a high priority node receives a Alert
idle, then the station decrements its back off value by transmission packet either directly or via indirect
a slot time, otherwise the back off value stays the means it can compare the initial back off value in the
same. When the back off value of a station reaches 0, Alert transmission packet to check if the source node
the station sends an alert transmission packet AT1 to is of higher priority or lower than its own. The high
its immediate neighbors, which again sends priority node will immediately send a SUSPEND
secondary AT2 packet to its neighbors and so on TRANSMISSION (ST) packet for suspending the
such that the hidden terminal problem is effectively transmission this will be directed at the source node.
overcome. The transmission of AT1 and AT2
packets is shown in Fig 3. All the nodes in the However not all high priority nodes can transmit
network are thus conveyed of the node’s intention to the ST packet. This transmission of ST is decided
transmit data. A typical Alert transmission packet based on the following criteria: original priority of
shown in Fig 4 will contain the following the node, priority threshold determined through
information: Sender Address, Initial Back Off average packet transmission time. Only if a high
counter of the original sender node, Receiver priority node satisfies these conditions it can transmit
Addresses, and The time of transmission. the ST packet. The ST packet contains the following
fields: Sender Address, Receiver Address, and Initial
The frame format of the Alert Transmission Packet Back off counter, Time sent.
(AT) is as follows:
The frame format of the Suspend Transmission
Packet (ST) is as follows:

Figure 4: Frame Format of Alert Transmission


Packet (AT1 or AT2)
Figure 6: Frame Format of Suspend Transmission
Duration represents the time of sending and TA Packet
is the sender address while RA is the receiver
address. Other lower priority nodes sensing the Duration represents the time of sending and TA
transmission immediately freeze their back off is the sender address while RA is the receiver
counters and defer their transmission to a later period. address. The right to send an ST packet for nodes
will not remain constant it can be subjected to
3.1 Priority Reversal changes based on network characteristics.
A priority reversal occurs when a low priority
node has its back off at zero when nodes at a higher An example scenario is depicted in Fig 7.
priority are in contention. This can lead to a situation Nodes 1, 4 are high priority nodes and nodes 3, 5 are
where the lower priority node grabbing the channel of low priority. At t1, the initial back off values of
before the Higher priority nodes. nodes 1, 3, 5 are 10, 17 and 18.

DIFS+
AT1 SIFS DATA
WAIT
Node 1
t1 (bc=10) t2(bc=0) DIFS+
SIFS
ST AT1 WAIT DATA
Node 4
t3 t4 t5(bc=9)t6(bc=2) t7 t9(bc=0)
AT1 DIFS +
Node 3 SIFS WAIT

t1 (bc=17) t2(bc=7) t5(bc=7) t6(bc=0) t8(bc=3)

Node 5
t1 (bc=18) t2(bc=8) t5(bc=8) t6(bc=1)

Figure 7: Scenario explaining the Priority Reversal


UbiCC Journal - Volume 3 44
issue with 5 nodes. excessive starvation of a low priority node. This can
At t1, nodes 1, 3, 5 compete for the channel be fixed based on the number of nodes in the
access while 4 stays away from contention. Once the network and network characteristics. The number of
DIFS time expires, the back off time of node 1 times the back off counter is frozen is the retry count.
counts to zero and then, it sends an alert transmission The backpri value of the low priority node comes in
packet AT1 to all its neighbors. The nodes which handy whenever its RC value reaches a threshold.
receive AT1 send AT2 packet to its neighbors. After Once a node’s retry count reaches this threshold the
the SIFS period expires, nodes freeze their back off following occurs. The initial back off counter value
counters. Nodes 3, 5 have their back off counters is replaced now with backpri value and a slot time is
frozen at 7, 8 respectively and their retry counts are added to it. But before overwriting the initial back
increased by 1. off value it is imperative that a copy of it is stored as
backup in initial backup variable defined. Now the
Node 1 after sending AT1 waits for a backpri value is used to overwrite the new back off
DIFS+SIFS period and then takes control of the value which denotes the current or active back off
channel for data transmission. At t4, nodes 4 (BC value of the low priority node. That is once RC
=9), node 3, 5 contend for the channel access with 3 threshold is reached do the following
beating 4 leading to a priority reversal. To overcome
this, once the AT1 packet of 3 reaches node 4, it Initial backup=Initial back off (3)
realizes that it has high priority than node 3. Hence,
it disregards the AT1 packet and transmits a Initial back off=backpri+ slot time (4)
SUSPEND TRANSMISSION packet ST to node 3
for suspending the transmission. The ST packet New back off= backpri (5)
contains the current back off value, curr of the
sender node i.e., node 4 in our case. Once node 3 The backpri value denotes the lowest current
receives the ST packet from node 4, it resets it back back off value of the high priority nodes that have
off value according to the formula. beaten the current node to access the channel. This
means the low priority node is promoted to a high
New Back off = curr + slot time (2) priority status temporarily, this is only fair because it
has starved so long a period defined by RC threshold
Where, curr is the current back off value of the to transmit the current packets, and it is necessary
node sending ST. After sending ST, node 4 waits for that some means are done to promote its priority
an SIFS period and then starts counting its back off status, to minimize the further backlogging of these
timer to zero. Once a node receives ST it is packets. The low priority node will now enter
necessary to do the following apart from resetting its contention as a high priority node since it has its
back off value. Firstly, there is a variable backpri initial back off value reset. Now the initial back off
initialized with the value of initial back off counter value will remain as backpri + slot-time only till the
of the node. From the ST packet received, the current node transmits the current packets backlogged. The
back off value of the high priority sender is obtained. RC value is reset to zero as shown in Eq. (6) and
This value is compared with the existing value in initial back off value is set to the initial backup in Eq.
backpri and the smaller value is stored in backpri. (7) after current packets are transmitted.
Simultaneously, the back off counter is frozen.
RC=0 (6)
If current back off time of sender < backpri, then
Overwrite backpri as follows Initial back off= initial backup (7)
Backpri=current back off time of sender
Else This means after the nodes are transmitted the node’s
Do Nothing priority is reverted back to its original status, which
is only agreeable as it cannot be promoted all the
Similarly, when this low priority node gets into time. This scheme would thus be helpful in avoiding
contention in the next idle phase and if it loses starvation of low priority nodes for the channel
contention again by receiving an ST from a high access.
priority node, it will compare the backpri value with
the current back off value of the sender and store the 4. SIMULATION
smaller value into backpri. Thus, the priority reversal
issue is dealt with using Suspend Transmission The proposed scheme is implemented with the
packets. help of ns2 and the results of the implementation
analysis are illustrated in the following graphical
3.2 Starvation Avoidance representations. The Random Way Point model [10]
A Retry Count (RC) is used to prevent the is used in ns2 simulation. Figure 8 indicates the
UbiCC Journal - Volume 3 45
comparisons in aggregate throughput between the observed that with the increase in the number of
proposed Alert Transmission schemes to the existing nodes in the network, the throughput increases.
IEEE MAC 802.11 scheme. The number of nodes is
used as the measuring criteria. The simulation is 5. CONCLUSION
carried out with 20, 40, 60, 80, 100 nodes. The
results show that the proposed scheme produces A new priority scheduling scheme (Alert
better average throughput when the number of nodes Transmission Scheme) is proposed for ad hoc
increases. networks. With the use of AT1, AT2 the Alert
Transmission Scheme ensures the channel access of
high priority data packets. Priority reversal is also
IEEE MAC 802.11
AT-ST SCHEME avoided by the use of Suspend Transmission ST
3000
packets. To avoid the starvation of lower priority
2500
packets and to ensure a fair scheduling, retry count is
Aggregate Throughput

used.
2000

1500 5 NODES
10 NODES
15 NODES
1000
120

500 100

THRO UG HP UT
0 80
0 20 40 60 80 100
60
Number of nodes
40

Figure 8: Comparisons in aggregate throughput 20


between proposed Alert Transmission scheme and 0
IEEE MAC 802.11 scheme. 0 0.2 0.4 0.6 0.8 1 1.2
ARRIVAL RATE
Figure 9 shows the comparison results in the
delivery ratio of high priority packets between the Figure 10: Throughput as a function of delay in the
proposed scheme and the IEEE MAC 802.11 scheme. arrival of packets with different number of
The results show that the high priority packets are nodes in network
delivered at a much better rate in the proposed
scheme. The average throughput is compared with the
number of nodes in the network. The delivery ratio
IEEE MAC 802.11 of high priority packets is also observed to be better
AT-ST SCHEME in the proposed scheme, further the throughput is
Delivery Ratio of High Priority Packets

1.2 illustrated as a function of delay in arrival rate of


1
packets for varying number of nodes in the networks.
The simulation results ascertain that the overall
0.8 average throughput, delivery of packets in the
0.6
network implementing the proposed scheme is better
than the IEEE MAC 802.11 scheme.
0.4

0.2
REFERENCES
0
0 20 40 60 80 100
[1] Andrew Muir, J.J. Garcia Luna Aceves, “An
Number of Nodes
Efficient Packet Sensing MAC protocol for Wireless
Networks”, 1998
[2] Chunhung Richard Lin and Mario Gerla, “Real-
Figure 9: Comparison of delivery Ratio of High time support in multihop wireless networks. Wireless
Priority Packets between the proposed Alert Networks”, 1999
Transmission scheme and the IEEE MAC 802.11 [3] Wei Liu, Yuguang Fang, “Courtesy
Piggybacking, “Supporting Differentiated Services
Figure 10 shows the throughput as a function of in Multi-Hop Mobile Ad Hoc Networks”, April 2004
delay in the arrival rate of packets, the number of [4] Xue Yang, Nitin H. Vaidya, “Priority Scheduling
nodes used here are 20, 40 and 60, 80, 100 and it is in Ad Hoc Networks“, July 2006 (ACM)
UbiCC Journal - Volume 3 46
[5] Sunil Kumar, Vineet Raghavan, Jing Deng, [9] J.L.Sobrinho and A.S.Krishnakumar. Quality-of-
“Medium Access control Protocols for ad hoc Service in Ad Hoc Carrier Sense Multiple Access
wireless networks” A survey”, June 2004 Wireless Networks. IEEE Journal on Selected Areas
[6] Oleko Odongo, “Dynamic Priority Scheduling in Communications, 17(8), August 1999.
with Can MAC protocol”, December 2006 [10] Tracy Camp, Jeff Boleng and Vanessa Davies.”
[7] Yu Wang, Brahim Bensaou, “Priority Based A Survey of Mobility Models Ad Hoc Network
Multiple Access for Service Differentiation in Research”, 10 September 2002
MANETS”, July 2005
[8] J.L.Sobrinho and A.S.Krishnakumar, “Real-time
traffic over the IEEE 802.11 medium access control
layer, Bell Labs Technical Journal, pages 172187,
Autumn 1996.

UbiCC Journal - Volume 3 47


A* PRUNE MODIFIED ALGORITHM IN VIDEO COMPRESSION

S Verma
IIIT, India
sverma@iiita.ac.in

Amit Kant Pandit †


SMVDU , India
amit.pandit@smvdu.ac.in†
† Corresponding author

ABSTRACT
Block matching technique is the most significant tool in motion estimation and
compensation in video compression. Block matching is either fixed size block
matching (FSBM) techniques or variable size block matching (VSBM). Rate
distortion optimization problem is related with it. The R-D optimization, NP hard
problem, is solved using Lagrange’s parameter to find a constrained path, where a
given PSNR (distortion) and bit rate is achieved. In this paper, we modify and
study the A*Prune algorithm used in QoS routing in network ,to solve the R-D
optimization problem of video compression .we cast the R-D optimization problem
as KMCSP (K multiple constrained shortest path problem). The modification
presented in this paper is applied to DVF and DFD both and are constrained
simultaneously to find any optional number of constrained shortest paths.
.
Keywords: A* PRUNE,VIDEO COMPRESSION,QUAD TREE

1 INTRODUCTION (MCSP); universal solution is not possible to arrive


at. Solving the R-D using the graph search is shown
Block matching is widely used method for stereo to be NP- hard [2].Lagrangian bit allocation
vision, visual tracking and video compression. At technique is most popular and widely accepted, for
present, most of the techniques used for block efficient bit allocation at some distortion level. Its
matching in video compression are either fixed size popularity is due to its effectiveness and simplicity.
block matching (FSBM) or variable size block It provides an optimized constrained path .The
matching (VSBM) techniques. In FSBM blocks of decision is based on minimizing the sum of
only one size are used. When a larger block size is distortion of block and λ times bits needed to code it,
used, the number of motion vectors to be encoded or where λ is the Lagrangian parameter.
the motion vector field (MVF or DVF) is low. So Lagrangian methods have many limitation and
less number of bits is required for transmission in a problems. Firstly, we do not have any control on
channel. However, it results in a higher prediction individual contribution of DVF and DFD. Secondly,
error or displaced frame difference (DFD) which due to presence of temporal and spatial dependencies
affects the quality of reconstructed frame. On the of the rate -distortion costs, the complexities
other hand, when a smaller block size is used, the increases, when applied to block based hybrid video
DFD is quite low, but more motion vectors need to codec such as H.264/AVC or MPEG-1/2/3/4. Thirdly,
be encoded resulting in higher transmission rates. it cannot adjust speedily, according to variation of
There is Rate distortion (R-D) optimization problem different constrains and bit rate requirement.
associated with video compression Considering, the bandwidth available for
The optimal solution to the fundamental problem transmission or bit rate required as dynamic
of splitting coding bits between DVD and DVF is parameter, since its value may change at any time.
closely related to the size of the block which in turn Whenever the dynamic parameter is changed, it is
is dependent on the scene content of video. Variable expected to call MCSP (multiple constraints shortest
size block matching (VSBM) provides a better path) procedure each time to find best feasible
solution of above optimization problem as compared solution. It is time consuming process. To adjust
to fixed size block matching (FSBM). The speedily according to the dynamic parameter, we
constrained R-D problem is solved using shortest require K-MCSP (K-multiple constraints shortest
path algorithms like graph search or viterbi algorithm path) method. This is speeder since we are selecting
[1]. It is a multiple constraint shortest path problem a feasible path from multiple precomputed paths. We

UbiCC Journal - Volume 3 48


require a MCSP method which can control remaining distance to the destination. The Dijkstra’s
contribution of different constraints individually and shortest path algorithm is used to calculate the
provide with K paths to choose, according to the admissible cost.
variation of dynamic parameter
Though, the A*prune algorithm successfully
2. PROBLEM DEFINATION calculates K constrained shortest paths and gives
optimal solutions, it is not viable to use it in its
The RD optimization problem using Lagrangian present form in our application for video
technique is NP-hard, and optimal solution is not compression. The problem is due to its
guaranteed. We convert it to KMCSP (K- multiple computational complexity. Though it uses
constrained shortest paths) problem or NP complete. inadmissible head path pruning and admissible
We search k-shortest paths instead of a single distances, the complexity still increases significantly
shortest path and use the best one of the pre with the number of nodes. Since our application in
calculated k-shortest paths to predict optimal DVF-DFD optimization involves large no of nodes
solution as per the need or value of dynamic (~ 4096), the algorithm takes very huge time in its
parameter. original formulation. The time also increases if the
Consider a network that is represented by a graph costs of the admissible distances (predicted) are very
G=(V, E), where V is the set of nodes and E is the set low compared to actual costs.
of links. Each link (i,j) E is associated with R To make A*prune algorithm feasible for use in video
compression. We propose the following adaptation to
nonnegative and additive constraints values: Wr (i,j) ,
the original algorithm:
where r = 1,2,3,…R.
Given a source node, ‘s’ and a target node ‘t’ and R
1. Since A* prune algorithm stores list of all
constraints Cr(s,t), where r =1,2,3,…. R. The
possible admissible head paths. We limit the
problem is to find K shortest path from source node s
number of head paths to be stored to a pre
to target node t such that
assigned maximum value. Whenever, a new
head path is created, if the limit was already
reached, then the new head path displaces an
existing head path with the maximum cost and
takes its place. In this way we limit the size of
Path list.
(2) 2. The existing algorithm uses a linear function to
calculate the projected cost. However the rate-
Here, K multiple shortest paths are found, which distortion curve between the DVF and the DFD
satisfies the equation 2. is a decreasing function .It is proposed to use
non- linear weight function .Non -linear weight
3. PROPOSED SOLUTION function converges on the solution quickly
compared to linear weight function. This
reduces the complexities of the algorithm and
We use an existing k-shortest path algorithm the added advantage is that it tries to find a
called A* prune algorithm [3], used in QOS routing, solution towards the center of RD curve. This
as a base algorithm to find the k-shortest paths subject helps in equally distributed (almost in the ratio
to multiple constraints. We adopt it here for solving of constraints) bit allocation between DVF and
DVF-DFD optimization problem and both are DFD. We use the non-linear weight function
constrained simultaneously. given in [2].
The equation (3) describes the non linear weight
A* prune algorithm gives k - multiple constrained function:
shortest paths between a pair of nodes in a digraph in
which each is associated with a several Quality of
service metrics. It constructs paths starting at the (3)
source and going towards the destination. But at each
iteration the algorithm gets rid of all paths that are Where C(P) gives the path cost for DVF, D(P) gives
guaranteed to violate the constraints, thereby keeping the path cost for DFD and ∆c and ∆d gives the
only those partial paths that have the potential to be maximum constraints for DVF and DFD respectively
turned into feasible paths, from which the optimal
paths are drawn. The choice of which path to be 4. IMPLEMENTATION AND SIMULATION
extended first and which path can be pruned depend DETAIL
upon a projected path cost function, which is
obtained by adding the cost already incurred to get to The proposed approach was simulated on
an intermediate node to an admissible cost to go the

UbiCC Journal - Volume 3 49


MATLAB7.0 platform. In the first step we calculate paths that can be stored at a time. Table-2 list the
the of Displacement vector field (DVF) and various optimized path with different parameters
displaced frame difference (DFD) for each of the
block sizes 16 x 16, 8 x 8 and 4 x4. The motion Here no. of nodes is nodes used in resulting quad tree.
estimation is done using exhaustive search approach. It is clear from above that path 2 is best with respect
The resulting motion vectors were coded using to PSNR and constrained bit rate. Out of five optimal
differential pulse code modulation (DPCM) paths found with the given constraints.
technique. The quantized DFD values are coded
using Huffman entropy coding. We calculated the Now the frame-3 is predicted from the reconstructed
PSNR values for each of the block sizes. frame 2 .The frame-3 has following parameter with
We used an adjacency matrix representation to respect to different block sizes. (Table :3)
construct the resulting graph structure, DVF and
DFD values as the two link metrics for each link. Table 2: MVF-DFD values for K paths for frame2
The DVF and DFD values for each of the block sizes
are populated in the graph in the order of Hilbert K 1 2 3 4 5
scan. This ensures that the quad-tree structure is
maintained in the graph, i.e. when a macro block is No.nodes 923 926 923 940 925
divided into four smaller sized blocks, the metrics of MVF 2372 2370 2378 2380 2374
the smaller sized blocks are just below that of the DFD 3406 3408 3414 3414 3424
larger macro block. Hilbert scan order also ensures total 5778 5778 5792 5794 5798
that the blocks are scanned in such ways that for
each block, both its predecessor and successor share PSNR 39.56 39.57 39.55 39.56 39.56
an edge with a block.
Once the graph structure is constructed we run the
proposed k-multiple constrained shortest path Table 3: MVF-DFD values for frame 3
algorithm over the graph. We compute the number of
bits required for DFD and DVF for each of the k- Block 16 8 4
shortest paths. We also compute the corresponding size
PSNR values. We select the best of the shortest paths MVF 521 5090 20022
and use it to reconstruct our frame. DFD 8658 6452 3118
We used mother and daughter frames for simulation. total 9179 11542 23140
Each frame is clipped to be of size 256 x 256. We PSNR 32 32.06 31.99
initially predict the second frame from the first frame.
Thereafter, each of the subsequent frames will be
predicted from the previously reconstructed frame.
Table: 1 shows the values of different parameters for Now we calculate the parameters with our algorithm
different block size of frame-2. Frame 1 is the with following constraints
reference frame.
Maximum list size = 10;
K = 5;
Table 1: DVF-DFD values for frame 2
MVF constraint = 1000
DFD constraint = 8000; Count = 3232
block size 16 8 4
MVF 512 3944 16380 The resulting paths are as shown in Table :4
DFD 5082 3749 2050
total 5594 7693 18430 Table 4: MVF-DFD values for K paths for frame3
PSNR 38.467 38.539 38.71
K 1 2 3 4 5
   nonodes 392 392 392 390 392
Now we apply our modified algorithm with MVF 948 950 950 948 951
following constraints: DFD 7960 7964 7972 7970 7976
total 8908 8914 8922 8918 8927
Maximum list size: 10; PSNR 32.55 32.52 32.59 32.6 32.53
K= 5;
MVF constraint : 3000;
Other frames are predicted in the same way. The
DFD constraint : 4000;
figure-1 shows the rate obtained for different frames
at different block levels. Figure -2 shows the five
Here K refers to the number of shortest paths, and
maximum list size is the maximum number of head

UbiCC Journal - Volume 3 50


different shortest path quad tree structures obtained.
Figure-3shows the stages of reconstruction of frame
2 after adding blocks of different sizes and there
DFD, obtained by selecting the best path from
different path calculated.

     Figure2: Quad tree structure for five calculated    Figure 1: comparison of total bits for encoding
shortest path for frame 2
5. CONCLUSION:

Variable size block matching technique was


developed based on constrained shortest path
algorithm, which gives lower overall bit rates, at the
same time satisfying and taking into account both the
DVF and the DFD constraints simultaneously. The
total allocation of bits was comparable to that of
block size 16, which was significantly lower than the
rates for other two blocks. Since, to reduce
complexities the algorithm is designed sub optimally,
and does not guarantee to give best possible solution.
Still, depending on the requirement of dynamic
parameter, one of the different constrained paths
obtained can be selected.

6. REFERENCE

[1] G.M. Schuster and A.K. Katsaggelos, An optimal


quad-tree based motion estimation and motion
compensated interpolation scheme for video
compression, IEEE Transactions on Image
Processing, Vol. 7, No. 11, November 1998
[2] Hans De Neve and Piet Van Mieghem, “A multiple
quality of service routing algorithm for PNNI”,
Proceedings 1998 IEEE ATM Workshop, May 26-29,
  Fairfax, VA, USA, pp.324-328, 1998.
[3] Gang Liu, K. G. Ramakrishnan, “A*Prune: An
Figure 3: Stages of reconstruction for frame 2 Algorithm for Finding K Shortest Paths Subject to
Multiple Constraints”, 0-7803-7016-3, IEEE
INFOCOM, 2001

UbiCC Journal - Volume 3 51


WIRELESS BODY AREA NETWORK FOR HIP
REHABILITATION SYSTEM

Mikael Soini, Jussi Nummela, Petri Oksa, Leena Ukkonen and Lauri Sydänheimo
Tampere University of Technology, Department of Electronics, Rauma Research Unit
mikael.soini@tut.fi

ABSTRACT
In Wearable Well-Being project PUHVI, HipGuard system for patients recovering
from hip surgery was developed. Novel wireless sensors having 3-axis acceleration
and 3-axis magnetic sensors are used to measure patient’s hip and leg position and
rotation. Furthermore, capacitive insole sensors are used to measure the force
between foot and a shoe. This paper concentrates on how these sensors can be
interconnected to a central unit that collects and analyzes the measured information.
Body Area Network (BAN) utilized in wearable healtcare application have several
application-specific challenges such as low-power operation, low latency data
transfer, high system reliability and autonomous network operation. This paper
thoroughly analyzes how ANT wireless sensor networking technology operates as
BAN – the focus is mainly on energy efficiency, communication latency, network
size and reliability issues. Because the main focus of this paper is particularly in
the operability of ANT networking, these results can be directly utilized in many
other wireless sensor networking applications.

Keywords: body area networks, healthcare applications, wireless sensor networks.

1 INTRODUCTION

Wireless sensor networks and sensors have


several application areas such as forest fire detection,
health monitoring, industrial sensing, and home
control. Sensor networks are based on physically
small sensors exchanging mainly measured
information. Sensors usually have very limited
power, processing, and memory resources and so
interactions between nodes are limited to short
distances and low data rates. Advances in electronics
have made these wireless sensor networks viable.
For example, sensors have become smaller and more
precise, and energy efficiency of radio circuits and
microcontrollers has been improved considerably.
Sensor networks that are composed of wearable
or implanted sensors are also known as Body Area
Networks (BAN) or Wireless Body Area Networks
(WBAN) depending on how sensors are connected
with each other. Some BAN application scenarios,
related to medical healthcare, personal fitness
Figure 1: HipGuard pants for hip patient
monitoring and personal audio systems, are
rehabilitation [3].
presented in [1].
This study is part of the Wearable Well-Being This system monitors patient’s leg and hip
project where HipGuard system was developed for position and rotation with embedded wireless sensors
patients who are recovering from hip surgery. The having 3-axis accelerometers and 3-axis magnetic
idea behind the system is that on the one hand it is sensors. The system also measures the force between
vital to keep hip and leg movements on certain range. foot and a shoe with a capacitive insole sensor [2].
On the other hand, it is utmost important to The Central Unit attached to waist collects measured
strengthen the muscles sufficiently to enhance information from sensors and calculates leg and hip
rehabilitation. HipGuard system is depicted in Fig. 1.

UbiCC Journal - Volume 3 52


position and rotation, and the force directed on foot. with wires, therefore only the Central Unit needs
Alarm signals can be sent to patient’s Wrist Unit if recharging. There are challenges related to durability
hip or leg positions or rotations are false. The Central of wires and connectors embedded to clothing under
Unit can be attached wirelessly to a mobile phone severe stress, for example in machine wash. Wired
with Bluetooth. Furthermore, the mobile phone can systems have poor transferability. Replacement of
be used to transfer log, alarm and history information broken sensors and wires can also be challenging.
over Internet to enable remote patient monitoring and In this work, wireless approach is chosen
diagnostic services. Therefore, HipGuard system can because of system transferability and flexibility. The
provide useful real-time information for patient rest of the paper focuses on wireless networking.
rehabilitation process. The system architecture and
operation is presented thoroughly in [3]. This paper 3 ANT WIRELESS SENSOR NETWORKING
especially concentrates on WBAN issues. TECHNOLOGY
There have been several studies that have
concentrated on WBANs. MobiHealth [4] In this study ANT wireless sensor networking
implemented a Bluetooth based sensor network for technology is utilized. ANT is an ultra-low power
health monitoring and [5, 6] have used UWB (Ultra- short range low data rate technology that uses GFSK
Wideband) to build ultra-low-power and low (Gaussian Frequency Shift Keying) modulation and
complexity sensors. Lately, IEEE 802.15.4 based TDMA (Time Division Multiple Access) based
approaches have been the most popular research field communication. Fixed packet sizes (overhead and
in this area [7, 8, 9]. Instead of wireless approach, data) and predefined slots are used for
flexible electrically conductive fabrics could be used communication reducing the amount of collisions. At
to implement BAN. Reference [10] presents a the same time, Zigbee sensor networking technology
wearable monitoring system based on DC power line uses different packet sizes. ANT suits especially for
communication [11]. Because sensors would not repetitive measurements where low latency is
require local batteries, the solution would be required. Table 1 highlights ANT features. [13]
lightweight and small. Furthermore, Intra Body
Communication (IBC) system [12] could be used for Table 1: ANT technology in a nutshell.
sensor networking to obtain low signal attenuation in
low frequencies (<1 GHz). ANT sensor networking technology features
In this work, wireless ANT technology is used to 1 Operating frequency 2,4-2,524GHz: 125 1MHz channels
interconnect HipGuard system sensors. The focus is 2 Communication range up to 10 meters
especially on ANT’s energy efficiency, low 3 Operating principle TDMA
communication latency, network size and reliability. 4 Modulation GFSK
The rest of the paper is organized as follows. Section 5 True data throughput up to 20 kbps
2 discusses how BAN sensors can be connected. 6 Code space 16kB
Section 3 briefly introduces ANT wireless sensor 7 Network topology star, tree or mesh networks
networking technology. Section 4 thoroughly 8 Network devices up to 2^32
discusses how ANT operates in this kind application. 9 Data packet size 17B (8B payload)
Finally, section 5 concludes the paper.
10 Packet types Broadcast, Burst, Acknowledged
11 Transmission power 0,01 - 1mW (-20dBm to 0dBm)
2 INTERCONNECTING BODY AREA
12 Receiver sensitivity -80dBm
NETWORK SENSORS

Sensors can be interconnected to Central Unit As presented in Table 1, ANT protocol has three
either with or without wires. Both of these different message types: Acknowledged, Broadcast
approaches have their pros and cons. Regardless of and Burst. Acknowledged message requires
chosen method, reliable and low latency data transfer acknowledgements which are not usable in real-time
is needed to produce useful and accurate data for hip communication where only fresh new data is
and leg position and rotation calculations. essential. Broadcast is the simplest ANT message (8
Wireless approach enables system transferability bytes payload) which is sent on dedicated slot on
and flexibility. Sensors can be attached, for example, each time frame. Burst is a message that consists of
with straps. Sensors can also be easily replaced if two or more sequential ANT messages (at least 16
needed. There are challenges related to bytes). Fig. 2 presents ANT packet structure.
communication reliability because human body
strongly attenuate RF signal and other radio systems
can cause interference. Also, wireless sensors should
be very low-power and chargeable. Batteries should
endure without a recharge at least a week.
Figure 2: ANT packet structure.
In wired systems data and power is transferred

UbiCC Journal - Volume 3 53


ANT enables to implement various different
sensor network topologies; in this case, a simple star
architecture is used where Central Unit operates as a
network master. The star architecture, presented in
Fig. 3, is chosen because the amount of network
nodes is low and low latency is needed in
communication. If needed, Central Unit can also
operate as a bridge to external databases and users.

Figure 3: Network architecture for HipGuard system.


Figure 4: Sensor Unit current consumption with
A channel must be established before ANT broadcast and burst messages.
nodes can communicate. In the establishment
procedure, the network master (in this case Central
Unit) chooses channel parameters (network number,
RF frequency and channel period) and advertises
them by sending packets with chosen period. A slave
(in this case Sensor Unit) listen channel traffic and
checks for the packets that master is sending.
Connection is established after slave has been
synchronized to master data packets. Master and
slave can be further paired if communication
between the devices is continuous.

4 ANT OPERABILITY

In this section, the operability of ANT network


is studied. Evaluation parameters are sensor energy
consumption, system latencies, network size and
communication reliability. As a comparison, Figure 5: Central Unit current consumption per
IEEE802.15.4 based BAN operability has been slave with broadcast and burst messages.
studied in [14] and [15] as a function of throughput,
latency and network size. Sensor measurement results are 16 bytes in
length. This consists of 10-byte accelerometer data
4.1 Energy consumption and 6-byte magnetic sensor data. Measurement
Energy consumption is an important parameter results can be transmitted either with one 16-byte
in wireless systems and devices because decent burst packet or with two 8-byte broadcast packets. In
battery life times are needed for usability reasons. this section broadcast and burst packets are
Here, Sensor Unit and Central Unit energy compared from energy efficiency perspective. To
efficiency is evaluated. Sensor Unit is a wireless achieve equal payload data rate broadcast packets
sensor having 3-axis accelerometer and 3-axis must be sent at double rate compared to burst
magnetic sensors. Central Unit operates as WBAN packets; in this case, payload data rate required by
master collecting data from Sensor Units. the application is 256 bytes per second that is 16
In these measurements, the transmission power messages per second × 16 bytes (burst) or 32
was set to maximum (1 mW) because it has no messages per second × 8 bytes (broadcast).
significant effect on sensor node total power In Sensor Unit case (see Fig. 4), sending one
consumption and it provides better reliability and burst packet consumes 1.6 % more current compared
less retransmission in this challenging environment. to two broadcast packets, when data rate is 256 bytes
Operating voltage was set to 3 V. Fig. 4 and Fig. 5 per second. The difference is negligible.
present the current consumption of a Sensor Unit and In Central Unit case (see Fig. 5), using two
Central Unit. broadcast packets increase Central Unit’s current
consumption about 18 % compared to one burst
packet, when data rate is 256 bytes per second. This

UbiCC Journal - Volume 3 54


is for case where Central Unit has one slave; having 4.2.2 Data transmission latency
multiple slaves (n) will increase current consumption In addition to start-up latency, there is data
n times. In the simplest case, Central Unit has three transmission latency. This is the time where data is
sensors that are attached to thigh, shin and transmitted from Sensor Unit to Central Unit when
metatarsus. the receiver and the transmitter are in active mode
In CSMA (Carrier Sense Multiple Access) based that is they are synchronized. The durations of
sensor networking, the receiver current consumption different phases related to transmission and reception
is usually dominant because receiver must be active of 8-byte ANT message were measured with an
practically all the time if low latency is needed. oscilloscope. Results are shown in Fig. 6.
However, TDMA based technique, used in ANT,
enables low power receiver operation because
predefined slots are used and reception of one ANT
packet takes less than 1ms.
Measurement data transmission frequency has
the most significant effect on current consumption.
Lower data transmission frequency would enable
longer battery lifetimes but it would degrade the
application operability because of longer latencies.
The longer latency would decrease the accuracy of
position, rotation and force calculations. In this work Figure 6: ANT packet transmission and reception.
it was estimated that, at least, data rate of 256 bytes
per second is needed for this application. The data transmission phases and their durations
are presented in Table 3. It can be seen that the
4.2 Communication latencies transmission of one message lasts for 19 ms.
Real-time operation is vital in this type of
application where user adjusts his or her behaviour Table 3: Data transmission latency in ANT.
according to measurements. Next, ANT based
system start-up and data transmission latencies are Different phases in data transmission Duration
studied. 1 Packet formation in μC, transmission to radio circuit 6 ms
2 Packet handling at the transmitter 4 ms

4.2.1 Start-up latency 3 Packet transmission over the air 1 ms


4 Packet handling at the receiver, transmission to μC 8 ms
Start-up latency is the time from sensor wake-up
Total time 19ms
to completed synchronized connection. If sensors are
active, they will normally stay synchronized and this
start-up phase can be omitted. Start-up phase is 4.3 Network size
needed when sensor is started up due to initial setup, The used NRF24AP1 radio circuit can handle
reconfiguration, battery reload or if sensor is about 200 eight byte ANT packets per second. In this
resynchronized to network. work the measurement data was 16 bytes in length
Table 2 presents the measurement results where and therefore one burst or two broadcast packets are
synchronization latency is studied in a function of required for transmitting one measured value from
message rate. Transmitter is the master node sending Sensor Unit to Central Unit. Thus Central Unit can
synchronization messages and receiver is the sensor handle maximum of 100 measurements per second.
node in synchronization mode. Results show that As mentioned above, the measurement data
there is a compromise between start-up latency and transmission frequency needs to be at least 16 Hz.
energy consumption. Therefore, the maximum number of Sensor Units in
this ANT based WBAN is 6. Lower data
Table 2: Sensor start-up latency in ANT. transmission frequency would enable more network
nodes but it could degrade the application operability.
Transmitter (master) Receiver (slave)
Message rate Synchronization time 4.4 Data transfer reliability
1 8 messages/s 1490 ms (avg)
Data transfer reliability is important parameter in
2 16 messages/s 630 ms (avg)
ANT operation. Only fresh new data is essential in
3 32 messages/s 270 ms (avg)
this type of system, thus retransmissions are not used.
4 64 messages/s 80 ms (avg)
Measurement results considering ANT data delivery
reliability in unobstructed path are presented in Fig.
7. Transmission power was set to 0.01 mW. These
results are used as reference for cases where
Bluetooth and human body interference in ANT is
studied.

UbiCC Journal - Volume 3 55


Table 4: Bluetooth interference in ANT.

1000 packets are transmitted between ANT devices


Test Description Received
1 Bluetooth (BT) OFF at position A 99,80 %
2 Bluetooth (BT) ON at position A 99,80 %
3 BT ON at position B, BT data transfer is ON 97,30 %
4 BT ON at position A, BT data transfer is ON 87,40 %

It can be seen that when Bluetooth device is


transmitting inside the ANT network some packet
loss is experienced. Because Bluetooth uses
frequency hopping technique these losses are
tolerable. Also, Bluetooth data transfer is ON only
for a short period of time and it was seen that active
Figure 7: ANT communication reliability in Bluetooth device without data transfer do not affect
unobstructed path. ANT communication. Furthermore, Bluetooth can
avoid crowded frequencies by using AFH (Adaptive
From the reference measurements, it can be seen Frequency-hopping spread spectrum) defined in
that reliable ANT communication range is over 5 Bluetooth specification v1.2. If IEEE802.11x would
meters even with the lowest possible transmission be used, ANT should be configured to operate on
power (0.01 mW) in unobstructed open air different channel than IEEE802.11x to enable
propagation environment. However, Bluetooth and communication [16].
human body are potential sources of interference in
ANT network operation which are taken into 4.4.2 Human body interference
consideration. Human body causes large signal attenuation
which has a remarkable effect on wireless
4.4.1 Bluetooth interference communication reliability [17]. This causes
Bluetooth interference in ANT network challenges for sensor node positioning.
operation is important to study because data transfer Electromagnetic channel model for human body
from Central Unit to a mobile phone was could be used to help sensor positioning [18]. In this
implemented with Bluetooth. study, human body interference was evaluated by
ANT and Bluetooth are operating at the same 2.4 strapping transmitting Sensor Units to seven
GHz ISM (Industrial, Scientific and Medical) band. different positions, presented in Fig. 9. The Central
Bluetooth utilizes FHSS (Frequency Hopping Spread Unit receiving measurement data was attached to test
Spectrum) technique using 79 1 MHz bandwidth person’s waist. The transmission power was set to 1
channels, whereas ANT uses single dedicated 1 MHz mW. Measurements were performed outside to
channel. Fig. 8 shows the measurement setup for prevent radio wave reflections from environment.
evaluation. Bluetooth and ANT transmission power
were set to 1 mW.

Figure 8: Bluetooth interference measurement setup.

The results considering the effect of Bluetooth


on ANT communication reliability are shown in
Table 4.

Figure 9: Human body interference measurement


setup and different sensor positions.

UbiCC Journal - Volume 3 56


In these measurements packets were sent from 6 REFERENCES
Sensor Units to Central Unit. Measurement results,
presented in Table 5, indicate how human body [1] S. Drude: Requirements and Application
interfere ANT communication. Scenarios for Body Area Networks, Proc. 16th
IST Mobile and Wireless Communications
Table 5: Human body interference in ANT. Summit, Budapest, Hungary (2007).
[2] T. Salpavaara, J. Verho and J. Lekkala:
1000 packets are transmitted between ANT devices Capacitive insole sensor for hip surgery
Test Sensor location Received rehabilitation, Proc. 2nd Int. Conf. on Pervasive
1 Outer thigh 80,20 % Computing Technologies for Healthcare,
2 Front thigh 90,60 % Tampere, Finland, pp. 311-314 (2008).
3 Outer shin 45,00 % [3] P. Iso-Ketola, T. Karinsalo, and J. Vanhala:
4 Front shin 97,80 % HipGuard: A wearable measurement system for
5 On top of metatarsus 99,30 %
patients recovering from a hip operation, Proc.
6 Inner metatarsus 97,50 %
2nd Int. Conf. on Pervasive Computing
Technologies for Healthcare, pp. 196-199 (2008).
7 Outer metatarsus 98,90 %
[4] D. Konstantas, A. Van Halteren, R. Bults, K.
Wac, V. Jones, and I. Widya: MobiHealth:
From the result it can be seen that the ANT ambulant patient monitoring over public wireless
network reliability is highly dependent on sensor networks, Proc. Mediterranean Conf. on Medical
position. When comparing test cases 3 and 4 which and Biological Engineering, Naples, Italy (2004).
have equal transmitter receiver separation, it can be [5] B. Gyselinckx, C. Van Hoof, J. Ryckaert, R.F.
seen that line of sight (LOS) improves Yazicioglu, P. Fiorini, and V. Leonov:
communication reliability considerably. Human++: Autonomous Wireless Sensors for
Body Area Networks, Proc. 27th Conf. on
5 CONCLUSIONS Custom Integrated Circuits, San Jose, CA, USA,
pp. 13-19 (2005).
This paper concentrated on the utilization of [6] T. Zasowski, F. Althaus, M. Stäger, A.
wireless ANT sensor network to HipGuard system. Wittneben, and G. Tröster: UWB for
The focus was on networking issues. This paper noninvasive wireless body area networks:
analyzed ANT protocol features and operation Channel measurements and results, Proc. IEEE
through extensive practical measurements. It was Ultra Wideband System Technology Conf.,
shown that low power, low latency, small size and Reston, VA, pp. 285-289 (2003).
reliable ANT based WBAN can be realized. [7] B. P. L. Lo, S. Thiemjarus, R. King, and G. Z.
With 1 mA power consumption, it is possible to Yang: Body sensor network-A wireless sensor
implement sensors operating for several days even platform for pervasive healthcare monitoring,
with small batteries such as Li-ion coin battery (220 Proc. 3rd Int. Conf. on Pervasive Computing,
mAh). Burst packets can be used to enhance energy London, UK (2005).
efficiency of Central unit. Transmission latency is [8] B. Zhen, H. B. Li, and R. Kohno: IEEE Body
very short and network synchronization latency is Area Networks for Medical Applications, Proc.
tolerable. HipGuard system requires data rate of 256 4th Int. Symp. on Wireless Communication
bytes per second for measurement result updates to Systems, pp. 327-331 (2007).
obtain accurate data for determining hip and leg [9] E. Wade and H.H. Asada: Wearable DC
position and rotation, and force directed on foot. This Powerline Communication Network Using
causes limitations to network size. To implement Conductive Fabrics, Proc. IEEE Int. Conf. on
highly reliable ANT based WBAN, several aspects Robotics and Automation, Vol. 4, New Orleans,
should be taken into consideration. LOS path LA, USA, pp. 4085-4090 (2004).
between receiver and transmitter antennas is [10] E. Wade and H.H. Asada: Broadcasting Modem
recommendable. Bluetooth, IEEE802.11x and other Hardware Design Using DC Power-Line
2.4 GHz radio systems cause interference in ANT Communication, IEEE/ASME Transaction on
network operation. Therefore, if possible, ANT Mechatronics, Vol. 11, No. 5, pp. 533-540
should be configured on a different RF channel. (2006).
Transmission power does not affect considerably to [11] J. A. Ruiz, J. Xu, and S. Shimamoto:
power consumption, therefore it should be set to a Propagation Characteristics of Intra-body
maximum to improve communication reliability. Communications for Body Area Networks, Proc.
The focus of this paper was particularly in ANT IEEE Consumer Communications and
networking operability. Therefore, these results can Networking Conference, Las Vegas, USA, pp.
be directly utilized in many other wireless sensor 509-513 (2006).
networking applications.

UbiCC Journal - Volume 3 57


[12] Dynastream Innovations Inc., Cochrane, patient monitoring, IET Communications
Alberta, Canada, ANT Message Protocol and Journal, Vol. 2, No. 2, pp. 215-222 (2008).
Usage (ver 2.12). Available: [16] L. Sydanheimo, M. Keskilammi, and M.
http://www.thisisant.com (2008) . Kivikoski: Performance issues on the wireless
[13] D. Domenicali, and M. G. Di Benedetto: 2.4 GHz ISM band in a multisystem
Performance Analysis for a Body Area Network environment, IEEE Transactions on Consumer
composed of IEEE 802.15.4a devices, Proc. 4th Electronics, Vol. 48, No. 3, pp. 638-643 (2002).
Workshop on Positioning, Navigation and [17] S. L. Cotton, and W. G. Scanlon: A Statistical
Communication, pp. 273-276 (2007). Analysis of Indoor Multipath Fading for a
[14] M. Sukor, S. H. S. Ariffin, N. Fisal, S. K. S Narrowband Wireless Body Area Network, Proc.
Yusof, and A. Abdallah: Performance Study of IEEE 17th Int. Symp. on Personal, Indoor and
Wireless Body Area Network in Medical Mobile Radio Communications (2006).
Environment, Proc. IEEE Asia Int. Conf. on [18] A. Gupta, and T. D. Abhayapala: Body Area
Modelling and Simulation, Kuala Lumpur, Networks: Radio channel modelling and
Malaysia, pp. 202-206 (2008). propagation characteristics, Proc. Australian
[15] E. Monton, J. F. Hernandez, J. M. Blasco, T. Communications Theory Workshop, pp. 58-63
Herve, J. Micallef, I. Grech, A. Brincat, and (2008).
V. Traver: Body area network for wireless

UbiCC Journal - Volume 3 58

You might also like