1. A method of translating two languages using statistical machine translation (SMT) and a generalized asymmetric traveling salesman problem (GTSP) graph, comprising: defining a SMT problem as a GTSP; translating blocks of an input sentence using bi-phrases corresponding to nodes in a GTSP graph that represents the GTSP; solving the GTSP; and outputting the translated blocks in an order defined by the GTSP solution.