In recent decades, the problems related to the order acceptance and scheduling is taken into consideration. Paying attention to the order acceptance and sequencing of orders creates a balance between revenue and the cost of the existing orders on the sequence. Because the manufacturer can deliver the orders with the highest profits in its due-date, by rejecting some of the orders and accepting the rest of them. Problems related to concurrent decisions on the acceptance or rejection of an order and sequencing of them are Known as Order acceptance and sequencing problems. In this thesis first, we investigate the order acceptance and sequencing problem with maximum profit as the target function and with total weight of tardiness as the cost function. To solve this problem, the time-index model and heuristic algorithms based on the relaxation of a time-index model with the name of SODP is presented. The algorithm consists of two dynamic programming algorithms to find tight Upper-bound and a heuristic algorithm to find a tight lower-bound. The Upper-bound heals by sub-gradiant optimization. Also there are some dominance rules for this problem. Computational results indicate that the time-index model can not solve all the problems with the 20 to 100 orders . But the SODP algorithm is able to order up 200 orders with 0.23 error. The promlem of two agent Order acceptance and scheduling with the aim of making profits,is the second problem investigated in this thesis. Cost function of first agent is total weighted tardiness and cost function of second agent is number of tardy jobs. So far this issue has not been the subject of reviews in the literature. First we prove that this problem is converted to another problem with less complexity Also there are some dominance rules for this problem. To solve the problem of two agent order acceptance and scheduling an heuristic algorithm, named SODP‘i presented . Computational results show the time index model is not be able to solve the problems up to 150 orders. But the heuristic algorithm can solve problems up to 200 orders with 4.0% error compared to the best upper-bound in all categories.