Newsgroups: comp.ai.neural-nets
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!nntp.sei.cmu.edu!news.cis.ohio-state.edu!math.ohio-state.edu!howland.reston.ans.net!newsfeed.internetmci.com!in1.uu.net!news.interpath.net!sas!newshost.unx.sas.com!saswss
From: saswss@hotellng.unx.sas.com (Warren Sarle)
Subject: Re: y (approximation) is close to t (target) ?
Originator: saswss@hotellng.unx.sas.com
Sender: news@unx.sas.com (Noter of Newsworthy Events)
Message-ID: <DsnK91.Ln8@unx.sas.com>
Date: Fri, 7 Jun 1996 23:07:49 GMT
X-Nntp-Posting-Host: hotellng.unx.sas.com
References: <DsCC04.C3u@zeno.fit.edu> <4p4fsr$ke@llnews.ll.mit.edu>
Organization: SAS Institute Inc.
Lines: 64


In article <4p4fsr$ke@llnews.ll.mit.edu>, heath@ll.mit.edu (Greg Heath) writes:
|> I'm curious. Can you give us some details? For example,  
|> 
|> 1. What was your design set?

A 31 by 31 grid on [-1,2]x[-1,2].

|> 2. Are you using your own algorithm?
|>
|> 3. How did you choose your basis function parameters?
|> 
|> 4. How did you choose your linear output weights?

I tried several algorithms in our nonlinear programming procedure NLP,
including the usual conjugate gradient and Levenberg-Marquardt. The
optimization algorithms determine all of the centers and weights.

|> 5. ... Anything else that is relevant. 

Here are all the gory details. You can run this code if you have
the SAS/OR product.

%let a=.25;
%let b=.75;

data t;
   do x1=-1 to 2 by .1;
   do x2=-1 to 2 by .1;
      t=  exp(-(x1 - &a)**2 - (x2 - &b)**2)
        + exp(-(x1 - &b)**2 - (x2 - &a)**2);
      output;
   end;
   end;
run;

* Contour plot of target surface;
proc gcontour data=t; plot x2*x1=t; run;

* Fit two Gaussians;
proc nlp data=t random=123;
   parms c11 c12 c21 c22 w1 w2;
      p=  w1 * exp(-(x1 - c11)**2 - (x2 - c21)**2)
        + w2 * exp(-(x1 - c12)**2 - (x2 - c22)**2);
   r =p-t;
   lsq r;
run; 

* Fit four Gaussians;
proc nlp data=t random=123;
   parms c11 c21 c12 c22 c13 c23 c14 c24 w1 w2 w3 w4;
      p=  w1 * exp(-(x1 - c11)**2 - (x2 - c21)**2)
        + w2 * exp(-(x1 - c12)**2 - (x2 - c22)**2)
        + w3 * exp(-(x1 - c13)**2 - (x2 - c23)**2)
        + w4 * exp(-(x1 - c14)**2 - (x2 - c24)**2);
   r =p-t;
   lsq r;
run; 

-- 

Warren S. Sarle       SAS Institute Inc.   The opinions expressed here
saswss@unx.sas.com    SAS Campus Drive     are mine and not necessarily
(919) 677-8000        Cary, NC 27513, USA  those of SAS Institute.
