全國中小學科展

電腦科學與資訊工程

聽聽貝多芬作品的下一代:將碎形及基因演算法應用於數位音樂產生器

本研究整合了碎形圖形的迭代運算方法與基因交配觀念來達到音樂創新,並透過音樂和諧性判別機制來提高創新音樂的悅耳程度。利用基因觀念之交配的方法來解決長短的問題。這個方法是把原始音符輸入後,找出它們的中心點,以這個中心點為準,其他的音符按照一定比例向外延展,成為新的迭代點。再利用這些迭代點,迭代出新的音符。把製造好的音符染色體放置到交配池中,以隨機的方式在交配池中選取其中之一個染色體進行交配的動作,此二音符染色體會交換彼此的基因,產生下一代新的代表音符長短之染色體,隨後以「模仿母體判斷式」來判斷這新一代的音樂是否與母體音樂相似,藉此淘汰掉「不肖的」下一代,而若新一代與母體的相似程度高的話,它的悅耳性相信也會相對提高。最後把這些技術應用於數位音樂創作,以衍生新穎應用與創新的結果。Fractals can be produced by IFS (Iterated Function Systems). By iterative computation of many times, we can obtain the similar graphics. In my research, the methods to generate the iterative algorithms were presented. In addition, I would discuss the regularity and the content as well as the properties of those digital patterns. At last, the advanced application of fractals to digital music pieces was presented. The program took a note of several measure of music as the beginning point, and made the IFS calculations for each new note in each measure. But there was no difference in beats if you just make the IFS iteration. So I changed the beats with genetic crossover method. In this research, the expression of the DNA to each beat of note was adopted. The same way, it took a note as a beginning point. And the system obtained the new DNA from the old notes for new ones randomly. After producing the new pieces of music, I want to know if it is good to listen. So I used the algorithm that checks the simulation to the shape of mother music. If its shape is similar to the mother music, the probability that the new music is pleasing may even increase. That would make a piece of brand new music. What I want to do in this research is improve the multiformity of music and find what the relationship is of ‘good music’ and mathematical algorithms

影像式條碼辨識系統

以隨手可得拍攝影像的工具(如智慧型手機、個人數位助理、網路攝影機等)及網際網路的便利性,讓使用者能隨時透過書籍條碼影像向遠端資料庫查詢書籍的相關訊息。本研究以「ISBN書籍條碼」為例,經過條碼影像的擷取、偵測並分割出影像中的條碼、歪斜校正以及辨識後,透過網際網路,從ISBN書籍資料庫中查詢出該書籍的相關資訊,讓我們體驗行動通訊科技所帶來的便利。在程式的實作上,除了使用現有影像處理技術中的霍夫轉換與邊緣偵測外,也搭配上自行設計的變化量分配圖,使得ISBN條碼的辨識能力大為提升。此外,為了將使用者查詢時等待回應的時間降至最低,採用了記憶體直接存取的方法來處理影像外,也針對程式執行時的瓶頸部分,以平行處理的機制來加速,經過在Intel i5 M560四核心處理器上的實際測試,一幅900×675像素的影像,平均只要花費1.08秒即可辨識出ISBN條碼,相當的迅速。

Parallelize it! 運算分享與系統自我校調

The research is about the optimal on parallel processing. Through boot disk – which will automatically finish booting configuration, .it is efficient and quick to build high performance PC clusters. The advantage of parallel computing could be applied to massive image processing. By sharing processing and breaking huge processing load into lots of pieces, we could get more efficient result. It is also possible to optimal parallel system through some special means such as dynamic configuration. Through the means, the system could distribute work loading itself. It could also adjust itself to get the highest performance and the most stable environment. 本研究之目的在於探討平行處理中的計算資源的最佳化,透過自動完成開機設定的Boot Disk 來有效快速建製出高效率的PC Clusters 環境,並透過動態配置與類神經網路的校調,使整體叢集的運算能自動調整至最佳化。平行處理優勢,可以應用在耗費極大量的運算資源的影像處理上。透過運算資源分享,可以以很高的效率將極為龐大的運算工作分散成許多較小的程序,使影像處理速度加快。經由平行演算法及實際應用的調整,可對已成形之平行系統作效能上的加強。使用類神經網路的方式訓練,使其系統能夠自我分配運算工作量,且隨著各平行化程式與各節點的不同,能自我校調至最佳化,達到高效率且穩定的運算環境。\r 本研究透過高效率且能自我調校的運算環境,可用於優化其本身結構,以達到\r 演化出更進一步系統,具有相當大的發展潛力。

The Effects of Point Motation on G-Protein Covpled Receptor Thermostability

關於二元根樹上的鏈、反鏈、獨立集的計數及極值

二元根樹是資訊科學上最重要的結構之一,因此其結構的探討就很有價值。在這個研究中,我們探討二元根樹上反鏈(Antichain),鏈(Chain),獨立集(Independent set)計數。在每一個子題之下,我們求出計算反鏈,鏈,獨立集的方法。之後我們求出極值(包括最大跟最小值),並且討論該極值之下所有可能的樹形。此外,我們並討論要列出二元根樹上這些資料(反鏈,鏈,獨立集)所需的演算法。In this paper we enumerate the number of antichains, chains, and independent sets of a binary tree of size n. After that we focus on the extreme values (maximal/minimal). we calculate the extreme values and discuss the possible graphs of trees when achieving these extreme values. Moreover, we offer algorithms for listing all the objects in each extreme case.

A Smart Mouse for the Handicapped People

攔截未知病毒之基礎技術-參數監控

在網際網路蓬勃發展的時代,電腦病毒也更加的猖獗。雖說防毒軟體百家爭鳴,但對於未知病毒的防治技術仍然束手無策。本研究的目的在追溯出電腦惡意程式運行模式,利用IDA靜態反編譯軟體與病毒原始碼尋找出病毒共同的特徵,阻斷其滋生途徑。 本研究在實驗中,研究者利用Borland C++ Builder 6作為應用程式開發環境,配合WinAPI函數與TRegistry類別設計出參數監控系統。研究顯示不論是修改於Window 9x架構下的win.ini, system.ini,或是Run與Run Service之下的資料項,本系統都能有效運作。此系統能成功的攔截到惡意程式對Registry鍵值的讀寫,亦即當使用者否決其修改鍵值時,惡意程式無法在重新開機後運行;易言之,惡意程式失去執行效力。 實驗結果發現,參數監控系統可攔截惡意程式之修改命令,防止未知病毒與惡意程式開機自動運行,以此達到未知病毒的攔截基礎技術。本研究之結果可補強市售防毒系統,對於未知病毒的攔截,能達到完整的防護效果。 Computer viruses become more rampant in the rapidly-developing era of Internet. With the various kinds of Anti-Virus software, people still can do nothing about detecting the unknown viruses. This research aims to trace back the computer virus function mode. By using IDA Pro Disassembler and Virus Source, we can find out the common characteristics of viruses. Thus, we can stop viruses from thriving. The experiment uses Borland C++ Builder 6 as the Registry Detection System by coordinating Win API and TRegistry. It works no matter by modifying win.ini and system.ini under the structure of Window 9x or by modifying Run Value and RunService Value. Moreover, it can intercept the viruses from reading and writing of the ValueKey. As the users deny the modified ValueKey, the viruses cannot run after resetting. In other words, the viruses lose their effects. The results present that Registry Detection System can intercept the modifying commands and prevent the automatic running from unknown viruses. By doing so, we can acquire the basic technology of intercepting the unknown viruses. The application of this study can improve the functions of Anti-Virus. In this way, through protection from unknown viruses can be obtained.

CryptoDefender - afast way to encrypt your files

1. Purpose of the research\r Nowadays, many encryption software are available to computer user. However, very few people use them which result in many cases of information and data leakage due mainly over the Internet. Most people use USB Flash Drive to store and carry confident files back home to work on. When the USB Drive is lost, the files stored are often leaked. To prevent this type of incident occurring, “CryptoDefender” is developed to enhance files protection and to change user’s habit in handling confidential information. \r 2. Procedures\r “CryptoDefender” is an add-in for common application software, e.g. Word, Excel, etc. It will appear as a new tab in the ribbon which provides the software an alternative for saving and opening a file. It protects the files in two ways: encryption and steganography. The data is first encrypted into cipher text as these encrypted data will be hidden in an image file to lower suspicion of readers. All of these procedures will be done by one click. For encrypt and decrypt, the user just needs to click the “Protect” and “Decrypt”. An extremely fast way to encrypt the file is “Quick Protect”. It will randomly choose an image from the image folder according to their file size. This function saves the time for choosing an image.\r 3. Data\r The method for steganography is using last two bit of R, last three bit of G and B to store the encrypted data. In 24-bit bitmap, RGB is represented the color of each pixel and each of them is 8-bit. The leftmost bit of each byte contains the highest value, and the right one contains the lowest value. Therefore, any change in the rightmost byte will only cause a minimal change in a byte value, and the color as well. 2-3-3 method is adopted to replace the pixels as encrypted data. It is used because it is in coordination with the program’s fluency. 2-3-3 is obtained so that 1 pixel will contain 1 byte of encrypted data. For R, the last two bit will be replaced by encrypted data. For G and B, the last 3 bit will be replaced by encrypted data. If the Bitmap size is larger than the encrypted data, random data will be replaced into the remaining pixels.\r 4. Conclusion \r “CryptoDefender” is user-friendly and efficient way to protect important and confidential digital files on most personal computers. This software will help to change the user’s habit in securing their information as to avoid data leakage even when they are accidentally lost.

The Use of Simulated Annealing in Predicting Solar Flare Activity

A program based on the simulated annealing (SA) algorithm was developed to allow for a longer-term prediction of the occurrence of solar flares, thus reducing the risks they may pose to astronauts, satellites, and ultimately the planet Earth. Sunspot data such as the solar cycle, the appearance of sunspots, the sun's magnetic field, the occurrence of solar flares and other factors that concern the sun were considered in the development of the algorithm. The program, coded in C++, included providing for an initial random state that pertained to the sun's state at a specified time. A neighborhood function was designed based on how sunspots are formed and how they disappear, and the probability function was designed using previous solar cycles to show relationships between the number of sunspots and the time it takes for the sun to reach solar maxima. Finally, the cooling function was designed as a representation of the time. Recorded sunspot counts obtained from the US National Geophysical Data Center (NGDC) during the solar cycle 22 from 1986 to 1996 was used as test data. The output was compared to the actual recorded solar events or the period. The program was found to be 66.7% accurate in predicting solar flares when compared on a smoothed trendline, while it exhibited a 50.5% accuracy when comparing day-to-day data. Since solar flare acitivty is predicted in terms of the trend of activity and intensity, improving daily data accuracy is superfluous. Smoothed trendline prediction accuracy may however be improved by altering the importance of each factor in predicting solar flare activity and by devising a different sunspot classification scheme for intensity and activity.

排印OnLine-PHP 在文字圖形的應用

從小習染之餘,對篆刻藝術的濃厚興趣及對電腦程式之熱愛,萌生將篆刻藝術與電腦 科技結合,於是應用PHP(Professional Home Page)的文字圖形(Text Image)處理功能 將中華文化之篆刻藝術透過網際網路推廣到世界各角落。本研究規劃建置了一個 FreeBSD Server 可完善處理PHP 功能的作業平台、應用PHP 的文字圖形處理功能,編 寫可在線上DIY 設計印章的程式,以及藉由Java Script 的技術在Client 端建立一個人 性化且相容性高之使用者界面網頁,達到提供多語系、多功能、依使用者偏好作調整 印章及輸出分享的功能。為使非漢語系國家能深刻體驗中華篆刻藝術,本研究同時建 立一個超過三萬筆之由英文名音譯中文名的資料庫,提供給使用者切身的服務。 Inspired by the interest of the art of seal engraving and the love for the computer programming beginning from my childhood, I combine the art of seal engraving and computer technology, and apply the Text-Image's function of PHP to promote the seal-engraving art of Chinese culture via the Internet to everywhere around the world. This project constructs a FreeBSD Server to process PHP platform perfectly, applies the Text-Image's function of PHP to write a program for online DIY pattern design, and uses Java Script to establish a human and compatible user-interface web page for clients to provide multi-language, multi-function, and being able to adjust pattern according to the user's preference and output sharing functions. This project also sets up a database of English-Chinese translation of over thirty thousand English terms to help people who are not Chinese to experience the art of seal engraving.