<PAGE>
                                                                    EXHIBIT 10.3

                           GENERAL PHYSICS CORPORATION
                                 2004 BONUS PLAN

The GP bonus plan is based on total year, 12 month performance. The existing
plan and any subsequent changes to the plan is at the discretion of the GP
senior leadership team.

BU Plan

BU Performance Bonus

A BU must achieve a minimum of 100% of budgeted NIFO and 90% of budgeted revenue
to be eligible for a BU Performance Bonus.

A BU can earn 4% of NIFO as bonus if they hit 100% of NIFO budget and achieve at
least 90% of Revenue budget. For bonus calculation purposes, BU NIFO will be
after charges for bad debt.

If BU NIFO is in excess of Budget, BU earns 7% of NIFO in excess of budget.

The total dollars eligible for payout will be calculated as follows:

70 points based on achieving 100% or > NIFO budget and 90% or > of Revenue
budget
10 points based on Training Hours (per Attachment A)
10 points based on Performance Reviews (per Attachment A)
10 points based on Retention (per Attachment A)

100 Total Eligible points

The total dollars earned, including 7% of NIFO in excess of budget, will be
multiplied by the total points earned to determine the dollars available for
payout.

Note: The minimum points a BU can achieve is 70, since they are required to
achieve 100% of NIFO budget and 90% of revenue budget to be eligible for a BU
performance bonus.

Company Performance Bonus

If the company achieves 100% of budgeted NIBT, BU's with actuals 100% or greater
of budgeted NIFO will earn an additional 1% of budgeted NIFO as bonus. BU's with
actuals less than 100% of budgeted NIFO will earn a bonus of 1% of actual NIFO.

*    Company NIBT will exclude gains and losses related to discontinued
     operations.

<PAGE>

Group Leader

Group Performance Bonus

A Group Leader must achieve a minimum of 100% of budgeted NIFO and 90% of
budgeted revenue to be eligible for a Group Leader Performance Bonus.

The bonus amount established at start of year and earned if group achieves 100%
of NIFO budget and achieves revenue of at least 90% of budget. For bonus
calculation purposes, Group NIFO will be after charges for bad debt.

If the Group is in excess of Budget, Group Leader earns an additional bonus of
2% of NIFO in excess of budget for each respective BU.

The total dollars eligible for Group Leader payout will be calculated based on
overall group performance as follows:

70 points based on achieving 100% or > NIFO budget and 90% or > of Revenue
budget
10 points based on Training Hours (per Attachment A)
10 points based on Performance Reviews (per Attachment A)
10 points based on Retention (per Attachment A)

100 Total Eligible points

The total dollars earned, including 2% of NIFO in excess of budget will be
multiplied by the total points earned to determine the dollars available for
payout.

Note: The minimum points a Group Leader can achieve is 70, since they are
required to achieve 100% of NIFO budget and 90% of revenue budget to be eligible
for a Group Leader performance bonus.

Company Performance Bonus

The group leader can earn an additional bonus amount, to be established at start
of year if company achieves 100% of NIBT budget.

Corporate Pool

A corporate pool will be established at the start of the year to cover SLT
budget amounts and a pool for those individuals not assigned to a group.

<PAGE>

                        ATTACHMENT A - POINT CALCULATION

<TABLE>
<S>                                                      <C>
TRAINING HOURS
If training hours > 14 per employee = 3 pts.
If training hours > 17 per employee = 7 pts.
If training hours > 20 per employee = 10 pts.            10

PERFORMANCE REVIEWS
If 90% of reviews done on time = 3 pts
If 95% of reviews done on time = 7 pts
If 100% of reviews done on time = 10 pts                 10

RETENTION
If regular voluntary employee retention > 80% = 3 pts
If regular voluntary employee retention > 85% = 7 pts
If regular voluntary employee retention > 90% = 10 pts   10
</TABLE>