{"title": "Experiments with Neural Networks for Real Time Implementation of Control", "book": "Advances in Neural Information Processing Systems", "page_first": 973, "page_last": 979, "abstract": null, "full_text": "Experiments with Neural Networks for Real \n\nTime Implementation of Control \n\nP. K. Campbell, M. Dale, H. L. Ferra and A. Kowalczyk \n\nTelstra Research Laboratories \n\n770 Blackburn Road Clayton, Vic.  3168, Australia \n\n{p.campbell, m.dale, h.ferra, a.kowalczyk}@trl.oz.au \n\nAbstract \n\nThis  paper  describes  a  neural  network  based  controller  for  allocating \ncapacity in a telecommunications network.  This system was proposed in \norder  to  overcome  a  \"real  time\"  response  constraint.  Two  basic \narchitectures are evaluated:  1) a feedforward network-heuristic and; 2) a \nfeedforward  network-recurrent  network.  These  architectures  are \ncompared against a linear programming (LP) optimiser as  a benchmark. \nThis LP optimiser was  also used as  a teacher to label  the  data samples \nfor  the feedforward  neural  network training  algorithm.  It is  found  that \nthe systems  are  able to provide a traffic  throughput  of 99%  and  95%, \nrespectively,  of  the  throughput  obtained  by  the  linear  programming \nsolution. Once trained, the neural network based solutions are found in a \nfraction of the time required by the LP optimiser. \n\n1 Introduction \nAmong the many virtues of neural networks are their efficiency, in terms of both execution \ntime and required memory for storing a structure, and their practical ability to approximate \ncomplex functions.  A  typical  drawback  is  the usually  \"data hungry\" training  algorithm. \nHowever,  if training  data can  be computer generated  off line,  then this  problem may  be \novercome.  In  many  applications  the  algorithm  used  to  generate  the  solution  may  be \nimpractical  to  implement  in  real  time.  In  such  cases  a  neural  network  substitute  can \nbecome crucial for the feasibility of the project. This paper presents preliminary results for \na non-linear optimization problem using a neural network.  The application in question is \nthat of capacity allocation in an optical communications network. The work in this area is \ncontinuing and so far we have only explored a few possibilities. \n2 Application: Bandwidth Allocation in SDH Networks \nSynchronous  Digital  Hierarchy  (SDH)  is  a  new  standard  for  digital  transmission  over \noptical  fibres  [3]  adopted  for  Australia  and  Europe  equivalent  to  the  SONET \n(Synchronous  Optical  NETwork)  standard  in  North  America.  The  architecture  of  the \nparticular SDH network researched in this paper is shown in Figure 1 (a). \n\n1)  Nodes  at  the  periphery  of the  SDH network  are  switches  that  handle  individual \n\ncalls. \n\n\f974 \n\nP. CAMPBELL, M. DALE, H.  L. FERRA, A. KOWALCZYK \n\n2)  Each switch concentrates traffic for another switch into a number of streams. \n3)  Each stream is then transferred to a Digital Cross-Connect (DXC) for switching and \ntransmission to its  destination by allocating to  it one of several alternative virtual \npaths. \n\nThe task at hand is  the  dynamic allocation of capacities to these virtual  paths in order to \nmaximize SDH network throughput. \nThis is  a non-linear optimization task since the virtual path capacities and the constraints, \ni.e. the physical limit on capacity of links between DXC's, are quantized, and the objective \nfunction  (Erlang  blocking)  depends  in  a  highly  non-linear  fashion  on  the  allocated \ncapacities  and  demands.  Such  tasks  can  be  solved  'optimally'  with  the use  of classical \nlinear programming  techniques  [5],  but such  an  approach is  time-consuming  - for  large \nSDH networks the task could even require hours to complete. \nOne of the major features of an SDH network is that it can be remotely reconfigured using \nsoftware  controls.  Reconfiguration  of  the  SDH  network  can  become  necessary  when \ntraffic  demands  vary,  or when failures  occur in the DXC's  or  the links connecting them. \nReconfiguration in the case of failure  must be extremely fast,  with a need for  restoration \ntimes under 60 ms  [1]. \n\n(b) \n\noutput: path \ncapacities \n\nsynaptic weights \n(22302) \nhidden units: \n'AND' gates \n(l10) \n\nthresholds \n(738,67 used) \n\ninput \n\no DXC (Digital  \u00ae  Switch \n\nCross-Connect) \n\nFigure 1 \n\nlink \ncapacities \n\noffered \ntraffic \n\n(a) Example of an Inter-City SDH/SONET Network Topology used in experiments. \n(b) Example of an architecture of the mask perceptron generated in experiments. \n\nIn our particular case, there are three virtual paths allocated between any pair of switches, \neach using  a different  set of links  between DXC's  of the SDH network.  Calls from  one \nswitch to another can be sent along any of the virtual paths, leading to 126 paths in total (7 \nswitches to 6 other switches, each with 3 paths). \nThe path capacities are normally set to give a predefined throughput. This is known as  the \n\"steady state\".  If links in the SDH network become partially damaged or completely cut, \nthe  operation  of  the  SDH  network  moves  away  from  the  steady  state  and  the  path \ncapacities  must  be  reconfigured  to  satisfy  the  traffic  demands  subject  to  the  following \nconstraints: \n\n(i)  Capacities have integer values (between 0 and 64 with each unit corresponding to a \n\n2 Mb/s stream, or 30 Erlangs), \n\n(ii)  The total  capacity  of all  virtual  paths  through  anyone link  of the  SDH network \n\n\fExperiments  with Neural  Networks  for Real Time Implementation of Control \n\n975 \n\ncannot exceed the physical capacity of that link. \n\nThe  neural  network  training  data consisted  of 13  link  capacities  and  42  traffic  demand \nvalues,  representing  situations  in  which  the  operation of one  or  more  links  is  degraded \n(completely or partially). The output data consisted of 126 integer values representing the \ndifference between the steady state path capacities and the final  allocated path capacities. \n3 Previous Work \nThe  problem  of optimal  SDH  network  reconfiguration  has  been  researched  already.  In \nparticular Gopal et.  al. proposed a heuristic greedy search algorithm [4]  to solve this non(cid:173)\nlinear integer programming problem.  Herzberg in [5]  reformulated this non-linear integer \noptimization  problem  as  a  linear  programming  (LP)  task,  Herzberg  and  Bye  in  [6] \ninvestigated application of a simplex  algorithm to solve the LP problem, whilst Bye  [2] \nconsidered an application of a Hopfield neural network for this task, and finally Leckie [8] \nused another set of AI inspired heuristics to solve the optimization task. \nAll of these approaches have practical deficiencies; the linear programming is  slow,  while \nthe heuristic approaches are relatively inaccurate and the Hopfield neural network method \n(simulated on a serial computer) suffers from both problems. \nIn a previous  paper Campbell et al.  [10]  investigated application of a mask perceptron to \nthe  problem  of  reconfiguration  for  a  \"toy\"  SDH  network.  The  work  presented  here \nexpands on the work in that paper, with the idea of using  a second stage mask perceptron \nin a recurrent mode to reduce link violationslunderutilizations. \n4 The Neural Controller Architecture \nInstead of using the neural network to solve the optimization task, e.g.  as  a substitute for \nthe simplex algorithm, it is taught to replicate the optimal LP solution provided by it. \nWe  decided  to  use  a  two  stage  approach  in  our  experiments.  For  the  first  stage  we \ndeveloped  a  feedforward  network  able  to  produce  an  approximate  solution.  More \nprecisely,  we  used  a  collection  of  2000  random  examples  for  which  the  linear \nprogramming  solution  of  capacity  allocations  had  been  pre-computed  to  develop  a \nfeedforward neural network able to approximate these solutions. \nThen, for a new example, such an \"approximate\" neural network solution was rounded to \nthe nearest integer, to satisfy  constraint (i),  and used to  seed  the  second  stage providing \nrefinement and enforcement of constraint (ii). \nFor the second stage experiments we initially used a heuristic module based on the Gopal \net al.  approach [4].  The heuristic firstly  reduces the capacities assigned to all  paths  which \ncause a physical capacity violation on any links, then subsequently increases the capacities \nassigned to paths across links which are being under-utilized. \nWe  also  investigated an  approach  for  the  second  stage which  uses  another  feedforward \nneural network. The teaching signal for the second stage neural  network is the difference \nbetween the outputs from the first stage neural network alone and the combined first  stage \nneural  networkiheuristic  solution.  This  time  the  input  data  consisted  of  13  link  usage \nvalues  (either a link violation or underutilization) and 42  values  representing the amount \nof traffic  lost  per  path  for  the  current  capacity  allocations.  The  second  stage  neural \nnetwork  had  126  outputs  representing  the correction to  the  first  stage  neural  network's \noutputs. \nThe second stage neural network is run in a recurrent mode,  adjusting by small  steps  the \ncurrently  allocated  link  capacities,  thereby  attempting  to iteratively  move  closer  to  the \ncombined neural-heuristic solution by removing the link violations and under-utilizations \nleft behind by the first stage network. \nThe setup used during simulation is shown in Figure 2.  For each particular instance tested \nthe  network  was  initialised  with  the  solution  from  the  first  stage  neural  network.  The \noffered  traffic  (demand)  and  the  available  maximum  link  capacities  were  used  to \ndetermine the extent of any  link violations  or underutilizations  as  well  as  the amount of \nlost  traffic  (demand  satisfaction). This  data formed  the initial  input  to  the  second  stage \nnetwork.  The outputs  of the neural  network  were  then used  to  check the  quality  of the \n\n\f976 \n\nP. CAMPBELL, M. DALE, H. L.  FERRA, A. KOWALCZYK \n\nsolution,  and  iteration  continued  until  either  no  link  violations  occurred  or  a  preset \nmaximum number of iterations had been performed. \n\noffered traffic \n\nlink capacities \n\ncomputation of \nconstraint -demand \nsatisfaction \n\n[ ........ ~ ........ -..... -----~(+) \n\nsolution (t) \n\nsolution (t-l) \n\ncorrection (t) \n\n! \n! \nI \n! \n\ninitialization: \nsolution (0) \nfrom stage 1 \n\ndemand satisfaction (t-l \n42 inputs \n\nlink capacities \nviolation!underutilization (t-l) \n13 inputs \n\nFigure 2. Recurrent Network used for second stage experiments. \n\nWhen  computing  the  constraint  satisfaction  the  outputs  of the  neural  network  where \ncombined and  rounded to give integer link violations/under-utilizations.  This  means  that \nin  many  cases  small  corrections  made  by  the  network  are  discarded  and  no  further \nimprovement  is  possible.  In  order  to  overcome  this  we  introduced  a  scheme  whereby \nerrors (link violations/under-utilizations) are occasionally amplified to allow the network a \nchance of removing them. This scheme works as follows : \n\n1)  an instance is iterated until it has either no link violations or until 10 iterations have \n\nbeen performed; \nif any link violations are still present then the size of the errors are multiplied by an \namplification factor (> 1); \n\n2) \n\n3)  a further maximum of 10 iterations are performed; \n4) \n\nif subsequently link violations persist then the amplification factor is increased; \n\nthe procedure repeats until either all link violations are removed or the amplification factor \nreaches some fixed value. \nS Description of Neural Networks Generated \nThe first stage feedforward neural network is a mask perceptron [7], c.f. Figure 1 (b). Each \ninput is passed through a number of arbitrarily chosen binary threshold units. There were a \ntotal  of  738  thresholds  for  the  55  inputs. The  task  for  the  mask  perceptron  training \nalgorithm  [7]  is  to  select  a set of useful  thresholds  and hidden units  out  of thousands  of \npossibilities and then to set weights to minimize the mean-square-error on the training set. \nThe mask perceptron training algorithm automatically selected 67 of these units for direct \nconnection  to  the  output  units  and  a  further  110  hidden  units  (\"AND\"  gates)  whose \n\n\fExperiments  with Neural  Networks  for  Real Time Implementation of Control \n\n977 \n\noutputs  are again connected to the neural network outputs,  giving 22,302 connections  in \nall. \nSuch neural  networks  are  very  rapid  to  simulate  since  the  only  operations  required  are \ncomparison and additions. \nFor the  recurrent network used in the second stage we also used a mask perceptron. The \ntraining  algori thIn  used  for  the  recurrent network was  the  same as  for  the first  stage,  in \nparticular note  that no gradual  adaptation  was  employed.  The inputs  to  the  network are \npassed through 589 arbitrarily chosen binary threshold units. Of these 35  were selected by \nthe training algorithm for direct connection to the output units via 4410 weighted links. \n6 Results \nThe results  are presented in Table  1 and Figure 3. The values  in  the  table  represent  the \ntraffic throughput of the SDH network, for the respective methods, as  a percentage of the \nthroughput determined by the LP solution. Both the neural networks  were trained using \n2000  instances  and  tested  against  a  different  set  of 2000  instances.  However  for  the \nrecurrent  network  approximately  20%  of  these  cases  still  had  link  violations  after \nsimulation so the values in Table 1 are for the 80%  of valid solutions obtained from either \nthe training or test set. \n\nSolution type \nFeedforward Net/Heuristic \nFeedforward Net/Recurrent Net \nGopal-S \nGopal-O \n\nTraining \n\n99.08% \n94.93% (*) \n96.38% \n85.63% \n\nTest \n98.90%, \n94.76%(*) \n96.20% \n85.43% \n\n(*) these numbers are for the 1635 training and  1608 test instances (out of 2000) for which the \nrecurrent network achieved  a solution with no link violations  after  simulation as  described  in \nSection 3. \n\nTable  1.  Efficiency  of solutions  measured  by  average  fraction  of the  ' optimal' \n\nthroughput of the LP solution \n\nAs  a comparison  we implemented  two  solely  heuristic  algorithms.  We  refer  to  these  as \nGopal-S and Gopal-O. Both employ the same scheme described earlier for the Gopal et al. \nheuristic. The difference between the two is  that Gopal-S uses the steady state solution as \nan  initial  starting  point  to  determine  virtual  path  capacities  for  a  degraded  network, \nwhereas Gopal-O starts from a point where all path capacities are initially set to zero. \nReferring to Figure 3, link capacity ratio  denotes  the total  link capacity  of the degraded \nSDH network relative to the total  link capacity  of the  steady state SDH network.  A low \nvalue of link capacity ratio indicates  a heavily degraded network.  The traffic  throughput \nratio denotes the ratio between the throughput obtained by the method in question, and the \nthroughput of the steady state solution. \nEach dot in the graphs in Figure 3 represents one of the 2000 test set cases. It is clear from \nthe  figure  that  the  neural  network/heuristic  approach is  able  to  find  better  solutions  for \nheavily  degraded  networks  than  each  of the  other  approaches.  Overall  the  clustering  of \ndots for the neural network/heuristic combination is  tighter (in the y-direction) and closer \nto  1.00 than for  any  of the  other methods. The results  for the recurrent network are very \nencouraging being qUalitatively quite close to those for the Gopal-S algorithm. \nAll experiments were run on a SPARCStation 20.  The neural network training took a few \nminutes.  During simulation the neural network took an average of 9 ms per test case with \na  further  36.5  ms  for  the  heuristic,  for  a  total  of 45.5  ms.  On  average  the  Gopal-S \nalgorithm required 55.3 ms  and the Gopal-O algorithm required 43.7 ms per test case. The \nrecurrent  network  solution  required  an  average  of 55.9  ms  per  test  case.  The  optimal \nsolutions  calculated  using  the  linear  programming  algorithm  took  between  2  and  60 \nseconds per case on a SPARCStation 10. \n\n\f978 \n\nP.  CAMPBELL, M. DALE, H. L.  FERRA, A. KOWALCZYK \n\nNeural  Network/Heuristic \n\nRecurrent Neural  Network \n\n1.00 \n\n.2 \n~  0.95 \n8.  0.90 \n.r: \n0> \nis  0.85 \n.c t-\n.!.!  0.80 \n~ \n~  0.75 \n\n\u2022\u2022 , _ ._0 \u2022\u2022 _ \u2022 \u2022\u2022 \u2022 \u2022 \u2022 \u2022\u2022 : \u2022 \u2022 \u2022\u2022 :.' \u2022\u2022\u2022 :.~' \u2022\u2022 : \u2022 \u2022\u2022\u2022\u2022 :. '0\"\"  _ \u2022\u2022 \u2022 \u2022 \u2022  _ \u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022 \n\n0.70  0.50  0.60  0 .10  0.80  0.90  1.00 \n\n0.70  0.50  0.60  0.70  0.80  0.90  1.00 \n\nlink Capacity Ratio \n\nGopal-S \n\nLink Capacity Ratio \n\nGopal-O \n\n\u00b7\u00b7\u00b7\u00b7\u00b7\u00b7:\u00b7\u00b7\u00b7\u00b7:\u00b7 \u00b7:,,~i~ffI~ \n\n- -' - \"~':' ........ ~ ...... -... --- -.. . . \n\n.-. -,. \"\n\n\"\n\n1.00 \n.2 ra  0 .95 \ncr \n~  0.90 \n.r: \n0> \n6  0.85 \n\n.c t-,g  0.80 \n\n~ \n~  0.75 \n\n1.00 \n\n.2 \nr.;  0.95 \ncr \n~ 0.90 \n.r: \n0> 5  0.85 \n.c t-\n. ~  0.80 \n~ \n~  0.75 \n\n0.70  0.50  0.60  0.70  0.80  0.90  1.00 \n\n0.70  0.50  0.60  0.70  0.80  0.90  100 \n\nlink Capacity Ratio \n\nLink Capacily Ratio \n\nFigure  3.  Experimental  results  for  the  Inter-City  SDH network  (Fig.  1)  on  the \nindependent  test  set  of  2000  random  cases.  On  the  x  axis  we  have  the  ratio \nbetween the total link capacity of the degraded SDH network and the steady state \nSDH network.  On the y axis  we have the ratio between the throughput obtained \nby the method in question, and the throughput of the steady state solution. \nFig  3.  (a)  shows  results  for  the  neural  network  combined  with  the  heuristic \nsecond  stage. Fig  3. (b)  shows  results  for  the  recurrent  neural  network second \nstage. Fig 3. (c) shows results for the heuristic only, initialised by the steady state \n(Gopal-S)  and  Fig  3.  (d)  has  the  results  for  the  heuristic  initialised  by  zero \n(Gopal-O). \n\n7 Discussion and Conclusions \nThe  combined  neural  network/heuristic  approach  performs  very  well  across  the  whole \nrange of degrees of SDH network degradation tested. The results obtained in this paper are \nconsistent  with  those  found  in  [10].  The  average  accuracy  of -99%  and  fast  solution \ngeneration  times  \u00ab  ffJ  ms)  highlight  this  approach  as  a  possible  candidate  for \nimplementation  in  a  real  system,  especially  when  one  considers  the  easily  achievable \nspeed increase available from parallelizing the neural network. The mask perceptron used \nin  these  experiments  is  well  suited  for  simulation  on  a  DSP  (or  other  hardware):  the \noperations  required  are  only  comparisons,  calculation  of  logical  \"AND\"  and  the \nsummation of synaptic weights  (no multiplications  or any non-linear transfonnations  are \nrequired). \nThe interesting thing to note is  the relatively good perfonnance of the recurrent network, \nnamely that it is  able to handle over 80% of cases achieving very good perfonnance when \ncompared against the neural network/heuristic solution (95% of the quality of the teacher). \nOne thing  to  bear  in  mind  is  that  the  heuristic  approach is  highly  tuned  to  producing  a \nsolution which satisfies  the constraints, changing  the capacity  of one link  at  a  time  until \nthe desired goal  is  achieved. On  the other hand the recurrent network is  generic and does \nnot target the constraints in such a specific manner, making quite crude global changes in \n\n\fExperiments with Neural Networks for  Real  Time Implementation of Control \n\n979 \n\none hit, and yet is  still able to achieve a reasonable level of performance. While the speed \nfor  the  recurrent  network  was  lower  on  average  than  for  the  heuristic  solution  in  our \nexperiments, this  is  not a major problem since many improvements  are still possible and \nthe  results  reported here  are  only  preliminary,  but  serve  to  show  what  is  possible.  It is \nplanned to continue the SOH network experiment in the future; with more investigation on \nthe recurrent network for the second stage and also more complex SDH architectures. \nAcknowledgments \nThe research and development reported here has the active support of various sections and \nindividuals within the Telstra Research Laboratories (TRL), especially Dr. C.  Leckie, Mr. \nP.  Sember, Dr.  M.  Herzberg, Mr.  A. Herschtal and Dr. L. Campbell. The permission of the \nManaging Director, Research and Information Technology, Telstra, to publish this paper is \nacknowledged. \nThe research and development reported here has the active support of various sections and \nindividuals within the Telstra Research Laboratories (TRL), especially Dr.  C.  Leckie and \nMr.  P.  Sember  who  were  responsible  for  the  creation  and  trialling  of  the  programs \ndesigned to produce the testing and training data. \nThe SOH application was  possible due to  co-operation of a number of our colleagues in \nTRL,  in  particular  Dr.  L.  Campbell  (who  suggested this  particular  application),  Dr.  M. \nHerzberg and Mr. A. Herschtal. \nThe permission of the Managing Director, Research and Information Technology, Telstra, \nto publish this paper is acknowledged. \nReferences \n[1] \n[2] \n\nE.  Booker, Cross-connect at a Crossroads, Telephony, Vol.  215,  1988, pp.  63-65. \nS.  Bye, A Connectionist Approach to SDH Bandwidth Management, Proceedings \nof the  19th International Conference  on  Artificial Neural Networks  (ICANN-93), \nBrighton Conference Centre, UK,  1993, pp.  286-290. \nR.  Gillan,  Advanced  Network  Architectures  Exploiting  the  Synchronous  Digital \nHierarchy, Telecommunications Journal of Australia 39, 1989, pp.  39-42. \nG.  Gopal,  C.  Kim  and  A.  Weinrib,  Algorithms  for  Reconfigurable  Networks, \nProceedings of the  13th International Teletraffic  Congress (ITC-13),  Copenhagen, \nDenmark,  1991, pp.  341-347. \n\n[3] \n\n[4] \n\n[5]  M.  Herzberg,  Network  Bandwidth  Management  - A  New  Direction  in  Network \nManagement,  Proceedings  of the  6th  Australian  Teletraffic  Research  Seminar, \nWollongong, Australia, pp.  218-225. \n\n[6]  M.  Herzberg  and  S.  Bye,  Bandwidth  Management  in  Reconfigurable  Networks, \n\n[7] \n\n[8] \n\nAustralian Telecommunications Research 27,  1993, pp 57-70. \nA.  Kowalczyk  and  H.L.  Ferra,  Developing  Higher  Order  Networks  with \nEmpirically Selected Units, IEEE Transactions  on  Neural Networks, pp.  698-711, \n1994. \nto  Telecommunication  Network \nC.  Leckie,  A  Connectionist  Approach \nOptimisation,  in  Complex  Systems:  Mechanism  of Adaptation,  R.J.  Stonier  and \nX.H.  Yu, eds., lOS Press, Amsterdam,  1994. \n\n[9]  M.  Schwartz,  Telecommunications  Networks,  Addison-Wesley,  Readings, \n\n[10] \n\nMassachusetts,  1987. \np.  Campbell, H.L. Ferra, A. Kowalczyk, C. Leckie and P.  Sember, Neural Networks \nin  Real  Time  Decision  Making,  Proceedings  of the  International  Workshop  on \nApplications  of Neural  Networks  to  Telecommunications  2  (IWANNT-95),  Ed.  J \nAlspector et. al. Lawrence Erlbaum Associates, New Jersey, 1995, pp.  273-280. \n\n\f", "award": [], "sourceid": 1162, "authors": [{"given_name": "Peter", "family_name": "Campbell", "institution": null}, {"given_name": "Michael", "family_name": "Dale", "institution": null}, {"given_name": "Herman", "family_name": "Ferr\u00e1", "institution": null}, {"given_name": "Adam", "family_name": "Kowalczyk", "institution": null}]}