UPDATE: trial balloon - free seismic interpretation

Will Morse (will@Starbase.NeoSoft.COM)
2 Feb 1995 18:13:36 -0600

Hi,

This is being called an UPDATE as opposed to a SUMMARY because
every time I sit down to write a SUMMARY, I receive more email.
At the same time, it's been a couple weeks since I first posted,
so I should be giving you some feedback.

I am posting this to quite a few newsgroups but setting followups to
sci.geo.petroleum as that is the natural place for this discussion.

The original posting is appended to this note. Rather than mention
each person and idea by name, I'll try to cover the ideas.

Let me say that everything is STILL OPEN at this point. There has been
no work, investment, or anything else committed at this stage. There
is not (as someone asked) a package waiting in the wings that is just
looking for a distribution scheme. We are STILL LOOKING for ideas,
comments, suggestions, and people interested in being involved.

FUNDING:

This was where most of the comments came in. Some responders were
concerned that by making this software free, we would destroy America.
They were concerned that the Unites States government, and therefore
they as U.S. taxpayers, would pay for this, either directly or
indirectly through U.S. government supported academic research.
Apparently the idea that there are other nations and governments
and universities, etc. that are not in the United States nor are
they supported by U.S. taxes didn't occur to these people. In any
case, the existance of free software on the Internet is an established
fact.

Anyway, the whole idea of how this might be funded is completely up
in the air. There have been NO proposals to anyone to fund this at
this time.

I had rather imagined that this would be funded by people volunteering
their time, which of course would really be their employer's time, be
that an oil company, university, or whatever, together with the use
of some small smattering of disk space and CPU time and Internet access.
The notion is to provide some modules, not a full tilt integrated
system with distribution, license management, help desks, hardware
sales and support, and all the other features that go into a commercial
seismic interpretation venture.

I think this is possible because there are several free software
packages available on the Internet that are argueably much more
complex that have pretty much been developed in people's spare
time.

USERS:

Someone thought that academics wouldn't have access. The idea is to
put this up on the Internet in an ftp site, www site, or whatever
(for that matter, probably several of each) and let anyone have it
who can down load it. This would include academics, oil companies,
commercial software developers, environmental groups, housewives,
Amway salespeople, oilnet subscribers, and so on without limit.

There is the idea, however, that people who want it, but do not have
the access or skills to download or install it themselves, should be
able to have a consultant make up whatever shortfall and the consultant
should be able to charge for having the knowledge and access necessary
to make this happen.

Competition to Commercial Software:

I expect that no matter what, this software will not be as fast as
commercially available software. At first, it will have less features
than most commercial software, but it will probably have many features
commercial software doesn't have at various points in its life. This
will see-saw back and forth over the long term since commercial
developers will be able to get the software and incorporate the best
ideas into their own software (perhaps not the code itself, just the
concepts). It just won't have the handholding, hardware support,
salesman pushing the concept, classes, salesman buying lunches, and
all the other "value-added" that a commercial software package has.

I really don't see this as being in competition with commercial software.

Probable Non-users:

While certainly not anyone you or I know personally, we have all heard
that over at XYZ Oil there are a lot of interpreters who never crack
the manuals, they get all their information by calling the help desk
and never remember a feature from one day to the next.

Similarly, we all remember that guy over at Bogus Exploration who used
to say, "I don't understand feature X, could you show me how to use
it? And by the way, I have to go to a meeting, could you just call me
when you're done?"

These are people and companies who would do best to get a commercial
package and pay for the support.

Possible Users:

On the other hand, many of us know Jack over at One More Try Oil Co.
who has wires all over his office and runs the commercial software
under a debugger with a whole bunch of awk scripts to fool it into
treating attribute A as attribute C so he can get a map that shows
oil saturation as a function of paleomagnitism or something. Jack
is probably the guy who would really get something out of a package
such as we have been discussing.

We also know the guys at Two Guys Exploration International, who are
long on smarts but short on capital. They could use software like
this until they start making enough to buy a commercial package.

Of course there is the Geology Department at No-Federal-Bucks-For-You
University who are seeing enrollments down and the dean is saying
"There is no future in geology what with the E&P industry in the toilet,
lets put our (non U.S. taxpayer raised) money into training people
to use Visual Basic on Windows 95." They obviously could make their
research go farther with a free package. It would also give them a way
to publish their research as code that someone could drop into their
copy and test and/or use with reasonable lead times.

I think that the appeal of this software will not be its price or
its features, but the ability of the user to control his own
destiny.

NOTHING IS FREE:

I would expect Big Oil (whoever that is) will probably not throw away
$8 million in licenses from Big Software (whoever that is), just
because a free, user supported package became available on the Internet.
I expect that the "Jack"s in these companies might pick up a copy.
I expect that some small companies that have more expertise than
capital might get a copy. I expect some academic sites might get
a copy. I would hope that they would repay the community by telling
us how they used it, making their "glue" routines available, debugging
it, and all the things other communities of free software users do.

I think this feedback and cross fertilization will be the main payback
to the developers rather than any monetary consideration.

MARKET SHARE:

There was, however, a very valid point in one message. There have been
a fairly large number of startups and other projects to develop seismic
interpretation software that never went anywhere. As far as I can tell,
these were all software-for-sale, not free software, but still they were
priced a lot lower than the market leader. Why didn't these software
packages succeed?

Certainly one reason may have been the head to head competition. If
these packages were positioned as direct competitors to the market
leaders, then they would have had to bring along all the ancillary
services that the market leader can provide. Perhaps by positioning
this software (in its natural role) as an adjunct to commercial
software, we can avoid that trap.

Another reason is the lack of communication that software users have had
until the recent explosion of Internet connections. If you didn't have
a booth at the SEG, no one would ever hear of you. The Internet is
changing that, especially for free software.

If you feel there are other reasons I should know about, by all means
feel free to email me or post on sci.geo.petroleum.

LANGUAGES / CONNECTIONS:

Several people have nominated their favorite language. Tk as a
function of Tcl, perl, and python has been suggested. Making the
program a module for Khoros or AVS has been suggested. Khoros is
an image processing system with a graphical extension language
called cantata, which seems like a good fit. Khoros either has
or is getting a perl extension.

Other free software that may or may not fit include GMT (Generic
Mapping Tools), and Seismic Unix.

My inclination is to try and figure out a way that the modules would
be independent of the hardware/systems-software platform and would
be accessible from as many languages and packages as possible. At
the same time, we would have to start somewhere.

I think this is still very much an open question.

MODULES:

The modules would still seem to be:

1. A seismic section display able to accept seismic as input (maybe
processed in by a "glue" routine, or maybe straight from a SEG-Y
file (probably in some on-disk incarnation) or maybe in some
other optimized file format) and able to pass horizon and fault
picks back to the "glue" routines. One suggestion was to take
the existing Tk canvas widget and modify it to suit. Using
a Khoros module and modifying it was also suggested.

Well locations, culture.

2. A map window.

Navigation, well locations, culture.

3. A color-bar.

Something to control the number of colors allocated so that the
program plays well with others.

4. A SEG-Y reader. Maybe with a UKOOA reader and some other formats.

Maybe this is a set of templates that the user modifies to suit.

There would probably be a need for communications between the windows,
although this would probably be supplied in the "glue". Something to
make RPC calls or something might need to be included.

ADVANTAGES:

1. Open and extensible algorithms.

This allows people to use this software and make whatever code
changes they need or want to get their job done. We would hope
they would be able to do this in the high-level language "glue"
routines rather than necessarily modifying the modules.

2. Control of own destiny.

If the program doesn't do it, and you have to do it, the code is
yours to modify.

If the other department has all the licenses tied up and you need
to get some interpretation done come Hell or high water, there is
no limit to the number of copies you can have.

If you need a function that your commercial package doesn't provide,
you don't need to put together an AFE and walk it through the
committee, just download, make, and go.

DISADVANTAGES:

1. Support.

Only support is what the newsgroups will give you.

2. You need to have some programming ability.

At a minimum, you would have to be able to run the make, or hire
someone to run the make for you. The base functionality will
probably be little more than a demo to get you started, although
this would improve over time.

INTEREST THUS FAR:

I think it is still early days, and a lot of people want to see more
before they express interest, but despite a good number of comments,
I don't think we have critical mass here. There have been two people
so much as volunteer to help, although no specifics as yet. I haven't
contacted them directly as I don't really have any task list yet.

WHAT NEXT:

1. Keep the concept open, more people have written to me every day.

2. Look into more detail on Khoros and AVS.

3. Collect ideas on how the interfaces and such should be for the
modules we have discussed.

CONTACT:

email will@starbase.neosoft.com

post sci.geo.petroleum

============================= ORIGINAL POSTING ======================

Hi,

INTRODUCTION:

This is a trial balloon to see what ideas, interest, suggestions,
comments, etc. there might be concerning a free seismic interpretation
system. As this message is posted to several newsgroups, I should
explain that seismic interpretation is a technology used in
exploration for oil and gas. I should also explain that seismic
processing is related, but different.

LICENSING:

The exact licensing might be public domain, GPL (GNU Public License),
or something similar. The idea is that the package would be freely
available, but that a consultant, say, could charge for his effort
in finding and installing the system.

STRUCTURE:

The software would most likely consist of TK compatible widgets and
code in Tcl or perl to connect them. The idea is that most commercial
seismic interpretation systems have assumptions that are not always
valid. This method would give the user the ability to change the system
more easily than would a program written in C or C++.

I imagine the system would consist of a seismic section window, with
options to make it a time section, depth section, or other arbitrary
section with the horizontal axis defined arbitrarily (line/cdp, inline/
xline, x/y, etc.)

The system would also probably need a flexible map widget.

Both the section and map widgets would need to be able to accept
arbitrary overgraphics for cultural data, well locations, etc.
These could be supplied using a method similar if not
identical to the existing canvas widget.

There would also need to be ancillary widgets to set up color mapping
and so on, but it is not clear that these could not be built from
standard Tk and not need to be special custom widgets.

DATA LOADING:

Data loading would probably most easily be done by using tcopy
to place the SEG-Y tape on disk and then accessing the disk copy directly.
This might, however, involve too poor of performance.

SEG-Y is a fairly complex tape format with an EBCDIC header, a
binary header for a line, binary headers for each trace, and a
mixed length trace based on parameters in the trace header.

In addition to the trace data, there is often a separate file or tape,
often in UKOOA format, that specifies navigation (location) data.

HARD COPY:

CGM+ is widely used in seismic interpretation packages, but it is
relatively more difficult than PostScript. There are also a lot of
PostScript printers, although most of them will not print a page
large enough for a good seismic section. PostScript is also easily
used with Xfig, a free program that is useful for making overheads
and slides.

HARDWARE / PLATFORM ISSUES:

The system would have to be able to handle more than one framebuffer
(monitor), and handling at least three monitors would be a plus.
This is not completely easy in the current Tk, and might require
additional patches or something.

Perhaps Xmove might be the way to handle this.

LANGUAGE ISSUES:

Tcl does not handle binary data particularly well. Nulls are a problem
to Tcl. For this reason, TkPerl might be more attractive. The widgets
should be pretty much the same in either case, but the supplied glue
would probably need to be in one form or the other.

IS THIS WORTH DOING?:

-- Pro:

Seismic interpretation packages cost from about $40,000 to $100,000 and
more per seat. Unrestricted free licenses should be of interest to
many petroleum exploration companies, particularly in this day of
down sizing and tight budgets.

The ability to control one's own destiny should also be of interest as
there are many unresolved problems in commercially available packages.

-- Con:

Management in all companies are leery of free software for obvious
reasons. Seismic interpretation is considered mission critical
for most exploration companies so they might not want to risk this
work to free software.

OTHER:

There may be some synergy possible with Seismic Unix, a free processing
package from the Center for Wave Phenomonon at Colorado School of Mines.

CODA:

If you feel this is worth doing, or if you are interested in participating
in such a project, please send me email at:

will@starbase.neosoft.com

There has been no work at all done on this as yet, the purpose of this
posting is to determine if there ever should be.

Will

-- 
#      Gravity,                    #    Will Morse
#      not just a good idea,       #    BHP Petroleum (Americas) Inc.
#              it's the law.       #    Houston, Texas 
#                                  #    will@starbase.neosoft.com
#
#   These are my views and do not necessarly reflect the views of BHP !