Stochastic Resonance (SR) can be used to help detect weak signals because of its ability to enhance periodic and aperiodic signals. The noisy signal x(t) has 0 mean Gaussian white noise ξ(t) with variance σ2 added to it, and is then used to excite a nonlinear bi-stable equation such as y'(t) ay(t) − by(t)3. Thus our enhanced signal is the solution of y'(t) ay(t) − by(t)3 + x(t) + ξ(t). This provides significant improvement in the Signal to Noise Ratio (SNR), when properly tuned. Tuning of the SR is the difficult part due to the complexities involved in solving the nonlinear Stochastic Differential Equation (SDE) analytically to determine the dependencies on a, b, and σ2. A solution to this is Particle Swarm Optimization (PSO). PSO is a stochastic search algorithm based upon particles communicating in order to find the maximum or minimum value of a function. This is accomplished by having the particles search among the possible input values. Each particle is pulled toward the best position at which it has ever been as well as the best position at which any particle has ever been. In this case the particles will determine the best values for a > 0, b > 0, and σ2 > 0. What is missing is the objective function, i.e. the function which we will optimize. The function that we will use is the SNR gain, that is SNRgain SNRout SNRin We estimate this by finding the frequency buckets of the resulting signal that are above the average. The energy in these buckets is assumed to be the signal energy for both input and output signal. The remaining buckets are assumed to be noise in both signals. We will use the PSO to maximize the SNR gain in order to tune the SR for maximum signal enhancement. This will allow us to detect faint signals that may be present in the original noisy signal. If no significant SNR gain is achieved, than we must conclude that there is no signal hidden in the noise.