
\documentstyle[11pt]{article}

\textwidth=6.0in
\textheight=8.5in
\topmargin=-0.5in
\oddsidemargin=0.25in
 
\begin{document}

\begin{center}

{\huge \bf Progress Report\\} 
\vspace*{0.8cm}
{\Large \bf September 16, 1993} \\
\vspace*{1.0cm}
{\Large \bf
High Performance Computing and Parallel \\
Processing in the Utility Industry \\}
\vspace*{1.0cm}
{\large Geoffrey Fox, Paul Coddington, Alok Choudhary, \\ 
Salim Hariri, Michael Nilan, Sanjay Ranka \\
\vspace*{0.4cm}
Northeast Parallel Architectures Center \\
Syracuse University\\}

\end{center}

\vspace*{2.0cm}


% \newpage
\bigskip

{\large \bf I. \hspace{2mm} Unit Commitment}
\medskip

Parallel algorithms for the unit commitment problem have previously been
studied at Syracuse University by Dave Koester and Professor Yehuda Wallach,
and code was developed to use parallel dynamic programming techniques on 
shared memory multiprocessors. The aim of this section of the project is to 
improve on this work by porting the code to distributed memory parallel
computers, and investigating the performance of an alternative optimization
technique, namely simulated annealing.

The work done so far has concerned the development of an efficient simulated
annealing code. Substantial progress was made over the summer, with a
collaboration including Enzo Marinari of NPAC and the Syracuse University
physics department, Chien-Hsing Wu, a computer science graduate student
as Syracuse University, and Matt Shore, a summer student in the Research 
Experience for Undergraduates program at NPAC. This project is aimed at
developing a general optimization code, which can be applied to the specific
application of unit commitment for electrical power systems. It may also
be applicable to other utility optimization problems.

We have developed a standard sequential simulated annealing program using
a simple exponential cooling schedule for decreasing the temperature
parameter. We are developing an improved version with an adaptive schedule,
which uses measured data from the actual problem to try to find a near 
optimal cooling schedule for the particular problem being considered. 
This is expected to greatly improve the running time and the final result.

We have also formulated a method for implementing a parallel simulated
annealing program for any problem, which should further improve the 
cooling schedule and the quality of the result.

\medskip
{\bf Work Plan for coming month}
\begin{enumerate}
\item Study the formulation of unit commitment as an optimization problem, 
      and in particular the specification of the cost function and its
      implementation for simulated annealing.
\item Add some improvements to the determination of an optimal cooling 
      schedule in the simulated annealing code. 
\item Begin work on implementing a parallel simulated annealing code.
\item Preliminary study of porting the existing parallel dynamic programming
      code from shared memory to distributed memory computers.
\end{enumerate}



\bigskip
{\large \bf II. \hspace{2mm} Contingency Evaluation}
\medskip

Since the start of the project, we have had 2 interviews with William Merritt
of the Operations department of Niagara Mohawk. This has enabled us to 
clarify aspects of the use of the Energy Management System (EMS) security
model software, and identify the areas where Operations would like to
improve upon the current software. We are attempting to improve on the
contingency evaluation part of the EMS.

Contingency evaluation is currently done on a large number (of order 200) of
independent cases. Contingency screening is first performed by running a fast
contingency evaluation program which uses very approximate techniques. This
orders the contingencies by increasing severity, and around 30 of the most
severe cases are evaluated using a much more accurate program. Speeding up
the contingency evaluation program would allow the use of a more accurate
screening process, or even the elimination of screening if the program could 
be made fast enough to allow a full evaluation of all the contingencies.

Since the different contingencies are all independent, this problem is
{\em embarassingly parallel}, meaning that different cases can be sent to
different processors and processed in parallel with optimum efficiency, 
by just using the sequential algorithm on each processor.
However before the contingency evaluation can be performed, the state
estimator program must be run. To get near real-time performance for 
contingency evaluation, we may need to develop parallel algorithms to 
speed up state estimation.

Operations does not do any transient stability analysis, and all stability
data is provided by the Planning department, using a ``worst-case'' scenario.
Providing stability limits on a near real-time basis using the actual state
of the power network would be of great value to Operations. They would
also benefit from having immediate results on occasional requests for 
certain stability limits which currently take days or weeks to be processed
by the Planning department.

A further area of possible study which we have identified is software to help
an operator respond faster to a situation where the occurrence of a
contingency would violate stability limits, or to the worse case when a 
contingency does occur which is driving the system toward an unstable state.
This involves the operator making changes to the state of the network, or
at least creating a plan of action to be taken in case such a contingency
were to occur, in order to avoid further failures. 
Simulation could be used to help identify a workable plan, or perhaps even
an optimal plan, in terms of minimizing incurred costs.


\medskip
{\bf Work Plan for coming month}
\begin{enumerate}
\item Begin study of the current contingency evaluation software used at 
      the NMPC Operations center.
\item Investigate the current methods used for contingency evaluation
      to try to identify whether better or faster algorithms may be used.
\item Evaluate methods for incorporating parallelism into the state 
      estimator.
\end{enumerate}


\bigskip
{\large \bf III \hspace{2mm} Transient Stability Analysis}
\medskip

A key requirement for fast parallel transient stability analysis programs 
is an parallel differential-algebraic equation (DAE) solver. 
There has been much recent research into improving sequential
DAE solvers. We have been studying these sequential solvers to identify 
those which look more promising for the problem of transient stability 
analysis. We have also been working on developing parallel DAE solvers.
This work is being done by Kamala Anupindi and Alvin Leung, in collaboration
with Dr Tony Skjellum of Mississippi State University. Skjellum and Leung
developed Cdassl, a parallel version of the DASSL DAE solver, and have 
previously applied it to the simulation of a petrochemical plant.

A simple source of parallelism in the power system transient stability problem
is the examination of multiple, independent fault events simultaneously.
In the simulations done by the NMPC planning department, approximately 20
independent situations are analyzed, so there is a simple factor or 20 
speedup which could be achieved by trivial job-level parallelism.
To further increase performance, a parallel DAE solver is required. 
Note that in this scenario a parallel solver need only to be efficient on
a modest number of nodes, for example 32, since the extra factor of 20
will scale the number of processors which can be effectively used to 640,
which is roughly the size of the largest parallel supercomputers available
today.

\medskip
{\bf The System Model}
\smallskip

We have spent some time studying the mathematical formulation of the
transient stability problem, and the level of approximations used in the
formulation of standard generator equations.
Although there is a consistent theoretical model of the system,
the formulation of the system model has many variations.
Depending on the load equations and control equations in the system,
the DAEs describing this problem will be {\em Index-1} or {\em Index-2}
(for all practical purposes, the index of the DAE system can be thought of
as a measure of complexity of the system for the DAE solvers). 
Currently, we do not have reliable software for solving a problem with 
index higher than one, so this is an issue of some concern which we plan
to investigate in more detail. Specifically, we are concerned with how
the exciter model is interfaced to the generator model.  If the formulation
of the exciter is related to the state variable of the transmission network
or the load, then the resulting system of DAEs is index two.  However, the 
standard power transient problem is solved by decoupling the DAE system into
an ordinary differential equation (ODE) and an algebraic system.
This indicates that the formulation of the system
model is at most index one.  Due to the late signing of the contract and
appropriate non-disclosure agreements, we have so far been unable to get
detailed information on the exact formulation of the generator equations for
the NMPC network, and this will be a priority in the future.

The algebraic equations are specified by complex variables. 
We then are faced with the choice of solving it as a system of N complex
equations or 2-N real equations. The latter is a simpler scenario, however
we may lose the sparsity structure in the process. 
We are currently investigating this issue.

\medskip
{\bf Sequential DAE Solvers}
\smallskip

The generator equations by themselves do not pose any problem except
when the load equations and control equations are added. However they will
still be able to satisfy the standard input format of most DAE solvers.
Hence one of the reasons to pick a particular DAE solver will be the
form of equations it requires as input. Keeping this in mind, the 
following solvers are being analyzed, with preliminary findings as indicated:

\begin{enumerate}

\item LIMEX - an extrapolation integration technique. 
      This can be used to solve semi-explicit index-1 DAEs and uses the
      semi-implicit Euler method. This is a strong contender because of
      its ability to handle frequent discontinuities, which is a contidtion
      that frequently occurs in Power Systems TSA problem.

\item RADAU5 - an implicit Runge-Kutta method of order 5. 

\item RODAS - an embedded Rosenbrock technique of order 3 or 4.
             This is similar to R-K except that at each step the Jacobian
         has to be evaluated and the linear systems have to be solved again. 
Also, this can handle only Index-1 DAEs.

\item SODEX - an extrapolation technique based on linearly implicit mid-point
     rule. 
     One disadvantage of this method is that it takes large step sizes, which
may cause exponential overflow when evaluating the right hand side of ODEs.

\item SEULEX - an extrapolation technique based on linearly implicit Euler
method.
\item DASSL - a multistep, backward differentiation formulas technique.
      This is designed for DAEs of Index one or zero. Cdassl (concurrent
      DASSL) is being developed already.


\item LSODI - a fixed leading coefficient method using BDF technique.
      In contrast to DASSL (which is a fixed leading coefficient method),
LSODI is a ``fixed coefficient'' method. The fixed coefficient methods can be
implemented very efficiently for smooth problems, but suffer from 
inefficiency, or possible instability, for problems that require frequent
stepsize adjustments, which is not the case with power systems problem.
Hence LSODI promises to be our best choice currently.
     
\end{enumerate}

The backward differentiation formula (BDF) methods achieve the same order
of convergence for this class of DAEs as they do for ODEs.  This implies
that even if our system is of Index-2, we can achieve convergence.
Also, BDF methods can handle discontinuities, which is a condition
frequently encountered in our problem.
Thus there is some theory providing the foundation for the software
based on these methods. However, there are other issues that need to
be considered too while selecting a solver for the problem in question.

For now, the most promising candidates appear to be DASSL, LSODI and LIMEX, 
although we are also investigating an implicit version of the VODE
differential equation solver called VODI. 
Solvers like LSODI and LIMEX have been used
extensively and we have data that proves their efficiency. Solvers like
RADAU5, RODAS, SEULEX and SODEX may be efficient and more
suitable but so far we have no data or opinions from any users. 


\medskip
{\bf Parallel DAE Solvers}
\smallskip

Alvin Leung has been working on improving Concurrent DASSL (Cdassl), which
implements the well-known algorithms by Petzold incorporated in the 
Fortran codes DASSL and DASPK.  Concurrent
DASSL dates back to 1989, and we have reworked Concurrent DASSL to
reflect improvements in our understanding of needs for concurrent,
scalable DAE solvers.  

Firstly, warning and error handling have been modified to give a
reasonably accurate and much improved picture of Cdassl's operation. 

Secondly, Cdassl's performance has been enhanced by replacing loops that 
run over a concurrent vector's (Cvector's) data with level 1 Concurrent
BLAS (CBLAS).  CBLAS are highly optimized Cvector operators and may
exploit special machine hardware.  Consequently, Cdassl will have
significant performance increase whenever high performance CBLAS are
available.  On many systems, portable level-1 CBLAS, defined in terms
of BLAS, will be sufficient to attain such high performance.

Thirdly, Cdassl has been reorganized and redesigned better to conform to
Multicomputer Toolbox's object-oriented design philosophy.  Under the
new organization, Cdassl is freed from the binding of the linear
system's matrix structure.  Combining this with the new design of the
uniform calling interface provides the users of the flexibility for
``part-swapping.''  In the revised Cdassl, the linear system and
Newton method are handled through uniform calling interfaces.  These
interfaces provide the C++ ``public inheritance'' functionality
for the C-based Toolbox libraries.  
As a result, the user can use any linear system solver
as long as the solver conforms to the standard calling convention.

Cdassl uses Newton's method to solve a system of nonlinear system equations
for one time step. In turn, Newton's method uses the linear system solver to
solve multiple linear systems of equations.  
As a result, Cdassl spends most of its run time on solving linear systems.
An efficient parallel sparse matrix solver is therefore crucial to the 
performance of this program for the transient stability problem.

Toolbox provides a general parallel sparse matrix solver, however we are
aiming to interface to specialized sparse matrix solvers, in particular the 
block-diagonal-bordered solver developed by Koester, to improve performance
for power systems problems.
The Cdassl interface already provides a hook for pre-processing, such as
matrix reordering, for the direct linear solver.
In the future, a uniform calling interface for the DAE solver will also
be provided, so that different DAE solvers can be used.


\medskip
{\bf Work Plan for coming month}

\begin{enumerate}
\item Investigate the system model used by NMPC to determine the exact
      formulation and index of the problem.
\item Set up benchmarks for comparing different sequential DAE solvers
      on different sized power networks.
\item Investigate the interfacing of alternative sparse matrix solvers.
\item Investigate methods for parallelizing other DAE solvers besides DASSL.
\end{enumerate}



\bigskip
{\large \bf IV. \hspace{2mm} Parallel Sparse Matrix Algorithms}
\medskip


Substantial progress has been made on the development of an efficient 
parallel sparse matrix solver by Dave Koester, under the supervision
of Professor Sanjay Ranka. Efficient parallel sparse matrix solvers
require the ordering of a general sparse matrix into a regular form
which can be easily decomposed among many processors.
The matrices which occur in power systems problems are particularly 
suited to ordering in block-diagonal-bordered form, and this is the
path we are following. This type of solver should also be applicable 
to many other problems such as structural analysis.

Direct block-diagonal-bordered sparse matrix solvers exhibit distinct
advantages when compared to current parallel direct sparse matrix
solvers.  Task assignments for numerical factorization on
distributed-memory multi-processors depend only on the assignment of
independent blocks to processors and the processor assignments of data
in the last block.  Our research into block-diagonal-bordered form
sparse matrix solvers has developed a new three-step preprocessing
phase that requires special ordering techniques to determine the
block-diagonal-bordered form and to perform load-balancing to ensure
efficient parallel operations.  

The applicability of two prospective
ordering techniques to order power systems sparse matrices into
block-diagonal-bordered form with uniform distribution of work for all
processors has been examined using power systems data from the
Boeing-Harwell sparse matrix series.  These two ordering techniques
are based on recursive spectral bisection and node-tearing nodal
analysis --- a form of diakoptics.  Node-tearing nodal analysis has
distinct advantages over the technique based on recursive spectral
bisection.  In order to determine the extent of the applicability of
the node-tearing nodal analysis technique to general irregular sparse
matrices, node-tearing nodal analysis has been extensively exercised
on various sparse matrices in the Boeing-Harwell series, in addition
to actual electrical power system network data obtained from Niagara
Mohawk. The speedup and efficiency of our current (preliminary)
parallel sparse matrix solver on real data has been very encouraging.

The most recent task has been to examine efficient parallel
dense LU factorization techniques to be used to factor the last block
in a block-diagonal-bordered sparse matrix.  Ordering research has
shown that the last block will be nearly dense after considering
fillin due to factorization, so a dense matrix solver will be the most
efficient technique available to factor this portion of the matrix.
Previous NPAC research into FORTRAN benchmarks has been utilized to
develop an efficient parallel dense matrix solver for the last-block
in the sparse matrix.  Our software implementation is currently under
development, although development effort will be significantly
decreased because large portions of the code will directly utilize
existing SAXPY routines from the LAPACK software library.

A visualization program to display the structure of the matrices before
and after ordering has been developed, to help improve ordering and
load balancing algorithms.

We have also been working on documenting these new algorithms.
Two NPAC technical reports are in the process of being written:
\begin{enumerate}
\item {\em Parallel LU Factorization of Block-Diagonal Bordered Sparse 
Matrices} 
\item {\em Ordering Irregular Matrices for Parallel Block-Diagonal-Bordered
LU Factorization}  
\end{enumerate} 
A poster and accompanying paper will also be submitted to a conference
on Scalable Parallel Libraries at Mississippi State University in October.  
These will describe the problems with limited scalability in sparse matrix
solvers due to the limited parallelization available in real-life
sparse matrices.  This phenomenon is clearly visible in animations
developed from series of ordered sparse matrix representations.



\medskip
{\bf Work Plan for coming month}
\begin{enumerate}
\item Implement a parallel dense solver for solving the last block.
\item Write up papers documenting our parallel sparse matrix solver.
\item Investigate alternative general sparse matrix programs by Heath, 
      Skjellum, and others, and plan for benchmarking of relative 
      performance on power systems problems. 
\item Investigate the possible application of iterative and semi-iterative
      methods for solving sparse matrix problems.
\item Plan the migration of the parallel sparse matrix code to a portable
      parallel language.
\item Investigate the interfacing of the different parallel sparse matrix 
      solvers with the DAE solvers also under investigation.  
\end{enumerate}



\bigskip
{\large \bf V. \hspace{2mm} User Interface and Expert System}
\medskip

\medskip\noindent
Another key research area for transient stability analysis is the user 
interface and the analytical software to classify generator stability.
During Phase I, Dr. Michael Nilan, Richard Southwick and Carin Obad,
from the Syracuse University School of Information Studies (IST), 
have initiated the process of acquiring a knowledge base for 
implementation of a prototype expert system for transient stability 
analysis at Niagara Mohawk Power Corporation.

In its current state, the process of transient stability analysis 
places considerable time demands on the engineers in the Planning 
Department at Niagara Mohawk.  The types of equipment installed 
on-line, the parameters for power transmission (e.g., voltage), 
environmental parameters, and the various problems (contingencies) 
anticipated provide the  variables for input into the transient 
stability analysis program.  An off-line simulation is run, based upon 
the selected sets of operating parameters, producing a lengthy paper 
output which must be meticulously scrutinized and evaluated by the 
engineers.  Using the output from the simulation and their 
knowledge and previous experience (heuristic knowledge) as domain 
experts, the engineers establish power transfer limits for maintaining 
transient stability within the power grid.  These stability limits are 
incorporated into the EMS software used in the Operations sector for 
real-time (or nearly real-time) security analysis for the entire  
Niagara Mohawk power system.  

The NPAC project team anticipate that an expert system may be 
able to significantly reduce the time involved in performing transient 
stability analysis.  This may be achieved by:

\begin{enumerate}
\item
reducing the computer processing time (through hardware and software 
parallelism); 
\item
reducing the volume of output (and thus, the 
number of decisions) required for determining transient stability 
limits by providing only that output which is useful; and
\item
implementing a high-level user interface with the expert system 
which would provide an improved representation of the data output 
for the system user.      
\end{enumerate}

The IST research team has endeavored to provide guidelines for 
determining the most useful output and the most effective user 
interface for the expert system by modeling the existing procedures 
of operators and engineers at Niagara Mohawk as they regularly deal 
with power grid contingencies relating to transient stability --
in real-time as in Operations, or strategically as in Planning.  
The methodology employed in the knowledge acquisition research is 
designed to capture the essential steps (procedures) taken in 
transient stability analysis.  This knowledge structure derived from 
the cognitive processes of the system users will be implemented in 
the expert system and reflected in the content of the data 
representation, the temporal sequence of actions taken, and the 
spatial dimensions of the system interface.  We propose 
that the system so designed will provide a less confusing array of 
choices for the system user, better access to important information, 
and greater overall usability. 

The IST team recognizes the critical importance of knowledge 
acquisition, as well as the historical difficulty it has presented, 
to the successful implementation of expert systems.  
Our primary goal will be to capture the knowledge of domain 
experts as it applies to transient stability assessment so that it may 
be codified in the proposed expert system.  However, this knowledge 
will be of a qualitative as well as a quantitative nature, including 
knowledge of unique operating conditions, weather, environmental 
variables, experience, etc.  We believe 
that the methodology employed in our research is ideally suited 
capture this type of heuristic knowledge.  

Although our initial research on this project will be primarily 
focused on the off-line transient stability analysis conducted by the 
Planning Department engineers at NMPC, we feel that it is important 
to also give consideration to the impact of the transient stability 
limits on contingency analysis (i.e., as a parameter of the EMS 
program in Operations).  The operators of today's EMS systems are 
confronted with a vast amount of dynamic data on a regular basis 
and are required to make important decisions based upon this data 
in real-time.  The degree of efficiency 
with which the operators make these decisions may have a real 
impact on the utilization and optimization of the power 
system.   Moreover, although the 
possibility may be remote, the advent of an extremely adverse or 
potentially catastrophic contingency would present a situation where 
the operator may be unable to cognitively process the amount of 
data confronting him or her.  For these 
reasons, there would be an obvious benefit if the transit stability 
limits which are presently derived through off-line assessment by 
the Planning Department could be produced on-line and in real-time 
by the EMS operators.   Therefore, the IST team will be gathering a 
base of knowledge from personnel in Operations (where 
contingencies are evaluated with the aid of EMS software) as well as 
personnel in Planning (where the parameters for transient stability 
are established and evaluated according to the influence of potential 
contingencies, operating conditions and equipment parameters).     

To date we have interviewed three Niagara Mohawk 
employees: William C. Merritt, P.E., Manager - Power Operations; 
Larry Eng, Manager - Transmission Planning (on two occasions); and 
Wesley Yeomans, manager in charge of the EMS operators. 



\medskip
{\bf Planning Perspective}
\smallskip

For the purpose of establishing a model for transient stability 
analysis at Niagara Mohawk, the IST team has initiated conversations 
with Larry Eng of the NMPC Planning department.
We have observed two general ``use situations'' within the 
Planning Department:

\begin{enumerate}
\item	Optimization: The process of establishing transient stability limits
\item	Simulation: The process of testing specific sets of conditions 
(contingencies) for their effect upon transient stability.
\end{enumerate}

We will attempt to model the cognitive steps taken by system 
users as they negotiate these processes from initiation through 
completion of the task.  We will attempt to obtain a sampling of users 
large enough to provide a complete range of perspectives.  The 
criterion for the size of the sample, from the population of 
approximately 20 individuals in the New York Power Pool (NYPP) who analyze
transient stability data,
will be based upon reaching a level of redundancy according to the 
methodology employed, rather than selecting a predetermined number of 
respondents.

Larry Eng has agreed to develop a set of contingencies for a 
simulation in which the output will reflect a progression from a   
steady-state stable baseline condition to a condition of obvious 
instability.  Our current objectives call for using this same simulation 
to elicit processes from all the respondents selected.  We propose to 
identify points of convergence among the different actors as they 
examine the hard copy  outputs (the amplitudes and damping effects 
represented graphically in the charts).        
                            

\medskip
{\bf Operations Perspective}
\smallskip

Operations relies on Planning to provide the updated transient 
stability limits which are implemented in the EMS software.  In the 
day-to-day procedures of the Operations personnel -- as they monitor 
the occurrence or simulation of various contingencies -- the transient 
stability limits provide operational guidelines for decision-making.  
As changes arise in the system -- by naturally occurring 
circumstances such as faults or equipment malfunctions, or as a 
result of the simulation of planned events (e.g., taking a generator off 
line for maintenance) -- the actions taken by the system operators 
have a consequence in terms of the effect on transient stability.  

In a meeting with Wesley Yeomans, the research team observed 
current screen outputs of the EMS security software (data is updated 
at the request of the operator in nearly real-time).  During the course 
of our observations, a specific contingency violated stability limits 
and we were able to watch the screen outputs change as a result of 
actions taken by Niagara Mohawk operators.

Mr. Yeomans explained that the operators are obligated to 
implement timely corrective actions when violations to transient 
stability limits occur in the system.  NYPP actively monitors the 
power grid in New York State and has the authority to order specific 
actions by the system operators of the various participating utilities, 
although such action is rarely implemented.  Power Pool members 
(including NMPC) will normally respond to NYPP directives in a 
timely fashion. 
Thus, while the generation of transient stability limits is a function of 
the Planning Department at Niagara Mohawk, the consequences of these limits 
have a real effect on the day-to-day tasks of the system operators. 

Taking a broader perspective, it may be concluded that there are 
significant ramifications in terms of operation costs and the overall 
efficiency of NMPC as a result of 
operator actions taken to gain compliance with these transient 
stability limits.  If a more precise definition of the transient stability 
limits could be obtained, or if the ``actual'' limits could be determined 
in real-time, a substantial profit gain would seem to be a likely 
outcome.  

The IST team plans to model the steps taken by the operators in 
Operations by using a simulated set of conditions and observing the 
actions of the operators as they use the EMS software.  Wesley 
Yeomans has consented to the use of their operator training room.  
He has also agreed to produce 3 simulations according to the 
following conditions:

\begin{enumerate}
\item Major Limit Violation -- a situation with potential 
	``catastrophic'' consequences
\item Minor Limit Violation -- a situation where action vs. no 
	action responses are possible
\item Choice of Action Violation -- a situation where choices of 
	action may impact costs or efficiencies
\end{enumerate}

Our goal for samples in this aspect of our study will be to obtain a 
wide range of system users -- novice to expert.  We propose that an 
interface modeled on this approach will provide superior overall 
operator production than one modeled exclusively on an expert use 
model.


\medskip
{\bf The Expert System}
\smallskip

The expert systems team of
Professor Salim Hariri and Siva Narendra are working on implementing the
expert system for transient stability analysis, to be based on the rules
developed by the IST team. A survey on available expert systems has been
performed, and the decision was made to use the Clips system, for a number
of reasons including popularity, and easy availability of both documentation
and code. This system is now being studied and applied to some
well-understood problems to gain expertise in its application.

The IST team will provide the input for the knowledge-based rules for
the expert system towards the end of the study phase. The format of these
rules will be determined in the near future.


\medskip
{\bf Work Plan for coming month}
\begin{enumerate}
\item  Review TSA simulation with Larry Eng.
\item  Begin interviews with all transient stability experts 
       (starting with Syracuse-based Niagara Mohawk planners).
\item  Consult with Wesley Yeomans on producing simulations with operators.
\item  Work towards standard format for expression of rules to be passed
       from the IST team to the expert systems team.
\item  Gain more experience with the CLIPS expert system software.
\end{enumerate}


\bigskip
{\large \bf VI. \hspace{2mm}  Parallelism and Computational Issues}
\medskip

There are four major computational issues in this project: the algorithms,
the hardware, the software, and interfacing everything together.

The main issue we have been studying in terms of algorithms is scalability --
to what extent the parallel programs may be scaled up to larger numbers of 
processors. This is of particular relevance to the parallel sparse matrix
solver, since these algorithms are usually only efficient on small numbers
of processors.

We have been attempting to discern the most appropriate computer architecture
for this application. NPAC is currently installing some new parallel 
computers and networking hardware, so that the variety of parallel machines
and the network connecting them are probably unsurpassed anywhere in the
world. We will be benchmarking the performance and usability of these machines,
to identify which would be the best hardware for the project at hand.

The main software issues are portability and maintainability, and the ease
of interfacing different modules in the overall system. We have initiated
a study of the software design to ensure that the software will be portable,
easily maintainable, and allow simple interfacing between the different
software modules written by NPAC. Interfacing our software with that currently
used by NMPC may be a much harder task which we will begin studying as soon
as possible.

\medskip
{\bf Work Plan for coming month}
\begin{enumerate}
\item Investigate migration of non-portable codes to portable parallel
      languages.
\item Study performance and usability of new machines such as the IBM SP-1.
\item Begin investigation of current NMPC software for contingency evaluation
      and transient stability analysis, and the problems of interfacing this
      software with our parallel software.
\end{enumerate}


\bigskip
\medskip
{\large \bf VII. \hspace{2mm} Survey of High Performance Computing and
Parallel} \\
{\large \bf \hspace*{18mm} Processing in the Utility Industry}
\medskip

Currently we have identified a few applications of interest which
will be pursued in detail to determine the possible benefits of
parallel computing, one example being database and information processing
applications. Geoffrey Fox has had some preliminary low-level discussions 
with people in different areas of NMPC to try to identify possible areas
where parallel computing could be applied.

We have planned a systematic study of the current computational requirements
of all departments of Niagara Mohawk, concentrating on those applications 
which use the largest computational resources. Applications which are
particularly amenable to parallel processing will be identified.

We will also talk to department representatives to determine their future
directions and requirements, and the possibility of automation or simulation
in areas which have so far not benefited from the use of computation.

\newpage

{\bf Work Plan for coming month}
\begin{enumerate}
\item Identify largest users of computer resources within Niagara Mohawk.
\item Begin meetings with representatives from all departments within
      Niagara Mohawk to determine current and possible future computational
      needs.
\end{enumerate}

\end{document}

