Interactive Software for Biochemistry Using Java, Chime, and Virtual ...

yardbellΤεχνίτη Νοημοσύνη και Ρομποτική

14 Νοε 2013 (πριν από 3 χρόνια και 9 μήνες)

61 εμφανίσεις

Interactive Biochemistry

JavaLab.chem.virginia.edu


Charles M. Grisham

University of Virginia

Interactive Biochemistry

Guidelines for Good Software


Software should do what books cannot


Should focus on teaching/learning problem areas


Should be easy to use


essentially transparent to
the user


Should be “available anytime/anywhere”

Interactive Biochemistry

What software should be….

“We look at it and do not see it.”

Lao
-
tzu, 6th century B.C.

Interactive Biochemistry

Another version….

“It takes a lot of money to make me
look this cheap.”

Dolly Parton, 20th century A.D.

Interactive Biochemistry

Our Projects


Java
-
XML learning tools


3D Virtual Laboratory


Wireless networks


Hand
-
held devices


PDAs and cell phones


small Java Virtual Machines (VMs) are here


Interactive Biochemistry

Java


Portable Code


Java is cross
-
platform and object
-
oriented


Applications or Applets (latter in browser)


Compiler produces “bytecode”


A platform
-
dependent interpreter interprets
the platform
-
independent bytecode


Java can bring dynamic behavior and
interactivity to the Web environment

Interactive Biochemistry

Java in Interactive Biochemistry


Applets can be designed for specific tasks


Applets are small and load quickly


Examples


Amino acids


Enzyme kinetics and mechanisms


Sugar, nucleotide structures


Helical wheel


Coenzymes


Metabolic Map Database

Interactive Biochemistry

Enzyme Mechanism Tutorials


Effective teaching/learning devices


27 tutorials in Interactive Biochemistry


But each one is a separate Java applet


Hundreds remain to be done


Programming costs would be prohibitive


This is a job for XML



Interactive Biochemistry

XML


Portable Data


XML = Extensible Markup Language


XML is HTML on steroids


XML can describe any collection of data


“Tags” identify different kinds of data


<Animal>Dinosaur</Animal>


<Name>Barney</Name>


<Color>Purple</Color>

Interactive Biochemistry

Better Organized XML

<Animal>


<Name>Barney</Name>


<Color>Purple</Color></Animal>



Tagging organizes data


Tagged data can be parsed (read) and
utilized by a program

Interactive Biochemistry

An XML
-
Based Mechanism Tool


Two parts:


A Mechanism Design Tool (written in Java)


A Mechanism Player (written in Java)


The design tool is menu
-
driven and can be
used (without knowledge of Java or XML)
to create mechanism tutorials


The mechanism player reads the XML file
and runs the tutorial for the student

Interactive Biochemistry

XML is the Data Interface

Design Tool

XML file

Mechanism

Player

Tutorial

Exercise

Interactive Biochemistry

A Mechanism Step from the XML File

Interactive Biochemistry

More Information


Check this site for a project description:


http://javalab.chem.virginia.edu/Java
-
XML/


Interactive Biochemistry

The 3D Virtual Laboratory


Uses Java 3D to create real 3D environment


Provides controls (not shown) to manipulate
all objects in the environment


Permits the user to do anything they choose
in the laboratory


Keeps track of all materials, solutions made,
instruments used, and data collected


Allows the user to design and execute any
experiment

Interactive Biochemistry

Interactive Biochemistry

Amino Acid Titrations


3D scene created with Java3D


Apparatus created in 3DS Max and added to
scene with a VRML loader


Swing interface


Chemistry handled by Thiago Ize’s classes


All the parts work and integration is nearly
complete


Interactive Biochemistry

lab3D titration
0
2
4
6
8
10
12
14
0
5
10
15
20
25
30
35
40
45
Volume
pH
real titration
0
2
4
6
8
10
12
14
0
10
20
30
40
50
Volume
pH
Thiago’s simulation:

Real data from

Georgetown University:

Interactive Biochemistry

The Isotrak II 6
-
DOF Digitizing and Tracking Device

Interactive Biochemistry

6
-
DOF Tracking


The Isotrak works in Hyperterminal


Java classes for data collection are available


(See
http://www.cyber.koganei.tokyo.jp/vr/
)


Need only to debug and implement the
Isotrak device in our 3D scenes


Isotrak sensor could be used on any
laboratory apparatus

Interactive Biochemistry

More Information


Check this site for a project description:


http://javalab.chem.virginia.edu/


Interactive Biochemistry

Java on PDAs and Cell Phones


Uses the Java Wireless Toolkit, based on
the Mobile Information Device Protocol


aka MIDP


http://java.sun.com/products/j2mewtoolkit/i
ndex.html


You create Midlets and use a Converter
utility to convert midlets to .prc files

Interactive Biochemistry

Java Midlets are converted to .prc files and downloaded to a PDA:

Interactive Biochemistry

There is an event model to handle user input, as well as internet

and database classes for PDAs and cell phones.

Interactive Biochemistry

Nonlinear Least Squares Data Fitting


Marquardt matrix algorithm combining a
grid search with a gradient search


Can be rapidly adapted to any equation with
any number of parameters


Runs fast


Uses Java 2D for plotting

Interactive Biochemistry

Data with initial
estimates for K
m

and
V
max

Interactive Biochemistry

1 pass through
fitting routine

Interactive Biochemistry

5 passes through
fitting routine

Interactive Biochemistry

“No more good must be attempted
than the people can bear.”

Thomas Jefferson