2009 International Conference on Intelligent Networking and Collaborative Systems
A New Channel In Reo With Fuzzy Method
Reza Tavoli
Science and Research branch,
Islamic Azad University,
Tehran,Iran
[email protected]
Amir Masoud Rahmani
Science and Research branch,
Islamic Azad University,
Tehran,Iran
[email protected]
Abstract— Reo is a Coordination Language which is
Channel Based that is used in order to connect components
and is able to send certain Data through connectors. Most
simple Connectors in Reo are Channels. Reo proffers a pattern
for composition of Components that can be used as a language
for coordinating parallel applications. Reo has been stated
crisp for communication and connecting Components and
cooperation of Data and non-crisp side of sending Data has not
been proffered. Whereas certain applications have non-crisp
side and it is not possible to apply them by Reo, therefore in
this paper non-crisp side of sending Data by making fuzzy Reo
Channel by using fuzzy rules is proposed.
that means Data are received by less confidence at the
receiver side that by using Reo it is impossible to be
applied, therefore there is a need for a mechanism on
account of carrying it out that has been pursued in this
paper. Method of uncrisped Data by Reo with the help of
fuzzy rules is proffered in this paper because fuzzy systems
are systems which modulate matters placed in uncrisped
space systematically.
In next part Reo principles and present channels in Reo
has been explained in details. In the third part we will have a
summarized review on fuzzy logic. In the forth part making
Reo fuzzy by using fuzzy rules has been stated and an
application of it will be stated and at the end consequences
will be proffered.
Keywords-- Reo; Channel Based; Coordination Language; Fuzzy
Rules
I.
II.
INTRODUCTION
INTRODUCTION OF REO
Reo is derived from a Greek word meaning as flow [7].
Reo is a pattern for composition components by using
connectors. Composite and complicate connectors in Reo are
made using simpler connectors [8]. Simplest connectors in
Reo are channels. Channels in Reo are atomic. Each channel
has two channel ends; an end is ‘source’ and other one is
‘sink’. Data are flowed in the channel through source end
and they are exited from the channel through sink end. A
channel can have two ends of source or/and two ends of sink.
Reo doesn’t have any limitation upon the behavior of
channels. Reo doesn’t have any predefined channels for
itself, thus any application is able to define channel, if the
behavior of channel is well-defined. There are standard
channels in Reo explained further.
Reo is a sample for composition of components on the
basis of symbol from channels and can send certain Data
through connectors between components [1].
Reo emphasizes on a coordinating model channel based that
how designers can make more complicated coordinators
which are called connectors by simpler connectors. Features
of Reo can be Implemented and execute in Reo middle
wares. Certain middles wares exist for executing connectors
present in Reo such as ReoLite [2], Mocha [3] and
Coordination Tool Eclipse [4]. Reo also provides a
reconfigurable dynamic for binding connectors at the run
time. Connecting web services through connectors and
coordinating them are also other applications of Reo [5].
Web services are modular units practically that provides
business functionality which is of other practical programs
through internet. Several models have been proposed for
composition of web services with one another which
provides coordination of Static Data related to processes,
thus none of these models provides ability of reconfigurable
dynamic in participant web services. In fact there is a need
for a structure for coordination among web services at the
run time which is carried out using Reo. Reo is a
mechanism for providing compounding web services [6].
As said before, Reo has been proffered for coordination
among components and cooperation of Data among
components. But certain applications are present in data
communication systems in which Data are sent non-crisp
978-0-7695-3858-7/09 $26.00 © 2009 IEEE
DOI 10.1109/INCOS.2009.81
Mohammad Teshnehlab
Electrical Eng.
K. N. Tossi University
Tehran,Iran
[email protected]
A. Reo Channels
The simplest channel in Reo is Sync Channel. In this
channel Data are transferred from source end to sink end
uniformly, if Data are written simultaneously on the source
end. Sync Channel is demonstrated in Figure 1.
Figure 1. Sync Channel
Sync Drain is a channel that has two source ends. In this
channel the act of writing is accomplished on both channels.
In this channel Data are red if both ends of Data are written
together. Sync Drain channel is demonstrated in Figure 2.
141
one of the sink ends doesn’t do its job properly, the act of
writing will be left afloat. Replicator connector is
demonstrated in Figure 6.
Figure 2. SyncDrain Channel
Sync Spout is opposite to Sync Drain. This channel has
two sink ends instead of two source ends. In this channel
Data are sent if both ends of Data are red together. Sync
Spout channel is demonstrated in Figure 3.
Figure 6. Replicator Connector
One of the applications of this connector as a clock is for
composite or arrangement orbits that can lead all the clocks
at the same time to all Flip-Flops [11].
Merge connector is a connector that is constituted by one
sink end and several source ends and sink ends coincide at
one point and source end reads the Data, when, all the
source ends have had done the act of writing at the same
time. Merge connector is demonstrated in Figure 7.
Figure 3. SyncSpout Channel
FIFO channel is another channel that has one source end
and one sink end and plus these two ends, it enjoys an
unbounded buffer too. In this channel, source end stores
Data inside the buffer. Sink end receives Data from buffer,
if such Data are present in buffer, Data move in buffer in
queue order. That means they exist according the way they
entered. From another point previous channels defined
before are synchronous channels but this channel is
asynchronous channel. Synchronous channel is a channel in
which Data must be transferred at the same time but in
asynchronous channels Data can be transferred not-at-thesame-time order too. FIFO channel is demonstrated in
Figure 4. The rectangle in the middle of the Figure is the
buffer of the channel.
Figure 7. Merge Connector
III.
FUZZY LOGIC
Theory of fuzzy was introduced in 1965 by an Iranian
scientist Professor Latifizadeh [9]. Fuzzy systems are based
on rules or knowledge that describes non-determined and
non-precise phenomena. Today there are many applications
in all grounds for fuzzy theories. Control of industrial
process, control of traffic, control of cars, control of the
speed of train and etcetera can be taken as examples [10].
7he heart of a fuzzy system has been a base of knowledge
that has been constituted by ‘if-then’ fuzzy rules. An ‘ifthen’ fuzzy rule was an if-then phrase that some of its words
have been determined by adjoining membership function.
Fuzzy controllers are very simple comprehensively.
Designing each fuzzy controller contains three stages. Input
stage, Process stage and Output stage. In input stage the
operation of fuzzifier is carried out. Input stage contains
input variables or control variables. Each variable must
enjoy a quantity; for example temperature variable can have
certain quantities like cold, warm or hot. Each quantity is
written from a quantity to a membership function.
Membership functions have been defined once for each of
quantities of each of variables. Process stage receives fuzzy
‘if-then’ rules and produces results for each and ultimately
compounds the rules related results. There is a relative
reason method in this stage for fuzzy act decision-making.
This method provides a tool for activating the base of fuzzy
Figure 4. FIFO Channel
FIFOn channel is a channel from the kind of FIFO which
enjoys a buffer constraint by a length of n.
Lossy Sync channel is a channel that has a source end and
a sink end. This channel is also like Sync Channel but in
this channel certain Data are lost. In this channel Data are
written at sink end, but Data are transferred to then source
end in case sink end accepts the Data, otherwise Data will
be lost. Lossy Sync is demonstrated in Figure 5.
Figure 5. LossySync Channel
As explained before, composite connectors in Reo are
made by simpler connectors. For example Replicator
connector is a connector that is constituted by one source
end and several sink ends and source ends coincide at one
point. The act of writing will be carried out correctly on the
source end, when, all the sink ends read the Data. Even if
142
channel. In this paper a new channel is proffered using a
fuzzy controller thus to be able to solve this problem.
rules. Inference Formula is used for evaluating ‘if-then’
rules in rules base.
Interference formula provides a membership function for
measuring level of accuracy of comprehensive relation
among input and output variables. A membership function
which is used a lot is Momdani membership function. We
assume that fuzzy rule is as relation number (1):
If x is A then y Is N.
As said before different barriers exist in the channel and in
this paper factor of attenuation is solely discussed.
Attenuation means deduction of Current, Voltage and Signal
Power, or Data in transferring among two components [12].
A significant parameter in any transferring system is Signal
Power. By spreading signal over transferring medium,
attenuation will be created on the signal power. Therefore
signal power must be increased while it is being deduces.
Usually attenuation is by the unit of decibel. Decibel is a
criterion on the basis of the proportion of two signal level.
Rate of attenuation on decibel is as relation number (3):
(1)
Momdani membership function is as relation number (2):
(2)
µ AÆN(x,y)=µ A(x)ŀµ N(y)
When µ A(x) is membership rate of x in A. µ N(y) is the
membership rate of y in N and
µ AÆN(x,y)
is
the
membership rate of comprehensive relation between x and y
with Minimum Operator (Ŋ).
LdB=10log10(Pin/Pout)
(3)
Whereas LdB is attenuation rate on decibel, Pin level of
input ability power, Pout level of output ability power.
Opposite to attenuation, there is gain. In fact Data increases
signal power. Rate of gain on decibel is as relation number
(4) :
The last stage is Defuzzifier. Defuzzifier converts the
amount produced from the previous stage to a crisped
amount.
Figure 8 demonstrates fuzzy controller with fuzzifier and
defuzzifier.
GdB=10log10(Pout/Pin)
(4)
Whereas GdB is the rate of gain on decibel, Pin level of
input ability power, Poutlevel of output ability power
Designing fuzzy channel is such ways that signal is sent
by a level of power from the sender towards the receiver.
After that the receiver by a feedback sends the rate of sent
signal power rate in the form of control related data, towards
the receiver, sender also sends the desired signal by a
measured power by fuzzy channel while receiving such data
and determining attenuation rate according to relation
number (3) by using fuzzy rules that will be explained
further. Proposed fuzzy channel is demonstrated in Figure 9.
Figure 8. Fuzzy Controller With Fuzzifier and Defuzzifier
Figure 9. Fuzzy Channel
.
IV.
As said before for a fuzzy controller system there is a need
for fuzzy input, fuzzy inference engine and at the
consequence fuzzy output. In this system input variables is
attenuation and signal power that quantities related to
attenuation are ‘very low’, ‘low’, ‘medium’, ‘high’, and
‘very high’ and related to power are ‘low’, ‘medium’ and
‘high’.
PROPOSED MODEL FOR FUZZY REO
In any communication system, the received sent signal is
possible to be different than sent signal, according to the
presence of different kinds of barriers [12]. For example for
Analog Data, such barriers can reduce the Data quality.
There is a bit error for digital Data. 1 binary is converted to
a zero binary and vice-versa. Attenuation, delay distortion
and noise can be pointed as certain barriers transferred in a
system. According to the fact that Reo uses channel for
transferring the Data among components, channels that until
now are present in Reo for transferring there Data among
components, are not appropriate, when barriers exist in the
Determined Range for attenuation has been assumed from
0 to 10 decibel and determined Range for signal power has
been assumed from 0 to 6 watt. A fuzzy input variable has
been demonstrated in Figure 10 and 11.
143
Certain fuzzy rules in this system have been defined as
below:
• If (Attenuation is very low and power is high) then
(power is low)
• If (Attenuation is low and power is high) then (power
is medium)
• If (Attenuation is medium and power is low) then
(power is medium)
• If (Attenuation is high and power is low) then
(power is high)
• If (Attenuation is very high and power is medium)
then (power is very high
Radio sender can be pointed as to be one of the other
application of fuzzy channel power in which consumption
power is very low; more sending signal power from radio
sender, more energy is consumed, whereas signal power can
be reduced by using Reo fuzzy channel in such a way the
Data is not possible to be received by the receiver properly
even as yet.
Figure 10. Fuzzy Input(Attenuation)
Advantage of proposed fuzzy channel towards ordinary
channels in Reo is that signal of Data are sent towards the
receiver by a more appropriate power, that means such Data
are received in the receiver by more certainty. Low speed is a
disadvantage of this channel because after sending the Data
from the sender to the receiver a packet is sent to the receiver
which contains receiving power of receiver.
Figure 11. Fuzzy Input(Signal Power)
In this system, fuzzy output is signal power that this
variable also accepts ‘low’, ‘medium’ and ‘high’ amounts.
Determined Range for signal power has been assumed from
0 to 6 Watt.
V.
SIMULATION AND RESULTS
In a radio system when sender sends Data to the receiver,
distances between two nodes of sender and receiver has
direct relation to the attenuation, in such a way that by
increasing and decreasing of the distance, attenuation
becomes high and low, accordingly. On other side
attenuation has direct relation to frequency. Relation
number (5) demonstrates the relation among attenuation,
distance and frequency[12]:
In fact fuzzy controller operates in such a way that for
example if attenuation is high or very high in the channel
and power of sending signal is low, signal power must also
increase and if attenuation in channel is minor and power of
sending signal is high, ability on power of signal must be
low, such task caused consumption energy not to be wasted
and also caused the sending frame on behalf of sender not to
be demolished. Fuzzy output variable has been
demonstrated in Figure 12.
FSL=94.2+20LOG(D)+20LOG(F)
(5)
In above formula FSL is the free space loss or attenuation
which is calculated on dB, d is the distance between sender
and receiver on Km and f is the frequency of sender on
GHz.
It is assumed that two nodes of sender and receiver in 20
Range of time changes place in ‘Random Way Point’ in
such a way that each node of sender/receiver chooses a
place randomly and moves towards this place by a steady
speed. Then after sending the desired place it stays there for
30 seconds and again it chooses a new random place and
moves towards it. At the time of movement no Data is sent
on behalf of sender. It has been seen that with input
frequency 30 Khz attenuation rate or free space loss for
Figure 12. Fuzzy Output(Signal Power)
144
different seasons between sender and receiver is as shown in
Figure 13.
According to Figure 14 attenuation rate of 6 to 9 decibel,
sender operates by its maximum sending power that is
around 6 Watt, but in attenuation of 0 to 2 decibel, it
operates by its minimum power that is 0.8 Watt. In this
system minimum attenuation rate has been assumed for 0.
As demonstrated in Figure 14, sending power increases and
decreases according to attenuation rate which caused the
energy not to be wasted in time when the attenuation is low.
It also causes sending packets not to be demolished when
attenuation is high between two nodes. According to
observation, rate of energy consumption, when packets are
sent by ordinary Reo channels for power of fixed sender of
3,8 Watt is calculated by relation number (6)[13]:
E =P * T = 3.8 * 20*30 = 2280 J
Figure 13. Relation Between Distance and Free Space Loss
In this system it is assumed that in each second a packet is
sent to the receiver from the sender and maximum power of
the sender has been assumed to be 6 Watt. Therefore after
the desired packet was sent by primary power of P0 through
fuzzy channel, attenuation rate on the channel according to
the distance between two nodes will be calculated by
relation number (5). After calculate attenuation rate on the
channel, sending power of the sender at the time left in this
Range of time is corrected according the proposed fuzzy
controller. For example here primary power has been
assumed for P0=3.8w and primary attenuation rate
according to the distance between two nodes is 1,03
therefore due to attenuation rate being 'very low' and fuzzy
rules, sending power will be 0,772 Watt, that means in the
time left (29 seconds) the Data is sent by an power of 0,772
Watt towards the receiver and by the movement of two
nodes in next Range of time, attenuation will vary according
to the distance between two nodes; continuance of
examination procedure is as related above. Figure 14
demonstrates the relation between attenuation and sending
power according to the carried out examination in this
system.
(6)
In above relation p=3.8w is the power of each packet and
t=600s is 20 Range of 30 seconds. Rate of energy
consumption that packets are sent by ordinary Reo channel
is calculated by relation number (7) which is 34 percent
lower as compare to ordinary Reo channel.
E=P × T=(P1+P2+…+P19+P20) × T=(0.772 + 5.24 + … +
(7)
5.78 + 0.863) × 30=1512.93
Therefore, by Reo fuzzy channel, less energy has been
consumed as compare to ordinary Reo channel, since in
cases when attenuation between two nodes is low, the
desired packet is sent by a lower power towards the
receiver.
On other side, plus the rate of energy consumption in Reo
fuzzy channel, rate of more healthy packets are sent through
his channel because by low and medium sending power and
high rate of attentuaion, the sent packet will be demolished,
whereas by using fuzzy channel the sending power of the
sender of packet increases and less Data will be demolished.
In case rate of attenuation is ‘very high’ the packet will be
demolished either they are sent through Reo fuzzy cannel or
through ordinary channel. Figure 15 demonstrates the rate of
proper receiving of the sent Data through Reo fuzzy channel
and ordinary Reo channel in 20 Rang Of time
Figure 14. Relation Between Free Space Loss In this System
145
REFERENCES
Fuzzy Channel
Data transmission Truth
Ordinary Channel
[1]
Data transmission Truth
1.2
1
[2]
0.8
0.6
[3]
0.4
0.2
[4]
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20
Period Of Time
[5]
Figure 15. Data Transmission Truth
[6]
In 18th Range of time by the help of fuzzy channel, the
receiver has received the Data properly but in ordinary
channel, due to the sending power being low, Data in
receiver has not been received properly.
[7]
According to observation in this examination in case
Data are sent through Reo fuzzy channel 75 percent of the
Data will be reached healthy to the sink and through ordinary
Reo channel 65 percent will be reached properly.
VI.
[8]
[9]
[10]
CONCLUSION
In this paper, fuzzy Reo channel has been proffered. In
this channel, fuzzy method has been used. The advantage of
such channel as compare to ordinary Reo channel is that it is
able to send Data non-crisped which causes energy not to be
wasted and also the amount of sending Data is more as
compare to ordinary Reo channel. Disadvantage of such
channel is the low speed of it. Radio sending is of the other
applications of this channel.
[11]
[12]
[13]
.
146
F. Arbab, Reo:" A Channel-based Coordination Model for
Component Composition, Mathematical Structures in Computer
Science", 14(3):1-38, 2004.
D. Clarke, ReoLite: Reo coordination engine, CWI, the Netherlands,
http://homepages.cwi.nl/~dave/reolite/.
F. Arbab, F.S. deBoer, M.M. Bonsangue and J.V.Guillen-Scholten,
“MoCha: a middleware based on mobile channels”, In Proceedings of
26th International ComputerSoftware and Application Conference
(COMPSAC02), IEEE Computer Society Press, 2002.
C. Koehler, Eclipse Coordination Tools, CWI, the Netherlands,
http://homepages.cwi.nl/~koehler/etc.
Soheil Saifipoor, Behrouz Tork Ladani, Naser Nematbakhsh, " A
Dynamic Reconfigurable Web Service Composition Framework
Using Reo Coordination Language " , Fifth European Conference on
Web Services: 203-212 , 2007.
F. Arbab, and N.K. Diakov,“Compositional construction of Web
services using Reo”, In Proceedings of Internationl Workshop on
Web Services: Modeling, Architecture and Infrastructure (ICEIS
2004), Porto, Portugal, April 13-14, 2004.
F. Arbab and F. Mavaddat, Coordination Through
Channel
Composition”, In F. Arbab and C. L. Talcott, editors, Proceedings of
the 5th International Conference on Coordination Models and
Languages (Coordination 2002), York, UK, April 8--11, Lecture
Notes in Computer Science, pp. 21-38, Springer-Verlag, 2002.
F. Arbab, “Abstract Behavior Types: A foundation model for
components and their composition", Lecture Notes in
ComputerScience, Springer-Verlag, Vol. 2852, pp. 33-70, 2003.
Zadeh, L. A. (1965). Fuzzy sets, ,QI_ DQG FRQWURO _: 338–353.
Dr. Mohammed Y. Hassan, Member, IAENG Waleed F. Sharif, M.
Sc. "Design of FPGA based PID-like FuzzyController for Industrial
Applications",IAENG International Journal of Computer Science,
34:2, IJCS_34_2_05,Advance online publication: 17 November 2007.
Niloofar Razavi, Marjan Sirjani," Using Reo for Formal Specification
and Verification of System Designs ",2006 4th IEEE/ACM
International Conference on Formal Methods and Models for CoDesign,113-122,2006.
Stallings, W. SNMP, SNMPv2, SNMPv3, and RMON 1 and 2.
Reading,MA:Addison-Wesley,1999.
Dieter, C., "Europe Begins the Slow Creep Towards Deregulation",
Power Engineering International, pp.22-24, May 1998.