Error in script

I understand this is really simple, but for some reason I can't get the thing to start after 20 seconds.

function FixedUpdate () {
    Invoke(rigidbody.AddForce, 20);
    rigidbody.AddForce (Vector3.up * 3000);
}

It basically turns on the addforce function after 20 seconds.

First, I'm not an expert on Invoke, but when I looked it up the manual, it takes a string argument. Second, do you really want to call it in FixedUpdate, which runs (roughly) every frame? If I read that last line correctly, you wanted it to start after 20 seconds.

var startForce = true;

function FixedUpdate() {
    Invoke("UseTheForce", 20);
}

function UseTheForce() {
    if (startForce) {
         rigidbody.AddForce (Vector3.up * 3000);
         startForce = false;
    }
}

This would run one time. Again, I'm not sure of your intent - if you wanted it to repeat, then get rid of the boolean. Better yet, use InvokeRepeating and call it from the Start() function.

You need to reference the object that the AddForce is being applied to, through a gameObject or gameObject.Find("object name").