Sunday, April 4, 2010

ฉบับที่ 8 (เมษายน 2010)

Opening

สุขภาพเป็นเรื่องสำคัญสำหรับทุกคนนะครับ ที่ผมเกริ่นขึ้นมาเช่นนี้ ก็เพราะว่าปีนี้เป็นปีที่มีการเปลี่ยนแปลงของอากาศมากเหลือเกินครับ ผู้อ่านที่เรียนหรือทำงานอยู่ในประเทศไทยบ่นให้ผมฟังว่า ปีนี้อากาศร้อนมากจริงๆ ส่วนคนที่อยู่ทางยุโรปและอเมริกาก็ต้องเผชิญกับอากาศที่หนาวกว่าปกติ อย่างไรก็ตาม การดูแลรักษาสุขภาพเป็นเรื่องที่ทุกคนต้องให้ความสำคัญไว้เป็นอันดับต้นๆ นะครับ ทั้งนี้ก็เพื่อให้เรามีร่างกายที่แข็งแรงเพื่อพร้อมในการเรียนหรือทำงาน


สำหรับเพื่อนสมาชิกที่อยู่เมืองไทยก็กำลังจะได้มีวันหยุดยาว เนื่องจากเป็นวันสงกรานต์ คราวนี้คงได้หายเหนื่อยกันล่ะครับ หลังจากที่ได้โหมงานหนักกันมาตั้งแต่ปีใหม่ ส่วนเพื่อนสมาชิกที่อยู่ต่างประเทศก็คงได้คลายเหนื่อยกับวันหยุดอีสเตอร์กันด้วยนะครับ ผมเองก็ถือโอกาสแอบมาเที่ยวหลายวันเลยทีเดียว แต่ก็อย่ามัวแต่เที่ยวเพลินจนลืมกลับมาทำงานกันนะครับ


ช่วงนี้ THAI BIOINFORMATICS ของเรากำลังอยู่ในช่วงตั้งต้นครับ อาจจะขลุกขลัก หรือติดขัดไปบ้าง ทางทีมงานก็ต้องขออภัยมา ณ ที่นี้ด้วยครับ พวกเราทุกคนกำลังพยายามทำงานอย่างหนัก เพื่อทำให้ THAI BIOINFORMATICS เป็นนิตยสารออนไลน์ที่ดีและมีประโยชน์ต่อเพื่อนสมาชิกทุกระดับครับ


คอลัมน์ Highlight ในฉบับนี้ เรากลับมาพบกับ bioinformatics อีกสาขาหนึ่งที่มีชื่อว่า structural bioinformatics ครับ สำหรับผู้เขียนในฉบับนี้เป็นผู้เขียนรับเชิญครับ ต้องบอกก่อนครับว่า ส่วนตัวผมได้รู้จักกับน้องณฐพล หรือน้องบอลมาหลายปีแล้วครับ แต่ยังไม่เคยได้ร่วมงานกันเลย พอผมถามว่าสนใจเขียนบทความลงใน e-magazine ของเราไหม น้องเขาก็ตอบตกลงทันทีเลย และคาดว่าเราอาจจะมีคอลัมน์ดีๆ จากน้องบอลในอนาคตอีกด้วยนะครับ


สำหรับผู้ที่กำลังติดตามการเขีนโปรแกรมด้วยภาษา Python ก็คงสนุกกับการใช้ method ของตัวแปรประเภท string นะครับ เนื้อหากำลังเข้มขึ้นเรื่อยๆ แล้ว ใครที่ยังไม่ได้เริ่มแต่อยากหัดเขียนก็ยังทันนะครับ เอานิตยสารเล่มก่อนๆ มาอ่านแล้วศึกษาดูนะครับ


ช่วงนี้น้องก้อยมีง่านเร่งด่วนเข้ามามากเหลืเกินครับ เลยต้องขอหลบไปปฏิบัติภารกิจของตัวเองให้เรียบร้อยเสียก่อน ดังนั้น Talk to ... ฉบับนี้ น้องปุ้ม ศิริขวัญ พลประทีป เลยเข้ามารับหน้าที่แทนไปก่อนนะครับ แต่รับรองว่าเนื้อหาเข้มข้นเหมือนเคยครับ ครั้งนี้น้องปุ้มได้ไปคุยกับอาจารย์มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี เขาใช้ความรู้ทาง bioinformatics เข้ามาช่วยงานวิจัย และพบว่าการนำ bioinformatics เข้ามาช่วยงานนี้เป็นเรื่องที่มีประโยชน์มากครับ


ถ้าผู้อ่านท่านใดมีข้อติชม แนะนำ หรืออยากให้เรานำเสนอเร่องราวอะไร ก็เขียนเข้ามาแนะนำกันได้นะครับ ผมและทีมงาน ยินดีรับฟังเพื่อนำาปรับปรุงให้ดีขึ้นครับ

Highlight

Structural Bioinformatics
ณฐพล พรพุฒธพงศ์

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

ถ้ามองย้อนกลับไปราวทศวรรษที่ 1950 โครงสร้างสามมิติของ myoglobin ซึ่งเป็นโปรตีนตัวแรกในวาฬ ถูกสร้างขึ้นด้วยวิธี X-ray crystallography โดยนักวิทยาศาสตร์สองท่านคือ แมก เพอรุส (Max Perutz) นักวิทยาศาสตร์ชาวอังกฤษ และ เซอร์ จอร์น ควูเดอรี่ เคนดรอวว์ (Sir John Coudery Kendraw) นักวิทยาศาสตร์ออสเตรีย ผลงานชิ้นนี้เอง ทำให้นักวิทยาศาสตร์ทั้งสองท่านได้รับรางวัลโนเบลในปี ค.ศ. 1962 และยังเป็นจุดเริ่มต้นยุคแห่งการศึกษาโครงสร้างระดับสูงของสารชีวโมเลกุล ในปัจจุบันวิธีในการค้นหาโครงสร้างสามมิติของสารชีวโมเลกุลต่างๆ ได้รับการพัฒนาขึ้นมาก จนมีเทคนิคและวิธีการที่หลากหลายมากขึ้น ในด้านของวิทยาการคอมพิวเตอร์ ก็มีการพัฒนาขีดความสามารถไปด้วยกันกับการพัฒนาโครงสร้างสามมิติ ทำให้มีการสร้างข้อมูลโครงสร้างสามมิติที่มีคุณภาพสูงเกิดขึ้นมากมาย งานวิจัยทางด้าน structural bioinformatics นั้นจะเกี่ยวข้องกับข้อมูลโครงสร้างของสารชีวโมเลกุลในทุกระดับ แต่ส่วนใหญ่จะมุ่งเน้นไปที่การศึกษาโครงสร้างของโปรตีนในระดับตติยภูมิซึ่งเป็นโครงสร้างสามมิติเป็นหลัก

สิ่งมีชีวิตทุกชนิดประกอบขึ้นจากสารประกอบทางชีวเคมีต่างๆ มากมาย โดยที่สารเหล่านั้นจะทำงานประสานกันอย่างต่อเนื่อง เกิดเป็นกลไกต่างๆ เพื่อให้สิ่งมีชีวิตสามารถดำรงชีพอยู่รอดได้ในธรรมชาติ ความสามารถหรือคุณสมบัติต่างๆ ของสารชีวโมเลกุลเหล่านั้น เกิดขึ้นมาจากรูปแบบการเรียงตัวของอะตอมและอันตรกิริยา (interaction) ระหว่างอะตอมด้วยกันนั่นเอง ดังนั้น การคำนวนต่างๆ จึงต้องอยู่บนพื้นฐานการเกิดอันตรกิริยาของอะตอมแต่ละตัวเป็นหลัก

งานวิจัยทางด้าน structure bioinformatics จะแบ่งคร่าวๆ เป็นสองแขนงหลักตามชนิดของข้อมูลในระดับโครงสร้าง คือ ข้อมูลในระดับปฐมภูมิ (primary structure) จะเกี่ยวข้องกับการนำลำดับของสารชีวโมเลกุลแต่ละชนิดมาทำนายโครงสร้างและสมบัติต่างๆ ของสารชีวโมเลกุลนั้นๆส่วนข้อมูลระดับตติยภูมิ (tertiary structure) จะเกี่ยวข้องกับการนำข้อมูลโครงสร้างสามมิติมาเพื่อศึกษาสมบัติทางเคมี และชีวเคมี

ระดับโครงสร้างของสารชีวโมเลกุลและฐานข้อมูล

ตามที่ผู้อ่านทุกท่านทราบกันดีอยู่แล้วว่า bio-informatics เป็นศาสตร์ที่เกิดขึ้นจากความต้องการที่จะใช้ข้อมูลทางชีววิทยาอย่างเป็นระบบและมีประสิทธิภาพสูงที่สุด รวมถึงการตอบโจทย์ทางชีววิทยาต่างๆ ด้วยการประมวลผลจากข้อมูล ซึ่งงานด้าน structure bioinformatics ก็เป็นเช่นเดียวกัน แต่ลักษณะของข้อมูลอาจจะแตกต่างกันออกไป ไม่ได้เป็นแบบที่หลายคนคุ้นเคย เหมือนงานในด้าน sequence analysis หรือ bioinformatics สาขาอื่นๆ ดังนั้น ผมเลยจะถือโอกาสนี้ แนะนำให้ท่านผู้อ่านได้รู้จักกับชนิดของข้อมูลหลักๆ ในงานด้าน structure bioinformatics กันสักเล็กน้อยครับ ลักษณะข้อมูลของโครงสร้างโมเลกุล (molecular structure) จะแบ่งออกตามระดับของโครงสร้าง ซึ่งมีทั้งหมดสี่ระดับ ได้แก่ โครงสร้างในระดับปฐมภูมิ (primary structure) ทุติยภูมิ (secondary structure) ตติยภูมิ (tertiary structure) และสุดท้ายในระดับจตุรภูมิ (quaternary structure)

ลักษณะโครงสร้างโมเลกุลในระดับปฐมภูมินี้ยังไม่ซับซ้อนครับ หลายคนอาจจะคุ้นหน้าคุ้นตากันดี เนื่องจากเป็นข้อมูลจำพวก DNA sequence, RNA sequence หรือ protein sequence นั่นเอง ข้อมูลในระดับนี้ส่วนใหญ่ได้มาจากการทำ DNA sequencing แล้วจึงนำ DNA sequence ที่ได้มาแปรเป็น RNA หรือ protein sequence ด้วยโปรแกรมคอมพิวเตอร์ในภายหลัง เนื่องจากการทำ RNA sequencing และ protein sequencing ทำได้ยากและมีต้นทุนสูง นักวิทยาศาสตร์ที่ทำงานด้าน bioinformatics ที่ไม่ต้องอาศัยข้อมูลจากห้องปฏิบัติการของตัวเอง ก็สามารถค้นหาข้อมูลที่ต้องการและ download ข้อมูลเหล่านั้นมาจากฐานข้อมูลต่างๆ อาทิเช่น GenBank, EBI, UniProt เป็นต้น

ถัดไปเป็นโครงสร้างในระดับทุติยภูมิ ผมจะยกตัวอย่างเป็น protein sequence ก่อนนะครับ โครงสร้างในระดับนี้ เราจะพิจารณาถึงการเกิดอันตรกริยาของกรดอะมีโนตัวที่อยู่ใกล้ๆ กัน เกิดเป็นโครงสร้างอย่างง่ายๆ ที่เรียกว่า helix กับ strand นั่นเอง ส่วนโครงสร้างในระดับทุติยภูมิของ DNA sequence และ RNA sequence จะหมายถึงการจับคู่ของเบสในสายของ DNA และ RNA นั่นเอง ข้อมูลในระดับนี้ได้จากการใช้โปรแกรมคอมพิวเตอร์ไปวัดมุมต่างๆ ในโครงสร้างระดับตติยะภูมิ ที่ได้จากการทดลองแล้วระบุว่าเป็น helix, strand, coil และ turn แล้วเก็บในฐานข้อมูล โดยปกติเราไม่นิยมใช้ข้อมูลในระดับสักเท่าไหร่ เนื่องจากเราสามารถสังเกตุได้จากโครงสร้างในระดับที่สูงกว่านี้ได้โดยตรงอยู่แล้ว

โครงสร้างระดับตติยภูมิ ขัอมูลในระดับนี้ได้จากการทดลองเพื่อหาโครงสร้างสามมิติของสารชีวโมเลกุลด้วยวิธีต่างๆ เช่น X–ray diffraction, nuclear magnetic resonance (NMR) และการถ่ายภาพจากกล้องจุลทรรศน์อิเล็กตรอน (electron microscopy) ข้อมูลนี้จะมีหลายลักษณะตั้งแต่ข้อมูลที่มีรายละเอียดต่ำที่สุด คือ ภาพการกระเจิงของรังสีเอ็กซ์ จากนั้นก็เป็นข้อมูลที่มรายละเอียดมากขึ้น อย่างเช่น ภาพกราฟที่ได้จาก NMR ซึ่งต้องใช้คอมพิวเตอร์มาสร้างเป็น electron map แล้วจึงระบุตำแหน่งของอะตอมแต่ละตัวลงไปในระนาบสามมิติ ซึ่งข้อมูลที่เป็นตำแหน่งของอะตอมนี้เป็นข้อมูลในระดับสุดท้ายซึ่งสามารถนำไปวิเคราะห์ต่อไปได้อีกมากมาย นักวิจัยสามารถหาข้อมูลเหล่านี้ได้จากฐานข้อมูล protein data bank (www.pdb.org/) ข้อมูลในระดับนี้ถือเป็นข้อมูลหลักของงานด้าน structural bioinformatics เลยทีเดียว

ลำดับสุดท้าย คือ ข้อมูลโครงสร้างในระดับจตุรภูมิ ซึ่งเป็นข้อมูลที่เกี่ยวข้องกับการเรียงตัวของโปรตีนหลายๆ โมเลกุล เมื่อมีสารชีวโมเลกุลมากกว่า 1 โมเลกุลมาอยู่ด้วยกัน ซึ่งมักจะได้มาจากการทำ X–ray crystallography ข้อมูลในระดับนี้มีค่อนข้างน้อยและมักจะไม่ถูกนำมาวิเคราะห์ต่อ

งานวิจัยด้าน structural bioinformatics

งานวิจัยทางด้าน structural bioinformatics สามารถแบ่งออกได้เป็น 2 ลักษณะใหญ่ๆ ครับ ลักษณะแรก จะเรียกว่า structure prediction นั่นก็คือการทำนายโครงสร้างในระดับทุติยภูมิ ตติยภุมิ ไปจนถึงขั้นจตุรภูมิ โดยอาศัยข้อมูลจาก protein sequence ซึ่งเป็นโครงสร้างปฐมภูมินั่นเอง ส่วนงานอีกลักษณะหนึ่ง เรียกว่า structure analysis งานแบบนี้จะเป็นการสังเกตุสมบัติของสารชีวโมเลกุลในระดับโครงสร้าง โดยใช้ข้อมูลโครงสร้างสามมิติเป็นพื้นฐานในการวิเคราะห์

Structure prediction

การทำงานด้าน structure prediction นี้ นักวิจัยจะนำข้อมูลโครงสร้างในระดับปฐมภูมิ (ซึ่งก็คือ DNA sequence, RNA sequence และ protein sequence นั่นเอง) มาผ่านขั้นตอนการคำนวณด้วยโปรแกรมคอมพิวเตอร์ เพื่อทำนายโครงสร้างในระดับที่สูงกว่าออกมา ในตำรา bioinformatics หลายฉบับจัดงานประเภทนี้เป็นงานทางด้าน sequence analysis รูปแบบหนึ่ง เพียงแต่ผลลัพธ์ที่ได้จะอยู่ในรูปของโครงสร้างสามมิติครับ

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

การทำนายโครงสร้างระดับทุติยภูมิ (secondary structure predic-tion)

การทำนายโครงสร้างในระดับทุติยภูมิเป็นการทำนายลักษณะของโครงสร้าง ว่าบริเวณใดที่มีลักษณะโครงสร้างเป็น helix, strand, coil หรือ turn โดยอาศัยการจดจำการเรียงตัวของกรดอะมิโนต่างๆ ใน protein sequence นั้นๆ

ยุคเริ่มแรกการทำนายโครงสร้างในระดับนี้อาศัยการนับจำนวนของกรดอะมิโนแต่ละตัวที่ปรากฏในโครงสร้างลักษณะต่างๆ ในโครงสร้างสามมิติในฐานข้อมูล แล้วนำมาสร้างเป็นคะแนนให้กรดอะมิโนแต่ละตัวเพื่อนำมาใช้ในการทำนาย วิธีนี้มีความถูกต้องที่ต่ำมาก ในปัจจุบันมีการปรับปรุงวิธีการจดจำรูปแบบของกรดอะมิโนในโครงสร้างลักษณะต่างๆ ด้วยวิธีทางสถิติและ machine learning ช่วยให้การทำนายมีความถูกต้องมากขึ้นถึง 70% แต่โดยทั่วไปมักไม่นิยมที่จะทำนายโครงสร้างในระดับนี้นัก เพราะความถูกต้องจะต่ำกว่าการไปทำนายโครงสร้างสามมิติโดยตรง ซึ่งจะทำให้ทราบถึงโครงสร้างในระดับทุติยภูมิอยู่แล้ว ยกเว้นมักจะถูกนำไปใช้ในการทำนาย transmembrane helix ของโปรตีนในที่อยู่บนเยื่อหุ้มเซลล์ (cell membrane) ซึ่งมีความถูกต้องสูงกว่าการทำนายโครงสร้างทุติยภูมิแบบอื่นๆ และยังเป็นขั้นตอนที่จำเป็นในการทำนายโครงสร้างสามมิติของโปรตีนที่ี่อยู่บนเยื่อหุ้มเซลล์อีกด้วย

การทำนายโครงสร้างสามมิติของโปรตีน

หน้าที่และการทำงานของสารชีวโมเลกุลต่างๆ มีความเกี่ยวข้องกับโครงสร้างโมเลกุลของสารเหล่านั้นเป็นอย่างมาก ดังนั้น การศึกษากลไกการทำงานของสารชีวโมเลกุลชนิดต่างๆ โดยเฉพาะโปรตีนอย่างละเอียดจึงจำเป็นต้องศึกษาจากโครงสร้างของโมเลกุล แต่การทดลองเพื่อหาโครงสร้างของโปรตีนบางชนิดนั้นทำได้ยากมาก การทำนายโครงสร้างสามมิติจากลำดับของกรดอะมิโนโดยตรง จึงเป็นทางออกหนึ่งที่ดีมากทางหนึ่ง วิธีการทำนายโครงสร้างโมเลกุลที่ใช้พื้นฐานความรู้ทางวิวัฒนาการมาประกอบ ที่เราเรียกว่า homology modeling นั้น ดูจะเป็นวิธีการที่มีความถูกต้องมากที่สุดในบรรดาวิธีการทำนายที่ใช้อยู่ในปัจจุบัน วิธีการนี้จะใช้โปรตีนที่มีลำดับของกรดอะมิโนที่คล้ายคลึงกัน ซึ่งคาดว่าจะมีความสัมพันธ์ทางวิวัฒนาการ และมีโครงสร้างสามมิิติจากการทดลองมาเป็นต้นแบบ เพื่อใช้ในการทำนายโครงสร้างของโปรตีนที่ยังไม่รู้โครงสร้าง โดยโครงสร้างซึ่งเป็นผลลัพธ์จากการทำนายสามารถนำไปใช้ในการศึกษาอันตรกริยาระหว่างโปรตีนและลิแกนด์ (ligand) ได้ แต่ทั้งนี้ต้องขึ้นอยู่กับคุณภาพของโครงสร้างที่ทำนายได้ด้วย นอกจากนี้ โครงสร้างแบบนี้ ยังถูกนำไปใช้ในการสร้างโครงสร้างจากแผนที่อิเล็คตรอนที่ได้จากการทำ X–ray crystall-ography หรือ NMR ด้วย

การทำนายโครงสร้างของสายนิวคลีโอไทด์

ในอดีตไม่ค่อยมีนักวิจัยให้ความสนใจกับลักษณะโครงสร้างของ DNA และ RNA เท่าไรนัก เนื่องจากยังไม่พบความเชื่อมโยงระหว่างโครงสร้างกับการทำงาน แต่ต่อมาภายหลัง มีงานวิจัยหลายชิ้นที่ชี้ให้เห็นว่าโครงสร้างของ DNA เกี่ยวข้องกับการแสดงออก (express) ของยีนที่อยู่ในบริเวณนั้น รวมถึงการค้นพบ RNA ในกลุ่มของ functional RNA ซึ่งมีลักษณะโครงสร้างที่ซับซ้อนและหลากหลายมากกว่า RNA ในกลุ่ม ribosomal RNA (rRNA) และ transfer RNA (tRNA) จึงมีการศึกษาโครงสร้างรวมไปถึงการทำนายโครงสร้างของ DNA และ RNA เพิ่มขึ้น การทำนายโครงสร้างทุติยภูมิ มักจะเป็นการทำนายโครงสร้างของ RNA มากกว่า DNA เพราะลักษณะของ RNA มักจะเกิดขึ้นจากการจับกันของคู่เบสบน sequence ของตัวเอง เกิดเป็นโครงสร้างที่มีความเสถียรมากขึ้น ที่เรียกว่า ก้าน (stem) ของโครงสร้าง เทคนิคการทำนายโครงสร้างของ RNA จะเป็นการค้นหา inverted sequence ประกอบกับการทำนายพลังงานที่เกิดขึ้นเพื่อดูความเสถียรของโครงสร้าง การทำนายโครงสร้างของสาย RNA นั้นเป็นขั้นตอนที่สำคัญในการค้นหาตำแหน่งของยีน RNA และการศึกษาหน้าที่ของยีนนั้นๆ

Structure analysis

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

Structure visualization

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

Molecular docking

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

Molecular simulation

เป็นการจำลองโมเลกุลต่างๆ ในสภาวะที่เสมือนจริงในคอมพิวเตอร์ และควบคุมการเคลื่อนที่และอันตรกริยาของแต่ละอะตอมด้วยกฏและสมการทางฟิสิกส์ เช่นการนำโปรตีนไปใส่ในสภาวะจำลองที่เป็นน้ำ หลังจากนั้นสภาวะจำลองจะถูกดำเนินไปข้างหน้าด้วยการขยับอะตอมทุกตัวด้วยสมการทางฟิสิกส์ซึ่งลักษณะจะคล้ายกับสมการการเคลื่อนที่ในแนวเส้นตรงที่เรียนกันในสมัยมัธยมปลาย ในช่วงเวลาเป็น 1 ในพันล้านส่วนของวินาที เช่นนี้ไปเรื่อยๆ จนกระทั่งตัวระบบ (system) ซึ่งก็คือ โปรตีนและน้ำที่ล้อมรอบเข้าสู่สภาวะสมดุล หลังจากนั้นจึงจะสามารถศึกษาพฤติกรรมต่างๆ ของระบบได้ โดยมากวิธีนี้จะถูกนำมาใช้สังเกตุเหตุการที่ไม่สามารถมองเห็นด้วยตาได้ เช่นลักษณะการเปิดปิดของ catalytic site ในเอนไซม์ต่างๆ การเคลื่อนที่ของโมเลกุลต่างๆในน้ำ การเกิดอัตรกริยาระหว่างสารชีวโมเลกุลด้วยกัน ใช้คำนวนค่าทางอุณหพลศาสตร์ (thermodynamic) ต่างๆ ของระบบ นอกจากนี้ยังถูกนำไปใช้ทำนายโครงสร้างอีกด้วย จะเห็นว่างานทางด้านนี้สามารถนำมาหาคำตอบทางชีววิทยาที่หลากหลาย และยังให้ความถูกต้องที่สูงมากด้วย แต่ด้วยข้อจำกัดทางการคำนวนที่ต้องใช้เครื่องคอมพิวเตอร์ขนาดใหญ่และใช้เวลาในการคำนวณมาก นักวิจัยจำนวนมากจึงหันไปใช้วิธีที่ให้คำตอบได้ในระดีบที่เพียงพอต่อความต้องการแต่ใช้เวลาในการคำนวณน้อยกว่ามากๆ แทน งานวิจัยด้านนี้จึงมีการพัฒนาช้าเมื่อเทียบกับงานวิจัยด้านอื่นๆ ทาง structure analysis

งานด้าน structural bioinformatics ยังมีอีกมากมายครับ ส่วนที่ผมนำมาเล่าให้ฟังในบทความนี้เป็นเพียงแค่ส่วนที่สำคัญและมีแนวทางงานวิจัยที่ชัดเจนแล้วเท่านั้น ยังมีงานอีกมากมายที่จะคาบเกี่ยวกับงานวิจัยทางฟิสิกส์ซึ่งผมไม่ได้นำมาเล่าให้ฟังครับ ถ้าผู้อ่านสนใจ อาจจะต้องค้นคว้าหาข้อมูลในเชิงลึกต่อไป จากงานวิจัยหลักๆ ที่กล่าวมานั้น นักวิจัยสามารถประยุกต์วิธีและขบวนการเหล่านี้ไปใช้ตอบคำถามทางชีววิทยาได้มากมาย เช่น การนำโครงสร้างไปช่วยในการเปรียบเทียบ sequence ที่มีความแตกต่างมากๆ ได้ การระบุหน้าที่ด้วยการเปรียบเทียบโครงสร้างแทนการเปรียบเทียบ sequence ซึ่งในบางกรณีที่ใช้ sequence แล้วหาคำตอบไม่ได้ แต่อาจจะใช้โครงสร้างแทนได้ดีกว่า ในประเทศไทยยังไม่ค่อยมีการริเริ่มงานวิจัยด้านนี้อย่างจริงจังเท่าไรนัก คงต้องอาศัยความร่วมมือนักวิจัยหลายๆ แขนงเพื่อช่วยให้งานทางด้านนี้เกิดขึ้นอย่างจริงจังต่อไปในอนาคต

Python Programming

More on Function
ประพัฒน์ สุริยผล

def calculateRectangleArea():

____print "Program to calculate Area of Rectangle"

____base = getUserInput("Please enter base -> ")

____height = getUserInput("Please enter height -> ")

____print "Rectangle area of base", base, "and height", height, "is", base*height

def calculateTriangleArea():

____print "Program to calculate Area of Triangle"

____base = getUserInput("Please enter base -> ")

____height =getUserInput("Please enter height -> ")

____print "Triangle area of base", base, "and height", height, "is", 0.5*base*height

def calculateCircleArea():

____print "Program to calculate Area of Circle"

____radius = getUserInput("Please enter radius -> ")

____print "Circle area with radius", radius, "is", 3.14159 *radius**2

def calculateTrapezoidsArea():

____print "Program to calculate Area of Trapezoids"

____parallelbase1 = getUserInput("Please enter parallel base1 -> ")

____parallelbase2 = getUserInput("Please enter parallel base2 -> ")

____height = getUserInput("Please enter height -> ")

____print "Trapozoids area of parallel base1", parallelbase1, "parallel base2", parallelbase2,\

__________"and height", height, "is", 0.5*(parallelbase1 + parallelbase2)*height

def getUserInput(text_to_display):

____input = raw_input(text_to_display)

____return int(input)

choice = raw_input("Which type of area you would like to calculate (R/T/C/Z)? -> ")

if choice == "R" or choice == "r":

____calculateRectangleArea()

elif choice == "T" or choice == "t":

____calculateTriangleArea()

elif choice == "C" or choice == "c":

____calculateCircleArea()

elif choice == "Z" or choice == "z":

____calculateTrapezoidsArea()

else:

____print "Please type R,T,C or Z to choose the type of area to calculate"


เราจะเริ่มต้นจาก code ข้างต้น จุดหนึ่งที่ผมไม่ค่อยชอบ และทำให้เงื่อนไขของ if ดูยาวโดยไม่จำเป็น และเราจำเป็นต้องหยุดคิดชั่วขณะว่าชื่อตัวแปรทั้งสองอัน คือตัวแปรเดียวกันหรือเปล่า ซึ่งจะพบว่าเป็นตัวแปรเดียวกันคือ choice คำถามคือมีทางทำให้เงื่อนไขนี้อ่านง่ายขึ้นไหม


วิธีหนึ่งที่นิยมใช้กันก็คือแปลงตัวอักษรให้เป็นตัวเล็กหรื่อตัวใหญ่เสีย หลังจากนั้นเราก็สามารถเปรียบเทียบได้ด้วยเงือนไขเดียว เช่นเราแปลงตัวอักษรให้เป็นตัวใหญ่ด้วยคำสั่ง


choice.upper()

เมื่อ python ทำงานตามคำสั่งนี้แล้ว ตัวอักษรที่อยู่ใน choice ก็จะเปลี่ยนเป็นตัวใหญ่ทั้งหมด ไม่ว่าเดิมจะเคยเป็นตัวเล็กหรือตัวใหญ่ก็ตาม


คำสั่งเงื่อนไขจึงกลายเป็น


if choice.upper() == "R":

____...

elif choice.upper() == "T":

____...


อีกจุดหนึ่งที่ทำให้ดูค่อนข้างยากคือคำสั่ง print ที่มีการคั่นไปมาของเครื่องหมาย comma (,) โปรแกรม python แก้ปัญหานี้ด้วยการใช้ string formatting


print "Rectangle area of base", base, "and height", height, "is", base*height


เราสามารถเปลี่ยนคำสั่ง print นี้ให้กลายเป็น


print "Rectangle area of base %d and height %d is %f" % (base, height, base*height)


จะเห็นว่าสิ่งที่ต้องการพิมพ์อยู่ในเครื่องหมายคำพูดคู่เดียว ส่วนตำแหน่งที่เราต้องการพิมพ์ค่าตัวแปร จะถูกแทนที่ด้วยรหัส ซึี่่งในที่นี่เรามีรหัส %d และ %f เราใช้ %d สำหรับ base และ height เพราะเป็นเลขจำนวนเต็ม (integer) ส่วนผลการคำนวณมีโอกาสเป็นตัวเลขทศนิยม (floating point) เราจึงแทนที่ด้วย %f วิธีอ่าน string formatting ทำได้ง่ายๆ ด้วยการไล่ลำดับ %d ตัวแรกสำหรับ base ตัวที่สองสำหรับ height และ %f ตัวที่สามสำหรับ base*height


ข้อดีอีกประการหนึ่งของการใช้ %f ในการพิมพ์ค่าทศนิยม คือเราสามารถกำหนดได้ว่าเราต้องการพิมพ์ทศนิยมกี่ตำแหน่ง ตัวอย่างเช่นเราต้องการพิมพ์ทศนิยม 2 ตำแหน่ง เราใช้เป็น %0.2f ตัวเลข 0 หมายถึงเราไม่สนใจส่วนที่เป็นตัวเลขหน้าทศนิยม ให้ python พิมพ์ตามจริง ส่วนตัวเลข 2 ที่อยู่ด้านหลังนั้น หมายถึงจำนวนทศนิยมที่เราต้องการ


คำสั่ง print ของเราจึงเป็น


print "Rectangle area of base %d and height %d is %0.2f" % (base, height, base*height)


String formatting เราสามารถใช้กับตัวแปรตัวอักษรได้เช่นกัน เช่นที่เราเห็นว่า text_to_display ของ getUserInput มี pattern แบบเดียวกัน ซึ่งเราสามารถเปลี่ยนแปลงการเรียกให้สั้นลง ด้วยการย้าย pattern ไปไว้ในฟังก์ชัน getUserInput เสีย ดังนี้


base = getUserInput("Please enter base -> ")


และเปลี่ยน ฟังก์ชัน getUserInput เป็น


def getUserInput(parameter):

____text_to_display = "Please enter %s -> " % (parameter)

____input = raw_input(text_to_display)

____return int(input)


แบบฝึกหัด

1. เปลี่ยนเงื่อนไข if ให้เปรียบเทียบแค่ค่าเดียว และใช้ method ชื่อ lower() เพื่อเปลี่ยนค่าตัวอักษรใน choice ให้กลายเป็นตัวเล็กให้หมด (ในแบบฝึกหัดนี้ เราจะไม่ใช้ upper() เหมือนที่ยกตัวอย่างไว้ แต่ให้ใช้ lower() แทน)


2. เปลี่ยนฟังก์ชัน getUserInput เป็นแบบใหม่ แล้วปรับ code ที่เหลือตาม


3. เปลี่ยน code ตรงส่วนที่พิมพ์ผล ให้ใช้เป็น string formatting เพื่อหลีกเลี่ยงการแทรกตัวแปรอยู่ในตำแหน่งต่างๆ และให้กำหนดพิมพ์ทศนิยม 3 ตำแหน่ง สำหรับผลลัพธ์ที่คำนวณได้


While Loop


ครั้งนี้ เราจะพัฒนาโปรแกรมต่อจากครั้งที่แล้ว หลังจากที่โปรแกรมของเราสามารถรับค่าเป็นเลขทศนิยมได้ แสดงผลได้สวยงาม เราก็อยากจะเพิ่มความสามารถเข้าไปอีก แหมจะใช้ให้โปรแกรมช่วยคิดให้ทั้งที แถมการบ้านเรื่องหาพื้นที่ก็มักจะมาทีละเยอะๆ การรันโปรแกรมทีละข้อ ก็เริ่มจะไม่สนุก ทางที่ดีคือให้โปรแกรมวนกลับมารับค่าจนกว่าผู้ใช้จะบอกว่าพอดีกว่าโจทย์ครั้งนี้จะทำให้ยากเข้า เพื่อเป็นการฝึกให้อ่านข้อมูลใน help ของ python ได้ด้วย (ถ้ามีความจำเป็น) เอาเป็นว่า ผมจะบอกความต้องการของโปรแกรม และให้คำแนะนำอีกนิดหน่อยดังนี้ครับ


แบบฝึกหัด


ให้เขียนโปรแกรมวนรับคำสั่งจากผู้ใช้ว่าต้องการหาพื้นที่ของรูปร่างแบบไหน และให้คำตอบออกมา จนกระทั่งผู้ใช้กดปุ่ม Q (ตัวเล็กหรือใหญ่ก็ได้) แล้วจึงค่อยออกจากโปรแกรมโดยพิมพ์ Thank you for using my program ก่อนที่จะจบโปรแกรม


คำแนะนำ

ใช้คำสั่งวนลูป ด้วยคำสั่ง while โดยมีโครงสร้างดังนี้


while <เงื่อนไข>

____code block for while loop


ส่วนของโปรแกรมที่ย่อหน้าเข้าไปถัดจากคำสั่ง while จะวนทำงานไปเรื่อย ตราบใดที่เงื่อนไขของ while เป็นจริง เพราะฉะนั้น ต้องคิดให้ดี


การเขียนโปรแกรมโดยใช้ while มี 3 จุดที่ต้องพิจารณาคือ เมื่อ python พบคำสั่ง while ครั้งแรก สามารถตรวจสอบเงื่อนไขได้หรือไม่ บางครั้งตัวแปรที่เราใช้ในเงื่อนไขของ while ยังไม่เคยถูกกำหนดมาก่อน ก็จะเกิดความผิดพลาดขึ้น


จุดที่สองคือ การวนลูปของ while มีโอกาสเปลี่ยนแปลงเงื่อนไขหรือไม่ ตัวแปรที่ใช้อยู่ใน while มีการเปลี่ยนแปลงระหว่างวนลูป หรือไม่ ถ้าหากไม่มีการเปลี่ยนแปลงใดๆ แสดงว่าเงื่อนไขก็จะเป็นจริงตลอด ไม่มีทางที่จะหลุดออกมาจาก while loop ได้เลย


จุดที่สามคือตรงส่วนเงื่อนไขของ while เอง ที่ต้องตรวจสอบว่าเป็นไปตามประสงค์หรือไม่ คิดง่ายว่า while หมายถึง "ตราบเท่าที่" เพราะฉะนั้น เราพอจะอ่านได้ว่า ตราบเท่าที่เงื่อนไขของ while เป็นจริง ให้รันโปรแกรมในส่วนของ while ไปเรื่อยๆ จนกว่าเงื่อนไขจะเป็นเท็จ


ครั้งนี้คงให้ข้อมูลเพียงเท่านี้ เท่าที่ผ่านมา เห็นทำกันได้ดี จึงให้แบบฝึกหัดยากขึ้นครับ


Talk to...

อาจารย์ไตรวิทย์ รัตนโรจนพงศ์
ศิริขวัญ พลประทีป


สวัสดีค่ะ สำหรับคอลัมน์ Talk to... ฉบับนี้ ปุ้ม (ศิริขวัญ พลประทีป) จะมารับหน้าที่แทนพี่ก้อย (จิตสุพางค์ รอดบำเรอ) นะคะ เนื่องจากพี่ก้อยติดงานด่วนมากค่ะ เช่นเคยนะคะ เดือนนี้ เราจะไปคุยกับอาจารย์นักวิจัยรุ่นใหม่ ไฟแรง นั่นคือ อาจารย์ ดร. ไตรวิทย์ รัตนโรจน์พงศ์ ค่ะ ท่านเป็นอาจารย์ประจำภาควิชาจุลชีววิทยา คณะวิทยาศาสตร์ มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี วันนี้ปุ้มจะมาคุยกับอาจารย์เกี่ยวกับงานวิจัยทางด้านวิทยาศาสตร์ที่อาจารย์กำลังทำอยู่ และการนำเอา bioinformatics เข้ามาใช้ในงานวิจัยของอาจารย์ด้วยค่ะ แอบกระซิบก่อนว่างานของอาจารย์เป็นการผสมผสานระหว่าง bioinformatics กับการทำ wet lab นะคะ


อาจารย์ทำงานที่ มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี มานานรึยังคะ


ผมทำงานที่มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี ตอนนี้ นับรวมๆ ได้ประมาณ 17 ปีแล้วครับ แต่ว่าจริงๆ แล้ว 17 ปี ที่อยู่ที่มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี เป็นช่วงที่ผมเรียนระดับปริญญาโทและปริญญาเอกด้วยครับ


งานวิจัยที่อาจารย์สนใจเป็นงานทางด้านไหนคะ


งานวิจัยที่ผมสนใจส่วนใหญ่เป็นงานที่ต่อเนื่องมาจากวิทยานิพนธ์ในระดับปริญญาเอก โดยจะเน้นหนักงานวิจัยทางด้านกุ้ง ซึ่งศึกษาถึงหน้าที่ของโปรตีนของเชื้อไวรัสตัวแดงดวงขาว หรือ White spot syndrome virus (WSSV) โดยศึกษาว่าโปรตีนที่เป็นส่วนประกอบของ WSSV มีบทบาทต่อการติดเชื้อในกุ้งอย่างไรในระดับโมเลกุลครับ


ไวรัสตัวนี้มีความน่าสนใจยังงัยคะ


คือ ไวรัสตัวนี้เป็นไวรัสที่ก่อให้เกิดอัตราการตายของกุ้ง โดยมีการระบาดค่อนข้างรุนแรงในอุตสาหกรรมเพาะเลี้ยงกุ้ง ไม่เฉพาะในประเทศไทย แต่ยังพบการระบาดในนานาประเทศทั่วโลกด้วยครับ นอกจากนั้นแล้วไวรัสตัวนี้ยังได้มีการทำ complete genome sequence แล้ว ซึ่งได้มีการเก็บอยู่ในฐานข้อมูลแล้ว แต่ก็เนื่องมาจากว่า ถึงแม้ว่าเราจะทราบจีโนมของไวรัสตัวนี้ทั้งหมดแล้ว แต่ก็ยังมีหลายๆ ยีน หรือ หลายๆ open reading frame ที่ยังไม่สามารถวิเคราะห์ว่ามันทำหน้าที่อะไร


นอกจากนั้นการศึกษากลไกลการติดเชื้อไวรัสชนิดนี้ในกุ้ง น่าจะทำให้เรามีความรู้ความเข้าใจเกี่ยวกับกระบวนการติดเชื้อของไวรัสในสัตว์ที่ไม่มีกระดูกสันหลังด้วย ซึ่งความรู้ความเข้าใจอันนี้น่าจะมีประโยชน์ต่อการพัฒนาแนวทางการป้องกันโรคระบาดจากเชื้อไวรัสนี้ได้ในอนาคต


แล้วปัจจุบันนี้ไวรัสตัวนี้มีงานวิจัยออกมามากน้อยแค่ไหนคะ


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


ในช่วงที่กำลังเรียนปริญญาเอก อาจารย์มีโอกาสไปทำวิจัยในต่างประเทศที่ไหนมาบ้างคะ


ช่วงที่ผมเรียนมหาวิทยาลัยมหิดล ผมได้ไปทำงานวิจัยที่ไต้หวัน 2 ปี ที่ National Taiwan University ซึ่งงานวิจัยที่ทำเป็นงานวิจัยที่เกี่ยวข้องกับการศึกษาแบบแผนของโปรตีนที่แสดงออก ในกุ้งที่ติดเชื้อไวรัสหัวเหลือง โดยการใช้เทคนิด 2-D gel electrophoresis ซึ่งประสบความสำเร็จในระดับหนึ่ง สามารถนำไปต่อยอดงานวิจัยในแนวลึกได้ นอกจากนั้นผมยังได้ทำวิจัยที่นอกเหนือจากงานของตัวเอง คือการศึกษาหน้าที่ของโปรตีนของ WSSV ซึ่งตอนที่อยู่ที่นั่นผมได้พยายามที่จะค้นคิดเทตนิคต่างๆ ขึ้นมา เพื่อที่จะศึกษาหน้าที่ของโปรตีนในไวรัสตัวนี้ ซึ่งได้เพียงบางตัว โดยผมเองก็ยังไม่ได้มีความพึงพอใจในงานของตัวเอง ซึ่งงานส่วนใหญ่ที่ทำอยู่ที่โน้นก็จะถูกนำมาต่อยอด หลังจากที่ผมกลับมาเป็นอาจารย์ที่ มจธ. ครับ


อาจารย์คิดว่า bioinformatics มีบทบาทอย่างไรกับงานวิจัยของอาจารย์ที่ได้ทำคะ


ผมคิดว่า bioinformatics มีประโยชน์มากสำหรับงานวิจัยของผม เนื่องจากงานวิจัยของผมส่วนใหญ่จะเกี่ยวข้องกับการทำ wet lab ซึ่งแนวทางในการทำ wet lab มันหลีกเลี่ยงไม่ได้เลยที่จะนำ bioinformatics เข้ามาพิสูจน์เพื่อหาคำตอบบางอย่างออกมา เพื่อทำให้งานวิจัยของผมสามารถเข้าไปอยู่ในแนวทาง หรือเป้าหมายที่ถูกต้องและชัดเจนมากขึ้น เพราะงานบางอย่างทางด้านกุ้ง ปัจจุบันยังไม่มี complete genome sequence ของกุ้ง แต่ข้อมูลส่วนใหญ่จะเป็นข้อมูลที่อยู่ใน EST database ซึ่งจัดเป็นข้อมูล bioinformatics อย่างหนึ่ง ที่สามารถดึงข้อมูลส่วนนี้มาใช้ในการศึกษาวิจัยทางด้านกุ้งและการศึกษาหน้าที่ของโปรตีนของไวรัสตัวแดงดวงขาว ให้ชัดเจนมากขึ้น ซึ่งจะทำให้งานวิจัยมีกระบวนการคิดที่ถูกต้องและชัดเจนมากยิ่งขึ้น


เพราะฉะนั้น ก็เหมือนว่า bioinformatics มีประโยชน์มากเลย

ใช่ครับ bioinformatics ยังช่วยส่งเสริมให้งานวิจัยของผมก้าวหน้ามากขึ้น มีทิศทางที่ถูกต้อง นอกจากนั้นแล้ว bioinformatics ยังเป็นวิทยาศาสตร์อีกแขนงหนึ่ง ที่ทำให้งานวิจัยของผมมีความสมบูรณ์มากขึ้น โดยในปัจจุบันการทำวิจัยอย่างน้อยที่สุด ก็จำเป็นต้องมีการใช้ bioinformatics เข้ามาเกี่ยวข้องจึงจะทำให้งานวิจัยสมบูรณ์มากยิ่งขึ้น


แล้วโปรแกรมที่เกี่ยวกับ bioinformatics อะไรบ้างคะที่อาจารย์เกี่ยวข้องกับงานวิจัย


ซึ่งปกติแล้วผมขอพูดตรงๆ ว่าผมไม่ได้จบทางด้าน bioinformatics มาโดยตรงนะครับ ผมเป็นเสมือน user ซึ่งงานที่ผมใช้ส่วนใหญ่จะเป็นโปรแกรมที่ใช้สร้าง phylogenetic tree โดยใช้ในการเปรียบเทียบวิวัฒนาการของยีนของกุ้งกับยีนในสิ่งมีชิวิตอื่นๆ ว่ายีนนี้ทำหน้าที่อะไร ถ้ายีนมีความคล้ายคลึงกันมาก ก็แสดงว่ามันอาจทำหน้าที่อย่างเดียวกัน ซึ่งจะทำให้ผมสามารถศึกษาเพื่อตั้งกรอบเพื่อพิสูจน์สมมุติฐานขึ้นมาในอีกระดับหนึ่งว่าเราน่าจะศึกษาในทิศทางไหนให้ชัดเจนถูกต้องยิ่งขึ้นครับ


ในงานวิจัยทางด้านกุ้งมีปริมาณข้อมูลทางด้าน bioinformatics มากน้อยแค่ไหนคะ


เท่าที่ผมทราบนะครับในปัจจุบัน complete genome sequence ของกุ้งยังไม่ได้มีการริเริ่มทำขึ้นมา แต่จะมีงานวิจัยในแง่ EST database ที่ค่อนข้างสมบูรณ์แล้ว โดยเกิดขึ้นจากความร่วมมือกันของนักวิจัยที่มีชื่อเสียงของประเทศไทยและประเทศไต้หวัน ทำให้เกิดการรวมข้อมูลของ EST ของกุ้งของทั้งสองประเทศเป็นข้อมูลใหญ่ข้อมูลหนึ่ง ซึ่งในปัจจุบันได้มีการให้นักวิจัยของทั้งสองประเทศเข้าไปค้นหาข้อมูลเหล่านี้ได้แล้ว แต่ยังมีข้อจำกัดในการใส่รหัสผ่านที่อยู่ในกลุ่มนักวิจัยกลุ่มนี้เท่านั้น แต่ในอนาคตน่าจะมีลักษณะที่เป็น open มากขึ้น ซึ่งจะเป็นประโยชน์ให้กับนักวิจัยที่สนใจการทำวิจัยทางด้านกุ้งเข้ามาสืบหาข้อมูลได้มากขึ้น


เรียกได้ว่า การใช้ bioinformatics เป็นการจัดระเบียบข้อมูลที่สำคัญ


ใช่ครับ เป็นการทำให้นักวิจัยสามารถนำมาใช้ประโยชน์ได้ง่ายและสะดวกขึ้น ซึ่งจะเป็นการส่งเสริมให้นักวิจัยเข้ามาทำวิจัยได้มากขึ้น ซึ่งนัก bioinformatics เปรียบเสมือนการปิดทองหลังพระนะ ผมคิดว่ามันเป็นแบบนั้น


อาจารย์คิดว่าจะแนะนำอย่างไรสำหรับผู้ที่เริ่มทำวิจัย อย่านักเรียนปริญญาตรี ที่ต้องการที่จะเรียนรู้เกี่ยวกับ bioinformatics ขั้นพื้นฐาน


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


ถือว่า bioinformatics เป็นพื้นฐานที่นักศึกษาทุกคนควรจะต้องรู้เลย


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


นักศึกษาในภาควิชาของอาจารย์ให้ความสนใจ bioinformatics มากน้อยแค่ไหนคะ


นักศึกษาหลายๆ คนก็มีความสนใจนะครับ สักประมาณ 5% ของนักศึกษาในชั้นปีที่ 4 ทำไมผมถึงเน้นชั้นปีที่ 4 ก็เพราะว่า นักศึกษาชั้นปีที่ 4 จะมีการทำโครงงานวิทยาศาสตร์ ซึ่งเป็นอีกวิชาหนึ่งในหลักสูตร ซึ่งในโครงงานที่ผมเป็นอาจารย์ที่ปรึกษา และอาจารย์ผู้ร่วมงานบางท่าน ก็จะมีการนำเอา bioinformatics เสริมเข้าไปในโครงงานด้วย ซึ่งผมคิดว่ามันเป็นจุดเริ่มต้นที่ดีในการทำให้เด็กได้เห็นความสำคัญของ bioinformatics และจากการสอบถามนักศึกษาหลายๆ คนที่ใกล้จบ หลายๆ คนก็มีความสนใจที่จะเรียนต่อทางด้าน bioinformatics ในระดับปริญญาโทมากขึ้น ซึ่งผมคิดว่าทุกสิ่งทุกอย่างควรจะเริ่มต้นตั้งแต่ปริญญาตรี เพื่อที่เด็กจะได้เข้าใจได้มากขึ้นครับ


ครั้งนี้นะคะ ต้องขอขอบคุณอาจารย์ไตรวิทย์ รัตนโรจน์พงศ์ เป็นอย่างมากค่ะ สำหรับการให้ข้อมูลและเรื่องราวดีๆ ที่ให้ชาว THAI BIOINFORMATICS ได้รับฟังกันในฉบับนี้นะคะ ขอบคุณค่ะ