Bi-level programming techniques are developed for decentralized decision problems with Decision Makers (DM) located in a two-level decision making system; the upper-level decision maker is termed the leader while the lower-level decision maker is the follower. Both the leader and the follower try to optimize their own objective functions and the corresponding decisions don t control but do effect on those of the other levels.