ข้อบกพร่องในสคริปต์ Python อาจทำให้ผลลัพธ์ที่ไม่ถูกต้องในสิ่งพิมพ์ด้านเคมีมากกว่า 100 ฉบับ

นักศึกษาระดับบัณฑิตศึกษาจากมหาวิทยาลัยฮาวาย พบ ปัญหาในสคริปต์ Python ที่ใช้ในการคำนวณ การเปลี่ยนแปลงทางเคมีซึ่งกำหนดโครงสร้างทางเคมีของสารที่กำลังศึกษาในระหว่างการวิเคราะห์สเปกตรัมของสัญญาณโดยใช้วิธีการ เรโซแนนซ์แม่เหล็กนิวเคลียร์. ขณะตรวจสอบผลการวิจัยของอาจารย์คนหนึ่งของเขา นักศึกษาระดับบัณฑิตศึกษาคนหนึ่งสังเกตเห็นว่าเมื่อรันสคริปต์บนระบบปฏิบัติการที่แตกต่างกันบนชุดข้อมูลเดียวกัน ผลลัพธ์จะแตกต่างออกไป

ตัวอย่างเช่น เมื่อทำงานบน macOS 10.14 และ Ubuntu 16.04 สำหรับชุดข้อมูลที่ทดสอบ สคริปต์ ออก ค่าไม่ถูกต้อง 172.4 แทนที่จะเป็น 173.2 สคริปต์นี้มีโค้ดประมาณ 1000 บรรทัดและถูกใช้โดยนักเคมีมาตั้งแต่ปี 2014 การตรวจสอบรหัสพบว่าเอาต์พุตไม่ถูกต้อง ปรับอากาศโดย ความแตกต่างเมื่อเรียงลำดับไฟล์ในระบบปฏิบัติการที่แตกต่างกัน ผู้เขียนบทเชื่อว่าฟังก์ชัน "โลก()" ส่งคืนไฟล์ที่เรียงลำดับตามชื่อเสมอ ในขณะที่เอกสาร glob ระบุว่าไม่รับประกันลำดับเอาต์พุต การแก้ไขคือการเพิ่ม list_of_files.sort() หลังการเรียก glob()

ข้อบกพร่องในสคริปต์ Python อาจทำให้ผลลัพธ์ที่ไม่ถูกต้องในสิ่งพิมพ์ด้านเคมีมากกว่า 100 ฉบับ

ปัญหาที่ค้นพบนี้ทำให้เกิดข้อสงสัยในความถูกต้องของสิ่งพิมพ์เกี่ยวกับเคมีมากกว่า 100 ฉบับ ซึ่งข้อสรุปดังกล่าวจัดทำขึ้นบนพื้นฐานของการเปลี่ยนแปลงทางเคมีที่คำนวณโดยสคริปต์ ไม่ทราบจำนวนการศึกษาที่แน่นอนที่ใช้สคริปต์ แต่มีการอ้างอิงสิ่งพิมพ์ที่มีรหัสในเอกสาร 158 ฉบับ ผู้เขียนผลงานเหล่านี้แนะนำให้ประเมินความถูกต้องของสคริปต์บนระบบปฏิบัติการที่ใช้ในการคำนวณและคำนวณใหม่เพื่อให้แน่ใจว่าค่าที่คำนวณได้นั้นถูกต้อง เหตุการณ์ดังกล่าวเป็นตัวอย่างที่ดีของความจริงที่ว่าไม่เพียงแต่คุณภาพของการทดลองเท่านั้น แต่ยังรวมถึงความถูกต้องของการประมวลผลข้อมูลที่ได้รับในโปรแกรมที่
ซึ่งมีการใช้กันอย่างแพร่หลายอาจส่งผลต่อผลลัพธ์สุดท้าย

ที่มา: opennet.ru

เพิ่มความคิดเห็น