Tôi đang sử dụng QuickCheck để kiểm tra mã của mình cho một số phép tính số. Về cơ bản tôi có một chức năng chính xác và một số xấp xỉ của nó có hiệu quả hơn nhiều.Kiểm tra nhanh các thử nghiệm không phải là boolean
tôi đang thực hiện các thuộc tính Tôi muốn thử nghiệm một cái gì đó như:
prop_blah input = (abs $ (exact input)-(approx input)) < threshold
Nhưng nó sẽ thực sự tốt đẹp để biết chính xác cách chính xác từng thuật toán xấp xỉ là gì và so sánh chúng với nhau. Một cách dễ dàng để làm điều này là để có được các báo cáo về độ lệch chuẩn và trung bình của phía bên tay trái của sự bất bình đẳng. Điều này bằng cách nào đó có thể?
Vâng, bạn vẫn có thể sử dụng khung QuickCheck của để tạo đầu vào ngẫu nhiên. Để tính toán số liệu thống kê, bạn có thể thích gói [statistics thống kê] rõ ràng (http://hackage.haskell.org/package/statistics). –
Tôi nghĩ rằng bạn cần một số bằng chứng rằng 'khoảng' sẽ không phải là một yếu tố * x * đi từ câu trả lời chính xác, với kiến thức rằng tài sản quickcheck là tầm thường. Nghĩa là, nó có thể giúp phân tích hàm xấp xỉ của bạn về mặt lý thuyết. – Tarrasch
@Tarrasch Tôi đồng ý rằng bằng chứng như vậy sẽ là tốt đẹp, nhưng tiếc là các thuật toán này thường làm khá tốt, nhưng có hiệu suất trường hợp xấu nhất tồi tệ. Sắp xếp như một heuristic cho NP-hoàn thành vấn đề. –