Bài toán tối ưu không trơn: Lý thuyết, một số giải thuật và ứng dụng