Topic: Simulation in C++


Author: preilly@isoquantic.com (PATRICK L. REILLY)
Date: Thu, 09 Feb 1995 00:38:44 -0700
Raw View
In article <3h8d60$gtr@whitbeck.ncl.ac.uk>, "R. Kerr" <R.Kerr@ncl.ac.uk> wrote:

> THE PAKISTANI DEMON (beg@nunki.usc.edu) wrote:
> > Hi netters,
>
> > I am trying to do a simulation in C++ of a network(manufacturing) and
need help as to what books are there that have been written or published
in this regard. Are there any papers that have been publised or any ftp
sites for code that did simulation in
> C++ that I could take a look at for help and reference. Any help will be
greatly appreciated.
>
> > What I need are details since that will give me a starting point.
Thanks. Please respond my emailing me directly since that might be a lot
more faster and convenient for me.
>
> Have a look at C++SIM which imitates SIMULA's simulation features. It can
> be ftped from arjuna.newcastle.ac.uk. There is a paper there too.


******************************************************************
*             SimTools, Version 2.7 January, 1995                *
* Copyright 1994, 1995, IsoQuantic Technologies, LLC. Contact    *
* Patrick L. Reilly, preilly@isoquantic.com for information.     *
*                                                                *
* All rights reserved. This post may be copied and distributed as*
* long as this copyright notice is retained.                     *
******************************************************************

For someone just trying to get started in the simulation field, or
wondering what is readily avilable, we offer up some of our favorite
simulation and modeling toolkits (not in any particular order).

   1. Simscript II.5 for code-level programs of any complexity
   2. SES/Workbench & OpNet for graphical simulation modeling
   3. Simpack, public domain implementation of SIMPL and more
   4. Mathematica, Maple V, MATLAB, Mathcad
   5. GPSS/H student version (100 blocks... what a challenge!)
   6. QSB+
   7. PROBMOD/LINPROG
   8. COMNET III
   9. Modsim III for OO code-level programs of any complexity
   10. C++ CSIM, Objectworks/Smalltalk, SmalltalkAgents, Perl
   11. Splicer
   12. FutureBasic
   ...and much more!!!!


Ok, here is a by-the-numbers run down of the items mentioned above:

[1. & 9.] CACI, Inc. LaJolla, CA. Call 619-457-9681 $20-50K
***********************************************************

Worth every penny. Industrial strength. We have not found anything in a
large company setting that we could not accomplish with these. Also
includes a graphical simulation animator interface to build user screens,
icons, menus, etc. Modsim III is an object-oriented, Modula-2 variant
commercialized after its development for a US Army contract. Modsim runs
at speeds comparable to C and produces C++. Modsim objects are represented
directly as C++ classes. It is being constantly improved. Email to
modsim@caciasl.com.

The Army's version of ModSim is available at max.cecer.army.mil in the
/ftp/isle directory. CACI is spending lots of money developing
applications with Modsim. Check out their latest COMNET III, a
programming-free environment for LAN, WAN modeling.(See #8 below)

Too bad, CACI Products Co. is not aggressive with enhancements to
Simscript II.5. We are still convinced Simscript II.5 is as bug-free
software as you can find, but its performance is in the pits. And it will
stay there until the installed base becomes willing to accept non-backward
compatible changes. Simscript II.5 was developed by Markowitz (Nobel Prize
Winner for economics) and others at Rand Corporation during 60s.  We've
used it on the Crays at NCSA. Still very popular language. The government
uses it alot. Some 440K lines of code used in a SDI project. Also many
battle management tools exist. CACI Products Co. is the most
customer-focused company we have run across in the business. They will
meet your needs and they are incredibly flexible. Broke our heart when
they abandoned the MacIntosh. Haven't they heard of the PowerPC?

[2.] SES Workbench and OpNet
****************************

Nothing currently available comes close to this product in the graphical
simulation building world. (Mil-3's OpNet is a contender!) It is a
graphical environment by the company that brought us the PAWS simulator.
Lots of object-oriented extensions. Just connect icons representing
primitives from libraries, fill in the blanks, and run. Build your own
twists with method blocks using C-language. Can simulate a VLSI chip or an
ethernet. Company is still learning how to deal with large commercial
customers, so you will have to educate them about your particular needs
sometimes. One of us has been on record as an unhappy customer of SES,
Inc., but they are winning us back. The company's international
headquarters is located at 4301 Westbank Drive, Building A, Austin, Texas
78746. For more information, call (512) 328-5544 or fax (512) 327-6646.

OpNet's newest release, patiently demonstrated to us by the OpNet folks at
Globecomm '94, seems to be a significant step up from what we have seen
out of Mil-3, Inc. in the past. It is also available with extensions to
handle wireless and satellite communications. I think they are on their
way to replacing SES Workbench as my favorite GUI-driven simulation
framework. Just wish they could figure out how to come up with something
requiring less than ten, two-inch, 3-ring binders full of user
documentation! $16K-$28K, (202)-364-8390

[3.] Available ftp site. FREE!
******************************

If you are just getting started in simulation find these THREE books:

-Simulation Modeling & Analysis, Law/Kelton, McGraw-Hill, 1990, ISBN
0-07-036698-5

-Simulating Computer Systems, MacDougall, MIT Press, 1987, ISBN 0-262-13229-X

-Simulation Model Design and Execution: Building Digital Worlds, Fishwick,
Prentice Hall,1995. ISBN 013-098609-7. [For the Introductory Chapter (1)
see the following URL- http://www.cis.ufl.edu/~fishwick]

The first book, now in 2nd Edition, has it all. Even the source simulation
tool code in Fortran is included. This is Simulation 101, folks. A
"beginners bible"! The second book describes a C-implemention of SIMPL, a
basic simulation tool used by the author for everything from queueing to
ethernets. The comp.simulation newsgroup has had several postings about
Dr. Fishwick's Simpack tool (fishwick@cis.ufl.edu). The third book
describes the tool as part of a general intro to the topic. Consider
simpack a more refined version of SIMPL and much more. Get it!!! Simpack
is available for anonymous ftp from ftp.cis.ufl.edu (cd to
pub/simdigest/tools, specify 'binary' and get simpack-X.XXalpha.tar.Z).
Simpack++ contains a C++ class library for using the queuing routines.
Also, the 'slice' program was converted to C++ (get simpack-X.X++.tar.Z).
SimPack++ is not as up to date as SimPack.

When one of us taught computer system performance analysis at DePaul
University, simpack was hauled up from Florida for the students to use. It
is simple and intuitive for beginners, yet can be extended by the advanced
user. Someone has probably ported it to a PC by now, too.

Some other good books are:

-Discrete Event Simulation in C, Watkins, McGraw Hill, 1993, ISBN
0-07-707733-4. Includes complete ANSI C code for simulation library.

-Simulation Modeling with Pascal, Davies/O'Keefe, Prentice-Hall, 1989,
ISBN 0-13-811571-0. Includes Pascal_SIM code listings for a *process*
oriented simulator. If you have to ask what a process oriented simulation
is, better hurry and get one of the books in this section!

[4.] Mathematica, Maple V, MATLAB, Mathcad
******************************************

All should need no introduction. Call any computer store for a copy.
$500-$1200 depending on platform and options. Our personal preference is
Mathematica, especially now that they have that nifty function browser (We
just couldn't remember those 2500+ command formats!) But, when we are on
the road with our teeney-tiny Mac Duo 280, nothing beats having Maple V
available to run in that RAM limited environment (Sorry Wolfram Research,
but you haven't figured it out yet.)
(217)-398-0700

MATLAB isn't bad, either, especially if you do lots of matrix math, but it
really irks us when a company refuses to offer a version that works
without a math co-processor (like the Mac Duo and Powerbook 500) on the
Mac. The folks at The Math Works, Inc. are excluding a huge mobile
marketplace. The student version works without the co-processor, but only
toy problems can be handled.
info@mathworks.com, (508)-653-1415

Mathcad still has a place on our laptops. It is a lean, powerful
engineering number cruncher. Great for quick and dirty calculations. It
also comes with the Maple V symbolic library. Customized engineering
"handbooks" are also available. Unfortunately, MathSoft, the same company
that distributes Maple V, has neglected the MacIntosh version terribly.
Hello? Is anybody home? (800)-628-4223 or (617)-577-1017

Sadly, all of the above lack the single-most feature that would make them
giants, the ability to create stand-alone, double-clickable applications.

[5.] Wolverine Software Corp., Call 703-750-3910 $40!!!
*******************************************************

Get their student version and a book by Banks, Getting Started Using
GPSS/H for a trivial sum. Comes with disk for PC. Limits you to 125 GPSS/H
blocks. Full PC and workstation versions about $3K-20K. This is NOT the
old GPSS of the IBM flavor. It is FAST! Old GPSS was an interpreter,
GPSS/H is not. We love the challenge of seeing how complex a model we can
build with only 125 blocks and up to 250 statements. Sooner or later, we
will spring for the full version. Be prepared, though. It is not like any
language you have encountered, unless you are used to op codes and
assembly language! Just wish we could find a version that ran on the
MacIntosh. There's hope- a Mac version has been described in a conference
paper by:

Duane Ball Advanced System Technologies, Inc. Suite 514, 5113 Leesburg
Pike Falls Church VA 22041

and we are played around with a alpha-beta(?) version on a MacIIci until
it kept crashing the machine. It has a ways to go, but it just might make
it. Watch this space for details as they emerge.

You can buy also "Using Proof Animation" from the vendor for $29.50. The
price matches that of the Banks and Sy GPSS/H book. "Using Proof
Animation" is a spiral-bound book (similar to Banks and Sy) that teaches
how to use Proof Animation and comes with Student Proof Animation on an
included disk. Student Proof Animation is a full-feature implementation of
Proof Animation Professional but has limits on file size and in playing
time.  Proof Animation animations are slick and of very high quality
(vector-based approach, not a pixel-based approach).[Many thanks to Tom
Schriber ("Mr. GPSS"!!) for the updated info in this paragraph.]

[6.] From Prentice-Hall Publishers. $35!!!!
*******************************************

Quantitative Systems for Business Plus is a book with software for PCs
aimed at the beginning operations researcher. Lots of nifty algorithms
implemented in a friendly interface. Use it for quick solutions to
queueing theory questions, linear programming, transportation problems,
network/critical path modeling, PERT, dynamic programming, inventory
theory, decision and probability theory, Markov processes and time series
forecasting. It even comes with a queueing simulator. Call P-H or visit a
local university bookstore in the operations research book section. Just
wish they had a MacIntosh version. ISBN 0-13-744830-9

[7.] From McGraw-Hill. $65!!!!
******************************

These programs accompany Hillier/Lieberman's ever-popular book,
Introduction to Operations Research. It is also available in a two-volume
set. The BEST BOOK ON THE SUBJECT! Hillier's son, Mark, wrote the programs
and they run on a PC or Mac, so get the correct version. We use these as
much as we use QSB+. There are differences and we mainly wanted the book.
ISBN 0-07-028938-7 and 0-07-028939-5 for the two-volume version of the
same book above. The volumes split discussion of mathematical programming
and stochastic models.

[8.] Available from CACI, Inc. $25-35K
**************************************

Written in about 150K lines of Modsim II with a graphical user interface.
A programming-free communications network simulation tool. Lots of classes
to build upon and customize, too. Circuit, packet, virtual,
message-switching supported. Lots of the usual standards, too. We can whip
out a C7 signaling network simulation in a hour or less. Haven't seen
anything else out there that compares to it. This just shows you how
powerful the Modsim II language is, folks. Better yet, buy the compiler,
write your own tool, sell it and get rich! None of those nasty licensing
issues with Modsim II (are you listening SES, Inc.?), either.

[10.] Forget C and Fortran
**************************

Step up to OO! You won't regret it!

ParcPlace's Objectworks/Smalltalk is a wonderful environment. But don't
use it without the Advanced Programming libraries. That has a great parser
compiler. Furthermore, smalltalk code runs just as fast as C++ ("iff" you
know what you are doing) and can be developed in lots of less time.
Contact "info@parcplace.com" for more.

Well, we have been to the mountaintop and returned with Quasar Knowledge
Systems' SmalltalkAgents. Best $700 one can spend. Killer smalltalk for
the Mac and coming to a PC and workstation nearest you very soon. Give us
anything that was written for the Mac *first* and we will be interested.
It is everything Thornton Gale said it was in the April 94 issue of
MacTech Magazine. Run, don't walk to get this software. This is the future
for enterprise wide applications development. QKS can be reached at (301)
530-4853, or try info@qks.com.

We are just a perl guru-wannabes, but we have seen the power of it and how
it can pull information out of a mass of modeling output data. Get MacPerl
or Perl 5. Perl 5 is object-oriented and being used to write applications
you never thought would be possible with perl. Contact our pal, Randal
Schwartz, merlyn@stonehenge.com
for more info. Randal is a certified perl guru and author of the O'Reilly
camel and llama books on the subject.

If you are budget challenged, try CSIM, originally from MCC, Austin, TX.
MCC is a research consortium. Herb Schwetman (hds@mesquite.com) is the
keeper of CSIM, now in version--17. Runs on just about anything, offers a
process-oriented view and costs around $400. C/C++ implementations. This
is a real jewel. Has a makefile from hell- just about every computing
platform known to man. It is one of the first tools we reach for to crank
out a fast model. We know of several Fortune 500 companies that use CSIM
as one of their mainstays.

And Herb knows the meaning of customer satisfaction, too. We called him at
home while on the road consulting at a client's facility to correct what
turned out to be our own stupidity. And Herb was as delightful as ever. He
even sent us a version that works on a Mac laptop without the
co-processor. We feel confident having an industrial strength C++
simulation package like CSIM on our Duo 280. Contact Herb at his new
company, Mesquite Software, (512) 338-9153.

[11.] Available from NASA's COSMIC, (706)542-3265, about $300
*************************************************************

Sometimes heuristics are all that is needed. Towards that end, you can't
go wrong with the Splicer application. This is a genetic algorithm tool,
implemented in MacIntosh THINK C, and has a clean interface. Genetic
algorithms and simulated annealers can find solutions to tough constrained
optimization problems. You can modify all the source code if you have the
THINK compiler, too. The GA kernel has been ported to many workstations,
including a X-window interface.

[12.] FutureBasic, Zedcor, (602)881-8101, $170
**********************************************

Combine this modern basic with PG:PRO's user interface frameworks and you
have all you need for MacIntosh application development. Futirebasic is
way ahead of its time, providing a total development environment for a
basic you never expected to see. Check this code fragment and note new
capabilities, e.g., local functions:

SELECT gSubAction
  CASE _mainStart
    FN killSTR(_PICTListSTR)
    resID = 10000
    cnt = 1
    DO
      h& = FN GETPICTURE(resID)
      LONG IF h&
        CALL GETRESINFO(h&,resID,tp&,t$)
        LONG IF cnt = 1
          FN newStr(_PICTListSTR,t$)
          gPict$ = t$
        XELSE
          FN apndElement(_PICTListSTR,t$)
        END IF
        INC(cnt)
        INC(resID)
      END IF
    UNTIL h& = 0
    FN pGbuild(_ViewerWnd)
    EDIT FIELD #_titleFld,%129,,noFramedNoCR
    PICTURE FIELD #_myPictFld,gPict$,@gPictRect,_framedNoCR,_cropPict'
display first pict
END SELECT:RETURN

This is a powerful development environment you will hear more about. Word
is that a FB-to-VisualBasic framework is under development. PG:PRO, about
$200, is available from STAZ Software, (601)-255-7085, staz@aol.com.

Wrap Up
*******

That about does it. Yes, we probably missed your favorite package. We
happen to not be too fond of BONES, COSSAP, SIMULA, GPSS/PC, SLAM II,
RDD's DVM facility, S+, blah, blah, blah.

BONES has all the potential to be a great network modeling environment, if
someone will only clean up its user interfaces. The icons look primitive
and models appear cluttered as soon as things get complex. (Seems that one
could eliminate those little triangles on each icon for starters.) This
appears to be one of the few GUI-driven tools that includes some
sophisticated post processing capabilities.

Some have written to us and asked if we have tried this or that package.
Sorry, but space does not permit us to comment on all the packages
available. We try to stick to those that have helped us get the job done
over the years. If you think you have the next simulation killer app,
*and* it is available for the MacIntosh, we would like to see, try or hear
more about it. If it does not run on the MacIntosh, we would still like to
hear from you and read all about your favorite application. (Offers to
loan us a workstation will not be refused. No PCs, please!)

In the simulation and modeling business, try to avoid taking the quick and
dirty way out, i.e., opting for packages that come with lots of canned
models and a point-and-click interface ("No programming required!"). These
tools have their place in your toolkit, and we could not practice our
craft without them. But, you will also require a solid programming
language, e.g., Modsim II, C++, Smalltalk, Futurebasic, to build those
realistic models that never seem to appear in the canned libraries. You
will also find that maintenance of models that exist as lots of connected
icons on a graphical drawing surface is very difficult. We have went back
to some models after only a couple of months and found myself staring at
the graphical equivalent of spaghetti code! Until someone comes up with
some realistic software engineering concepts for these GUI-driven
environments (and NO ONE has to date- sorry Ed, Prem, B.P., Paul), steer
clear of them as your exclusive modeling domain.

Good luck and we hope this helps you get started.

Coming in version 3.0:
 (1) "Prograph/CPX, Is It For Real or Memorex?"
      A totally visual, general-purpose, programming environment? Hard to
believe, but I have seen it and tried it. Might be the start of something
big. About $600, Prograph International (800)-927-4847

 (2) Extend
     Runs on the MacIntosh and the PC. A GUI-driven simulation
environment! Features animation, queueing and Monte Carlo, sensitivity
analysis, customizeable front-end, and much more. Guess what? It also
ships with a floating point and non-floating point version. Now that's
what we've been honking like gooses about above. $695, Imagine That, Inc.,
(408)-365-0305


               And now a word from our sponsor
*****************************************************************
IQ Tech is a New Jersey based, product-focused company, offering
products that leverage our seven core competencies:

-methods of overload and congestion control in broadband networks,
-algorithms for computing performance measures for complex
stochastic systems,
-transient solutions to a general class of single server queues,
-methods for design of cellular radio/wireless networks and their
software architectures,
-algorithms for cellular radio dynamic resource allocation,
-methods of telecommunications network topological design, and
-techniques of telecommunications system simulation and modeling.

Our first product, BAND(tm), will be focused upon the broadband
ATM network design market. We plan a market release in 3Q95. IQ
Tech possesses broadband network design IPR that will give clients
a significant 'unfair advantage' when utilized. For more
information about our company contact:

+1.908.493.6108, (fax 4465)            +1.602.917.9543, (fax 9493)
10 Oak Tree Lane                           1857 W. Calle del Norte
Wayside, NJ 07712                          Chandler, AZ 85224-5119
******************************************************************

---------------------IsoQuantic Technologies---------------------
Patrick L. Reilly                          Voice: +1.602.917.9543
preilly@isoquantic.com                        fax:+1.602.917.9493
-----------1857 W. Calle Del Norte, Chandler, AZ 85224-----------




Author: "R. Kerr" <R.Kerr@ncl.ac.uk>
Date: 7 Feb 1995 18:12:16 GMT
Raw View
THE PAKISTANI DEMON (beg@nunki.usc.edu) wrote:
> Hi netters,

> I am trying to do a simulation in C++ of a network(manufacturing) and need help as to what books are there that have been written or published in this regard. Are there any papers that have been publised or any ftp sites for code that did simulation in
C++ that I could take a look at for help and reference. Any help will be greatly appreciated.

> What I need are details since that will give me a starting point. Thanks. Please respond my emailing me directly since that might be a lot more faster and convenient for me.

Have a look at C++SIM which imitates SIMULA's simulation features. It can
be ftped from arjuna.newcastle.ac.uk. There is a paper there too.

Cheers....Ron

------------------------------------------------------------------------
  Ron Kerr, Computing Service, Newcastle University, NE1 7RU, England.
 Tel. +44 191 222 8187       Fax. +44 191 222 8765  (NOTE new area code)
------------------------------------------------------------------------





Author: beg@nunki.usc.edu (THE PAKISTANI DEMON)
Date: 3 Feb 1995 11:34:07 -0800
Raw View
Hi netters,

I am trying to do a simulation in C++ of a network(manufacturing) and need help as to what books are there that have been written or published in this regard. Are there any papers that have been publised or any ftp sites for code that did simulation in C++ that I could take a look at for help and reference. Any help will be greatly appreciated.

What I need are details since that will give me a starting point. Thanks. Please respond my emailing me directly since that might be a lot more faster and convenient for me.


-Mohsin
beg@usc.edu




Author: jbuck@synopsys.com (Joe Buck)
Date: 5 Feb 1995 22:17:24 GMT
Raw View
beg@nunki.usc.edu (THE PAKISTANI DEMON) writes:

>I am trying to do a simulation in C++ of a network(manufacturing) and
>need help as to what books are there that have been written or
>published in this regard. Are there any papers that have been publised
>or any ftp sites for code that did simulation in C++ that I could take
>a look at for help and reference. Any help will be greatly
>appreciated.

See Ptolemy, a large, freely redistributable heterogeneous simulation
and prototyping system in C++.

ftp site: ptolemy.eecs.berkeley.edu
Web site: http://ptolemy.eecs.berkeley.edu
Usenet newsgroup: comp.soft-sys.ptolemy

--
-- Joe Buck  <jbuck@synopsys.com> (not speaking for Synopsys, Inc)
Phone: +1 415 694 1729